1

I have many iBeacon advertiser devices deployed at different locations, with different value of "Calibrated Tx Power" for each device. Now I need to estimate the distance between my iOS app and a detected iBeacon device. I am trying to use RSSI and txCalibratedPower method(Understanding ibeacon distancing). My question is, I find no means to get the txCalibratedPower in iOS app. Is there any advice? Thanks in advance.

Community
  • 1
  • 1
kuang
  • 309
  • 1
  • 11

1 Answers1

1

Unfortunately, there is no way to read that value on iOS. Even though it is transmitted in the iBeacon packet, CoreLocation does not expose it in the CLBeacon object, and CoreBluetooth blocks reading the advertisement bytes on iOS.

This is frustrating for your use case. As an alternative, if your beacons all have unique identifiers, you could make a lookup table with this information. You could embed the lookup table in your app, or build a web service to return the calibration value for a particular beacon so you can change it without an app update.

With this workaround you must remember to update the lookup table whenever you change the calibration value of your beacons.

davidgyoung
  • 63,876
  • 14
  • 121
  • 204