Method of addressing messages and communications system
Claim Score by NHIP
Abstract
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 the 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.

Term
Term ended
Expired 19 February 2018, 8.6 years ago.
- Priority
- Filed
- Granted
- Expired
- Today
60 claims: 12 independent, 48 dependent
- 1A 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.
- 7A 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.
- 11A method of addressing messages from a transponder to a selected one or more of a number of communications device, 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 command at multiple devices, devices receiving the communication command respectively determining if the random value chosen by the device falls within the specified group and, if so, sending a reply to the transponder interrogator;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.
- 14A 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.
- 21A 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.
- 27A 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.
- 31A 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.
- 35A 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.
- 39A method of establishing wireless communications between an interrogator and wireless identification devices, the method comprising:transmitting a first interrogation command, using the interrogator, to a first plurality of wireless identification devices, said command requesting that devices receiving the command respond to the interrogator;detecting with the interrogator if a collision occurred in response to the interrogation command;sending an interrogation command to at least a portion of said first plurality of wireless identification devices until no collision is detected;and once no collision is detected, sending another interrogation command to at least a portion of said first plurality of wireless identification devices.
- 44A method of establishing wireless communications between an interrogator and wireless identification devices, the method comprising:transmitting a first interrogation command, using the interrogator, to a first plurality of wireless identification devices, said command requesting that devices receiving the command respond to the interrogator;detecting if a collision occurred in response to the interrogation command;in the event of detection of a collision, sending a signal to at least one wireless identification device to avoid a subsequent collision;sending an interrogation command to at least a portion of said first plurality of wireless identification devices until no collision is detected;and once no collision is detected, sending another interrogation command to said first plurality of wireless identification devices.
- 45A method comprising:performing arbitration including sending a first command from an interrogator to a plurality of wireless identification devices;receiving a good reply from a first wireless identification device of the plurality of wireless identification devices in response to the first command;sending a second command from the interrogator to silence the first wireless identification device;and resending the first command from the interrogator to the plurality of wireless identification devices.
- 50Broadest claimClaim Score 74, broad(NHIP)An arbitration method comprising:sending a first command from an interrogator to a plurality of wireless identification devices;receiving a reply from a first wireless identification device of the plurality of wireless identification devices, and detecting no collisions, in response to the first command;and resending the first command from the interrogator to the plurality of wireless identification devices in response to receiving the reply and detecting no collisions.
Independent claims12
84 paragraphs in 7 sections, as filed
CROSS REFERENCE TO RELATED APPLICATION
0001This is a Continuation of U.S. patent application Ser. No. 09/026,050, filed Feb. 19, 1998, now U.S. Pat. No. 6,061,344 and titled “Method of Addressing Messages and Communications System”.
id="INS-S-00001" date="20090331"
RELATED REISSUE APPLICATIONS
0002<i>More than one reissue application has been filed for the reissue of U.S. Pat. No. <b>6</b>,<b>282</b>,<b>186</b>. The reissue applications are the initial reissue application Ser. No. <b>10</b>/<b>652</b>,<b>573</b> filed Aug. <b>28</b>, <b>2003</b>, a continuation reissue application Ser. No. <b>11</b>/<b>862</b>,<b>121</b> filed Sep. <b>26</b>, <b>2007</b>, a continuation reissue application Ser. No. <b>11</b>/<b>862</b>,<b>124</b> filed Sep. <b>26</b>, <b>2007</b>, and a continuation reissue application Ser. No. <b>11</b>/<b>862</b>,<b>130</b> filed Sep. <b>26</b>, <b>2007</b>.</i>
TECHNICAL FIELD
0003This invention relates to communications protocols and to digital data communications. Still more particularly, the invention relates to data communications protocols in mediums such as radio communication or the like. The invention also relates to radio frequency identification devices for inventory control, object monitoring, determining the existence, location or movement of objects, or for remote automated payment.
BACKGROUND OF THE INVENTION
0004Communications protocols are used in various applications. For example, communications protocols can be used in electronic identification systems. As large numbers of objects are moved in inventory, product manufacturing, and merchandising operations, there is a continuous challenge to accurately monitor the location and flow of objects. Additionally, there is a continuing goal to interrogate the location of objects in an inexpensive and streamlined manner. One way of tracking objects is with an electronic identification system.
0005One presently available electronic identification system utilizes a magnetic coupling system. In some cases, an identification device may be provided with a unique identification code in order to distinguish between a number of different devices. Typically, the devices are entirely passive (have no power supply), which results in a small and portable package. However, such identification systems are only capable of operation over a relatively short range, limited by the size of a magnetic field used to supply power to the devices and to communicate with the devices.
0006Another wireless electronic identification system utilizes a large, board level, active transponder device affixed to an object to be monitored which receives a signal from an interrogator. The device receives the signal, then generates and transmits a responsive signal. The interrogation signal and the responsive signal are typically radio-frequency (RF) signals produced by an RF transmitter circuit. Because active devices have their own power sources, and do not need to be in close proximity to an interrogator or reader to receive power via magnetic coupling. Therefore, active transponder devices tend to be more suitable for applications requiring tracking of a tagged device that may not be in close proximity to an interrogator. For example, active transponder devices tend to be more suitable for inventory control or tracking.
0007Electronic identification systems can also be used for remote payment. For example, when a radio frequency identification device passes an interrogator at a toll booth, the toll both can determine the identity of the radio frequency identification device, and thus of the owner of the device, and debit an account held by the owner for payment of toll or can receive a credit card number against which the toll can be charged. Similarly, remote payment is possible for a variety of other goods or services.
0008A communication system typically includes two transponders: a commander station or interrogator, and a responder station or transponder device which replies to the interrogator.
0009If the interrogator has prior knowledge of the identification number of a device which the interrogator is looking for, it can specify that a response is requested only from the device with that identification number. Sometimes, such information is not available. For example, there are occasions where the interrogator is attempting to determine which of multiple devices are within communication range.
0010When the interrogator sends a message to a transponder device requesting a reply, there is a possibility that multiple transponder devices will attempt to respond simultaneously, causing a collision, and thus causing an erroneous message to be received by the interrogator. For example, if the interrogator sends out a command requesting that all devices within a communications range identify themselves, and gets a large number of simultaneous replies, the interrogator may not be able to interpret any of these replies. Thus, arbitration schemes are employed to permit communications free of collisions.
0011In one arbitration scheme or system, described in commonly assigned U.S. Pat. Nos. 5,627,544; 5,583,850; 5,500,650; and 5,365,551, all to Snodgrass et al. and all incorporated herein by reference, the interrogator sends a command 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. By transmitting requests for identification to various subsets of the full range of arbitration numbers, and checking for an error-free response, the interrogator determines the arbitration number of every responder station capable of communicating at the same time. Therefore, the interrogator is able to conduct subsequent uninterrupted communication with devices, one at a time, by addressing only one device.
0012Another arbitration scheme is referred to as the Aloha or slotted Aloha scheme. This scheme is discussed in various references relating to communications, such as Digital Communications: Fundamentals and Application, Bernard Sklar, published January 1988 by Prentice Hall. In this type of scheme, a device will respond to an interrogator using one of many time domain slots selected randomly by the device. A problem with the Aloha scheme is that if there are many devices, or potentially many devices in the field (i.e. in communications range, capable of responding) then there must be many available slots or many collisions will occur. Having many available slots slows down replies. If the magnitude of the number of devices in a field is unknown, then many slots are needed. This results in the system slowing down significantly because the reply time equals the number of slots multiplied by the time period required for one reply.
0013An electronic identification system which can be used as a radio frequency identification device, arbitration schemes, and various applications for such devices are described in detail in commonly assigned U.S. patent application Ser. No. 08/705,043, filed Aug. 29, 1996, and incorporated herein by reference.
SUMMARY OF THE INVENTION
0014The invention provides a wireless identification device configured to provide a signal to identify the device in response to an interrogation signal.
0015One aspect of the invention provides a method of establishing wireless communications between an interrogator and individual ones of multiple wireless identification devices. The method comprises 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 is defined for the tree search method. The tree has multiple nodes respectively representing subgroups of the multiple wireless identification devices. 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.
0016Another aspect of the invention provides a communications system comprising an interrogator, and a plurality of wireless identification devices configured to communicate with the interrogator in a wireless fashion. The interrogator is 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 is configured to follow a search tree, the tree having multiple nodes respectively representing subgroups of the multiple wireless identification devices. The interrogator is configured to transmit a command at a node, requesting that devices within the subgroup represented by the node respond. The interrogator is further configured to determine if a collision occurs in response to the command and, if not, to repeat the command at the same node.
0017One aspect of the invention provides a radio frequency identification device comprising an integrated circuit including a receiver, a transmitter, and a microprocessor. In one embodiment, the integrated circuit is a monolithic single die single metal layer integrated circuit including the receiver, the transmitter, and the microprocessor. The device of this embodiment includes an active transponder, instead of a transponder which relies on magnetic coupling for power and therefore has a much greater range.
BRIEF DESCRIPTION OF THE DRAWINGS
0018Preferred embodiments of the invention are described below with reference to the following accompanying drawings.
0019<figref idref="DRAWINGS">FIG. 1</figref> is a high level circuit schematic showing an interrogator and a radio frequency identification device embodying the invention.
0020<figref idref="DRAWINGS">FIG. 2</figref> is a front view of a housing, in the form of a badge or card, supporting the circuit of <figref idref="DRAWINGS">FIG. 1</figref> according to one embodiment the invention.
0021<figref idref="DRAWINGS">FIG. 3</figref> is a front view of a housing supporting the circuit of <figref idref="DRAWINGS">FIG. 1</figref> according to another embodiment of the invention.
0022<figref idref="DRAWINGS">FIG. 4</figref> is a diagram illustrating a tree splitting sort method for establishing communication with a radio frequency identification device in a field of a plurality of such devices.
0023FIG. <b>5</b>. is a diagram illustrating a modified tree splitting sort method for establishing communication with a radio frequency identification device in a field of a plurality of such devices.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
0024This disclosure of the invention is submitted in furtherance of the constitutional purposes of the U.S. Patent Laws “to promote the progress of science and useful arts” (Article 1, Section 8).
0025<figref idref="DRAWINGS">FIG. 1</figref> illustrates a wireless identification device <b>12</b> in accordance with one embodiment of the invention. In the illustrated embodiment, the wireless identification device is a radio frequency data communication device <b>12</b>, and includes RFID circuitry <b>16</b>. The device <b>12</b> further includes at least one antenna <b>14</b> connected to the circuitry <b>16</b> for wireless or radio frequency transmission and reception by the circuitry <b>16</b>. In the illustrated embodiment, the RFID circuitry is defined by an integrated circuit as described in the above-incorporated patent application Ser. No. 08/705,043, filed Aug. 29, 1996. Other embodiments are possible. A power source or supply <b>18</b> is connected to the integrated circuit <b>16</b> to supply power to the integrated circuit <b>16</b>. In one embodiment, the power source <b>18</b> comprises a battery.
0026The device <b>12</b> transmits and receives radio frequency communications to and from an interrogator <b>26</b>. An exemplary interrogator is described in commonly assigned U.S. patent application Ser. No. 08/907,689, filed Aug. 8, 1997 and incorporated herein by reference. Preferably, the interrogator <b>26</b> includes an antenna <b>28</b>, as well as dedicated transmitting and receiving circuitry, similar to that implemented on the integrated circuit <b>16</b>.
0027Generally, the interrogator <b>26</b> transmits an interrogation signal or command <b>27</b> via the antenna <b>28</b>. The device <b>12</b> receives the incoming interrogation signal via its antenna <b>14</b>. Upon receiving the signal <b>27</b>, the device <b>12</b> responds by generating and transmitting a responsive signal or reply <b>29</b>. The responsive signal <b>29</b> typically includes information that uniquely identifies, or labels the particular device <b>12</b> that is transmitting, so as to identify any object or person with which the device <b>12</b> is associated. Although only one device <b>12</b> is shown in <figref idref="DRAWINGS">FIG. 1</figref>, typically there will be multiple devices <b>12</b> that correspond with the interrogator <b>26</b>, and the particular devices <b>12</b> that are in communication with the interrogator <b>26</b> will typically change over time. In the illustrated embodiment in <figref idref="DRAWINGS">FIG. 1</figref>, there is no communication between multiple devices <b>12</b>. Instead, the devices <b>12</b> respectively communicate with the interrogator <b>26</b>. Multiple devices <b>12</b> can be used in the same field of an interrogator <b>26</b> (i.e., within communications range of an interrogator <b>26</b>).
0028The radio frequency data communication device <b>12</b> 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 incorporated herein by reference.
0029<figref idref="DRAWINGS">FIG. 2</figref> shows but one embodiment in the form of a card or badge <b>19</b> including a housing <b>11</b> of plastic or other suitable material supporting the device <b>12</b> and the power supply <b>18</b>. In one embodiment, the front face of the badge has visual identification features such as graphics, text, information found on identification or credit cards, etc.
0030<figref idref="DRAWINGS">FIG. 3</figref> illustrates but one alternative housing supporting the device <b>12</b>. More particularly, <figref idref="DRAWINGS">FIG. 3</figref> shows a miniature housing <b>20</b> encasing the device <b>12</b> and power supply <b>18</b> to define a tag which can be supported by an object (e.g., hung from an object, affixed to an object, etc.). Although two particular types of housings have been disclosed, other forms of housings are employed in alternative embodiments.
0031If the power supply <b>18</b> 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 <b>18</b> 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 <b>18</b> comprises a series connected pair of button type cells. In other alternative embodiments, other types of suitable power source are employed.
0032The circuitry <b>16</b> further includes a backscatter transmitter and is configured to provide a responsive signal to the interrogator <b>26</b> by radio frequency. More particularly, the circuitry <b>16</b> includes a transmitter, a receiver, and memory such as is described in U.S. patent application Ser. No. 08/705,043.
0033Radio frequency identification has emerged as a viable and affordable alternative to tagging or labeling small to large quantities of items. The interrogator <b>26</b> communicates with the devices <b>12</b> via an electromagnetic link, such as via an RF link (e.g., at microwave frequencies, in one embodiment), so all transmissions by the interrogator <b>26</b> are heard simultaneously by all devices <b>12</b> within range.
0034If the interrogator <b>26</b> sends out a command requesting that all devices <b>12</b> within range identify themselves, and gets a large number of simultaneous replies, the interrogator <b>26</b> may not be able to interpret any of these replies. Therefore, arbitration schemes are provided.
0035If the interrogator <b>26</b> has prior knowledge of the identification number of a device <b>12</b> which the interrogator <b>26</b> is looking for, it can specify that a response is requested only from the device <b>12</b> with that identification number. To target a command at a specific device <b>12</b>, (i.e., to initiate point-on-point communication), the interrogator <b>26</b> must send a number identifying a specific device <b>12</b> along with the command. At start-up, or in a new or changing environment, these identification numbers are not known by the interrogator <b>26</b>. Therefore, the interrogator <b>26</b> must identify all devices <b>12</b> in the field (within communication range) such as by determining the identification numbers of the devices <b>12</b> in the field. After this is accomplished, point-to-point communication can proceed as desired by the interrogator <b>26</b>.
0036Generally speaking, RFID systems are a type of multiaccess communication system. The distance between the interrogator <b>26</b> and devices <b>12</b> 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 <b>12</b> and there is a need for the interrogator <b>26</b> to work in a changing environment, where different devices <b>12</b> 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 <b>12</b> attempting to respond to the interrogator <b>26</b> at the same time).
0037RFID systems have some characteristics that are different from other communications systems. For example, one characteristic of the illustrated RFID systems is that the devices <b>12</b> never communicate without being prompted by the interrogator <b>26</b>. 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 <b>12</b> 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 <b>12</b> is limited by practical restrictions on size, power, and cost. The lifetime of a device <b>12</b> 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 <b>12</b>. Another measure is power consumed by the devices <b>12</b> during the process. This is in contrast to the measures of throughput and packet delay in other types of multiaccess systems.
0038<figref idref="DRAWINGS">FIG. 4</figref> illustrates one arbitration scheme that can be employed for communication between the interrogator and devices <b>12</b>. Generally, the interrogator <b>26</b> sends a command causing each device <b>12</b> of a potentially large number of responding devices <b>12</b> to select a random number from a known range and use it as that device's arbitration number. By transmitting requests for identification to various subsets of the full range of arbitration numbers, and checking for an error-free response, the interrogator <b>26</b> determines the arbitration number of every responder station capable of communicating at the same time. Therefore, the interrogator <b>26</b> is able to conduct subsequent unterrupted communication with devices <b>12</b>, one at a time, by addressing only one device <b>12</b>.
0039Three 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 <b>12</b>. The receiving devices <b>12</b> 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 <b>12</b> will reply. If the equation evaluates to “0” (FALSE), then the device <b>12</b> 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 <b>12</b> will respond with no collisions. Thus, a binary search tree methodology is employed.
0040An example using actual numbers will now be provided using only four bits, for simplicity, reference being made to FIG. <b>4</b>. 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 <b>12</b> expected to be encountered in a particular application, on desired cost points, etc.
0041Assume, for this example, that there are two devices <b>12</b> 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 trying to establish communications without collisions being caused by the two devices <b>12</b> attempting to communicate at the same time.
0042The interrogator sets AVALUE to 0000 (or “don't care” for all bits, as indicated by the character “X” in <figref idref="DRAWINGS">FIG. 4</figref>) and AMASK to 0000. The interrogator transmits a command to all devices <b>12</b> requesting that they identify themselves. Each of the devices <b>12</b> evaluate (AMASK & AVALUE)==(AMASK & RV) using the random value RV that the respective devices <b>12</b> selected. If the equation evaluates to “1” (TRUE), then the device <b>12</b> will reply. If the equation evaluates to “0” (FALSE), then the device <b>12</b> will not reply. In the first level of the illustrated tree, AMASK is 0000 and anything bitwise ANDed with all zeros results in all zeros, so both the devices <b>12</b> in the field respond, and there is a collision.
0043Next, the interrogator sets AMASK to 0001 and AVALUE to 0000 and transmits an identify command. Both devices <b>12</b> in the field have a zero for their least significant bit, and (AMASK & AVALUE)==(AMASK & RV) will be true for both devices <b>12</b>. For the device <b>12</b> with a random value of 1100, the left side of the equation is evaluated as follows (0001 & 0000)=0000.
0044The right side is evaluated as (0001 & 1100)=0000. The left side equals the right side, so the equation is true for the device <b>12</b> with the random value of 1100. For the device <b>12</b> 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 <b>12</b> with the random value of 1010. Because the equation is true for both devices <b>12</b> in the field, both devices <b>12</b> in the field respond, and there is another collision.
0045Recursively, 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 <b>12</b>. For the device <b>12</b> with a random value of 1100, the left side 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 <b>12</b> with the random value of 1100, so this device <b>12</b> responds. For the device <b>12</b> 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 <b>12</b> with the random value of 1010, and this device <b>12</b> does not respond. Therefore, there is no collision, and the interrogator can determine the identity (e.g., an identification number) for the device <b>12</b> that does respond.
0046De-recursion takes place, and the devices <b>12</b> to the right for the same AMASK level are accessed when AVALUE is set at 0010, and AMASK is set to 0011.
0047The device <b>12</b> 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 <b>12</b> with the random value of 1010. Because there are no other devices <b>12</b> in the subtree, a good reply is returned by the device <b>12</b> with the random value of 1010. There is no collision, and the interrogator <b>26</b> can determine the identity (e.g., an identification number) for the device <b>12</b> that does respond.
0048By 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.
0049For 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.
0050Consider the following code which can be used to implement operation of the method shown in FIG. <b>4</b> and described above.
0051<tables id="TABLE-US-00001" num="00001"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="offset" colwidth="14pt" align="left" /><colspec colname="1" colwidth="203pt" align="left" /><thead><row><entry /><entry namest="offset" nameend="1" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry /><entry>Arbitrate(AMASK,AVALUE)</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="offset" colwidth="28pt" align="left" /><colspec colname="1" colwidth="189pt" align="left" /><tbody valign="top"><row><entry /><entry> {</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="offset" colwidth="42pt" align="left" /><colspec colname="1" colwidth="175pt" align="left" /><tbody valign="top"><row><entry /><entry> collision=IdentifyCmnd(AMASK, AVALUE) if</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="offset" colwidth="56pt" align="left" /><colspec colname="1" colwidth="161pt" align="left" /><tbody valign="top"><row><entry /><entry> (collision) then</entry></row><row><entry /><entry> {</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="offset" colwidth="70pt" align="left" /><colspec colname="1" colwidth="147pt" align="left" /><tbody valign="top"><row><entry /><entry> /* recursive call for left side */ Arbitrate</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="offset" colwidth="84pt" align="left" /><colspec colname="1" colwidth="133pt" align="left" /><tbody valign="top"><row><entry /><entry> ((AMASK<<1)+1, AVALUE)</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="offset" colwidth="70pt" align="left" /><colspec colname="1" colwidth="147pt" align="left" /><tbody valign="top"><row><entry /><entry> /* recursive call for right side */ Arbitrate</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="offset" colwidth="84pt" align="left" /><colspec colname="1" colwidth="133pt" align="left" /><tbody valign="top"><row><entry /><entry> ((AMASK<<1)+1, AVALUE+(AMASK+1))</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="offset" colwidth="56pt" align="left" /><colspec colname="1" colwidth="161pt" align="left" /><tbody valign="top"><row><entry /><entry> } /* endif */</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="offset" colwidth="28pt" align="left" /><colspec colname="1" colwidth="189pt" align="left" /><tbody valign="top"><row><entry /><entry> }/* return */</entry></row><row><entry /><entry namest="offset" nameend="1" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
0052The 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.
0053The 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.
0054<tables id="TABLE-US-00002" num="00002"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="3"><colspec colname="offset" colwidth="49pt" align="left" /><colspec colname="1" colwidth="35pt" align="center" /><colspec colname="2" colwidth="133pt" align="center" /><thead><row><entry /><entry namest="offset" nameend="2" align="center" rowsep="1" /></row><row><entry /><entry>AVALUE</entry><entry>AMASK</entry></row><row><entry /><entry namest="offset" nameend="2" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry /><entry>0000</entry><entry>0000</entry></row><row><entry /><entry>0000</entry><entry>0001</entry></row><row><entry /><entry>0000</entry><entry>0011</entry></row><row><entry /><entry>0000</entry><entry>0111</entry></row><row><entry /><entry>0000</entry><entry> 1111*</entry></row><row><entry /><entry>1000</entry><entry> 1111*</entry></row><row><entry /><entry>0100</entry><entry>0111</entry></row><row><entry /><entry>0100</entry><entry> 1111*</entry></row><row><entry /><entry>1100</entry><entry> 1111*</entry></row><row><entry /><entry namest="offset" nameend="2" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
0055This 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.
0056<tables id="TABLE-US-00003" num="00003"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="3"><colspec colname="offset" colwidth="49pt" align="left" /><colspec colname="1" colwidth="35pt" align="center" /><colspec colname="2" colwidth="133pt" align="center" /><thead><row><entry /><entry namest="offset" nameend="2" align="center" rowsep="1" /></row><row><entry /><entry>AVALUE</entry><entry>AMASK</entry></row><row><entry /><entry namest="offset" nameend="2" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry /><entry>0000</entry><entry>0000</entry></row><row><entry /><entry>0000</entry><entry>0001</entry></row><row><entry /><entry>0000</entry><entry> 0011*</entry></row><row><entry /><entry>0010</entry><entry>0111</entry></row><row><entry /><entry>—</entry><entry>—</entry></row><row><entry /><entry namest="offset" nameend="2" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
0057This method is referred to as a splitting method. It works by splitting groups of colliding devices <b>12</b> 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.
0058Either 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.
0059<tables id="TABLE-US-00004" num="00004"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="offset" colwidth="28pt" align="left" /><colspec colname="1" colwidth="189pt" align="left" /><thead><row><entry /><entry namest="offset" nameend="1" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry /><entry>Arbitrate(AMASK,AVALUE)</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="offset" colwidth="42pt" align="left" /><colspec colname="1" colwidth="175pt" align="left" /><tbody valign="top"><row><entry /><entry> {</entry></row><row><entry /><entry> enqueue(0,0)</entry></row><row><entry /><entry> while (queue I= empty)</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="offset" colwidth="56pt" align="left" /><colspec colname="1" colwidth="161pt" align="left" /><tbody valign="top"><row><entry /><entry> (AMASK,AVALUE) = dequeue( )</entry></row><row><entry /><entry> collision=IdentifyCmnd(AMASK, AVALUE)</entry></row><row><entry /><entry> if (collision) then</entry></row><row><entry /><entry> {</entry></row><row><entry /><entry> TEMP = AMASK+1</entry></row><row><entry /><entry> NEW_AMASK = (AMASK<<1)+1</entry></row><row><entry /><entry> enqueue(NEW_AMASK, AVALUE)</entry></row><row><entry /><entry> enqueue(NEW_AMASK, AVALUE+TEMP)</entry></row><row><entry /><entry> } /* endif */</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="offset" colwidth="42pt" align="left" /><colspec colname="1" colwidth="175pt" align="left" /><tbody valign="top"><row><entry /><entry> endwhile</entry></row><row><entry /><entry> }/* return */</entry></row><row><entry /><entry namest="offset" nameend="1" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
0060The symbol “!=” means not equal to. AVALUE and AMASK would have values such as those indicated in the following table for such code.
0061<tables id="TABLE-US-00005" num="00005"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="3"><colspec colname="offset" colwidth="49pt" align="left" /><colspec colname="1" colwidth="35pt" align="center" /><colspec colname="2" colwidth="133pt" align="center" /><thead><row><entry /><entry namest="offset" nameend="2" align="center" rowsep="1" /></row><row><entry /><entry>AVALUE</entry><entry>AMASK</entry></row><row><entry /><entry namest="offset" nameend="2" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry /><entry>0000</entry><entry>0000</entry></row><row><entry /><entry>0000</entry><entry>0001</entry></row><row><entry /><entry>0001</entry><entry>0001</entry></row><row><entry /><entry>0000</entry><entry>0011</entry></row><row><entry /><entry>0010</entry><entry>0011</entry></row><row><entry /><entry>0001</entry><entry>0011</entry></row><row><entry /><entry>0011</entry><entry>0011</entry></row><row><entry /><entry>0000</entry><entry>0111</entry></row><row><entry /><entry>0100</entry><entry>0111</entry></row><row><entry /><entry>—</entry><entry>—</entry></row><row><entry /><entry namest="offset" nameend="2" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
0062Rows in the table for which the interrogator is successful in receiving a reply without collision are marked with the symbol “*”.
0063<figref idref="DRAWINGS">FIG. 5</figref> illustrates an embodiment wherein the interrogator <b>26</b> retries on the same node that yielded a good reply. The search tree has a plurality of nodes <b>51</b>, <b>52</b>, <b>53</b>, <b>54</b> etc. at respective levels <b>32</b>, <b>34</b>, <b>36</b>, <b>38</b>, or <b>40</b>. The size of subgroups of random values decrease in size by half with each node descended.
0064The interrogator performs a tree search, either depth-first or breadth-first in a manner such as that described in connection with <figref idref="DRAWINGS">FIG. 4</figref>, except that if the interrogator determines that no collision occurred in response to an identify command, the interrogator repeats the command at the same node. This takes advantage of an inherent capability of the devices, particularly if the devices use backscatter communication, called self-arbitration. Arbitration times can be reduced, and battery life for the devices can be increased.
0065When a single reply is read by the interrogator, for example, in node <b>52</b>, the method described in connection with <figref idref="DRAWINGS">FIG. 4</figref> would involve proceeding to node <b>53</b> and then sending another Identify command. Because a device <b>12</b> in a field of devices <b>12</b> can override weaker devices, this embodiment is modified such that the interrogator retries on the same node <b>52</b> after silencing the device <b>12</b> that gave the good reply. Thus, after receiving a good reply from node <b>52</b>, the interrogator remains on node <b>52</b> and reissues the Identify command after silencing the device that first responded on node <b>52</b>. Repeating the Identify command on the same node often yields other good replies, thus taking advantage of the devices natural ability to self-arbitrate.
0066AVALUE 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. <b>4</b>.
0067<tables id="TABLE-US-00006" num="00006"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="3"><colspec colname="offset" colwidth="49pt" align="left" /><colspec colname="1" colwidth="35pt" align="center" /><colspec colname="2" colwidth="133pt" align="center" /><thead><row><entry /><entry namest="offset" nameend="2" align="center" rowsep="1" /></row><row><entry /><entry>AVALUE</entry><entry>AMASK</entry></row><row><entry /><entry namest="offset" nameend="2" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry /><entry>0000</entry><entry>0000 </entry></row><row><entry /><entry>0000</entry><entry>0001 </entry></row><row><entry /><entry>0000</entry><entry>0011 </entry></row><row><entry /><entry>0000</entry><entry>0111 </entry></row><row><entry /><entry>0000</entry><entry>1111*</entry></row><row><entry /><entry>0000</entry><entry>1111*</entry></row><row><entry /><entry>1000</entry><entry>1111*</entry></row><row><entry /><entry>1000</entry><entry>1111*</entry></row><row><entry /><entry>0100</entry><entry>0111 </entry></row><row><entry /><entry>0100</entry><entry>1111*</entry></row><row><entry /><entry>0100</entry><entry>1111*</entry></row><row><entry /><entry>1100</entry><entry>1111*</entry></row><row><entry /><entry>1100</entry><entry>1111*</entry></row><row><entry /><entry namest="offset" nameend="2" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
0068Rows in the table for which the interrogator is successful in receiving a reply without collision are marked with the symbol “*”.
0069In 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.
0070In 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 <b>32</b>, <b>34</b>, <b>36</b>, <b>38</b>, or <b>40</b> 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 <b>12</b>. 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.
0071Methods 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 incorporated herein by reference.
0072In 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. <b>5</b>.
0073Another arbitration method that can be employed is referred to as the “Aloha” method. In the Aloha method, every time a device <b>12</b> 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 slots. This is referred to as “slotted Aloha.” In operation, the interrogator asks all devices <b>12</b> in the field to transmit their identification numbers in the next time slot. If the response is garbled, the interrogator informs the devices <b>12</b> that a collision has occurred, and the slotted Aloha scheme is put into action. This means that each device <b>12</b> in the field responds within an arbitrary slot determined by a randomly selected value. In other words, in each successive time slot, the devices <b>12</b> decide to transmit their identification number with a certain probability.
0074The 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.
0075There 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.
0076Aloha 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 incorporated herein by reference.
0077In 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. <b>5</b>.
0078In another embodiment, levels of the search tree are skipped. Skipping levels in the tree, after a collision caused by multiple devices <b>12</b> 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 <b>12</b> 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 <b>12</b>. In one embodiment, every other level is skipped. In alternative embodiments, more than one level is skipped each time.
0079The 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 <b>12</b>. 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.
0080Level 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 incorporated herein by reference.
0081In 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. <b>5</b>.
0082In yet another alternative embodiment, any two or more of the methods described in the commonly assigned, concurrently filed, applications mentioned above are combined.
0083In 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.
Contents7
4 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US9832769B2 | Cited by | United States of America | Applicant |
| US7936706B2 | Cited by | United States of America | Applicant |
| USRE42599E | Cited by | United States of America | Applicant |
| US2009322491A1 | Cited by | United States of America | Pre-grant |
| USRE43254E | Cited by | United States of America | Applicant |
| US9886706B2 | Cited by | United States of America | Applicant |
| US2011116421A1 | Cited by | United States of America | Pre-grant |
| USRE43382E | Cited by | United States of America | Applicant |
| US9014077B2 | Cited by | United States of America | Applicant |
| EP0779520A2 | Cites | European Patent Office (EPO) | Applicant |
| US2006022800A1 | Cites | United States of America | Applicant |
| US2006022801A1 | Cites | United States of America | Applicant |
| US2006022815A1 | Cites | United States of America | Applicant |
| US4075632A | Cites | United States of America | Applicant |
| US4761778A | Cites | United States of America | Applicant |
| US4799059A | Cites | United States of America | Applicant |
| US4845504A | Cites | United States of America | Applicant |
| US4862453A | Cites | United States of America | Applicant |
| US4926182A | Cites | United States of America | Applicant |
| US4955018A | Cites | United States of America | Applicant |
| US4969146A | Cites | United States of America | Applicant |
| US5019813A | Cites | United States of America | Applicant |
| US5025486A | Cites | United States of America | Applicant |
| US5046066A | Cites | United States of America | Applicant |
| US5055968A | Cites | United States of America | Applicant |
| US5121407A | Cites | United States of America | Applicant |
| US5124697A | Cites | United States of America | Applicant |
| US5142694A | Cites | United States of America | Applicant |
| US5144313A | Cites | United States of America | Applicant |
| US5144668A | Cites | United States of America | Applicant |
| US5150114A | Cites | United States of America | Applicant |
| US5150310A | Cites | United States of America | Applicant |
| US5164985A | Cites | United States of America | Applicant |
| US5168510A | Cites | United States of America | Applicant |
| US5194860A | Cites | United States of America | Applicant |
| US5231646A | Cites | United States of America | Applicant |
| US5266925A | Cites | United States of America | Applicant |
| US5307463A | Cites | United States of America | Applicant |
| US5365551A | Cites | United States of America | Applicant |
| US5373503A | Cites | United States of America | Applicant |
| US5479416A | Cites | United States of America | Applicant |
| US5500650A | Cites | United States of America | Applicant |
| US5583850A | Cites | United States of America | Applicant |
| US5608739A | Cites | United States of America | Applicant |
| US5619648A | Cites | United States of America | Applicant |
| US5621412A | Cites | United States of America | Applicant |
| US5625628A | Cites | United States of America | Applicant |
| US5627544A | Cites | United States of America | Applicant |
| US5640151A | Cites | United States of America | Applicant |
| US5649296A | Cites | United States of America | Applicant |
| US5790946A | Cites | United States of America | Applicant |
| US5805586A | Cites | United States of America | Applicant |
| US5841770A | Cites | United States of America | Applicant |
| US5914671A | Cites | United States of America | Applicant |
| US5936560A | Cites | United States of America | Applicant |
| US5940006A | Cites | United States of America | Applicant |
| US5942987A | Cites | United States of America | Applicant |
| US5952922A | Cites | United States of America | Applicant |
| US5966471A | Cites | United States of America | Applicant |
| US5974078A | Cites | United States of America | Applicant |
| US5988510A | Cites | United States of America | Applicant |
| US6038455A | Cites | United States of America | Applicant |
| US6061344A | Cites | United States of America | Applicant |
| US6072801A | Cites | United States of America | Applicant |
| US6075973A | Cites | United States of America | Applicant |
| US6104333A | Cites | United States of America | Applicant |
| US6118789A | Cites | United States of America | Applicant |
| US6130602A | Cites | United States of America | Applicant |
| US6157633A | Cites | United States of America | Applicant |
| US6169474B1 | Cites | United States of America | Applicant |
| US6192222B1 | Cites | United States of America | Applicant |
| US6216132B1 | Cites | United States of America | Applicant |
| US6226300B1 | Cites | United States of America | Applicant |
| US6229987B1 | Cites | United States of America | Applicant |
| US6265963B1 | Cites | United States of America | Applicant |
| US6275476B1 | Cites | United States of America | Applicant |
| US6282186B1 | Cites | United States of America | Applicant |
| US6289209B1 | Cites | United States of America | Applicant |
| US6307848B1 | Cites | United States of America | Applicant |
| US6324211B1 | Cites | United States of America | Applicant |
| US6459726B1 | Cites | United States of America | Applicant |
| US6566997B1 | Cites | United States of America | Applicant |
| US6707376B1 | Cites | United States of America | Applicant |
| US6714559B1 | Cites | United States of America | Search report |
| US6771634B1 | Cites | United States of America | Applicant |
| US6850510B2 | Cites | United States of America | Search report |
| US7026935B2 | Cites | United States of America | Applicant |
| WO9748216A2 | Cites | World Intellectual Property Organization (WIPO) | Applicant |
| US20060022800A1 | Cites | United States of America | Third party observation |
| US20060022801A1 | Cites | United States of America | Third party observation |
| US20060022815A1 | Cites | United States of America | Third party observation |
| EP779520A3 | Cites | European Patent Office (EPO) | Third party observation |
| WO9748216 | Cites | World Intellectual Property Organization (WIPO) | Third party observation |
| EPC™<i>Radio Frequency identity Protocols Class-1 Generation-2 UHF RFID Protocol for Communications at 860 MHz-960 MHz, EPC Global, Inc. </i>Version 1.0.9, cover sheet and pp. 37-38 (Jan. 2005). | Non-patent | – | Third party observation |
| Wright, Jim, “Trends and Innovations in RF Identification”, <i>SUN Microsystems, Inc., </i>(presentation); 30 pp. (Mar. 2005). | Non-patent | – | Third party observation |
| Whitepaper, “Understanding Gen 2: What It Is, How You Will Benefit and Criteria for Vendor Assessment”, <i>Symbol Technologies, Inc., </i>8 pp. (Jan. 2006). | Non-patent | – | Third party observation |
| Capetanakis, John I., “Generalized TDMA: The Multi-Accessing Tree Protocol,” <i>IEEE Transaction on Communications</i>, vol. Com 27, No. 10, pp. 1476-1484 (Oct. 1979). | Non-patent | – | Third party observation |
| Wolf, Jack Keil, “Principles of Group Testing and an Application to the Design and Analysis of Multi-Access Protocols,” NATO ASI Series E, Applied Sciences, N. 91, pp. 237-257 (1985). | Non-patent | – | Third party observation |
| Humblet, Pierre A., et al., “Efficient Accessing of a Multiaccess Channel”, <i>Proc IEEE Conference Decis Control Incl Symp Adapt Processes 1</i>, pp. 624-627 (1980). | Non-patent | – | Third party observation |
| EP serial No. 05016514.1 ; Extended Search Report And Search Opinion; mailed Jan. 26, 2007; 5 pp. | Non-patent | – | Third party observation |
88 members in 9 offices
Priority claims2
| Document | Office | Kind | Date |
|---|---|---|---|
| 2605098 | United States of America | A | |
| 55623500 | United States of America | A |
Members88
| Document | Office | Kind | |
|---|---|---|---|
| CA2308328A1 | Canada | A1 | |
| CA2308332A1 | Canada | A1 | |
| WO9921087A1 | World Intellectual Property Organization (WIPO) | A1 | |
| WO9921126A1 | World Intellectual Property Organization (WIPO) | A1 | |
| AU7375298A | Australia | A | |
| AU9040298A | Australia | A | |
| CA2310275A1 | Canada | A1 | |
| CA2310276A1 | Canada | A1 | |
| WO9927455A1 | World Intellectual Property Organization (WIPO) | A1 | |
| WO9927456A1 | World Intellectual Property Organization (WIPO) | A1 | |
| AU1400299A | Australia | A | |
| AU1460199A | Australia | A | |
| WO9927455B1 | World Intellectual Property Organization (WIPO) | B1 | |
| WO9943128A1 | World Intellectual Property Organization (WIPO) | A1 | |
| AU2589299A | Australia | A | |
| US5977994A | United States of America | A | |
| US6038352A | United States of America | A | |
| US6041148A | United States of America | A | |
| US6058434A | United States of America | A | |
| US6061344A | United States of America | A | |
| US6072801A | United States of America | A | |
| EP1029270A1 | European Patent Office (EPO) | A1 | |
| EP1031108A1 | European Patent Office (EPO) | A1 | |
| EP1032883A1 | European Patent Office (EPO) | A1 | |
| EP1032884A1 | European Patent Office (EPO) | A1 | |
| US6118789A | United States of America | A | |
| EP1031108A4 | European Patent Office (EPO) | A4 | |
| EP1072127A1 | European Patent Office (EPO) | A1 | |
| US6208772B1 | United States of America | B1 | |
| KR20010031192A | Republic of Korea | A | |
| KR20010031193A | Republic of Korea | A | |
| KR20010032263A | Republic of Korea | A | |
| US6226300B1 | United States of America | B1 | |
| US6233369B1 | United States of America | B1 | |
| US6282186B1 | United States of America | B1 | |
| US6307847B1 | United States of America | B1 | |
| US6307848B1 | United States of America | B1 | |
| US6308234B1 | United States of America | B1 | |
| US2001043569A1 | United States of America | A1 | |
| JP2001524713A | Japan | A | |
| AU743997B2 | Australia | B2 | |
| US2002019924A1 | United States of America | A1 | |
| JP2002509298A | Japan | A | |
| AU747283B2 | Australia | B2 | |
| AU748471B2 | Australia | B2 | |
| JP2002521741A | Japan | A | |
| JP2003517649A | Japan | A | |
| AU762144B2 | Australia | B2 | |
| EP1032883A4 | European Patent Office (EPO) | A4 | |
| EP1029270A4 | European Patent Office (EPO) | A4 | |
| EP1032884A4 | European Patent Office (EPO) | A4 | |
| EP1592186A2 | European Patent Office (EPO) | A2 | |
| EP1596544A2 | European Patent Office (EPO) | A2 | |
| EP1072127B1 | European Patent Office (EPO) | B1 | |
| AT316309T | Austria | T | |
| ATE316309T1 | Austria | T1 | |
| DE69929511D1 | Germany | D1 | |
| US7062578B2 | United States of America | B2 | |
| EP1032883B1 | European Patent Office (EPO) | B1 | |
| US2006190656A1 | United States of America | A1 | |
| AT336759T | Austria | T | |
| ATE336759T1 | Austria | T1 | |
| DE69929511T2 | Germany | T2 | |
| DE69835617D1 | Germany | D1 | |
| EP1596544A3 | European Patent Office (EPO) | A3 | |
| EP1592186A3 | European Patent Office (EPO) | A3 | |
| CA2310275C | Canada | C | |
| DE69835617T2 | Germany | T2 | |
| USRE40686EThis record | United States of America | E | |
| USRE41352E | United States of America | E | |
| USRE41471E | United States of America | E | |
| USRE41530E | United States of America | E | |
| USRE41531E | United States of America | E | |
| USRE42254E | United States of America | E | |
| USRE42344E | United States of America | E | |
| USRE42599E | United States of America | E | |
| EP1596544B1 | European Patent Office (EPO) | B1 | |
| AT524901T | Austria | T | |
| ATE524901T1 | Austria | T1 | |
| EP1592186B1 | European Patent Office (EPO) | B1 | |
| AT528882T | Austria | T | |
| ATE528882T1 | Austria | T1 | |
| USRE42900E | United States of America | E | |
| USRE43020E | United States of America | E | |
| USRE43254E | United States of America | E | |
| USRE43382E | United States of America | E | |
| USRE43445E | United States of America | E | |
| USRE44411E | United States of America | E |
60 transactions on the USPTO file
Allowed without a rejection on record.
- Non-final rejections
- 0
- Final rejections
- 0
- RCEs
- 0
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | Code | |
|---|---|---|
| Recordation of Patent Grant MailedPGM/ | PGM/ | |
| Issue Notification MailedAllowedWPIR | WPIR | |
| Receipt into PubsR1021 | R1021 | |
| Dispatch to FDCD1935 | D1935 | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Miscellaneous Incoming LetterLET. | LET. | |
| Dispatch to FDCD1935 | D1935 | |
| Dispatch to FDCD1935 | D1935 | |
| Application Is Considered Ready for IssuePILS | PILS | |
| Issue Fee Payment VerifiedN084 | N084 | |
| Issue Fee Payment VerifiedN084 | N084 | |
| Response to Reasons for AllowanceREAS | REAS | |
| Issue Fee Payment ReceivedIFEE | IFEE | |
| Mail Notice of AllowanceAllowedMN/=. | MN/=. | |
| Notice of Allowance Data Verification CompletedAllowedN/=. | N/=. | |
| Change in Power of Attorney (May Include Associate POA)PA.. | PA.. | |
| Correspondence Address ChangeC.AD | C.AD | |
| Miscellaneous Incoming LetterLET. | LET. | |
| Paralegal or electronic terminal disclaimer approvedP574 | P574 | |
| Terminal Disclaimer FiledDIST | DIST | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Cleared by OIPE CSRL194 | L194 | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| IFW TSS Processing by Tech Center CompleteTSSCOMP | TSSCOMP | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Supplemental ResponseSA.. | SA.. | |
| Corrected filing receiptCFRPT | CFRPT | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Application Return from OIPEWROIPE | WROIPE | |
| Application Is Now CompleteCOMP | COMP | |
| Mail-Petition Decision - GrantedMPTGR | MPTGR | |
| Pre-Exam Office Action WithdrawnW/OA | W/OA | |
| Application Return TO OIPEROIPE | ROIPE | |
| Application Dispatched from OIPEOIPE | OIPE | |
| Application Is Now CompleteCOMP | COMP | |
| Additional Application Filing FeesADDFLFEE | ADDFLFEE | |
| A statement by one or more inventors satisfying the requirement under 35 USC 115, Oath of the ApplicOATHDECL | OATHDECL | |
| Petition EnteredPET. | PET. | |
| Workflow incoming petition IFWWPET | WPET | |
| Mail-Petition Decision - DismissedMPTDI | MPTDI | |
| Oath or Declaration Filed (Including Supplemental)C602 | C602 | |
| Petition EnteredPET. | PET. | |
| Notice of Reissue Published in Official GazetteNRE. | NRE. | |
| Cleared by OIPE CSRL194 | L194 | |
| Notice Mailed--Application Incomplete--Filing Date AssignedINCD | INCD | |
| Pre-Exam Office Action WithdrawnW/OA | W/OA | |
| Notice Mailed--Application Incomplete--Filing Date AssignedINCD | INCD | |
| IFW Scan & PACR Auto Security ReviewSCAN | SCAN | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Initial Exam Team nnIEXX | IEXX |
8 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Fee paymentFPAY | FPAY | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS |
Numbers
- Publication
- RE040686
- Application
- 10652573
Titles
- English
- Method of addressing messages and communications system
Classification
- CPC, 3
- H04W4/00
- H04L41/0893
- H04L41/12
- IPC, 4
- H04L1 00
- H04L12 44
- H04L41 0893
- H04L41 12