Here comes some updates regarding our LPS and Berry product families!
==== Short version for existing customers ===
* We are now shipping LPS2 Mini and Blueberry! With the boards you will get demo software to access the sensors and, in the case of the LPS2 mini, Two Way Ranging (TWR) capability. The software is not written for the Arduino IDE like our previous generation of boards, but instead in C using the Nordic SDK for the nRF52 and compiled with GCC. We can also provide Python drivers for ROS. More advanced features such as TDoA and wireless distribution of clock and sync to be sold separately.
* HW for building wired networks for distribution of clock and sync is in the making.
=== Long version for both old and new customers ===
There are three main principles when measuring distance and figuring out a position using radio: Received Signal Strength Indication (RSSI), Time of Flight (ToF) and Angle of Arrival (AoA).
* RSSI is simple, but suffers from severe problems as soon as the signal path is blocked and attenuated. BLE beacons use this technique, making them ideal for cheap proximity sensors, but not good enough for navigation.
* ToF measures the time it takes for a radio wave to travel a distance at the speed of light. This requires complex hardware, but is a lot more reliable than RSSI. By using extremely short transmissions/pulses, reflections in nearby objects will not overlap with the direct wave at the receiver. This will, in theory, prevent the effects of so called multipath fading. Transmitting short pulses is the equivalent of using a very wide bandwidth, hence the name Ultra WideBand radio (UWB).
* AoA requires more than one antenna to figure out the direction of the incoming wave. Contrary to RSSI and ToF it reports an angle, not a distance. This method has been extensively used for naval navigation, where a ship takes bearings to known radio beacons.
No matter the method in use to do the actual measurements, a position in space can be calculated using a geometrical process called trilateration. Adding filters to the process will further improve the result. All this functionality is often integrated in a so called location engine.
Read more »
ToF can be put to work using three main principles: Two Way Ranging (TWR), Time Difference of Arrival (TDoA) or Reverse TDoA (RTDoA):
* TWR is a simple method performed point to point between a moving tag and one or several anchors acting as reference points with known positions. TWR works well when tracking a limited number of objects, but the update rate decreases the more tags asking around for distances. This was our initial approach and is used with our robot beds: http://www.loligo.se/roaming_beds/. If you are in Oslo you can take a look at them here: http://henieonstadsanatorium.no/en/event/unik-overnattingsmulighet-på-henie-onstad-kunstsenter
* In its pure form TDoA has tags that only transmit and anchors that only listens. Anchors collect and sends time stamped UWB packages to a central server, where a location engine compares the different arrival times and calculates tag positions. With many active tags, collisions will occur putting an upper limit to the throughput and number of active tags in a TDoA system. Some kind of synchronization also among tags can thus be useful to achieve highest possible update rate and number of active tags. The problem is that reception costs more power than transmission, so enabling the receiver once in a while to get synchronization packages has a negative impact on tag battery life. TDoA is well suited for tracking people in offices: Lowest possible power consumption combined with large number of tags.
* In RTDoA things are turned on its head. Synchronized anchors transmit packages one after another and tags listen. The location engine is run locally in each tag. Such a set-up has no upper tag limit and has the lowest possible latency for the tag to know its own location, to the cost of using the power hungry receiver instead of the transmitter....