How to use 3 beacons with Indoor Location SDK?

You can get our Indoor Location running with only 3 beacons if you map the location manually, using the Indoor SDK. Note however that this is an unsupported scenario and might lead to worse accuracy of indoor positioning, as our algorithms were designed with at least one beacon per wall in mind. Just something to remember about.

The whole procedure is described in our README. Long story short, first, draw your walls and set the orientation of the room towards the magnetic north:

ESTLocationBuilder *locationBuilder = [ESTLocationBuilder new];
[locationBuilder setLocationBoundaryPoints:@[
    [ESTPoint pointWithX:0 y:0],
    [ESTPoint pointWithX:0 y:5],
    [ESTPoint pointWithX:5 y:5],
    [ESTPoint pointWithX:5 y:0]]];
[locationBuilder setLocationOrientation:0];

Then, add beacons. Unlike the automated guide available in our iOS Estimote app, using the SDK enables you to add as many—or in this case, as few—beacons per wall as you want.

[locationBuilder addBeaconIdentifiedByMac:@"aabbccddeeff"
                   atBoundarySegmentIndex:0 // wall #1
                               inDistance:2
                                 fromSide:ESTLocationBuilderLeftSide];
[locationBuilder addBeaconIdentifiedByMac:@"bbccddeeffaa"
                   atBoundarySegmentIndex:1 // wall #2
                               inDistance:2
                                 fromSide:ESTLocationBuilderLeftSide];
[locationBuilder addBeaconIdentifiedByMac:@"ccddeeffaabb"
                   atBoundarySegmentIndex:2 // wall #3
                               inDistance:2
                                 fromSide:ESTLocationBuilderLeftSide];
// no beacon on wall #4

Finally, use the build method of the ESTLocationBuilder to obtain your ESTLocation object, which you can use to start Indoor Location in your own app.

1 Like