Detecting nearby LTE Beacons

#1

Hi, this issue has been bugging me for quite a while now.

I’m developing an app that uses Estimote LTE beacon to track shipments. So basically, my app needs to scan for the nearby LTE Beacons and display it, the user then selects one from the list. The selected beacon’s identifier will then be tagged to the shipment so we could track the coordinates it sends to the Estimote cloud.

The problem is that I can’t detect any of my 4 LTE Beacons using ESTDeviceManager. I am using ESTDeviceFilterLocationBeacon as the filter.

When I use ESTDeviceFilterBeaconV1, I can detect an old beacon that I have, I think this is the first gen beacon. But when I switch back to ESTDeviceFilterLocationBeacon or even ESTDeviceFilterNearable, no beacons are detected.

Anyway, I need to detect all my LTE beacons that are nearby. Any help?

Thanks!

#2

Hi @jmedrano,

Estimote iOS SDK’s ESTDeviceManager does not support LTE Beacon detection, there is no filtering for them.

Yet, you can build an application for detecting nearby LTE Beacons using iOS Proximity SDK. You could consider simplifying the user flow by the following scenario:

  1. You’re selecting the shipment identifier that is going to be assigned with LTE Beacon in your mobile app
  2. You start looking for LTE Beacons with Proximity SDK by setting a ProximityZone with predefined tag, let’s say it’s shipment tag assigned in Estimote Cloud.
  3. When beacon discovery starts, you push a button on the beacon to trigger packet broadcasting for 15 sec. That step prevents you from extensive battery usage.
  4. Your mobile application detects only one beacon that will be assigned to the shipment. You can use information about device identifier from EPXProximityZoneContext.

That flow simplifies the detection process.

Please remember to prepare LTE Beacon to work with Proximity SDK:

  1. Start with assigning an appropriate tag to a beacon in Estimote Cloud dashboard
  2. Deploy a microApp on a beacon that will broadcast the Estimote Location packet for 15 seconds when the I/O button is pressed. Please use Web IDE to perform that step.

Let us know when you test that solution.

#3

What do you mean by this exactly?

Is this simply a limitation of the iOS SDK in its current state, or is there a fundamental difference in the LTE Beacon that makes this impossible?

#4

ESTDeviceManager is our iOS API for detecting Estimote Beacons for the purpose of connecting to them and configuring them. The LTE Beacon however doesn’t really have any configuration options—it’s all about the micro-app you put onto it. So about your question:

Is this simply a limitation of the iOS SDK in its current state, or is there a fundamental difference in the LTE Beacon that makes this impossible?

… it’s kinda both. Yes, we simply didn’t add LTE Beacon support to the ESTDeviceManager, but it’s also not a big priority for us, because there really isn’t much you could do anyway.


If you want your iOS app to detect LTE Beacons for purposes other than configuration, you can do what Arek said: program the LTE Beacon to broadcast an Estimote Location packet (probably most useful, since it has the identifier of the LTE Beacon built in), or an iBeacon packet, or an Eddystone packet, and use an SDK/Bluetooth library of your choice to detect these packets.