A method of establishing wireless communications between an interrogator and individual ones of multiple wireless identification devices, the method comprising utilizing a tree search method to attempt to identify individual ones of the multiple wireless identification devices so as to be able to perform communications, without collision, between the interrogator and individual ones of the multiple wireless identification devices, a search tree being defined for the tree search method, the tree having multiple nodes respectively representing subgroups of the multiple wireless identification devices, wherein the interrogator transmits a command at a node, requesting that devices within the subgroup represented by the node respond, wherein the interrogator determines if a collision occurs in response to the command and, if not, repeats the command at the same node. An interrogator configured to transmit a command at a node, requesting that devices within the subgroup represented by the node respond, the interrogator further being configured to determine if a collision occurs in response to the command and, if not, to repeat the command at the same node . In one aspect, a method implemented in an rfid device includes: receiving a first command, comprising a first set of bit values, from an interrogator to select the rfid device based on a comparison between the first set of bit values and data stored in the rfid device; transmitting a response to the first command, the response including an identifier of the rfid device; if the response is received at an interrogator, remaining silent when the first command is subsequently repeated; and if the response is not received at the interrogator, re-transmitting the response when the first command is subsequently repeated.
|
0. 54. A method implemented in a radio frequency identification (rfid) system having an interrogator to poll a plurality of rfid tags, the method comprising:
transmitting a first command to select a first subset of rfid tags;
receiving one or more responses from the subset of rfid tags, the one or more responses including a random number generated at a first rfid tag of the plurality of rfid tags; and
retransmitting the first command if at least one of the one or more responses is received without a collision.
0. 52. A method implemented in a radio frequency identification (rfid) device, the method comprising:
receiving a first command, comprising a first set of bit values, from an interrogator to select the rfid device based on a comparison between the first set of bit values and data stored in the rfid device;
transmitting a response to the first command, the response including an identifier of the rfid device;
if the response is received at an interrogator, remaining silent when the first command is subsequently repeated; and
if the response is not received at the interrogator, retransmitting the response when the first command is subsequently repeated.
0. 45. A method implemented in a radio frequency identification (rfid) system having at least one rfid tag and at least one rfid interrogator, the method comprising:
generating random numbers at a plurality of rfid tags, including an rfid tag affixed to an object;
transmitting a first command from the interrogator to select rfid tags, including the rfid tag affixed to the object, that have generated random numbers that are within a subset of random numbers;
the selected rfid tags transmitting a response, including a random number generated by the rfid tag affixed to the object;
if the random number is received at the interrogator, retransmitting the first command.
0. 39. A radio frequency identification (rfid) system, comprising:
a plurality of rfid tags; and
at least one interrogator, the interrogator to transmit a first request to the plurality of rfid tags, the first request specifying a first subgroup of a group of random numbers, among the plurality of rfid tags at least one rfid tag having generated a random number that is within the first subgroup to provide a first response, the interrogator to receive one or more responses, including the first response, from one or more of the plurality of rfid tags respectively, and the interrogator to repeat the first request if the first response is received without a detected collision.
0. 49. An interrogator, comprising:
one or more antennas to poll a plurality of radio frequency identification (rfid) tags;
means for transmitting a first command to select a first subset of the plurality of rfid tags;
means for receiving one or more responses from the subset of rfid tags, the one or more responses including a random number generated at a first rfid tag of the plurality of rfid tags;
means for transmitting the first command if at least one of the one or more responses is received without a collision; and
means for transmitting a second command to select a second subset of the plurality of rfid tags if a collision is detected in the one or more responses.
0. 66. A radio frequency identification (rfid) interrogator, comprising:
an antenna;
a transmitter coupled to the antenna to transmit a first command comprising a value, having multiple bits, corresponding to a group of one or more rfid devices to be selected in a field of the interrogator;
a receiver to receive a response to the first command from an rfid device selected by the first command in accordance with the value, the response to include an identifier of the rfid device and to be received in a time slot in accordance with a time slot method; and
processing circuitry to determine if the response is received without a collision, and if so, to transmit a second command to silence the rfid device and to retransmit the first command, including the value, to reselect the group to respond to the first command.
0. 79. A radio frequency identification (rfid) system, comprising:
an interrogator to transmit a first command to select a group of one or more rfid devices in a field of the interrogator, wherein the first command includes a first identifier, comprising a plurality of bits, that corresponds to the group of one or more rfid devices; and
an rfid device in the field of the interrogator to determine, using the first identifier, if the rfid device is selected as one of the group, and if so, to communicate a response to the first command in a first time slot with a first probability, wherein the response includes a second identifier of the rfid device;
wherein the interrogator is to retransmit the first command, including the first identifier, after the interrogator receives the response, without a collision, from the rfid device and while the group remains in the field of the interrogator.
0. 72. A method comprising:
transmitting from an interrogator a first command, including a first identifier comprising a plurality of bits, to select a set of one or more rfid devices, corresponding to the first identifier, in a field of the interrogator, and to request the set to respond in accordance with a time slot method in which an rfid device responds in a first time slot with a probability indicated by the first command;
receiving a first response to the first command from a first rfid device of the set, wherein the first response is received in a time slot in accordance with the time slot method and the first response includes a second identifier of the rfid device;
detecting no collision in the first response from the first rfid device; and
retransmitting from the interrogator the first command, including the first identifier, to select the set of one or more rfid devices and to request the set to respond while the set remains in the field of the interrogator.
0. 59. A radio frequency identification (rfid) device, comprising:
an antenna;
a receiver coupled to the antenna to receive a first command from an interrogator, the first command comprising a first value having multiple bits to select a group of one or more rfid devices in a field of the interrogator;
processing circuitry to determine if the rfid device is selected by the interrogator based on the first value; and
a transmitter to communicate a response to the first command in a first time slot with a first probability if the rfid device is selected by the interrogator in accordance with the first value, wherein the response includes an identifier of the rfid device and the first probability is indicated by the first command;
wherein if the first command, including the first value to select the group, is subsequently repeated by the interrogator while the rfid device remains within the field of the interrogator, the rfid device is configured to:
remain silent, if the response was received at the interrogator without detecting a collision, and
retransmit the response if the response was not received at the interrogator without detecting a collision.
0. 1. A method of establishing wireless communications between an interrogator and wireless identification devices, the method comprising utilizing a tree search technique to establish communications, without collision, between the interrogator and individual ones of the multiple wireless identification devices, the method including using a search tree having multiple nodes respectively representing subgroups of the multiple wireless identification devices, the method further comprising, for a node, transmitting a command, using the interrogator, requesting that devices within the subgroup represented by the node respond, determining with the interrogator if a collision occurred in response to the command and, if not, repeating the command at the same node.
0. 2. A method in accordance with
0. 3. A method in accordance with
0. 4. A method in accordance with
0. 5. A method in accordance with
0. 6. A method in accordance with
0. 7. A method of addressing messages from an interrogator to a selected one or more of a number of communications devices, the method comprising:
establishing for respective devices unique identification numbers;
causing the devices to select random values, wherein respective devices choose random values independently of random values selected by the other devices;
transmitting a communication, from the interrogator, requesting devices having random values within a first specified group of random values to respond;
receiving the communication at multiple devices, devices receiving the communication respectively determining if the random value chosen by the device falls within the first specified group and, if so, sending a reply to the interrogator; and
determining using the interrogator if a collision occurred between devices that sent a reply and, if so, creating a second specified group smaller than the first specified group; and, if not, again transmitting a communication requesting devices having random values within the first specified group of random values to respond.
0. 8. A method of addressing messages from an interrogator to a selected one or more of a number of communications devices in accordance with
0. 9. A method in accordance with
0. 10. A method of addressing messages from an interrogator to a selected one or more of a number of communications devices in accordance with
0. 11. A method of addressing messages from a transponder to a selected one or more of a number of communications devices, the method comprising:
establishing unique identification numbers for respective devices;
causing the devices to select random values, wherein respective devices choose random values independently of random values selected by the other devices;
transmitting a communication from the transponder requesting devices having random values within a specified group of a plurality of possible groups of random values to respond, the plurality of possible groups being organized in a binary tree defined by a plurality of nodes at respective levels, the specified group being defined as being at one of the nodes;
receiving the communication at multiple devices, devices receiving the communication respectively determining if the random value chosen by the device falls within the specified group and, if so, sending a reply to the transponder; and, if not, not sending a reply; and
determining using the transponder if a collision occurred between devices that sent a reply and, if so, creating a new, smaller, specified group by descending in the tree; and, if not, transmitting a communication at the same node.
0. 12. A method of addressing messages from a transponder to a selected one or more of a number of communications devices in accordance with
0. 13. A method of addressing messages from a transponder to a selected one or more of a number of communications devices in accordance with
0. 14. A method of addressing messages from an interrogator to a selected one or more of a number of rfid devices, the method comprising:
establishing for respective devices unique identification numbers;
causing the devices to select random values, wherein respective devices choose random values independently of random values selected by the other devices;
transmitting a command using the interrogator requesting devices having random values within a specified group of a plurality of possible groups of random values to respond, the specified group being equal to or less than the entire set of random values, the plurality of possible groups being organized in a binary tree defined by a plurality of nodes at respective levels;
receiving the command at multiple rfid devices, rfid devices receiving the command respectively determining if their chosen random values fall within the specified group and, only if so, sending a reply to the interrogator, wherein sending a reply to the interrogator comprises transmitting the unique identification number of the device sending the reply;
determining using the interrogator if a collision occurred between devices that sent a reply and, if so, creating a new, smaller, specified group using a different level of the tree, the interrogator transmitting a command requesting devices having random values within the new specified group of random values to respond; and, if not, the interrogator re-transmitting a command requesting devices having random values within the first mentioned specified group of random values to respond; and
if a reply without collision is received from a device, the interrogator subsequently sending a command individually addressed to that device.
0. 15. A method of addressing messages from an interrogator to a selected one or more of a number of rfid devices in accordance with
0. 16. A method of addressing messages from an interrogator to a selected one or more of a number of rfid devices in accordance with
0. 17. A method of addressing messages from an interrogator to a selected one or more of a number of rfid devices in accordance with
0. 18. A method of addressing messages from an interrogator to a selected one or more of a number of rfid devices in accordance with
0. 19. A method of addressing messages from an interrogator to a selected one or more of a number of rfid devices in accordance with
devices receiving the command respectively determining if their chosen random values fall within the new smaller specified group and, if so, sending a reply to the interrogator.
0. 20. A method of addressing messages from an interrogator to a selected one or more of a number of rfid devices in accordance with
determining if a collision occurred between devices that sent a reply and, if so, creating a new specified group and repeating the transmitting of the command requesting devices having random values within a specified group of random values to respond using different specified groups until all of the devices capable of communicating with the interrogator are identified.
0. 21. A communications system comprising an interrogator, and a plurality of wireless identification devices configured to communicate with the interrogator using RF, the interrogator being configured to employ tree searching to attempt to identify individual ones of the multiple wireless identification devices, so as to be able to perform communications without collision between the interrogator and individual ones of the multiple wireless identification devices, the interrogator being configured to follow a search tree, the tree having multiple nodes respectively representing subgroups of the multiple wireless identification devices, the interrogator being configured to transmit a command at a node, requesting that devices within the subgroup represented by the node respond, the interrogator further being configured to determine if a collision occurs in response to the command and, if not, to repeat the command at the same node.
0. 22. A communications system in accordance with
0. 23. A communications system in accordance with
0. 24. A communications system in accordance with
0. 25. A communications system in accordance with
0. 26. A communications system in accordance with
0. 27. A system comprising:
an interrogator;
a number of communications devices capable of wireless communications with the interrogator;
means for establishing for respective devices unique identification numbers respectively having the first predetermined number of bits;
means for causing the devices to select random values, wherein respective devices choose random values independently of random values selected by the other devices;
means for causing the interrogator to transmit a command requesting devices having random values within a specified group of random values to respond;
means for causing devices receiving the command to determine if their chosen random values fall within the specified group and, if so, to send a reply to the interrogator; and
means for causing the interrogator to determine if a collision occurred between devices that sent a reply and, if so, to create a new, smaller, specified group; and, if not, transmit a command requesting devices having random values within the same specified group of random values to respond.
0. 28. A system in accordance with
0. 29. A system in accordance with
0. 30. A system in accordance with
0. 31. A system comprising:
an interrogator configured to communicate to a selected one or more of a number of communications devices; and
a plurality of communications devices; the devices being configured to select random values, wherein respective devices choose random values independently of random values selected by the other devices; the interrogator being configured to transmit a command requesting devices having random values within a specified group of a plurality of possible groups of random values to respond, the specified group being less than the entire set of random values, the plurality of possible groups being organized in a binary tree defined by a plurality of nodes at respective levels, the specified group being defined as being at one of the nodes; devices receiving the command being configured to respectively determine if their chosen random values fall within the specified group and, only if so, send a reply to the interrogator, wherein sending a reply to the interrogator comprises transmitting the unique identification number of the device sending the reply; the interrogator being configured to determine if a collision occurred between devices that sent a reply and, if so, create a new, smaller, specified group using a different level of the tree, the interrogator being configured to transmit a command requesting devices having random values within the new specified group of random values to respond; and, if not, the interrogator being configured to re-transmit a command requesting devices having random values within the first mentioned specified group of random values to respond.
0. 32. A system in accordance with
0. 33. A system in accordance with
0. 34. A system in accordance with
0. 35. A system comprising:
an interrogator configured to communicate to a selected one or more of a number of rfid devices;
a plurality of rfid devices, respective devices being configured to store a unique identification number, respective devices being further configured to store a random value;
the interrogator being configured to transmit a command requesting devices having random values within a specified group of a plurality of possible groups of random values to respond, the plurality of possible groups being organized in a binary tree defined by a plurality of nodes at respective levels, the specified group being defined as being at one of the nodes;
devices receiving the command respectively being configured to determine if their chosen random values fall within the specified group and, if so, send a reply to the interrogator; and, if not, not send a reply; and
the interrogator being configured to determine if a collision occurred between devices that sent a reply and, if so, to create a new, smaller, specified group by descending in the tree; and, if not, to transmit a command at the same node.
0. 36. A system in accordance with
0. 37. A system in accordance with
0. 38. A system in accordance with
0. 40. The system of
0. 41. The system of
0. 42. The system of
0. 43. The system of
0. 44. The system of
0. 46. The method of
0. 47. The method of
0. 48. The method of
0. 50. The interrogator of
0. 51. The interrogator of
0. 53. The method of
0. 55. The method of
affixing the plurality of rfid tags to a plurality of objects to track as inventory is added and removed.
0. 56. The method of
after receiving the one or more responses and prior to retransmitting the first command, transmitting a command to silence an rfid tag from which a response is received without a collision.
0. 57. The method of
0. 58. The method of
0. 60. The rfid device of
0. 61. The rfid device of
0. 62. The rfid device of
0. 63. The rfid device of
0. 64. The rfid device of
0. 65. The rfid device of
0. 67. The interrogator of
0. 68. The interrogator of
0. 69. The interrogator of
0. 70. The interrogator of
0. 71. The interrogator of
0. 73. The method of
0. 74. The method of
0. 75. The method of
0. 76. The method of
0. 77. The method of
receiving an identification code from the rfid device to identify a person with whom the rfid device is associated.
0. 78. The method of
0. 80. The system of
0. 81. The system of
0. 82. The system of
0. 83. The system of
0. 84. The system of
0. 85. The system of
|
and now U.S. Pat. No. 6,130,602. Other embodiments are possible. A power source or supply 18 is connected to the integrated circuit 16 to supply power to the integrated circuit 16. In one embodiment, the power source 18 comprises a battery.
The device 12 transmits and receives radio frequency communications to and from an interrogator 26. An exemplary interrogator is described in commonly assigned U.S. patent application Ser. No. 08/907,689, filed Aug. 8, 1997 and now U.S. Pat. No. 6,289,209, which is incorporated herein by reference. Preferably, the interrogator 26 includes an antenna 28, as well as dedicated transmitting and receiving circuitry, similar to that implemented on the integrated circuit 16.
Generally, the interrogator 26 transmits an interrogation signal or command 27 via the antenna 28. The device 12 receives the incoming interrogation signal via its antenna 14. Upon receiving the signal 27, the device 12 responds by generating and transmitting a responsive signal or reply 29. The responsive signal 29 typically includes information that uniquely identifies, or labels the particular device 12 that is transmitting, so as to identify any object or person with which the device 12 is associated. Although only one device 12 is shown in
The radio frequency data communication device 12 can be included in any appropriate housing or packaging. Various methods of manufacturing housings are described in commonly assigned U.S. patent application Ser. No. 08/800,037, filed Feb. 13, 1997, and now U.S. Pat. No. 5,988,510, which is incorporated herein by reference.
If the power supply 18 is a battery, the battery can take any suitable form. Preferably, the battery type will be selected depending on weight, size, and life requirements for a particular application. In one embodiment, the battery 18 is a thin profile button-type cell forming a small, thin energy cell more commonly utilized in watches and small electronic devices requiring a thin profile. A conventional button-type cell has a pair of electrodes, an anode formed by one face and a cathode formed by an opposite face. In an alternative embodiment, the power source 18 comprises a series connected pair of button type cells. In other alternative embodiments, other types of suitable power source are employed.
The circuitry 16 further includes a backscatter transmitter and is configured to provide a responsive signal to the interrogator 26 by radio frequency. More particularly, the circuitry 16 includes a transmitter, a receiver, and memory such as is described in U.S. patent application Ser. No. 08/705,043, filed Aug. 29, 1996 and now U.S. Pat. No. 6,130,602.
Radio frequency identification has emerged as a viable and affordable alternative to tagging or labeling small to large quantities of items. The interrogator 26 communicates with the devices 12 via an electromagnetic link, such as via an RF link (e.g., at microwave frequencies, in one embodiment), so all transmissions by the interrogator 26 are heard simultaneously by all devices 12 within range.
If the interrogator 26 sends out a command requesting that all devices 12 within range identify themselves, and gets a large number of simultaneous replies, the interrogator 26 may not be able to interpret any of these replies. Therefore, arbitration schemes are provided.
If the interrogator 26 has prior knowledge of the identification number of a device 12 which the interrogator 26 is looking for, it can specify that a response is requested only from the device 12 with that identification number. To target a command at a specific device 12, (i.e., to initiate point-on-point communication), the interrogator 26 must send a number identifying a specific device 12 along with the command. At start-up, or in a new or changing environment, these identification numbers are not known by the interrogator 26. Therefore, the interrogator 26 must identify all devices 12 in the field (within communication range) such as by determining the identification numbers of the devices 12 in the field. After this is accomplished, point-to-point communication can proceed as desired by the interrogator 26.
Generally speaking, RFID systems are a type of multiaccess communication system. The distance between the interrogator 26 and devices 12 within the field is typically fairly short (e.g., several meters), so packet transmission time is determined primarily by packet size and baud rate. Propagation delays are negligible. In such systems, there is a potential for a large number of transmitting devices 12 and there is a need for the interrogator 26 to work in a changing environment, where different devices 12 are swapped in and out frequently (e.g., as inventory is added or removed). In such systems, the inventors have determined that the use of random access methods work effectively for contention resolution (i.e., for dealing with collisions between devices 12 attempting to respond to the interrogator 26 at the same time).
RFID systems have some characteristics that are different from other communications systems. For example, one characteristic of the illustrated RFID systems is that the devices 12 never communicate without being prompted by the interrogator 26. This is in contrast to typical multiaccess systems where the transmitting units operate more independently. In addition, contention for the communication medium is short lived as compared to the ongoing nature of the problem in other multiaccess systems. For example, in a RFID system, after the devices 12 have been identified, the interrogator can communicate with them in a point-to-point fashion. Thus, arbitration in a RFID system is a transient rather than steady-state phenomenon. Further, the capability of a device 12 is limited by practical restrictions on size, power, and cost. The lifetime of a device 12 can often be measured in terms of number of transmissions before battery power is lost. Therefore, one of the most important measures of system performance in RFID arbitration is total time required to arbitrate a set of devices 12. Another measure is power consumed by the devices 12 during the process. This is in contrast to the measures of throughput and packet delay in other types of multiaccess systems.
Three variables are used: an arbitration value (AVALUE), an arbitration mask (AMASK), and a random value ID (RV). The interrogator sends an Identify command (IdentifyCmnd) causing each device of a potentially large number of responding devices to select a random number from a known range and use it as that device's arbitration number. The interrogator sends an arbitration value (AVALUE) and an arbitration mask (AMASK) to a set of devices 12. The receiving devices 12 evaluate the following equation: (AMASK & AVALUE)==(AMASK & RV) wherein “&” is a bitwise AND function, and wherein “==” is an equality function. If the equation evaluates to “1” (TRUE), then the device 12 will reply. If the equation evaluates to “0” (FALSE), then the device 12 will not reply. By performing this in a structured manner, with the number of bits in the arbitration mask being increased by one each time, eventually a device 12 will respond with no collisions. Thus, a binary search tree methodology is employed.
An example using actual numbers will now be provided using only four bits, for simplicity, reference being made to FIG. 4. In one embodiment, sixteen bits are used for AVALUE and AMASK. Other numbers of bits can also be employed depending, for example, on the number of devices 12 expected to be encountered in a particular application, on desired cost points, etc.
Assume, for this example, that there are two devices 12 in the field, one with a random value RV) of 1100 (binary), and another with a random value (RV) of 1010 (binary). The interrogator is tying to establish communications without collisions being caused by the two devices 12 attempting to communicate at the same time.
The interrogator sets AVALUE to 0000 (or “don't care” for all bits, as indicated by the character “X” in
Next, the interrogator sets AMASK to 0001 and AVALUE to 0000 and transmits an Identify command. Both devices 12 in the field have a zero for their least significant bit, and (AMASK & AVALUE)==(AMASK & RV) will be true for both devices 12. For the device 12 with a random value of 1100, the left side of the equation is evaluated as follows (0001 & 0000)=0000.
The right side is evaluated as (0001 & 1100)=0000. The left side equals the right side, so the equation is true for the device 12 with the random value of 1100. For the device 12 with a random value of 1010, the left side of the equation is evaluated as (0001 & 0000)=0000. The right side is evaluated as (0001 & 1010)=0000. The left side equals the right side, so the equation is true for the device 12 with the random value of 1010. Because the equation is true for both devices 12 in the field, both devices 12 in the field respond, and there is another collision.
Recursively, the interrogator next sets AMASK to 0011 with AVALUE still at 0000 and transmits an Identify command. (AMASK & AVALUE)==(AMASK & RV) is evaluated for both devices 12. For the device 12 with a random value of 1100, the leftside of the equation is evaluated as follows (0011 & 0000)=0000. The right side is evaluated as (0011 & 1100)=0000. The left side equals the right side, so the equation is true for the device 12 with the random value of 1100, so this device 12 responds. For the device 12 with a random value of 1010, the left side of the equation is evaluated as (0011 & 0000)=0000. The right side is evaluated as (0011 & 1010)=0010. The left side does not equal the right side, so the equation is false for the device 12 with the random value of 1010, and this device 12 does not respond; Therefore, there is no collision, and the interrogator can determine the identity (e.g., an identification number) for the device 12 that does respond.
De-recursion takes place, and the devices 12 to the right for the same AMASK level are accessed when AVALUE is set at 0010, and AMASK is set to 0011.
The device 12 with the random value of 1010 receives a command and evaluates the equation (AMASK & AVALUE)==(AMASK & RV). The left side of the equation is evaluated as (0011 & 0010)=0010. The right side of the equation is evaluated as (0011 & 1010)=0010. The right side equals the left side, so the equation is true for the device 12 with the random value of 1010. Because there are no other devices 12 in the subtree, a good reply is returned by the device 12 with the random value of 1010. There is no collision, and the interrogator 26 can determine the identity (e.g., an identification number) for the device 12 that does respond.
By recursion, what is meant is that a function makes a call to itself. In other words, the function calls itself within the body of the function. After the called function returns, de-recursion takes place and execution continues at the place just after the function call; i.e. at the beginning of the statement after the function call.
For instance, consider a function that has four statements (numbered 1,2,3,4) in it, and the second statement is a recursive call. Assume that the fourth statement is a return statement. The first time through the loop (iteration 1) the function executes the statement 2 and (because it is a recursive call) calls itself causing iteration 2 to occur. When iteration 2 gets to statement 2, it calls itself making iteration 3. During execution in iteration 3 of statement 1, assume that the function does a return. The information that was saved on the stack from iteration 2 is loaded and the function resumes execution at statement 3 (in iteration 2), followed by the execution of statement 4 which is also a return statement. Since there are no more statements in the function, the function de-recurses to iteration 1. Iteration 1, had previously recursively called itself in statement 2. Therefore, it now executes statement 3 (in iteration 1). Following that it executes a return at statement 4. Recursion is known in the art.
Consider the following code which can be used to implement operation of the method shown in FIG. 4 and described above.
Arbitrate(AMASK,AVALUE)
{
collision=IdentifyCmnd(AMASK, AVALUE) if
(collision) then
{
/* recursive call for left side */ Arbitrate
((AMASK<<1)+1, AVALUE
/* recursive call for right side */ Arbitrate
((AMASK<<1)+1, AVALUE+(AMASK+1))
} /* endif */
}/* return */
The symbol “<<” represents a bitwise left shift. “<<1” means shift left by one place. Thus, 0001<<1 would be 0010. Note, however, that AMASK is originally called with a value of zero, and 0000<<1 is still 0000. Therefore, for the first recursive call, AMASK=(AMASK<<1)+1. So for the first recursive call, the value of AMASK is 0000+0001=0001. For the second call, AMASK=(0001<<)+1=0010+1=0011. For the third recursive call, AMASK=(0011<<1)+1=0110+1=0111.
The routine generates values for AMASK and AVALUE to be used by the interrogator in an Identify command “IdentifyCmnd.” Note that the routine calls itself if there is a collision. De-recursion occurs when there is no collision. AVALUE and AMASK would have values such as the following assuming collisions take place all the way down to the bottom of the tree.
AVALUE
AMASK
0000
0000
0000
0001
0000
0011
0000
0111
0000
1111*
1000
1111*
0100
0111
0100
1111*
1100
1111*
This sequence of AMASK, AVALUE binary numbers assumes that there are collisions all the way down to the bottom of the tree, at which point the Identify command sent by the interrogator is finally successful so that no collision occurs. Rows in the table for which the interrogator is successful in receiving a reply without collision are marked with the symbol “*”. Note that if the Identify command was successful at, for example, the third line in the table then the interrogator would stop going down that branch of the tree and start down another, so the sequence would be as shown in the following table.
AVALUE
AMASK
0000
0000
0000
0001
0000
0011*
0010
0011
. . .
. . .
This method is referred to as a splitting method. It works by splitting groups of colliding devices 12 into subsets that are resolved in turn. The splitting method can also be viewed as a type of tree search. Each split moves the method one level deeper in the tree. Either depth-first or breadth-first traversals of the tree can be employed. Depth first traversals are performed by using recursion, as is employed in the code listed above. Breadth-first traversals are accomplished by using a queue instead of recursion.
Either depth-first or breadth-first traversals of the tree can be employed. Depth first traversals are performed by using recursion, as is employed in the code listed above. Breadth-first traversals are accomplished by using a queue instead of recursion. The following is an example of code for performing a breadth-first traversal.
Arbitrate(AMASK,AVALUE)
{
enqueue(0,0)
while (queue != empty)
(AMASK,AVALTE)=dequeue( )
collision=IdentifyCmnd(AMASK, AVALUE)
if (collision) then
{
TEMP = AMASK+1
NEW_AMASK = (AMASK<<1)+1
enqueue(NEW_AMASK, AVALUE)
enqueue(NEW_AMASK, AVALUE+TEMP)
} /* endif */
endwhile
}/* return */
The symbol “!=” means not equal to. AVALUE and AMASK would have values such as those indicated in the following table for such code.
AVALUE
AMASK
0000
0000
0000
0001
0001
0001
0000
0011
0010
0011
0001
0011
0011
0011
0000
0111
0100
0111
. . .
. . .
Rows in the table for which the interrogator is successful in receiving a reply without collision are marked with the symbol “*”.
The interrogator performs a tree search, either depth-first or breadth-first in a manner such as that described in connection with
When a single reply is read by the interrogator, for example, in node 52, the method described in connection with
AVALUE and AMASK would have values such as the following for a depth-first traversal in a situation similar to the one described above in connection with FIG. 4.
AVALUE
AMASK
0000
0000
0000
0001
0000
0011
0000
0111
0000
1111*
0000
1111*
1000
1111*
1000
1111*
0100
0111
0100
1111*
0100
1111*
1100
1111*
1100
1111*
Rows in the table for which the interrogator is successful in receiving a reply without collision are marked with the symbol “*”.
In operation, the interrogator transmits a command at a node, requesting that devices within the subgroup represented by the node respond. The interrogator determines if a collision occurs in response to the command and, if not, repeats the command at the same node.
In one alternative embodiment, the upper bound of the number of devices in the field (the maximum possible number of devices that could communicate with the interrogator) is determined, and the tree search method is started at a level 32, 34, 36, 38, or 40 in the tree depending on the determined upper bound. The level of the search tree on which to start the tree search is selected based on the determined maximum possible number of wireless identification devices that could communicate with the interrogator. The tree search is started at a level determined by taking the base two logarithm of the determined maximum possible number. More particularly, the tree search is started at a level determined by taking the base two logarithm of the power of two nearest the determined maximum possible number of devices 12. The level of the tree containing all subgroups of random values is considered level zero, and lower levels are numbered 1, 2, 3, 4, etc. consecutively.
Methods involving determining the upper bound on a set of devices and starting at a level in the tree depending on the determined upper bound are described in a commonly assigned patent application (attorney docket MI40-118) naming Clifton W. Wood, Jr. as an inventor, titled “Method of Addressing Messages and Communications System,” filed concurrently herewith, and Ser. No. 09/026,043, filed Feb. 19, 1998 and now U.S. Pat. No. 6,118,789, which is incorporated herein by reference.
In one alternative embodiment, a method involving starting at a level in the tree depending on a determined upper bound (such as the method described in the commonly assigned patent application mentioned above) is combined with a method comprising re-trying on the same node that gave a good reply, such as the method shown and described in connection with FIG. 5.
Another arbitration method that can be employed is referred to as the “Aloha” method. In the Aloha method, every time a device 12 is involved in a collision, it waits a random period of time before retransmitting. This method can be improved by dividing time into equally sized slots and forcing transmissions to be aligned with one of these lots. This is referred to as “slotted Aloha.” In operation, the interrogator asks all devices 12 in the field to transmit their identification numbers in the next time slot. If the response is garbled, the interrogator informs the devices 12 that a collision has occurred, and the slotted Aloha scheme is put into action. This means that each device 12 in the field responds within an arbitrary slot determined by a randomly selected value. In other words, in each successive time slot, the devices 12 decide to transmit their identification number with a certain probability.
The Aloha method is based on a system operated by the University of Hawaii. In 1971, the University of Hawaii began operation of a system named Aloha. A communication satellite was used to interconnect several university computers by use of a random access protocol. The system operates as follows. Users or devices transmit at any time they desire. After transmitting, a user listens for an acknowledgment from the receiver or interrogator. Transmissions from different users will sometimes overlap in time (collide), causing reception errors in the data in each of the contending messages. The errors are detected by the receiver, and the receiver sends a negative acknowledgment to the users. When a negative acknowledgment is received, the messages are retransmitted by the colliding users after a random delay. If the colliding users attempted to retransmit without the random delay, they would collide again. If the user does not receive either an acknowledgment or a negative acknowledgment within a certain amount of time, the user “times out” and retransmits the message.
There is a scheme known as slotted Aloha which improves the Aloha scheme by requiring a small amount of coordination among stations. In the slotted Aloha scheme, a sequence of coordination pulses is broadcast to all stations (devices). As is the case with the pure Aloha scheme, packet lengths are constant. Messages are required to be sent in a slot time between synchronization pulses, and can be started only at the beginning of a time slot. This reduces the rate of collisions because only messages transmitted in the same slot can interfere with one another. The retransmission mode of the pure 11 Aloha scheme is modified for slotted Aloha such that if a negative acknowledgment occurs, the device retransmits after a random delay of an integer number of slot times.
Aloha methods are described in a commonly assigned patent application (attorney docket MI40-089) naming Clifton W. Wood, Jr. as an inventor, titled “Method of Addressing Messages and Communications System,” filed concurrently herewith, and Ser. No. 09/026,248, filed Feb. 19, 1998, now U.S. Pat. No. 6,275,476, which is incorporated herein by reference.
In one alternative embodiment, an Aloha method (such as the method described in the commonly assigned patent application mentioned above) is combined with a method involving re-trying on the same node that gave a good reply, such as the method shown and described in connection with FIG. 5.
In another embodiment, levels of the search tree are skipped. Skipping levels in the tree, after a collision caused by multiple devices 12 responding, reduces the number of subsequent collisions without adding significantly to the number of no replies. In real-time systems, it is desirable to have quick arbitration sessions on a set of devices 12 whose unique identification numbers are unknown. Level skipping reduces the number of collisions, both reducing arbitration time and conserving battery life on a set of devices 12. In one embodiment, every other level is skipped. In alternative embodiments, more than one level is skipped each time.
The trade off that must be considered in determining how many (if any) levels to skip with each decent down the tree is as follows. Skipping levels reduces the number of collisions, thus saving battery power in the devices 12. Skipping deeper (skipping more than one level) further reduces the number of collisions. The more levels that are skipped, the greater the reduction in collisions. However, skipping levels results in longer search times because the number of queries (Identify commands) increases. The more levels that are skipped, the longer the search times. Skipping just one level has an almost negligible effect on search time, but drastically reduces the number of collisions. If more than one level is skipped, search time increases substantially. Skipping every other level drastically reduces the number of collisions and saves battery power without significantly increasing the number of queries.
Level skipping methods are described in a commonly assigned patent application (attorney docket MI40-117) naming Clifton W. Wood, Jr. and Don Hush as inventors, titled “Method of Addressing Messages, Method of Establishing Wireless Communications, and Communications System,” filed concurrently herewith, and Ser. No. 09/026,045, filed Feb. 19, 1998, now U.S. Pat. No. 6,072,801, which is incorporated herein by reference.
In one alternative embodiment, a level skipping method is combined with a method involving re-trying on the same node that gave a good reply, such as the method shown and described in connection with FIG. 5.
In yet another alternative embodiment, any two or more of the methods described in the commonly assigned, concurrently filed, applications mentioned above are combined.
In compliance with the statute, the invention has been described in language more or less specific as to structural and methodical features. It is to be understood, however, that the invention is not limited to the specific features shown and described, since the means herein disclosed comprise preferred forms of putting the invention into effect. The invention is, therefore, claimed in any of its forms or modifications within the proper scope of the appended claims appropriately interpreted in accordance with the doctrine of equivalents.
Patent | Priority | Assignee | Title |
10185909, | Feb 22 2005 | ICASHE, INC | Wearable device with current carrying conductor to produce time-varying magnetic field |
10318855, | Aug 08 2008 | ICASHE, INC | Computing device with NFC and active load modulation for mass transit ticketing |
10607129, | Aug 08 2008 | ICASHE, INC | Sideband generating NFC apparatus to mimic load modulation |
10803370, | Feb 22 2005 | ICASHE, INC | Provisioning wearable device with current carrying conductor to produce time-varying magnetic field |
10949726, | Aug 08 2008 | ICASHE, INC | Mobile phone with NFC apparatus that does not rely on power derived from an interrogating RF field |
11270174, | Feb 22 2005 | ICASHE, INC | Mobile phone with magnetic card emulation |
11436461, | Feb 22 2005 | ICASHE, INC | Mobile phone with magnetic card emulation |
11694053, | Aug 08 2008 | ICASHE, INC | Method and apparatus for transmitting data via NFC for mobile applications including mobile payments and ticketing |
11720777, | Feb 22 2005 | iCashe, Inc. | Mobile phone with magnetic card emulation |
8072331, | Aug 08 2008 | ICASHE, INC | Mobile payment device |
8083145, | Feb 22 2005 | ICASHE, INC | Provisioning an add-on apparatus with smartcard circuity for enabling transactions |
8091786, | Feb 22 2005 | ICASHE, INC | Add-on card with smartcard circuitry powered by a mobile device |
8136732, | Feb 22 2005 | ICASHE, INC | Electronic transaction card with contactless interface |
8231061, | Feb 24 2009 | ICASHE, INC | Contactless device with miniaturized antenna |
8408463, | Feb 22 2005 | ICASHE, INC | Mobile device add-on apparatus for financial transactions |
8410936, | Aug 08 2008 | ICASHE, INC | Contactless card that receives power from host device |
8451122, | Aug 08 2008 | ICASHE, INC | Smartcard performance enhancement circuits and systems |
8474718, | Feb 22 2005 | ICASHE, INC | Method for provisioning an apparatus connected contactless to a mobile device |
8573494, | Feb 22 2005 | ICASHE, INC | Apparatus for secure financial transactions |
8814053, | Aug 08 2008 | ICASHE, INC | Mobile payment device with small inductive device powered by a host device |
8866614, | Aug 08 2008 | ICASHE, INC | Active circuit for RFID |
8937549, | Aug 08 2008 | ICASHE, INC | Enhanced integrated circuit with smartcard controller |
9004361, | Feb 22 2005 | ICASHE, INC | Wearable device transaction system |
9014077, | Feb 19 1998 | Round Rock Research, LLC | Methods and apparatus for conducting financial transactions |
9092708, | Feb 22 2005 | ICASHE, INC | Wearable device with time-varying magnetic field |
9117152, | Aug 08 2008 | ICASHE, INC | 13.56 MHz enhancement circuit for smartmx smartcard controller |
9122965, | Aug 08 2008 | ICASHE, INC | 13.56 MHz enhancement circuit for smartcard controller |
9202156, | Feb 22 2005 | ICASHE, INC | Mobile device with time-varying magnetic field |
9208423, | Feb 22 2005 | ICASHE, INC | Mobile device with time-varying magnetic field and single transaction account numbers |
9251453, | Feb 22 2005 | ICASHE, INC | Wearable device with time-varying magnetic field and single transaction account numbers |
9390359, | Aug 08 2008 | ICASHE, INC | Mobile device with a contactless smartcard device and active load modulation |
9483722, | Aug 08 2008 | ICASHE, INC | Amplifier and transmission solution for 13.56MHz radio coupled to smartcard controller |
9489608, | Aug 08 2008 | ICASHE, INC | Amplifier and transmission solution for 13.56MHz radio coupled to smartmx smartcard controller |
9626611, | Feb 22 2005 | ICASHE, INC | Provisioning mobile device with time-varying magnetic field |
9715649, | Feb 22 2005 | ICASHE, INC | Device with current carrying conductor to produce time-varying magnetic field |
9741027, | Dec 14 2007 | Tyfone, Inc. | Memory card based contactless devices |
9904887, | Aug 08 2008 | ICASHE, INC | Computing device with NFC and active load modulation |
Patent | Priority | Assignee | Title |
4075632, | Aug 27 1974 | The United States of America as represented by the United States | Interrogation, and detection system |
4761778, | Apr 11 1985 | Massachusetts Institute of Technology | Coder-packetizer for random accessing in digital communication with multiple accessing |
4796023, | Dec 05 1986 | Stabilized binary tree protocol | |
4799059, | Mar 14 1986 | Itron, Inc | Automatic/remote RF instrument monitoring system |
4845504, | Apr 08 1987 | AMP Incorporated; AMP INVESTMENTS, INC ; WHITAKER CORPORATION, THE | Mobile radio network for nationwide communications |
4862453, | Oct 03 1986 | MARCONI COMPANY LIMITED, THE, THE GROVE, WARREN LANE, STANMORE, MIDDLESEX HA7 4LY, UNITED KINGDOM | Communication system |
4926182, | May 30 1986 | Sharp Kabushiki Kaisha | Microwave data transmission apparatus |
4955018, | Nov 10 1987 | Echelon Systems Corporation | Protocol for network having plurality of intelligent cells |
4969146, | Nov 10 1987 | Echelon Systems Corporation | Protocol for network having a plurality of intelligent cells |
5019813, | Apr 13 1987 | N V NEDERLANDSCHE APPARATENFABRIEK NEDAP, A CORP OF THE NETHERLANDS | System for the contactless exchange of data |
5025486, | Dec 09 1988 | Dallas Semiconductor Corporation | Wireless communication system with parallel polling |
5046066, | Feb 09 1987 | Cisco Technology, Inc | Wireless local area network |
5055968, | Jul 04 1988 | Sony Corporation | Thin electronic device having an integrated circuit chip and a power battery and a method for producing same |
5121407, | Sep 27 1990 | PITTWAY CORPORATION, A CORP OF PA | Spread spectrum communications system |
5124697, | Oct 16 1989 | Motorola, Inc. | Acknowledge-back pager |
5142694, | Jul 24 1989 | Motorola, Inc. | Reporting unit |
5144313, | Apr 24 1991 | Q-Free ASA | Method for processing transmitted and reflected signals for removing unwanted signals and noise from wanted signals |
5144668, | Jan 25 1991 | Motorola, Inc.; MOTOROLA, INC , A CORP OF DE | Signal overlap detection in a communication system |
5150114, | Nov 10 1989 | NXP B V | Polling-type information transmission system |
5150310, | Aug 30 1989 | AMPERSAND SPECIALTY MATERIALS VENTURES, L P ; MORGAN, HOLLAND FUND II, L P | Method and apparatus for position detection |
5164985, | Oct 27 1987 | CEDCOM NETWORK SYSTEMS PTY LIMITED | Passive universal communicator system |
5168510, | Mar 06 1984 | DBI Corporation | Spread spectrum-time diversity communications systems and transceivers for multidrop area networks |
5194860, | Nov 16 1989 | ABB METERING SYSTEMS LIMITED | Radio telemetry systems with channel selection |
5231646, | Mar 16 1992 | Kyros Corporation | Communications system |
5266925, | Sep 30 1991 | Round Rock Research, LLC | Electronic identification tag interrogation method |
5307463, | Mar 08 1990 | Allen-Bradley Company, Inc. | Programmable controller communication module |
5365551, | Dec 15 1992 | Round Rock Research, LLC | Data communication transceiver using identification protocol |
5373503, | Apr 30 1993 | Information Technology, Inc. | Group randomly addressed polling method |
5449296, | Mar 07 1994 | Cabel-Con, Inc. USA | Cable connector apparatus for preventing radiation leakage |
5461627, | Dec 24 1991 | Proxim Wireless Corporation | Access protocol for a common channel wireless network |
5479416, | Sep 30 1993 | Round Rock Research, LLC | Apparatus and method for error detection and correction in radio frequency identification device |
5500650, | Dec 15 1992 | Round Rock Research, LLC | Data communication method using identification protocol |
5530702, | May 31 1994 | Mobile Technics LLC | System for storage and communication of information |
5550547, | Sep 12 1994 | INTERMEC IP CORP , A CORPORATION OF DELAWARE | Multiple item radio frequency tag identification protocol |
5583850, | Dec 15 1992 | Round Rock Research, LLC | Data communication system using identification protocol |
5608739, | Sep 30 1993 | Round Rock Research, LLC | Apparatus and method for error detection and correction in radio frequency identification device |
5619648, | Nov 30 1994 | Alcatel Lucent | Message filtering techniques |
5621412, | Apr 26 1994 | Texas Instruments Incorporated | Multi-stage transponder wake-up, method and structure |
5625628, | Mar 15 1995 | U S BANK NATIONAL ASSOCIATION | Aloha optimization |
5627544, | Dec 15 1992 | Round Rock Research, LLC | Data communication method using identification protocol |
5640151, | Jun 15 1990 | OL SECURITY LIMITED LIABILITY COMPANY | Communication system for communicating with tags |
5649296, | Jun 19 1995 | THE CHASE MANHATTAN BANK, AS COLLATERAL AGENT | Full duplex modulated backscatter system |
5686902, | Jun 15 1990 | SAVI TECHNOLOGY, INC | Communication system for communicating with tags |
5790946, | Jul 15 1993 | Round Rock Research, LLC | Wake up device for a communications system |
5805586, | May 02 1995 | Motorola, Inc | Method, device and data communication system for multilink polling |
5841770, | Dec 15 1992 | Round Rock Research, LLC | Data communication system using indentification protocol |
5914671, | Feb 27 1997 | Round Rock Research, LLC | System and method for locating individuals and equipment, airline reservation system, communication system |
5936560, | Dec 04 1996 | HANGER SOLUTIONS, LLC | Data compression method and apparatus performing high-speed comparison between data stored in a dictionary window and data to be compressed |
5940006, | Dec 12 1995 | THE CHASE MANHATTAN BANK, AS COLLATERAL AGENT | Enhanced uplink modulated backscatter system |
5942987, | Sep 09 1994 | INTERMEC IP CORP , A CORPORATION OF DELAWARE | Radio frequency identification system with write broadcast capability |
5952922, | Dec 31 1996 | THE CHASE MANHATTAN BANK, AS COLLATERAL AGENT | In-building modulated backscatter system |
5966471, | Dec 23 1997 | United States of America | Method of codebook generation for an amplitude-adaptive vector quantization system |
5974078, | Mar 17 1993 | Round Rock Research, LLC | Modulated spread spectrum in RF identification systems method |
5988510, | Feb 13 1997 | Round Rock Research, LLC | Tamper resistant smart card and method of protecting data in a smart card |
6038455, | Sep 25 1995 | Cirrus Logic, INC | Reverse channel reuse scheme in a time shared cellular communication system |
6061344, | Feb 19 1998 | Round Rock Research, LLC | Method of addressing messages and communications system |
6072801, | Feb 19 1998 | Round Rock Research, LLC | Method of addressing messages, method of establishing wireless communications, and communications system |
6075973, | May 18 1998 | Round Rock Research, LLC | Method of communications in a backscatter system, interrogator, and backscatter communications system |
6097292, | Apr 01 1996 | Cubic Corporation | Contactless proximity automated data collection system and method |
6104333, | Dec 19 1996 | Round Rock Research, LLC | Methods of processing wireless communication, methods of processing radio frequency communication, and related systems |
6118789, | Feb 19 1998 | Round Rock Research, LLC | Method of addressing messages and communications system |
6130602, | May 13 1996 | Round Rock Research, LLC | Radio frequency data communications device |
6150921, | Oct 17 1996 | RF TECHNOLOGIES | Article tracking system |
6157633, | Jun 10 1996 | AT&T MOBILITY II LLC | Registration of mobile packet data terminals after disaster |
6169474, | Apr 23 1998 | Round Rock Research, LLC | Method of communications in a backscatter system, interrogator, and backscatter communications system |
6177858, | Dec 01 1995 | WINSTEAD ASSESTS LTD | Method for remotely interrogating tags, and station and tag implementing said method |
6192222, | Sep 03 1998 | Round Rock Research, LLC | Backscatter communication systems, interrogators, methods of communicating in a backscatter system, and backscatter communication methods |
6216132, | Nov 20 1997 | IBM Corporation | Method and system for matching consumers to events |
6226300, | Feb 19 1998 | Round Rock Research, LLC | Method of addressing messages, and establishing communications using a tree search technique that skips levels |
6229987, | May 18 1998 | Round Rock Research, LLC | Method of communications in a backscatter system, interrogator, and backscatter communications system |
6243012, | Dec 31 1996 | Lucent Technologies Inc | Inexpensive modulated backscatter reflector |
6265962, | Sep 03 1997 | Round Rock Research, LLC | Method for resolving signal collisions between multiple RFID transponders in a field |
6265963, | Dec 19 1996 | Round Rock Research, LLC | Methods of processing wireless communication, methods of processing radio frequency communication, and related systems |
6275476, | Feb 19 1998 | Round Rock Research, LLC | Method of addressing messages and communications system |
6282186, | Feb 19 1998 | Round Rock Research, LLC | Method of addressing messages and communications system |
6288629, | May 23 1997 | INTERMEC IP CORP , A CORPORATION OF DELAWARE | Method of using write--ok flag for radio frequency (RF) transponders (RF Tags) |
6289209, | Dec 18 1996 | Round Rock Research, LLC | Wireless communication system, radio frequency communications system, wireless communications method, radio frequency communications method |
6307847, | Feb 19 1998 | Round Rock Research, LLC | Method of addressing messages and communications systems |
6307848, | Apr 18 2000 | Round Rock Research, LLC | Method of addressing messages, method of establishing wireless communications, and communications system |
6324211, | Apr 24 1998 | Round Rock Research, LLC | Interrogators communication systems communication methods and methods of processing a communication signal |
6415439, | Feb 04 1997 | MUSICQUBED INNOVATIONS, LLC | Protocol for a wireless control system |
6459726, | Apr 24 1998 | Round Rock Research, LLC | Backscatter interrogators, communication systems and backscatter communication methods |
6483427, | Oct 17 1996 | RF TECHNOLOGIES, INC | Article tracking system |
6566997, | Dec 03 1999 | ASSA ABLOY AB | Interference control method for RFID systems |
6570487, | Jan 24 1997 | AXCESS INTERNATIONAL, INC | Distributed tag reader system and method |
6707376, | Aug 09 2002 | SENSORMATIC ELECTRONICS, LLC | Pulsed power method for increased read range for a radio frequency identification reader |
6714559, | Dec 04 1991 | INNOVATIO IP VENTURES | Redundant radio frequency network having a roaming terminal communication protocol |
6771634, | Jun 10 1996 | AT&T MOBILITY II LLC | Registration of mobile packet data terminals after disaster |
6778096, | Nov 17 1997 | Lenovo PC International | Method and apparatus for deploying and tracking computers |
6784787, | Nov 14 1997 | Zebra Technologies Corporation | Identification system |
6850510, | Oct 05 1995 | AVAGO TECHNOLOGIES GENERAL IP SINGAPORE PTE LTD | Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones |
6919793, | Sep 09 1994 | Intermec IP CORP | Radio frequency identification system write broadcast capability |
7026935, | Nov 10 2003 | IMPINJ, INC | Method and apparatus to configure an RFID system to be adaptable to a plurality of environmental conditions |
7315522, | Feb 19 1998 | Round Rock Research, LLC | Communication methods using slotted replies |
7385477, | May 13 1996 | Round Rock Research, LLC | Radio frequency data communications device |
20030235184, | |||
20050060069, | |||
20050207364, | |||
20060022800, | |||
20060022801, | |||
20060022815, | |||
20060056325, | |||
20060209781, | |||
20070139164, | |||
20070176751, | |||
20080007412, | |||
20080042806, | |||
20080048832, | |||
20080048835, | |||
20080129485, | |||
20080180221, | |||
EP1072128, | |||
EP779520, | |||
JP2002228809, | |||
JP9054213, | |||
WO1997048216, | |||
WO1999043127, | |||
WO2008094728, | |||
WO9748216, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Sep 26 2007 | Keystone Technology Solutions, LLC | (assignment on the face of the patent) | / | |||
Dec 22 2009 | Keystone Technology Solutions, LLC | Micron Technology, Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 023839 | /0881 | |
Dec 23 2009 | Micron Technology, Inc | Round Rock Research, LLC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 023786 | /0416 |
Date | Maintenance Fee Events |
Jan 30 2013 | M1553: Payment of Maintenance Fee, 12th Year, Large Entity. |
Date | Maintenance Schedule |
May 25 2013 | 4 years fee payment window open |
Nov 25 2013 | 6 months grace period start (w surcharge) |
May 25 2014 | patent expiry (for year 4) |
May 25 2016 | 2 years to revive unintentionally abandoned end. (for year 4) |
May 25 2017 | 8 years fee payment window open |
Nov 25 2017 | 6 months grace period start (w surcharge) |
May 25 2018 | patent expiry (for year 8) |
May 25 2020 | 2 years to revive unintentionally abandoned end. (for year 8) |
May 25 2021 | 12 years fee payment window open |
Nov 25 2021 | 6 months grace period start (w surcharge) |
May 25 2022 | patent expiry (for year 12) |
May 25 2024 | 2 years to revive unintentionally abandoned end. (for year 12) |