Official Blog of Azilen

The Techie Explorations

How to Overcome Operational Challenges in Getting Consistent Beacon Behavior?

The usage of Beacon is increasingly getting prevalent especially in segments such as hospitality and retail to provide special offers in line with various loyalty programs to its regular customers and the customers get notifications about unique offers while they are in the premises of casino, restaurant, store etc. The several challenges are likely to be encountered while utilizing Beacon power at its best.

Challenge 1: Difference distance detection ranges for iOS and Andoid

In the real world scenario, iOS devices and Android devices have remarkable difference in their Beacon detection ranges.

Challenge 2: Signal fluctuation

The consistency of Beacon signals does rely upon various factors and hindrance in those factors may cause the signal fluctuations eventually affecting the expected outcomes.

Team Azilen carries out in-depth research to overcome these challenges and finally came up with the optimum solution. The challenges and solutions both are described below with all relevant details.

Challenge 1: Difference distance detection ranges for iOS and Andoid

  • iOS works in accordance with iBeacon protocol while Android considers Beacon as a Bluetooth device. Hence, they both react in a different manner when it comes to detecting Beacon signals.
  • For example, in general, we can consider that iOS devices detect Beacon signals at 7 – 8 meters whereas Android devices detect Beacon signals at 15 – 18 meters.

detection-differences

=> If the Beacon is there at the range of 10 meters, Android device will start receiving the Beacon’s signals from about 15 to 18 meters and it will consider the Beacon IN.

=> On the other hand, iOS device considers the Beacon IN when the proximity in NEAR. iOS is not stable to get NEAR proximity at 10 meters and gives fluctuated or uncertain experiences in detecting the Beacon.

Solutions:

We had several experiments with Beacon’s RSSI function in line with Beacon’s optimum calibration.

Beacon Calibration: Calibration is a process of defining the signal strength that the Beacon can transmit to the receiver mobile device at the reference point of 1 meter. The first step in our solution is to calibrate the Beacon as per requirement.

RSSI: Received Signal Strength Indicator is the strength of the Beacon’s signal which gets displayed on the signal receiving device. Android works complying with RSSI. So we defined ideal RSSI value after Beacon’s calibration. We got -97 to -100 dbm at Beacon’s last spot of range. We defined separate RSSI for each beacon.

How the solution will work in real world application?

 

beacon-consistent-behavior-in-android-and-ios

Consequential Outcomes: We could detect beacon at near about exact (+/- 1 to 2 meter variation) range of its calibrated region for both Android and iOS platforms.

Challenge 2: Signal fluctuation

Up to some extent, the consistency of Beacon signals does rely upon several factors such as surrounding infrastructure as sizeable metal or wooden article can cause reflections or attenuations that affect the signal level. Sometimes, other disruptions occurred or even an object passing through between the mobile device and the Beacon can cause signal fluctuation. The mobile device keeps getting OUT and IN due to such hindrance.

signal-fluctuation

Solution:

Beacon IN/OUT cycle: The mobile device continuously receives the signals for each beacon and update the beacon’s state as IN/OUT as per RSSI and IN/OUT threshold.

As discussed earlier we have defined IN/OUT threshold for each beacon as 8 seconds for IN and 10 seconds for OUT. Therefore, if any object comes between Beacon and the mobile device application will start cycle to region OUT and on the next interval application will get strong signals so OUT cycle will reset and keep beacon IN. Thus, based on IN/OUT cycle we could resolve fluctuation issue.

Conclusion:

Development experiments often make us realize that sometimes, complex or complicated sounding challenges can be addressed by very simple solutions. And this is how; with a straightforward and solution oriented approach, we could manage to get consistent Beacon behavior for both Android and iOS even in environment.

Leave a reply