In IoT and digital age, location-based services applications are widespread: starting from Google maps to anti-loss devices and not ending with location-based marketing. The most common technologies used for user location identification are: GPS, WiFi and Beacons (a custom BLE profile).
Location-based (geofencing) marketing is a new way to enhance the personal experience while shopping. For example if you were near the shampoo section you will get on your mobile exclusive offers about that section.
Choosing the right location detection technology needs to take into consideration that GPS works optimally in the open sky environments and WiFi and Beacons can work probably indoors (and outdoors but within inhabited areas with hotspots). Now let’s get a brief look at each technology:
Thanks to on-the-shelf GPS modules/receivers from vendors like: Neoway and u-blox it’s easy to embed a GPS receiver into your project. What you need is a module sending its messages via UART to the MCU and a ready-made antenna attached to the module. There is a standard format for these modules messages called NEMEA. These messages contain information about the location that includes longitude, latitude, direction, speed … etc. These receivers need to see at least 4 satellites to compute a position.
There are many navigation systems like the Russian GLONASS, the European Union’s Galileo and the American GPS.
GPS is mainly designed to be an outdoor location detection system. Therefore, its performance decreases in enclosed places and across crowded areas with buildings.
WiFi can be used in location detection (AKA Wi-Fi positioning system) when your phone or WiFi transceiver module like ESP32 or ESP8266 is near hotspots. You can consider WiFi like a coexisting system with GPS for indoor areas. Moreover, WiFi can be used to detect the location inside the enclosed/underground area; you can see the SubPos project on Hackaday to know how.
Location detection systems using WiFi use techniques based on received signal strength indication (RSSI), angle of arrival (AoA) and time of flight (ToF). You can read more about these techniques from the Wikipedia article.
Beacon technology is enabled by Bluetooth Low Energy (BLE) and it’s one of the BLE custom profiles. Beacons are used for proximity-aware applications like positioning indoors, and for location based advertisements. The idea behind this technology is to calculate the distance between the receiver and the transmitter by calculating the difference between the power of the sent and received signal (comparing the Received Signal Strength Indicator (RSSI) to a transmit (Tx) power). Knowing that, the power information is available in Apple iBeacon advertising packet (for example).
To know more about Bluetooth beacons please refer to our previous post about Beacons.
Read more about these three technologies in the DZone’s article.