Atrius Navigator platform service’s Software Development Kit (SDK) unlocks location-based (LBS) and indoor positioning services (IPS) within mobile applications. Acquiring data from your Atrius Sensory Network, Atrius Navigator delivers precise, cost-effective indoor positioning solutions, enabling applications that redefine visitor journeys and enhance business operations.
SDK Documentation (also included in download below)
4.2.0 Release Notes
Pedestrian Dead Reckoning (PDR) Smoothing Strategy – Introducing a new smoothing strategy that utilizes the accelerometer, gyroscope, and compass to detect a device’s movement through the floorspace. PDR smoothing receives both VLC and BLE locations. When VLC locations are received, the seed is reset to the accurate VLC location. When BLE locations are received, it is smoothed against the PDR prediction. The smoothing strategy has 2 enhancements:
- Not moving smoothing – When the device is detected to not be moving, the locations are averaged over time.
- Moving smoothing – When BLE locations are received, the smoothing strategy uses the previous smoothed location to predict the new location based on the sensor readings. This predicted location is then averaged with the latest BLE location.
Failure detections – At times, if the site has a poor heading offset, PDR prediction can become incorrect. If PDR predictions are detected to be incorrect, the algorithm will attempt to measure a new heading offset. There are several configurations regarding failure detection and handling options; see ATRDeadReckoningStrategy.h for more details.
Configured Properties – Added a new property to the LocationManager, ActionZoneManager, and RouteManager that indicates if the functionality is configured properly. This is to better communicate if the app can expect a behavior that is enabled, but not yet fully configured.
- LocationManager is configured
- Requires lights to be defined in the lights map (with at least a BLE or VLC ID)
- If the CoordinatePreference is Geographic then a geotransform must be defined
- ActionZoneManager is configured
- Requires an action zone to be defined
- Requires a geotransform
- RouteManager is configured
- Requires a route server to be defined
- Requires a geotransform
Bug Fix – There was an error in the reverse Geotransform function. This affected meter distances computed in the route manager.
Bug Fix – Switching the compass from magnetic to true north. This change allows for more accurate representation.
Bug Fix – VLC angles were sometimes incorrectly computed when initialized against a single luminaire. Removed single luminaire initialization.
Bug Fix – Cleaned up the reference apps. Some were not building out of the box.
Bug Fix –LocationManagerV2 race condition fixed caused by calling terminate shortly after calling an autoload.
Deprecating – Deprecating the Simulation classes. It is recommended to use the injectLocation method in the ATRLocationManagerV2 class instead.
4.1.2 Release Notes
Bug fix – Fixes an issue that was introduced in 4.1.1 where the SDK would throw a `classNotFound` error when trying to load or autoload a site. If you have 4.1.1, please update to this latest version.
4.1.1 Release Notes
Location Manager Auto Load Back off Strategy – To balance timely site detection, and unnecessary API calls when users are at not-yet-commissioned stores, we’ve implemented a back off strategy that grows a wait period. The wait period allows for 2 back to back auto load calls with no delay, and then will begin to grow to a maximum wait time of a minute. The wait times grow at this rate (in seconds): 0, 1, 2, 3, 5, 10, 20, 30, 60.
4.1.0 Release Notes
New Location Manager – Adding a LocationManagerV2 class. This class is nearly the same as the LocationManager class, with the following notable modifications that are considered breaking:
- Modified autoload logic
- A timeout is now required. The default is 30 seconds.
- Invoking autoload will cancel any pending autoloads and restart the timeout. Cancelled
autoloads will not trigger any further listener events (site load error, timeout event, or
site load event)
- Introducing load errors – autoload will invoke the onLoadError event for the following scenarios:
- Location permissions not accepted
- No internet connection
- Detected beacons are not registered to an active site
- Network error
- Failed to detect nearby beacons
- Ability to inject locations
- Injected locations can be used instead of simulated locations
- Injected locations can trigger actions zones
Deprecating LocationManager – With the new LocationManagerV2 class, we are deprecating the LocationManager class. Upgrading to the new class is recommended.
4.0.1 Release Notes
Eventhub Location Update Issue -Eventhub updates were silently failing. This update resolves the issue and locations continue to stream to the backend as configured.
4.0.0 Release Notes
VLC Location Enhancements – update to Lumicast 3.0. Lumicast 3.0 adds VLC confidence radius and single light initialization capabilities.
New API Endpoints – The Atrius SDK points to our new and improved backend APIs. The default API is https://api.us.atrius-iot.io. By default, most customers will not need to update.
Atrius Authentication – Initialization of the core now require an Environment ID and Partner ID to authenticate.
AtriusLocation library – Location capabilities have been separated into a separate framework.
Option Improvements – Location and Server Options have been improved. See documentation for details.
Route Improvements – Priority Routing has been removed and now all Routes have a priority.
Overall Code Refactoring – Class packages renamed for rebranding. Import statements will need to be updated. Removed deprecated methods that supported the ByteLightServices APIs.