Battery Percentage of Eddystones

Can I get the Battery Percentage from the Eddystone object?

I noticed I can get the battery voltage with myEddystone.telemetry.batteryVoltage But I can’t get the battery percentage in telemetry object. :frowning:

What’s the correct way to get Eddystone Battery Percentage?

There’s no simple function/equation—e.g., the voltage stays more or less constant for the first 50% of the battery, the voltage can change if the temperature of the battery changes, etc.

With our recent Proximity and Location Beacons, you can however enable an Estimote Telemetry packet to be broadcast alongside your Eddystone packet, and in the Telemetry, we provide battery % that’s calculated by our firmware based on what’s going on with the beacon.

I’m using Proximity Beacons and I have the Eddystone Telemetry packet enabled. That’s how I’m getting batteryVoltage, from telemetry. How do I get the battery % from the telemetry packet in Android?

Eddystone Telemetry only has the voltage, but Estimote Telemetry (introduced in firmware 4.x) has the %. Here’s documentation for Estimote Telemetry:

Thanks, I see Telemetry objects now.
I have a related follow up question.

How do I associate the Telemetry objects with the Eddystone objects from the respective listeners?

I see a ‘deviceID’ in Telemetry but no corresponding deviceID in the Eddystone. The deviceID from Telemetry doesn’t seem to match the namespace or instance id from the Eddystone object.

How can I tell if a Telemetry object and an Eddystone object come from the same estimote beacon?

I’d use the Estimote Cloud for that. Cloud stores the configuration of all your beacons which you can access through its API (there are some ready-made classes for that in the SDKs as well, in Android that’s EstimoteCloud IIRC). So if you have device ID, you can find what namespace/instance ID that beacon is set to, and match the two telemetries. (and vice versa)