I am using 3 Estimote beacons for developing an iOS application in which I need to know the exact distance and direction of the device from the beacon.
I have used iOS's CLLocation as well as Estimote's framework but both of them give an incorrect value for the distance. Moreover, the values fluctuate a lot, the beacon even goes into unknown state (accuracy -1.000) a lot of times.
Trilateration is a complicated method to calculate user's position, because doing such calculation based on radio waves (beacons use 2.4 GHz radio waves) is prone to a big margin of error.
You have to consider things like diffraction, multipath propagation, interference and, probably most important, absorption - metal and water are extremely good at blocking radio signals. Therefore, to track location with trilateration you'd need really complex noise cancelling algorithms.
It's important to determine what kind of accuracy do you need - for most use cases it's not really necessary to pinpoint exact user location.
I agree with you that the exact location cannot be calculated but if i need +/- 1 or 2 meter accuracy for user location what will be the solution for that.
You can try installing more beacons and use them as a cell network, with each beacon being a single cell. Then you'll be able to more accurately track user's movement and location. Keep in mind though that this solution requires higher volume of beacons.
Also, we're already working on our own solution for more accurate indoor navigation, but it's still too early to announce anything specific.
It's simply an idea to put a bigger number of beacons in a relatively close proximity. Then each beacon works as a single cell. By knowing in which cell the user is now and in which cells he was previously, you can track his locations.
It's not an easy solution and certainly not a cost-efficient one, but it's not as complex as creating trilateration with proper noise reductions.
Hope you are hale and hearty and doing good.
I was trying to access my beacons after downloading Android Estimote App.
It is not asking for my login credentials in Android app. but it always ask in iOS Estimote app.
It seems it is a major security flaw because if someone deploys the Estimote beacons for product promotion but anybody can intrude into the beacon property using Android Estimote app and change the beacon setting.
Can you please explain?