MOCA SDK Beacon detection engine latency

MOCA SDK Beacon detection engine latency

The MOCA SDK detection engine differentiates between foreground and background, and works differently in iOS and Android.

For Android, in the foreground it scans more aggressively and, using the Balanced profile, detect beacons within 5 seconds (worst case scenario). In background, worst case is up to 70 seconds. You can check more about the Android SDK configuration here.

 

# Beacon detection engine profile [LowLatency, Balanced, BatterySaver, Custom]
# LowLatency = Notifications will be delivered almost instantly in foreground and background.
# but will have an important impact on the user's device battery.
# Balanced = Notifications are delivered almost instantly in foreground. In background it can
# take up to one minute. In Android Lollipop, Marshmallow, and N there are operating system
# optimizations that reduce the notification delay (Default setting).
# BatterySaver = Detections in foreground can take up to one minute, and in background up to
#5 minutes. this is the recommended setting for analytics-only usages.

beaconProfile = Balanced

# If beaconProfile is "Custom", the following parameters are mandatory
# foregroundTimeBetweenScans: Time between each scan in milliseconds, close scans means faster response, but
#  more battery consumption.
# foregroundScanDuration: Time while device will be listening bluetooth signals in milliseconds.
#  We recommend at least 1100 ms, so if your beacon broadcasts a signal each 350 Hz,~3 packets
#  will be received.
# backgroundTimeBetweenScans: Same than foregroundTimeBetweenScans, but when device is in the background.
#  this is the most important setting in terms of battery consumption.
# backgroundScanDuration: Same than foregroundScanDuration but in background.

 

On iOS the detection engine is obscured. The operating system manages all the processes, and works using ranging and monitoring. It's highly efficient and works very similar in latency with Android, but has specific limitations (max 20 regions, ranging only sees UUID) and is not configurable.

    • Related Articles

    • Troubleshooting effective Beacon Distances

      Preface  BLE (Bluetooth Low Energy) Beacons are a power-friendly emitting hardware that is commonly used for indoor location. These devices use a short-range radio frequency (in the spectrum of 2.4ghz) and MOCA SDK can use this short range frequency ...
    • Troubleshooting effective Beacon Distances

      Preface  BLE (Bluetooth Low Energy) Beacons are a power-friendly emitting hardware that is commonly used for indoor location. These devices use a short-range radio frequency (in the spectrum of 2.4ghz) and MOCA SDK can use this short range frequency ...
    • iOS 13 and MOCA SDK

      MOCA iOS SDK has been tested on BETA versions of iOS 13. Find the version notes below: - MOCA SDK for iOS uses the CoreBluetooth framework in order to monitor bluetooth status. In iOS 13 the mere fact of using any of the CoreBluetooth methods will ...
    • Android Permissions Detailed for MOCA SDK

      The MOCA SDK requests a variety of permissions, some of them being optional. Here is a breakdown of each permission and their effect on the SDK:   Permission Explanation android.permission.INTERNET Allows MOCA SDK to open network sockets so it has ...
    • Reading MOCA SDK Logs

      The logs related to the MOCA SDK are very helpful to find configuration errors. The log starts with these two lines: I/MOCA: Initializing MOCAPlugin I/MOCA: Init MOCA SDK, version x.x.x This shows that the plugin has started, and which is the version ...