Skip to content

Research and References

Ashley Gittins edited this page Aug 27, 2024 · 1 revision

Below are some papers related to using RSSI for localisation, along with some personal notes.

My general thoughts as it stands:

  • Temp and Humidity changes look to be fairly small, and probably affect the entire "field" similarly, some aspects are probably circuit-specific, others free-air-propagation, other changes to absorption/reflection from different building materials. I think these variations can probably be largely ignored, as their contributions are (probably) small-ish, but can be averaged out by treating distances as "relative" (ie, not using physical measurements during solving, only to scale the final results) and treating certain devices as "immobile".
  • Treating some devices as "landmarks" or "datum points" (ie, static, non-moving beacons) might offer benefits in smoothing out "global"ish variations caused by temp/humidity, slow-changing/far-field interference etc.
  • I'm still unconvinced of the benefits of ML or other AI algos at this point, because I think "deliberate" filtering still offers more useful levers than "blind" correlation. This may change as we run out of optimisations to apply manually. I've not seen much in the way of ML applications that show big benefits over deliberate filtering, but most papers don't include much/any intelligent, deliberate filtering.

Variations by channel

  • https://devzone.nordicsemi.com/f/nordic-q-a/25399/rssi-switching-values
  • This post shows some interesting results that show a periodic element of rssi variation. The most reasonable explanation is that they might be witnessing different results per advertising channel.
  • This has possible implications for how scanner devices report rssi depending on which channel they received the advert. rssi is a function of (many things plus) the tx and rx circuit's efficiency at that frequency.
  • It might be useful to treat each channel specifically at the scanner, to apply some compensation to the rssi based on the channel it was received on, or to otherwise find a way to report a more consistent value.

Real-Time Indoor Positioning Approach Using iBeacons and Smartphone Sensors. Liu Liu, Bofeng Li, Ling Yang, Tianxia Liu, 2020.

  • https://mdpi-res.com/d_attachment/applsci/applsci-10-02003/article_deploy/applsci-10-02003.pdf?version=1584265508
  • Acheives > 2m positioning error, which is... pretty ok. They claim that reported studies can reach an accuracy of 2m to 5m for indoor, calibrated environments.
  • Their design is inside-out to ours - static beacons, and a single android phone receiver for the mobile element. Because of this they can use some sensor-fusion of onboard IMU to improve results, but lose the benefits of having a static receiver receiving both static and mobile beacon signals.
  • They're smoothing the rssi values using a "fingerprinting" method.
    • This seems to be basically "weight closer measurements more heavily" which is completely sensible and a bit obvious. This fits with what we do already in treating closer measurements as more likely to be correct in the simplistic area-based determinations, but should also be factored in to the trilateration, where it has a more important effect (since we use all measurements to trilaterate, we should be more wary of the long ones).
  • They're using kalman filters at the heading vector stage, and again to fuse IMU and BLE headings.
  • The use of heading vectors and applying KF to that is interesting, because we might find that useful as well. Having a velocity vector (and thus a location "predictor") could be very useful for automations in particular, as they may provide information on what Area a person is "heading toward". We already track a filtered velocity for each device by scanner, it would make sense to track it also in relation to the "solved" field.

Effects of Temperature and Humidity on Radio Signal Strength in Outdoor Wireless Sensor Networks. Jari Luomala and Ismo Hakala 2015

  • https://annals-csis.org/proceedings/2015/pliks/241.pdf
  • Mainly looked at this one to verify some claims made by other papers talking about indoor variations being significant. From a cursory look, it seems that in their outdoor testing, temperature swings of 5 degrees ambient only correlate to +/- 0.5dbm variation in rssi. For free-air aspects this looks to be well below our noise-floor. It's possible that humi/temp might affect the reflectiveness or transmissiveness of construction materials at 2.4GHz, which could explain why some other papers consider these variables to be more influential.

IMPROVING RSSI-BASED DISTANCE PREDICTION BY UTILIZING ROOM TEMPERATURE AND HUMIDITY VARIANCE FOR INDOOR POSITIONING SYSTEM APPLICATION. DAVID ABRIMAN SIMATUPANG, GEDE PUTRA KUSUMA 2023

  • https://www.jatit.org/volumes/Vol101No20/10Vol101No20.pdf
  • Appears to show significantly-improved localisation results using an MLP (Multi-layered Perceptron) trained on multiple receivers. IMO the data also shows how useless kalman filters are for rssi, but they made no account for the asymmetric nature of rssi-noise.
  • I am a long way from grokking the math.
  • MLP using 4 rx gave MAPE error scores around 10%, and adding temp and humi inputs to the MLP improved the error scores by several percentage points, so it does seem to correlate. I wonder if this says more about the temp sensitivity of the tx/rx devices themselves moreso than the actual through-the-air propagation.
  • Worth noting that they trained and tested against a set combination of beacon locations, so it's possible that the MLP might give entirely inaccurate results when new (intermediate) distances are used. Several of the other models they tried showed clear aliasing of output to match the "expected" distances, and many were way wrong. It would be interesting to see if incorporating "landmark" static beacons as datum points would still result in big improvements, or if that would wipe out much of the benefits of the MLP.