Better Estimate The Distance Device – Beacon

In our last post, we talked about how iBeacons work and what we are currently doing with them.

One of the major problems of iBeacons is how you measure the reported distance between a mobile device and a single iBeacon. Due to the physics behind radio signals, the reported value is an estimation only and we can observe a lot of deviation.

Estimote, on their community forum, estimated the following deviations:

  • Distance of 20 cm: deviation is 5 – 6 cm
  • Distance of 1 m: deviation is 15 cm
  • Distance greater than 10 m: deviation is 2 – 3 m

We have made our own measurements in various environments such as a house, busy office, open air… and we have found that the deviation can be quite different. Sometimes, the distance estimation can switch from 1 to more than 5m!

So we’ve started looking at how we could improve distance estimation accuracy…

1. First of all, we’ve created a testing environment

We’ve conducted a few measurements in order to reproduce the great work done by ShineTech a few months ago. Our measurements have been made using Estimote beacons and our own GeoMoby iBeacons.

Key Findings:

  • Playing with TxPower will make the distance estimation a bit more accurate within the first meters but won’t help above 5m.
  • The location of your iBeacon is important: try to put your beacon high in order to avoid any direct obstacles but also avoid windows as they cause a lot of reflections.
  • We could observe jumps and dips in signal readings without moving the iBeacon from its current position so estimation algorithms must “average” the readings as much as possible… keeping in mind that the scanning process is power hungry!

2. We’ve read a lot !

Are triangulation (estimation using angles) or trilateration (estimation using distances) good approaches to better measure the distance from a beacon? The very first question you need to ask is : “what are you trying to achieve?” – Is it a new fancy indoor navigation system or a proximity-based messaging platform?

We are specialised in proximity detection and our goal is to provide a easy-to-use platform for developers and marketers. As a result, we have decided to focus on how to improve signal readings in a complex indoor environment and NOT looking at indoor navigation.

The majority of indoor systems operate in a non-line-of sight (NLOS) environment. Based on empirical data, a fairly general model has been developed for NLOS propagation. It is called the Power Law Model:

RSSI = 10n x log10( d) + A

RSSI = Measured signal by your mobile device - in dBM
d = Distance estimation – in meter
n =  Path loss exponent
A = Calibrated RSSI at 1m – in dBm

The key variable that we need to estimate here is the path loss exponent (n).

Key Findings:

  • n inherently depends on the environment
  • n is an estimation based on empirical data
  • n has to be measured with appropriate tools

3. We are now using our own calibration tool

We’ve decided to build an iBeacon Calibration app using basic math concepts such as Least squares method and polynomial curve fitting. The idea is to manually measure the signal strength (RSSI) at different distances from the iBeacon and solve a quadratic problem that will give us the path loss constants of the current indoor environment!

GeoMoby IBeacon Calibration

Example of the GeoMoby IBeacon Calibration App v0.1 BETA

Our app lets you move around your iBeacon at the distance showed on the left sidebar (in meters), click on “Get RSSI” and report the result. Click on “Store & New” in order to take another measure and when you are ready, hit the “Calculate” button! The app will display 3 constants that you can enter in your dashboard.


GeoMoby Platform – Enter the path loss exponents

The very next version of our app will allow you to authenticate with our server and will “automagically” update your account for the desired beacon and environment. So stay tuned!

Key Findings:

  • Try to keep your mobile device in a “shopping” position when you take the measures in order to get real-life results 
  • Repeat measurements 2 or 3 times. The app will “smooth” the readings and  calculate an average
  • The first version of our Android Calibration App is available to our current customers only. Email to know more

4. Algorithms in the cloud

The path loss constants being stored in our database from measurements done by our team or our clients using our iBeacon Calibration app, our platform will then estimate the distance via a polynomial curve fitting method.

GeoMoby IBeacon Poly Curve

GeoMoby – Polynomial Curve Fitting Method

The below graphic is the result of 3 series of measurements using an Estimote iBeacon, the formula provided by a Radius Network’s engineer and our own calibration tool up to 15m:

GeoMoby IBeacon Calibration Results 1

Distance Estimation with and without GeoMoby calibration process

I must say that we have been quite surprised with the results… Standard estimation shows good accuracy up to 2m. Further away, the accuracy becomes quite poor…

A GeoMoby iBeacon has been used for this second graphic:

GeoMoby IBeacon Calibration - GeoMoby iBeacon

IBeacon Calibration  using a GeoMoby iBeacon

We have read numerous bloggers saying that “the nearer you are to a beacon the more accurate the reported distance, likewise the further away the beacon to a mobile device, the less accurate”. It is true using the current tools on iOS and Android, but our results demonstrate that you can still get a fair accuracy in a complex indoor environment using our calibration process.

Here now how you can configure your iBeacon proximity in our system:

Screen Shot 2014-04-14 at 9.15.33 pm

GeoMoby platform – Proximity Set Up

Having completed these experiments, we can conclude that achieving accurate distance measurements with a single iBeacon is possible with some limitations, especially because the measurements depends on the quality of the calibration process and the complexity of the indoor environment.

 More measurements and software updates will be coming soon so stay tuned and contact us if you need to know more:

One thought on “Better Estimate The Distance Device – Beacon

  1. Nikolay says:

    Could you please say what measurement is on X and Y axis on both graphics of distance estimation?

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>