System and method for private and point-to-point communication between computing devices

Information

  • Patent Grant
  • 10164776
  • Patent Number
    10,164,776
  • Date Filed
    Monday, June 4, 2018
    7 years ago
  • Date Issued
    Tuesday, December 25, 2018
    6 years ago
  • Inventors
  • Original Assignees
  • Examiners
    • Lemma; Samson B
    Agents
    • Tully Rinckey PLLC
    • Hoffberg; Steven M.
Abstract
A hardware and software bundle that can enable computers and mobile phones to communicate small data packages without relying on the internet or the central cellular network infrastructure. The bundle enables users to send text messages and other data. For example, GPS coordinates, multimedia from the situation, accelerometer and other sensor data can all be sent over a decentralized network, enabling enhanced communication and situation response when the central grid is unavailable.
Description
FIELD OF THE INVENTION

The present disclosure is directed to point-to-point communication between computing devices. More particular, the present disclosure is directed to enabling computing devices such as computers and mobile phones to communicate data packages without necessary reliance on the internet or central cellular infrastructure.


BACKGROUND

People are dependent on our computers and mobile phones today, however the computers and mobile phones are reliant on central infrastructure in the form of the internet and cell towers, respectively to operate. If any kind of scenario arises where that central infrastructure is unavailable or suffering degraded performance, the computers and mobile phones are not able to communicate with other computers and mobile phones.


SUMMARY

A hardware and software bundle that can enable computers and mobile phones to communicate small data packages without relying on the internet or the central cellular network infrastructure. This may be referred to as user-to-user communications (U2U) or point-to-point (P2P). Computers and mobile phones enable users to send much more than text messages. For example, GPS coordinates, multimedia from the situation, accelerometer and other sensor data can all be sent over a decentralized network, enabling enhanced communication and situation response when the central grid is unavailable.


It is an object of the invention to provide a communication method, comprising: conducting a public/private key exchange to define an encryption key; encrypting a message with the encryption key and associating the encrypted message with a target identifier and an expiration time; communicating the encrypted message through a mesh network which includes at least one member which stores and forwards the encrypted message; receiving the encrypted message by a recipient based on the target identifier; and deleting the received message after passage of the expiration time.





BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure will be more readily understood from the detailed description of exemplary embodiments presented below considered in conjunction with the attached drawings, of which:



FIG. 1 is an example block diagram of systems for enabling private and point-to-point communication between computing devices in accordance with embodiments of the present invention;



FIG. 2 is a flow diagram of an example method for enabling private and point-to-point communication between computing devices in accordance with embodiments of the present invention; and



FIG. 3 is a block diagram of an exemplary computer system that may perform one or more of the operations described herein for enabling private and point-to-point communication between computing devices.





It is to be understood that the attached drawings are for purposes of illustrating the concepts of the invention.


DETAILED DESCRIPTION

Software and hardware package can be added to users' existing computers and mobile phones and enable them to transmit small data packages (text, GPS coordinates, sensor data, asynchronous voice, multimedia, or any other digital data hereafter referred to as “messages”) directly to each other or through a direct connection or mesh network without reliance on external infrastructure.



FIG. 1 is an example block diagram of systems for enabling computers and mobile phones to communicate data packages in accordance with embodiments of the present invention. FIG. 1 includes a network, computing devices 1 and 2, and P2P adapters 1 and 2. The network may be a network such as the internet a cellular telephone network, a metropolitan area network (MAN), a Wide area network (WAN), a wireless local area network, a virtual local area network, a common local area network (LAN), personal area network (PAN), campus area network (CAN), or the like. Computing devices 1 and 2 may be a communication endpoint such as a consumer workstation, a server, a computer, a portable electronic device, an entertainment system configured to communicate over a network, such as a set-top box, a digital receiver, a digital television, a mobile phone, or other electronic devices. For example, portable electronic devices may include, but are not limited to, cellular phones, portable gaming systems, portable computing devices, or the like.


The P2P adapters 1 and 2 may include software and hardware packages for enabling private and point-to-point (P2P) communication between computing devices. As used herein, the P2P adapters 1 and 2 may also be referred to as the “device.” Also, as used herein, P2P communications refers to a communications connection between two endpoints or computing devices.


As shown in FIG. 1, the computing devices 1 and 2 may communicate with each other via the public network. The P2P adapters 1 and 2 may enable the computing devices 1 and 2 to communicate with each other via P2P or via a private network.


Functional Characteristics for establishing P2P communication between computing devices can include, for example, the following:


1. Send data from one computer or mobile phone to another computer or mobile phone without using the internet or the central cellular infrastructure


2. Establish a system where messages can be sent to specific targeted users


3. Establish manual “channels” where groups of people can chat


4. Operate on unlicensed FCC spectrum


5. Be compatible with leading computers and mobile phones


6. Utilize commodity radio chipsets to create an external digital radio device which can be paired with computers or mobile phones


7. Use existing computer or mobile phone display and input mechanisms


8. Using existing computer or mobile phone processors to power software app


9. Use public/private key encryption to ensure privacy


In an example, a device for radio communication can be paired with a computer or mobile phone to leverage the ease of use and power of users' existing computer or mobile phones.


The device can handle sending and receipt of small messages via radio, and can interface with the computer or mobile phone to display and input new messages.


The device can remain active even when not directly communicating with the computer or mobile phone, and can continue to receive and send messages, attempt retries if the recipient is not in range, and forward messages to other participants in the mesh network.


Outline of Device Function:


Sender Software Operations


User composes a new message for transmission to a recipient in their contact list.


Software operations can compress the message into as small a data packet as possible.


Software operations can create the message, comprised of the unencrypted recipient ID and checksum, and encrypted payload (sender ID, timestamp, and message). Devices that receive the message can verify the completeness and accuracy of the transmission, but not read the contents, as the message payload can be encrypted so that only the intended recipient can decrypt it.


Software operations can transmit the message to the device for sending. Transmission to the device may be handled through headphone-jack audio coupling, Bluetooth, NFC, USB, custom short-range radio, shared network WiFi communication, or other means.


Sender Hardware


A device can receive the message from the computer or mobile phone, and attempt to broadcast it to other nearby devices over unlicensed radio spectrum, and confirm receipt of that message, automatically retrying as appropriate until the recipient is in range and is able to successful return a receipt signal.


Receiver Hardware


The device can listen for new messages via radio, and store incoming messages as appropriate.


Receiving hardware firmware can first check if the target ID matches the ID of the computer or phone it is paired with or another computer or phone in its approved network. If there is no match, the message can be discarded. If matched, the software can continue to next steps.


Hardware can check the checksum to confirm successful receipt of full data package. If not successful, it can continue to gather data packets as the message is retried until the full message is received.


If/when successful checksum is achieved, software can send a small receipt signal with the message ID# in the same way or in a similar way as original messages are sent.


When next paired with the computer or mobile phone, the device can deliver stored messages to the computer or phone for decryption and display.


Receiver Software Operations


When the device's software is opened on the user's computer or mobile phone, it can pair with the device and receive stored messages. It can then decrypt the messages and display them to the user.


The receiver can then choose to respond and this process can repeat in the same manner.


List of Product Implementation Variables


An outline a variety of different ways which could implement different functional pieces of the final device as well as some advanced features planned in our development roadmap.


General Form Factor: Description of device implementation.


External dongle: Any kind of device which exists not as an integrated part of a phone or computer, but which still relies on a phone or computer to operate.


Built into phone: Any kind of hardware integrated into a consumer phone or computer which enables User-to-User (U2U) communications in addition to regular computer or cell phone operations


Standalone device: A completely independent device that enables U2U communications without reliance on a phone or computer.


Integrated eyeglass display: U2U communications capabilities built into, or working with, an integrated eyeglass display such as Google® Glass.


Functional Pieces


Antenna: This part of the hardware package for the device can be responsible for both the receipt and broadcasting of signals. Working together with the radio chipset, the antenna can be the entry/exit port of signals into spectrum. The antenna may come in a variety of shapes and sizes depending on final form factor as well as the section of spectrum a particular device model might be designed to operate on.


External antenna: An antenna that is not integrated into the computer or phone. It can be a free-standing external hardware piece which can be attached to the computer or phone if the user desires, or it can also operate completely independent of it.


Integrated internal antenna (phone): Antenna that is built directly into a computer or phone. The antenna would live inside the phone not unlike phones' regular 3G, 4G, and other such antennas.


Integrated internal antenna (freestanding device): Not unlike the phone-integrated antenna, however this would be in the case of a full freestanding device being made independent of a computer or mobile phone entirely.


Repurposing existing phone antennas: By accessing the firmware/software on a computer or mobile phone's existing antennas (any of them) and modifying the settings to allow the antennas to broadcast on new frequencies or on the same frequencies but operating in an U2U manner. The existing cellular antenna/radios firmware/software can be modified to allow them to communicate with each other directly over their normal frequencies. This could require updating their programming controls so that the phones did not attempt to connect to a tower, but instead connected to another phone with similar customizations active.


Radio Chipset: This part of the device hardware package can work in tandem with the antenna to prepare signals for broadcast, as well as processing their receipt. The radio chipset's responsibilities include:


Processing between digital and analog signals (to/from)


Setting frequency hopping patterns/protocols


Error-correction


1. External radio chipset: Independent radio chipset not integrated into a computer or phone or wholly freestanding device, however designed to work in conjunction with a computer or mobile phone to enable U2U communications.


2. Integrated radio chipset: A chipset designed for U2U communications integrated into a computer or mobile phone as an additional chipset.


3. Repurposing existing radio chipsets: Inside a computer or mobile phone accessing the firmware/software to enable any of a computer or phone's existing radio chips to enable U2U communications.


4. Allow the device-enabled chipsets/antennas to broadcast on the same frequencies and protocols (GSM/CDMA/etc) as major cell carriers to become a defacto “Roaming” network which other users could connect to with their regular cell antennas without any device hardware or other customization. This essentially emulates a cell tower which a user can choose to “Roam” onto and then send messages via that connection to that single connection or as part of a larger mesh network.


Broadcasting Protocols


Spectrum: This is the spectrum where the device hardware can be operating. The device can operate on public band spectrum that does not require the user to have a radio operator's license. The spectrum broadcast on can be changed with either a physical add-on/modification to the base device hardware package, or multiple models of the device can be created for varied applications (government, military, wall-penetrating, marine long range, city consumer, etc.—at times different spectrum can be optimal for each consumer type). The protocols and functionality can be similar or identical across all electromagnetic spectrums.


Data interface: Primary processing, data input/display, and security features can be via computer or mobile phone's existing processors and data input/output features (e.g., touch screens, processors, etc.). The data to be sent via our radio hardware, or the data received via that same hardware can make it to and from the computer or mobile phone's primary hardware and any device hardware. Methods by which this can be achieved include:


Via the headphone jack: Most mobile phones have Tip-Ring-Ring-Sleeve (TRRS) headphone jacks. These jacks allow for both the output and input of audio signals. The output is the regular contact one uses for audio, but there is also a contact for a microphone which allows data to come back in to the phone. The device can use the data input/output contacts already found with TRRS headphone jacks to transfer data to and from the device hardware. This can require software that can send the appropriate signals to the mobile phone's audio output chip, as well as receive signals back. Once the signals are out, the device hardware can be able to interpret those signals for broadcast (and receipt).


The connection pathway via the headphone jack can be:


Direct wire (line connection) from headphone jack to device hardware.


Proprietary low power radio reading signals from headphone jack and broadcasting it a short range to the device hardware.


Near field communications chip via headphone jack.


Bluetooth® low energy add on via headphone jack.


Bluetooth® add on via headphone jack.


WiFi add on via headphone jack.


Universal Serial Bus (USB) ports: A computer can directly talk to the device hardware via USB. Computers and mobile phones can also communicate via their own micro-USB connector. The connection pathway can be made for any of the variations found for the headphone jack as well originating via the USB ports (direct line, NFC, etc.)


Near field communications (NFC): Mobile phones or computers with their own built in NFC chips can be paired with the device and data can be sent and received via that medium.


Apple® iOS ports: Same as USB ports, but using any of the iOS proprietary ports (30-pin, Lightening).


WiFi: Using phone or computer's WiFi to connect with device hardware.


Bluetooth®/Low-Power Bluetooth®: Using a phone/computer's existing Bluetooth chips to communicate with device hardware.


Integrated: For integrated solutions in a phone or standalone device the necessary connections can be on the circuit boards themselves.


Processing: There can be two batches of processing. Some pre-processing can occur on the radio chipset (this has already been covered). However primary processing to decode signals and display/create them for a user requires more advanced processing power. This section refers to that processing.


Mobile phone or computer's built in processing power: Building apps on leading platforms which pair with the device hardware.


Device processors: For a standalone device all processing would have to be handled by device processors that can include these higher level functionalities into it (same goes for user interface).


Mix of both: Certain functions can be split between the device processors and phone/computer processors depending on best use. For example, error-correction could be handled by firmware processing, while decoding of encryption can be done by higher power phone/computer processors.


Error Correction (to extend range we'll deal with imperfect/incomplete signals)


Checksums: Checksums can be sent as an unencrypted part of the total data signal. Firmware can collect the checksums and run the necessary calculations to determine if the message was completed correctly before storing or sending it to the computer or phone for decryption, or rebroadcasting it as part of a mesh network.


Resends: Sender can attempt automatic resends for an appropriate period of time or until a receipt signal for that unique message is received back.


Partial packet reconstruction: If receiver only successfully captures X of Y data packets, it can temporarily save them to see if it can capture some of the missing packets and reconstruct the entire data set.


Privacy: Privacy is one of the primary value propositions of the device. As used herein, privacy means that only intended recipients will be capable of decrypting and accessing the contents of any data package sent via the device.


Public/private key exchange (derivation of PGP): This is an example of a core of the device's privacy system. Each user can be able to create a highly randomized security key based on sensor data from the computer or mobile phone (accelerometer, random screen movement input, etc.). Based on this unique key, device's software can create a public/private key pair that can be shared with users they want to speak with privately.


Firmware control: Firmware can discard any messages with a target ID not matching that computer or phone's ID or not matching any group IDs that user may be a part of.


Proprietary Encryption: device may develop proprietary encryption with software controls only allowing the decoding and display of messages with target ID value matching computer or phone's ID (e.g., phone number)


Message decay: Software controls can be implemented that can cause a message to be deleted after X period of time set by sender.


Password access: App may require password/fingerprint/etc. to open at all.


Networking: Method of extending the device unit range beyond strict U2U communications.


Mesh networking (store-and-forward): Messages sent by one device user can automatically be rebroadcast by other device users in range for X period of time or until confirmation receipt is sent back by recipient. This takes U2U communication to U2U2U and so forth.


Private mesh networks (e.g., VPN): Users can build private mesh networks where only other members of their group are stored-and-forwarded or are done so with preference over others.


Device rebroadcast points: The device or its customers set up higher power fixed rebroadcast points in strategic points to extend the range of all device units as a high-power general store-and-forward point.


Mobile rebroadcast points: Same function as the fixed rebroadcast points but in a mobile unit.


Power: Methods of powering the device.


Battery: Primary power source.


Emergency secondary battery: Independently toggled power source (not automatic) which can allow a very limited amount of power for broadcast and listening.


Capacitor: A small capacitor can be integrated for small emergency bursts of broadcast or listening. Powering options include:


Solar


Earphone jack


Kinetic (crank)


USB: Device battery can charge off of USB power, and be able to run on it as well.


Proprietary mobile phone ports: Power can be drawn from any proprietary port like the iOS Lightening port.


Wireless induction: Device can be powered through wireless induction from a nearby base station that can be plugged into AC/DC power, computer, solar, or any other original source


Fuel cells


Power drawn from mobile phone's headphone audio jack.


Basic User Features


One to one chat for discrete users


Group chat


Management of messages sent/received by contacts list in computer or phone


Other Features


GPS coordinates: GPS coordinates could be drawn from phone or computer's GPS receiver and transmitted. The receiving computer or phone could use the coordinates to display sender's location on Google® Maps or in a device proximal display (display showing location relative to own GPS coordinates).


Triangulation: the device unit can be requested to go into active ping mode to allow other units searching for its particular signal to triangulate its position based off of other device unit rebroadcasting. Results could be shown in a proximal display (display relative to own position—i.e., 50 feet away, North)


Rough pinging: Like triangulation, but for when triangulation is not possible. User being located could still have to enter ping mode, and distance could be based only off of rough measurement of signal strength. Display could only be rough distance without direction.


Emergency mode: All units may have the ability to broadcast with overpower on emergency frequencies as dictated by the FCC


Standby E-ink display: Units may include a screen displaying number of messages being held locally by the device hardware while not actively exchanging data with a phone/computer (low power use)


Speech to text interface: Either accomplished via computer or phone software or any other device software such as Google® Glass. Microphone could capture speech, and software package would translate it to text for transmittal.


4D base station triangulation: In locations that require it (emergency mostly), 4 device rebroadcast points could be set up around a building (3 outside on same level, 4th elevated above others) to penetrate building walls and display a 4D map of any device units inside and their movements.


Potential Application: track the location of fire fighters inside a building and relay both the positions of other firefighters as well as which areas have already been checked to them back over device devices.


Commercial application: find things in stores or track consumers.


Open API for developers: Self-explanatory. 3rd party developers can use the API to develop new uses of the device hardware.


Entry/exit points to the world wide web by either device fixed access points, or by relaying a message to a user which can have an enabled “Internet Entry” option which can allow any device message it receives, which requests for access, to use their data connection (of any type) to enter the wider internet and either process to a device online app, or any other end point (partner apps, re-exit back to the device system, etc.).


There can also be “Internet Exit” points which can be either fixed devices, or a user who enables the device to be an exit point. Here the jump is in reverse and a message which entered or originated from the internet hops out onto the device's ad-hoc network to proceed along its path as required.



FIG. 2 is a flow diagram of an example method for enabling private and point-to-point communication between computing devices in accordance with embodiments of the present invention. The method begins with a first user (User 1) who may wish to transmit a message to a second user (User 2). User 1 may use the computing device or phone software to create a message. The data may be encrypted and encoded for transmission by, for example, an audio jack. The computing device or phone hardware may generate an audio signal for audio output over a headphone jack or an output port. The device (i.e., goTenna®) hardware may receive and decode the data (e.g., the audio data), prepare the data for broadcast signal, and may transmit the signal. The transmission may repeat until a message receipt is confirmed.


The message from User 1 to User 2 may be transmitted via the unlicensed radio spectrum. The device hardware of User 2 may receive the radio transmission signal and check if a message ID is paired with the computing device of User 2. If the message ID is not paired with the computing device of User 2, then the message may be discarded. If the message ID is paired with the computing device of User 2, then the message may be saved for transmission to User 2's computing device for processing. The device hardware may generate an audio signal via an input jack of User 2's computing device. User 2's computing device may receive the input signal and digitize the signal for the computing device software for further processing. User 2's computing device software may decode the received signal (e.g., an audio signal) and process the decoded signal into a message data stream. The message data stream may be decrypted and displayed to User 2.



FIG. 3 illustrates a diagrammatic representation of a machine in the form of a computer system, in accordance with one example. The computing system may include a set of instructions 326, for causing the machine to perform any one or more of the methodologies discussed herein. In alternative examples, the machine may be connected (e.g., networked) to other machines in a Local Area Network (LAN), an intranet, an extranet, or the Internet. The machine may operate in the capacity of a server or a client machine in a client-server network environment, or as a peer machine in a peer-to-peer (or distributed) network environment. The machine may be a personal computer (PC), a tablet PC, a set-top box (STB), a Personal Digital Assistant (PDA), a cellular telephone, a web appliance, a server, a network router, switch or bridge, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine. Further, while a single machine is illustrated, the term “machine” shall also be taken to include any collection of machines (e.g., computers) that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.


The computer system 300 includes a processing device 302, a main memory 304 (e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM) such as synchronous DRAM (SDRAM), etc.), a static memory 306 (e.g., flash memory, static random access memory (SRAM), etc.), and a secondary memory 316 (e.g., a data storage device), which communicate with each other via a bus 330.


The processing device 302 represents one or more general-purpose processing devices such as a microprocessor, central processing unit, or the like. More particularly, the processing device 302 may be a complex instruction set computing (CISC) microprocessor, reduced instruction set computing (RISC) microprocessor, very long instruction word (VLIW) microprocessor, processor implementing other instruction sets, or processors implementing a combination of instruction sets. The processing device 302 may also be one or more special-purpose processing devices such as an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), network processor, or the like. The processing device 302 is configured to execute the operations for private point-to-point communication between computing devices for performing steps discussed herein.


The computer system 300 may further include a network interface device 322. The network interface device may be in communication with a network 321. The computer system 300 also may include a video display unit 310 (e.g., a liquid crystal display (LCD), a touch screen, or a cathode ray tube (CRT)), an alphanumeric input device 312 (e.g., a keyboard), a cursor control device 314 (e.g., a mouse), and a signal generation device 320 (e.g., a speaker).


The secondary memory 316 may include a computer-readable storage medium (or more specifically a non-transitory computer-readable storage medium) 324 on which is stored one or more sets of instructions 326 (e.g., instructions executed by private point-to-point communication between computing devices) for the computer system 300 representing any one or more of the methodologies or functions described herein. The instructions 326 for the computer system 300 may also reside, completely or at least partially, within the main memory 304 and/or within the processing device 302 during execution thereof by the computer system 300, the main memory 304 and the processing device 302 also constituting computer-readable storage media. The instructions 326 for the computer system 300 may further be transmitted or received over a network via the network interface device 322.


While the computer-readable storage medium 324 is shown in an example to be a single medium, the term “computer-readable storage medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions 326. The term “computer-readable storage medium” shall also be taken to include any medium that is capable of storing or encoding a set of instructions for execution by the machine that cause the machine to perform any one or more of the methodologies of the disclosure. The term “computer-readable storage medium” shall accordingly be taken to include, but not be limited to, solid-state memories, and optical and magnetic media.


Some portions of the detailed descriptions above are presented in terms of symbolic representations of operations on data bits within a computer memory. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.


It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise, as apparent from the following discussion, it is appreciated that throughout the description, discussions utilizing terms such as “configuring,” “associating,” “executing,” “adjusting,” “sending,” “receiving,” “determining,” “transmitting,” “identifying,” “specifying,” “granting,” “accessing,” “as signing,” “detecting,” and “requesting,” or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.


The disclosure also relates to an apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, or it may be a general purpose computer system selectively programmed by a computer program stored in the computer system. Such a computer program may be stored in a computer readable storage medium, such as, but not limited to, any type of disk including optical disks, CD-ROMs, and magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic disk storage media, optical storage media, flash memory devices, other type of machine-accessible storage media, or any type of media suitable for storing electronic instructions, each coupled to a computer system bus.


The descriptions and displays presented herein are not inherently related to any particular computer or other apparatus. Various general purpose systems may be used with programs in accordance with the teachings herein, or it may prove convenient to construct a more specialized apparatus to perform the required method steps. The required structure for a variety of these systems will appear as set forth in the description below. In addition, the disclosure is not described with reference to any particular programming language. It will be appreciated that a variety of programming languages may be used to implement the teachings of the disclosure as described herein.


It is to be understood that the above description is intended to be illustrative, and not restrictive. Many other examples will be apparent to those of skill in the art upon reading and understanding the above description. Although the disclosure has been described with reference to specific examples, it will be recognized that the disclosure is not limited to the examples described, but can be practiced with modification and alteration within the spirit and scope of the appended claims. Accordingly, the specification and drawings are to be regarded in an illustrative sense rather than a restrictive sense. The scope of the disclosure should, therefore, be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled.

Claims
  • 1. A communication device, comprising: a mesh network radio transceiver, configured to communicate a multipacket series of digital packets directly with other mesh network radio transceivers, using a communication protocol which employs error correction, frequency hopping, over a plurality of different available communication frequencies;a short range communication link configured to communicate with a host device; anda hardware processor, configured to: communicate GPS coordinates between host device and the mesh radio transceiver,manage the communication protocol to control error correction, and a selection of the frequency hopping pattern of the mesh network radio transceiver,receive the multipacket series of digital packets, comprising an encrypted message, error correction information, a target identifier, and a timestamp,assemble contents of the encrypted message,transmit a signal confirming receipt of complete assembled contents of the encrypted message, without requiring decryption of the encrypted message;send the multipacket series of digital packets comprising the encrypted message, the error correction information, the target identifier, and the timestamp, andretransmit digital packets of the multipacket series of digital packets until receipt of a signal confirming receipt of the respective digital packets or a timeout.
  • 2. The communication device according to claim 1, wherein the hardware processor is configured to communicate the GPS coordinates from the host device to the mesh network radio transceiver.
  • 3. The communication device according to claim 1, wherein the hardware processor is configured to communicate the GPS coordinates to the host device from the mesh network radio transceiver.
  • 4. The communication device according to claim 1, wherein the hardware processor is further configured to conduct a public/private key exchange to define an encryption key for the multipacket series of digital packets.
  • 5. The communication device according to claim 1, wherein the hardware processor is further configured to conduct a public/private key exchange to define a decryption key of the received multipacket series of digital packets.
  • 6. The communication device according to claim 1, wherein the hardware processor is further configured to transmit, receive, and rebroadcast ping messages through the mesh network radio transceiver; andanalyze a respective ping message received from another mesh network radio transceiver to determine a position or distance of the communication device from the other mesh network radio transceiver.
  • 7. The communication device according to claim 6, wherein the host device is configured to use the respective ping message to determine and display the position of the other mesh network radio transceiver.
  • 8. The communication device according to claim 6, wherein the host device is configured to use the respective ping message to determine and display the distance to the other mesh network radio transceiver.
  • 9. The communication device according to claim 1, wherein the host device comprises a human speech communication interface.
  • 10. A communication method, comprising: communicating a multipacket series of digital packets of a digital message, through a mesh network radio transceiver, directly with other mesh network radio transceivers, using a communication protocol which employs error correction, frequency hopping, and digital data encryption, over a plurality of different available communication frequencies;communicating with a host device over a short range communication link;communicating GPS coordinates between host device and the mesh network radio transceiver,managing the communication protocol to control the error correction of the digital message, and a selection of the frequency hopping pattern of the mesh network radio transceiver;receiving the multipacket series of digital packets of the digital message, comprising an encrypted message, error correction information, a target identifier, and a timestamp;assembling contents of the encrypted message;transmitting a signal confirming receipt of complete assembled contents of the encrypted message, without requiring decryption of the encrypted message;sending the multipacket series of digital packets representing the encrypted message, the error correction information, the target identifier, and the timestamp; andretransmitting digital packets of the multipacket series of digital packets until receipt of a signal confirming receipt of the respective digital packets or a timeout.
  • 11. The method according to claim 10, said communicating GPS coordinates comprising communicating GPS coordinated from the host device to the mesh network radio transceiver.
  • 12. The method according to claim 10, said communicating GPS coordinates comprising communicating GPS coordinated to the host device from the mesh network radio transceiver.
  • 13. The method according to claim 10, further comprising conducting a public/private key exchange to define an encryption key for the multipacket series of digital packets.
  • 14. The method according to claim 10, further comprising conducting a public/private key exchange to define a decryption key of the received multipacket series of digital packets.
  • 15. The method according to claim 10, further comprising: transmitting, receiving, and rebroadcasting ping messages through the mesh network radio transceiver; andanalyzing a respective ping message received from another mesh network radio transceiver to determine a position or distance of the mesh network radio transceiver from the other mesh network radio transceiver.
  • 16. A non-transitory computer readable medium storing therein instructions for controlling a hardware processor of a communication device, comprising: instructions for communicating a multipacket series of digital packets of a digital message, through a mesh network radio transceiver, directly with other mesh network radio transceivers, using a communication protocol which employs error correction, frequency hopping, and digital data encryption, over a plurality of different available communication frequencies;instructions for communicating with a host device over a short range communication link;instructions for communicating GPS coordinates between host device and the mesh network radio transceiver,instructions for managing the communication protocol to control the error correction of the digital message, and a selection of the frequency hopping pattern of the mesh network radio transceiver;instructions for receiving the multipacket series of digital packets of the digital message, comprising an encrypted message, error correction information, a target identifier, and a timestamp;instructions for assembling contents of the encrypted message;instructions for transmitting a signal confirming receipt of complete assembled contents of the encrypted message, without requiring decryption of the encrypted message;instructions for sending the multipacket series of digital packets representing the encrypted message, the error correction information, the target identifier, and the timestamp; andinstructions for retransmitting digital packets of the multipacket series of digital packets until receipt of a signal confirming receipt of the respective digital packets or a timeout.
  • 17. The non-transitory computer readable medium according to claim 16, further comprising instructions for conducting a public/private key exchange to define a cryptographic key for the multipacket series of digital packets.
  • 18. The non-transitory computer readable medium according to claim 16, further comprising instructions for communicating messages between the mesh network radio transceiver and the Internet.
  • 19. The non-transitory computer readable medium according to claim 16, further comprising instructions for determining if the target identifier matches an identifier of the host device.
  • 20. The non-transitory computer readable medium according to claim 16, further comprising: instructions for instructions for transmitting, receiving, and rebroadcasting ping messages through the mesh network radio transceiver; andinstructions for analyzing a respective ping message received from another mesh network radio transceiver to determine a position or distance of the mesh network radio transceiver from the other mesh network radio transceiver.
CROSS REFERENCE TO RELATED APPLICATION

The present application is a Continuation of U.S. patent application Ser. No. 14/210,841, filed Mar. 14, 2014, now U.S. Pat. No. 9,992,021, issued Jun. 5, 2018, which is a nonprovisional and claims benefit of priority from U.S. Provisional Patent Application No. 61/784,354, filed Mar. 14, 2013, the entirety of which are expressly incorporated herein by reference.

US Referenced Citations (505)
Number Name Date Kind
4549275 Sukonick Oct 1985 A
4646075 Andrews et al. Feb 1987 A
4694404 Meagher Sep 1987 A
4740836 Craig Apr 1988 A
4862392 Steiner Aug 1989 A
4879652 Nowak Nov 1989 A
4935879 Ueda Jun 1990 A
4953107 Hedley et al. Aug 1990 A
4958147 Kanema et al. Sep 1990 A
4992780 Penna et al. Feb 1991 A
5077608 Dubner Dec 1991 A
5247587 Hasegawa et al. Sep 1993 A
5342047 Heidel et al. Aug 1994 A
5343395 Watts Aug 1994 A
5416848 Young May 1995 A
5440682 Deering Aug 1995 A
5454371 Fenster et al. Oct 1995 A
5457744 Stone et al. Oct 1995 A
5493595 Schoolman Feb 1996 A
5495576 Ritchey Feb 1996 A
5510832 Garcia Apr 1996 A
5548667 Tu Aug 1996 A
5574836 Broemmelsiek Nov 1996 A
5673081 Yamashita et al. Sep 1997 A
5682437 Okino et al. Oct 1997 A
5682895 Ishiguro Nov 1997 A
5734383 Akimichi Mar 1998 A
5734384 Yanof et al. Mar 1998 A
5742294 Watanabe et al. Apr 1998 A
5748199 Palm May 1998 A
5777666 Tanase et al. Jul 1998 A
5781146 Frederick Jul 1998 A
5842473 Fenster et al. Dec 1998 A
5875108 Hoffberg et al. Feb 1999 A
5901246 Hoffberg et al. May 1999 A
5964707 Fenster et al. Oct 1999 A
5977987 Duluk, Jr. Nov 1999 A
5988862 Kacyra et al. Nov 1999 A
5990900 Seago Nov 1999 A
6016150 Lengyel et al. Jan 2000 A
6020901 Lavelle et al. Feb 2000 A
6023263 Wood Feb 2000 A
6046745 Moriya et al. Apr 2000 A
6059718 Taniguchi et al. May 2000 A
6064393 Lengyel et al. May 2000 A
6069696 McQueen et al. May 2000 A
6081750 Hoffberg et al. Jun 2000 A
6094237 Hashimoto Jul 2000 A
6118887 Cosatto et al. Sep 2000 A
6124859 Horii et al. Sep 2000 A
6151026 Iwade et al. Nov 2000 A
6154121 Cairns et al. Nov 2000 A
6166748 Van Hook et al. Dec 2000 A
6169552 Endo et al. Jan 2001 B1
6206691 Lehmann et al. Mar 2001 B1
6208348 Kaye Mar 2001 B1
6212132 Yamane et al. Apr 2001 B1
6229553 Duluk, Jr. et al. May 2001 B1
6232974 Horvitz et al. May 2001 B1
6239810 Van Hook et al. May 2001 B1
6246468 Dimsdale Jun 2001 B1
6268875 Duluk, Jr. et al. Jul 2001 B1
6271860 Gross Aug 2001 B1
6275234 Iwaki Aug 2001 B1
6285378 Duluk, Jr. Sep 2001 B1
6301370 Steffens et al. Oct 2001 B1
6326964 Snyder et al. Dec 2001 B1
6330523 Kacyra et al. Dec 2001 B1
6331856 Van Hook et al. Dec 2001 B1
6334847 Fenster et al. Jan 2002 B1
6342892 Van Hook et al. Jan 2002 B1
6362822 Randel Mar 2002 B1
6375782 Kumar et al. Apr 2002 B1
6400996 Hoffberg et al. Jun 2002 B1
6405132 Breed et al. Jun 2002 B1
6418424 Hoffberg et al. Jul 2002 B1
6420698 Dimsdale Jul 2002 B1
6429903 Young Aug 2002 B1
6445833 Murata et al. Sep 2002 B1
6461298 Fenster et al. Oct 2002 B1
6473079 Kacyra et al. Oct 2002 B1
6476803 Zhang et al. Nov 2002 B1
6489955 Newhall, Jr. Dec 2002 B1
6496183 Bar-Nahum Dec 2002 B1
6512518 Dimsdale Jan 2003 B2
6512993 Kacyra et al. Jan 2003 B2
6515659 Kaye et al. Feb 2003 B1
6518965 Dye et al. Feb 2003 B2
6522336 Yuasa Feb 2003 B1
6525722 Deering Feb 2003 B1
6526352 Breed et al. Feb 2003 B1
6549203 Randel Apr 2003 B2
6556197 Van Hook et al. Apr 2003 B1
6580430 Hollis et al. Jun 2003 B1
6587112 Goeltzenleuchter et al. Jul 2003 B1
6593926 Yamaguchi et al. Jul 2003 B1
6593929 Van Hook et al. Jul 2003 B2
6597363 Duluk, Jr. et al. Jul 2003 B1
6603476 Paolini et al. Aug 2003 B1
6614444 Duluk, Jr. et al. Sep 2003 B1
6618048 Leather Sep 2003 B1
6636214 Leather et al. Oct 2003 B1
6654018 Cosatto et al. Nov 2003 B1
6664958 Leather et al. Dec 2003 B1
6664962 Komsthoeft et al. Dec 2003 B1
6704018 Mori et al. Mar 2004 B1
6707458 Leather et al. Mar 2004 B1
6716175 Geiser et al. Apr 2004 B2
6747642 Yasumoto Jun 2004 B1
6754373 de Cuetos et al. Jun 2004 B1
6756986 Kuo et al. Jun 2004 B1
6798390 Sudo et al. Sep 2004 B1
6840107 Gan Jan 2005 B2
6904163 Fujimura et al. Jun 2005 B1
6937245 Van Hook et al. Aug 2005 B1
6956578 Kuo et al. Oct 2005 B2
6980218 Demers et al. Dec 2005 B1
6988991 Kim et al. Jan 2006 B2
6999069 Watanabe et al. Feb 2006 B1
6999100 Leather et al. Feb 2006 B1
7006085 Acosta et al. Feb 2006 B1
7015931 Cieplinski Mar 2006 B1
7046841 Dow et al. May 2006 B1
7061488 Randel Jun 2006 B2
7061502 Law et al. Jun 2006 B1
7075545 Van Hook et al. Jul 2006 B2
7088362 Mori et al. Aug 2006 B2
7098809 Feyereisen et al. Aug 2006 B2
7098908 Acosta et al. Aug 2006 B2
7116323 Kaye et al. Oct 2006 B2
7116324 Kaye et al. Oct 2006 B2
7116335 Pearce et al. Oct 2006 B2
7130490 Elder et al. Oct 2006 B2
7133041 Kaufman et al. Nov 2006 B2
7156655 Sachdeva et al. Jan 2007 B2
7184059 Fouladi et al. Feb 2007 B1
7228279 Chaudhari et al. Jun 2007 B2
7242460 Hsu et al. Jul 2007 B2
7248258 Acosta et al. Jul 2007 B2
7251603 Connell et al. Jul 2007 B2
7256791 Sullivan et al. Aug 2007 B2
7286119 Yamaguchi et al. Oct 2007 B2
7307640 Demers et al. Dec 2007 B2
7319955 Deligne et al. Jan 2008 B2
7330198 Yamaguchi et al. Feb 2008 B2
7391418 Pulli et al. Jun 2008 B2
7403641 Nakamoto et al. Jul 2008 B2
7446775 Hara et al. Nov 2008 B2
7471291 Kaufman et al. Dec 2008 B2
7477360 England et al. Jan 2009 B2
7480617 Chu et al. Jan 2009 B2
7502026 Acosta et al. Mar 2009 B2
7532220 Barenbrug et al. May 2009 B2
7538772 Fouladi et al. May 2009 B1
7573475 Sullivan et al. Aug 2009 B2
7573489 Davidson et al. Aug 2009 B2
7576748 Van Hook et al. Aug 2009 B2
7613663 Commons et al. Nov 2009 B1
7647087 Miga et al. Jan 2010 B2
7671857 Pulli et al. Mar 2010 B2
7677295 Fulton et al. Mar 2010 B2
7684623 Shen et al. Mar 2010 B2
7684934 Shvartsburg et al. Mar 2010 B2
7685042 Monroe et al. Mar 2010 B1
7689019 Boese et al. Mar 2010 B2
7689588 Badr et al. Mar 2010 B2
7692650 Ying et al. Apr 2010 B2
7693318 Stalling et al. Apr 2010 B1
7693333 Ryu et al. Apr 2010 B2
7697748 Dimsdale et al. Apr 2010 B2
7697765 Matsugu et al. Apr 2010 B2
7699782 Angelsen et al. Apr 2010 B2
7702064 Boese et al. Apr 2010 B2
7702155 Glickman et al. Apr 2010 B2
7702599 Widrow Apr 2010 B2
7702660 Chan et al. Apr 2010 B2
7707128 Matsugu Apr 2010 B2
7710115 Hargreaves May 2010 B2
7712961 Horndler et al. May 2010 B2
7715609 Rinck et al. May 2010 B2
7719552 Karman May 2010 B2
7777761 England et al. Aug 2010 B2
7831087 Harville Nov 2010 B2
7868892 Hara et al. Jan 2011 B2
7884823 Bertolami et al. Feb 2011 B2
7940279 Pack May 2011 B2
7974461 England et al. Jul 2011 B2
7990397 Bukowski et al. Aug 2011 B2
7995069 Van Hook et al. Aug 2011 B2
8089506 Takayama et al. Jan 2012 B2
8139554 Simon Mar 2012 B1
8177551 Sachdeva et al. May 2012 B2
8179393 Minear et al. May 2012 B2
8294949 Shitara et al. Oct 2012 B2
8305426 Matsubara Nov 2012 B2
8370873 Shintani Feb 2013 B2
8401276 Choe et al. Mar 2013 B1
8514267 Underwood et al. Aug 2013 B2
8538136 Wilkinson et al. Sep 2013 B2
8553561 Chokshi Oct 2013 B1
8594180 Yang et al. Nov 2013 B2
8659592 Wang et al. Feb 2014 B2
8666081 Oh et al. Mar 2014 B2
8787655 Tatsumi Jul 2014 B2
8797620 Yankov et al. Aug 2014 B2
8842165 Wada Sep 2014 B2
8848558 Martin Sep 2014 B1
8861836 Wei et al. Oct 2014 B2
8878897 Huang et al. Nov 2014 B2
8907968 Tanaka et al. Dec 2014 B2
8913107 Huang Dec 2014 B2
8941782 Kim et al. Jan 2015 B2
8947605 Eichenlaub Feb 2015 B2
8963928 Koike Feb 2015 B2
9014507 Mack et al. Apr 2015 B2
9053562 Rabin et al. Jun 2015 B1
9055277 Katayama et al. Jun 2015 B2
9104096 Koike Aug 2015 B2
9177413 Tatarinov et al. Nov 2015 B2
9386291 Tomioka et al. Jul 2016 B2
9386294 Luthra et al. Jul 2016 B2
9402072 Onishi et al. Jul 2016 B2
9407896 Lam et al. Aug 2016 B2
9438892 Onishi et al. Sep 2016 B2
9462257 Zurek et al. Oct 2016 B2
9495791 Maleki et al. Nov 2016 B2
9665800 Kuffner, Jr. May 2017 B1
20010052899 Simpson et al. Dec 2001 A1
20020059042 Kacyra et al. May 2002 A1
20020067355 Randel Jun 2002 A1
20020080143 Morgan et al. Jun 2002 A1
20020085000 Sullivan et al. Jul 2002 A1
20020145607 Dimsdale Oct 2002 A1
20020149585 Kacyra et al. Oct 2002 A1
20020158865 Dye et al. Oct 2002 A1
20020158870 Brunkhart et al. Oct 2002 A1
20020158872 Randel Oct 2002 A1
20020176619 Love Nov 2002 A1
20020186217 Kamata et al. Dec 2002 A1
20030001835 Dimsdale et al. Jan 2003 A1
20030080963 Van Hook et al. May 2003 A1
20030197737 Kim Oct 2003 A1
20040006273 Kim et al. Jan 2004 A1
20040041813 Kim Mar 2004 A1
20040104915 Mori et al. Jun 2004 A1
20040109608 Love et al. Jun 2004 A1
20040114800 Ponomarev et al. Jun 2004 A1
20040125103 Kaufman et al. Jul 2004 A1
20040157662 Tsuchiya Aug 2004 A1
20040164956 Yamaguchi et al. Aug 2004 A1
20040164957 Yamaguchi et al. Aug 2004 A1
20040165776 Brouwer Aug 2004 A1
20040197727 Sachdeva et al. Oct 2004 A1
20050007374 Kuo et al. Jan 2005 A1
20050024378 Pearce et al. Feb 2005 A1
20050030311 Hara et al. Feb 2005 A1
20050053276 Curti et al. Mar 2005 A1
20050099414 Kaye et al. May 2005 A1
20050138359 Simon Jun 2005 A1
20050146521 Kaye et al. Jul 2005 A1
20050162436 Van Hook et al. Jul 2005 A1
20050168461 Acosta et al. Aug 2005 A1
20050171456 Hirschman et al. Aug 2005 A1
20050174972 Boynton Aug 2005 A1
20050185711 Pfister et al. Aug 2005 A1
20050195200 Chuang et al. Sep 2005 A1
20050195210 Demers et al. Sep 2005 A1
20050243323 Hsu et al. Nov 2005 A1
20060007301 Cho et al. Jan 2006 A1
20060061566 Verma et al. Mar 2006 A1
20060061651 Tetterington Mar 2006 A1
20060146049 Pulli et al. Jul 2006 A1
20060184966 Hunleth et al. Aug 2006 A1
20060197768 Van Hook et al. Sep 2006 A1
20060232598 Barenbrug et al. Oct 2006 A1
20060238613 Takayama et al. Oct 2006 A1
20060239333 Albert Oct 2006 A1
20060244746 England et al. Nov 2006 A1
20060244749 Kondo et al. Nov 2006 A1
20060268716 Wijting Nov 2006 A1
20060279569 Acosta et al. Dec 2006 A1
20070070083 Fouladi et al. Mar 2007 A1
20070081718 Rubbert et al. Apr 2007 A1
20070099147 Sachdeva et al. May 2007 A1
20070195087 Acosta et al. Aug 2007 A1
20070206008 Kaufman et al. Sep 2007 A1
20070223701 Emeott Sep 2007 A1
20070248066 Banerjea Oct 2007 A1
20070279412 Davidson et al. Dec 2007 A1
20070279415 Sullivan et al. Dec 2007 A1
20070280528 Wellington et al. Dec 2007 A1
20080024490 Loop et al. Jan 2008 A1
20080101109 Haring-Bolivar et al. May 2008 A1
20080150945 Wang et al. Jun 2008 A1
20080170067 Kim et al. Jul 2008 A1
20080198920 Yang et al. Aug 2008 A1
20080225046 Pulli et al. Sep 2008 A1
20080225047 Pulli et al. Sep 2008 A1
20080226123 Birtwistle et al. Sep 2008 A1
20080228449 Birtwistle et al. Sep 2008 A1
20080246622 Chen Oct 2008 A1
20080256130 Kirby et al. Oct 2008 A1
20080270335 Matsugu Oct 2008 A1
20080270338 Adams Oct 2008 A1
20080273173 Grotehusmann et al. Nov 2008 A1
20080281591 Droppo et al. Nov 2008 A1
20080304707 Oi et al. Dec 2008 A1
20080317350 Yamaguchi et al. Dec 2008 A1
20080319568 Berndlmaier et al. Dec 2008 A1
20090006101 Rigazio et al. Jan 2009 A1
20090010529 Zhou et al. Jan 2009 A1
20090015590 Hara et al. Jan 2009 A1
20090027402 Bakalash et al. Jan 2009 A1
20090034366 Mathiszik et al. Feb 2009 A1
20090035869 Scuor Feb 2009 A1
20090049890 Zhong et al. Feb 2009 A1
20090076347 Anderson et al. Mar 2009 A1
20090080757 Roger et al. Mar 2009 A1
20090080778 Lee et al. Mar 2009 A1
20090080803 Hara et al. Mar 2009 A1
20090087040 Torii et al. Apr 2009 A1
20090087084 Neigovzen et al. Apr 2009 A1
20090097722 Dekel et al. Apr 2009 A1
20090122979 Lee et al. May 2009 A1
20090128551 Bakalash et al. May 2009 A1
20090141024 Lee et al. Jun 2009 A1
20090144173 Mo et al. Jun 2009 A1
20090144213 Patil et al. Jun 2009 A1
20090146657 Hebrank et al. Jun 2009 A1
20090148070 Hwang et al. Jun 2009 A1
20090149156 Yeo Jun 2009 A1
20090152356 Reddy et al. Jun 2009 A1
20090153553 Kim et al. Jun 2009 A1
20090154794 Kim et al. Jun 2009 A1
20090161944 Lau et al. Jun 2009 A1
20090161989 Sim Jun 2009 A1
20090164339 Rothman Jun 2009 A1
20090167595 Cross et al. Jul 2009 A1
20090169076 Lobregt et al. Jul 2009 A1
20090169118 Eichhorn et al. Jul 2009 A1
20090179896 Rottger Jul 2009 A1
20090181769 Thomas et al. Jul 2009 A1
20090184349 Dungan Jul 2009 A1
20090185750 Schneider Jul 2009 A1
20090189889 Engel et al. Jul 2009 A1
20090195640 Kim et al. Aug 2009 A1
20090196492 Jung et al. Aug 2009 A1
20090208112 Hamamura et al. Aug 2009 A1
20090213113 Sim et al. Aug 2009 A1
20090220155 Yamamoto et al. Sep 2009 A1
20090225073 Baker Sep 2009 A1
20090226183 Kang Sep 2009 A1
20090231327 Minear et al. Sep 2009 A1
20090232355 Minear et al. Sep 2009 A1
20090232388 Minear et al. Sep 2009 A1
20090232399 Kawahara et al. Sep 2009 A1
20090237327 Park et al. Sep 2009 A1
20090254496 Kanevsky et al. Oct 2009 A1
20090262108 Davidson et al. Oct 2009 A1
20090262184 Engle et al. Oct 2009 A1
20090268964 Takahashi Oct 2009 A1
20090272015 Schnuckle Nov 2009 A1
20090273601 Kim Nov 2009 A1
20090279756 Gindele et al. Nov 2009 A1
20090287624 Rouat et al. Nov 2009 A1
20090290788 Bogan et al. Nov 2009 A1
20090290800 Lo Nov 2009 A1
20090290811 Imai Nov 2009 A1
20090295801 Fritz et al. Dec 2009 A1
20090295805 Ha et al. Dec 2009 A1
20090297000 Shahaf et al. Dec 2009 A1
20090297010 Fritz et al. Dec 2009 A1
20090297011 Brunner et al. Dec 2009 A1
20090297021 Islam et al. Dec 2009 A1
20090310216 Roh et al. Dec 2009 A1
20090315979 Jung et al. Dec 2009 A1
20090322742 Muktinutalapati et al. Dec 2009 A1
20090322860 Zhang et al. Dec 2009 A1
20090324107 Walch Dec 2009 A1
20090326841 Zhang et al. Dec 2009 A1
20100007659 Ludwig et al. Jan 2010 A1
20100014781 Liu et al. Jan 2010 A1
20100016750 Anderson et al. Jan 2010 A1
20100020159 Underwood et al. Jan 2010 A1
20100026642 Kim et al. Feb 2010 A1
20100026789 Balogh Feb 2010 A1
20100026909 Yoon Feb 2010 A1
20100027606 Dai et al. Feb 2010 A1
20100027611 Dai et al. Feb 2010 A1
20100034450 Mertelmeier Feb 2010 A1
20100034469 Thorpe et al. Feb 2010 A1
20100039573 Park et al. Feb 2010 A1
20100045461 Caler et al. Feb 2010 A1
20100045696 Bruder et al. Feb 2010 A1
20100046796 Pietquin Feb 2010 A1
20100047811 Winfried et al. Feb 2010 A1
20100060857 Richards et al. Mar 2010 A1
20100061598 Seo Mar 2010 A1
20100061603 Mielekamp et al. Mar 2010 A1
20100063992 Ma et al. Mar 2010 A1
20100066701 Ningrat Mar 2010 A1
20100073366 Tateno Mar 2010 A1
20100073394 Van Hook et al. Mar 2010 A1
20100082299 Dhanekula et al. Apr 2010 A1
20100085358 Wegbreit et al. Apr 2010 A1
20100086099 Kuzmanovic Apr 2010 A1
20100086220 Minear Apr 2010 A1
20100091354 Nam et al. Apr 2010 A1
20100092075 Lee et al. Apr 2010 A1
20100097374 Fan et al. Apr 2010 A1
20100099198 Zhao et al. Apr 2010 A1
20100110070 Kim et al. May 2010 A1
20100110162 Yun et al. May 2010 A1
20100115272 Batta May 2010 A1
20100115347 Noyes May 2010 A1
20100118053 Karp et al. May 2010 A1
20100118125 Park May 2010 A1
20100121798 Matsugu et al. May 2010 A1
20100123716 Li et al. May 2010 A1
20100124368 Ye et al. May 2010 A1
20100137021 Sharret Jun 2010 A1
20100157425 Oh Jun 2010 A1
20100207936 Minear et al. Aug 2010 A1
20100208981 Minear et al. Aug 2010 A1
20100209013 Minear et al. Aug 2010 A1
20100220893 Lee et al. Sep 2010 A1
20100315415 Asami Dec 2010 A1
20110018867 Shibamiya et al. Jan 2011 A1
20110043540 Fancher et al. Feb 2011 A1
20110063410 Robert Mar 2011 A1
20110069152 Wang et al. Mar 2011 A1
20110109722 Oh et al. May 2011 A1
20110115812 Minear et al. May 2011 A1
20110188780 Wang et al. Aug 2011 A1
20110200249 Minear et al. Aug 2011 A1
20110225611 Shintani Sep 2011 A1
20110255746 Berkovich et al. Oct 2011 A1
20110311128 Wilkinson et al. Dec 2011 A1
20120033873 Ozeki et al. Feb 2012 A1
20120086782 Wada Apr 2012 A1
20120120190 Lee May 2012 A1
20120120191 Lee May 2012 A1
20120121164 Tatsumi May 2012 A1
20120127159 Jeon et al. May 2012 A1
20120134287 Turunen May 2012 A1
20120146997 Ishimaru et al. Jun 2012 A1
20120147135 Matsubara Jun 2012 A1
20120147154 Matsubara Jun 2012 A1
20120154529 Kobayashi Jun 2012 A1
20120162363 Huang et al. Jun 2012 A1
20120162396 Huang Jun 2012 A1
20120169843 Luthra et al. Jul 2012 A1
20120179413 Hasse et al. Jul 2012 A1
20120182387 Enenkl et al. Jul 2012 A1
20120183202 Wei et al. Jul 2012 A1
20120200680 So et al. Aug 2012 A1
20120223944 Koike Sep 2012 A1
20120229462 Eichenlaub Sep 2012 A1
20120249754 Akashi Oct 2012 A1
20120287233 Wang et al. Nov 2012 A1
20120314038 Murayama et al. Dec 2012 A1
20120320050 Koike Dec 2012 A1
20130010061 Matsubara Jan 2013 A1
20130044108 Tanaka et al. Feb 2013 A1
20130050451 Shintani Feb 2013 A1
20130083164 Engelbert et al. Apr 2013 A1
20130100132 Katayama et al. Apr 2013 A1
20130135447 Kim May 2013 A1
20130155206 Lazarski et al. Jun 2013 A1
20130155477 Yankov et al. Jun 2013 A1
20130173235 Freezer Jul 2013 A1
20130176393 Onishi et al. Jul 2013 A1
20130182798 Lozano Jul 2013 A1
20130194397 Kim et al. Aug 2013 A1
20130194502 Kim et al. Aug 2013 A1
20130215241 Onishi et al. Aug 2013 A1
20130229488 Ishimaru et al. Sep 2013 A1
20130235154 Salton-Morgenstern et al. Sep 2013 A1
20130302013 Takeshita Nov 2013 A1
20130308800 Bacon Nov 2013 A1
20130312082 Izu Nov 2013 A1
20130321577 Kobayashi Dec 2013 A1
20130342513 Kim et al. Dec 2013 A1
20140062999 Syu et al. Mar 2014 A1
20140064567 Kim et al. Mar 2014 A1
20140114630 Brave Apr 2014 A1
20140184738 Tomioka et al. Jul 2014 A1
20140192147 Mack et al. Jul 2014 A1
20140218358 Mack et al. Aug 2014 A1
20140267280 Zurek et al. Sep 2014 A1
20140347362 Maleki et al. Nov 2014 A1
20150002508 Tatarinov et al. Jan 2015 A1
20150016748 Ko et al. Jan 2015 A1
20150103081 Bae et al. Apr 2015 A1
20150181195 Bruls et al. Jun 2015 A1
20150269737 Lam et al. Sep 2015 A1
20150289015 Jung Oct 2015 A1
20150324840 Ramnath Krishnan Nov 2015 A1
20150356789 Komatsu et al. Dec 2015 A1
20160109940 Lyren et al. Apr 2016 A1
20160150223 Hwang et al. May 2016 A1
20160180193 Masters et al. Jun 2016 A1
20160180441 Hasan et al. Jun 2016 A1
20160241828 Richards et al. Aug 2016 A1
20160286196 Luthra et al. Sep 2016 A1
Provisional Applications (1)
Number Date Country
61784354 Mar 2013 US
Continuations (1)
Number Date Country
Parent 14210841 Mar 2014 US
Child 15997625 US