Search code examples
objective-cswiftibeaconestimote

Estimote Beacons: Set up broadcasting interval


is ist possible to increase the broadcasting interval of an estimote beacon? I use CoreLocation to connect the beacons to my app. But now i want to put the rssi values of the several beacon in a kalman filter. But in the current state i get one value in a second.

Thanks in advance.


Solution

  • Core Location itself does not support connectivity, because it treats beacons (or, more precisely, iBeacon) as broadcasting only. However, specific vendors can expose access to settings through their own apps and SDKs. We do that at Estimote: you can download the app from iTunes (https://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=686915066&mt=8) or Google Play (https://play.google.com/store/apps/details?id=com.estimote.apps.main), or check the SDK (https://github.com/Estimote) to access beacon's settings, advertising interval among them.

    Estimote Beacons broadcast at 950 ms interval by default, and you can adjust it to anywhere between 100 and 2000 ms. Keep in mind though, that responsiveness also depends on the receiver's probing frequency. iOS devices do that, on average, once a second. However, that's just a general consensus: Apple does not publish details about this, nor do they expose access to settings of Bluetooth scanning.

    On Android, on the other hand, you can set the scanning interval yourself. Check the BeaconService class in Estimote SDK: http://estimote.github.io/Android-SDK/JavaDocs/com/estimote/sdk/service/BeaconService.html

    Cheers.