This articles addresses the concept of Presence and the two related notions of hold time and proximity. Further it provides some background on the process of reading tags and the relation between Smartspot devices and administrative locations on Brain.
How a Smartspot reads tags
A Smartspot continuously scans the environment for the existence of RFID and BLE tags. Usually RFID tags will respond to the scanning cycle of a Smartspot given that they are within the detection range. BLE Tags transmit their identification with a fixed frequency, e.g. twice a second. The raw response of a tag to the Smartspot is sometimes referred to as a raw tag read or raw hit.
Once a responding signal (Hit) from a RFID or BLE tag is received for the first time, the Smartspot creates a so called Presence for that specific tag and emits a Presence Create Event to notify onboard services and Brain Server.
A Presence will store data associated with this detection, such as:
- the time stamp of the first detection (Presence created)
- the estimated proximity of the tag to the reader (far, near, immediate)
- the time stamp the tag has been detected for the last time (last update)
In case the tag keeps responding again and again to the Smartspot scanning cycle, the Smartspot updates the Presence and the Item will remain in the present state.
Once a tag has been registered as present but does not respond anymore to a scanning cycle of a Smartspot, the tag will become not present. This may happen in case a tag passes by the Smartspot and goes out of range.
The Smartspot emits a Presence Delete Event to notify onboard services and Brain Server, and the Presence will be cleared and associated data will be removed.
Why tags may not respond always
There are various circumstances that will influence the response of a tag to a scanning cycle of a Smartspot. This includes:
- The number of tags that are in range.
- The more tags are in range, the longer it will take before the same tag will respond again.
- In case two tags respond at the same time, the information may get lost due to a collision.
- Physical orientation and readability of the tag. Depending on the orientation, the antennas of tags and Smartspots may couple well or less. Moving tags may have periods of time that the coupling is poorer, resulting in no response.
- Tags may be far away from the reader. The tag signal may be just at the readers sensitivity threshold, or in case of passive tags, the activation signal from the reader may be just at the tag's activation threshold.
On information level it will be helpful the keep the tag present for a particular time even in case a tag doesn't respond during that interval. The period of time that a tag is logically kept present without physically responding to the Smartspot is called Hold time. So, Once present the tag will remain present for at least the hold time.
This mechanism is acting like a filter to prevent tags hopping too quickly between status of present and not present and feeding the system with unusable information.
The figure below illustrates the full life cycle of a Presence and the relation of signals received from tags (Hits), the present state and hold time.
The first Hit (1) causes the Smartspot to register a new Presence, state is present and the Hold time initialized. While present, the Hold time counts down as illustrated in gray. The second, third and fourth hits cause the Hold time to reset, the Item remains present. After Hit 4 there no longer response received anymore, e.g. the tag may be out of range. Finally the Hold time expires which causes the Smartspot to set the state to not present, a Presence delete event is emitted and the Presence cleared.
Presence per antenna
A Smartspot will have a couple of internal antennas. For RFID this is at least two and depending on the model, this may go up to 25 internal antennas. There can also be a number of externally connected antennas.
A Smartspot can treat all antennas as just one big antenna, ignoring which antenna detected which tag. But it can also treat each and every antenna as a separate unit. The latter is the case if Antenna Presences are enabled, the Presence of a tag is registered for each antenna separately and sent to Brain Server for each individual Smartspot antenna.
Clearly this increases the amount of traffic substantially, since the Presence status itself as well as all associated information including create time and proximity (changes) are included as well.
The hold time concept applies to both Presence as well as Presence per antenna.
Next to the creation of Antenna Presences, a Smartspot may also create so called Antenna Reports. More details can be found in Antenna Reports. In short it allows the Smartspot to keep statistics per antenna source and feed Brain Server additional data which can improve the estimation of Item Locations.
How Brain uses Presences and proximity
Presences and proximity in relation to Locations and Smartspots
Both presence and proximity states of an item are created by the Smartspot devices. Though Brain will register presence on location level, rather than on Smartspot level.
Since Smartspot (or it's individual antennas) are mapped to reporting locations, Brain assigns the presences and proximity to the associated reporting locations. By doing so, Brain keeps state of these presences and proximity for all individual items and also allows multiple Smartspots as a source per reporting location.
These presence and proximity states will be used by the Brain location engine to determine the actual location of an item.
Multiple Smartspots reporting to a single location
Every Smartspot device is mapped to a reporting location.
In case a reporting location requires multiple Smartspots to cover the desired area, one could map multiple Smartspot to a single reporting location.
So for example if Smartspots A and B are located in Room A and one would like to keep Room A as the single reporting location, both Smartspots A and B can be mapped to the same reporting location Room A.
Further details on mapping Smartspots and antennas to locations can be found in Location Editor
A Smartspot with antennas reporting to multiple locations
Opposite to the above example, a Smartspot with multiple antennas can be configure to report to multiple locations as well.
So for example, a Smartspot with antenna A and with antenna B can be configured to report to location Room_In (Smartspot antenna A) and location Room_Out (Smartspot antenna B).
In order to do so, it's required to have 'Antenna Presences' enabled on that device. Otherwise the spot would collect all presences from all antennas and report them to one single location.
More details on mapping Smartspot antennas to multiple locations can be done found in Location Editor