Skip to main content
How Beacons Update Assets

Nerdy details about asset location updates

Mike Maat avatar
Written by Mike Maat
Updated over a week ago

Beacons, when coupled with a mobile device, can automatically update an asset's location without costly telematics devices. For that reason, beacons are especially useful on small, low-cost assets.

Learn more about beacons.

When the mobile app encounters a beacon, the app updates the location of the beacon (and, therefore, the attached asset). When developing our beacon infrastructure, we needed to find the sweet spot between several parameters - beacon transmission distance, beacon battery longevity, and, probably most importantly, mobile device battery life. Keeping those constraints in mind, here are the details of when and how beacons update asset locations.

App in foreground

When the mobile app is in the foreground (i.e. the app is on screen), the device continually listens for beacons in the immediate area. When the device enters a beacon region (e.g. a pinging transmission zone about 200m in diameter), the app starts to range the beacon. Ranging means the device continually listens to the beacon pings and tries to narrow down its location. This task is more intensive than just listening to the region's point of entry and exit. The approximate location of the beacon is stored in memory. As more accurate readings are encountered (i.e. you get closer to the beacon), the location cached in memory is updated. At this point, the asset's location has not yet been updated.

Ranging continues until one of two events occurs:

  • the mobile device exits the beacon's region (i.e. the device/person is no longer within transmission distance of the beacon) or

  • the app is closed/backgrounded.

In either case, Nektar updates the asset location based on the app's best-received reading during that last ranging period.

App in background or terminated

When an iOS device enters a beacon region, the operating system sends a notification to any apps subscribed to or listening for those specific beacons, even if the app is terminated or closed. Apple does this to manage battery usage at the operating system level rather than having each app range separately and needlessly consume battery power.

When the app receives this iOS notification:

  • It launches invisibly in the background briefly to handle the notification.

  • Ranges the beacon for 10 seconds.

  • Updates the asset with the best reading within that period.

  • Automatically shuts down to conserve battery.


Related articles

Did this answer your question?