Eddystone-TLM is a data format defined by Google, using standard Bluetooth LE advertising, that can be detected on all receiving Bluetooth LE devices such as Android and iOS devices, desktops, laptops, Bluetooth gateways and single board computers such as the Raspberry Pi.
‘TLM’ signifies that it is providing telemetry of a device:
The battery voltage is in millivolts and defaults to zero if not supported by the device.
The temperature is in degrees Celsius using signed 8.8 fixed-point notation and defaults to -128°C if not supported by the device. For devices such as temperature sensor beacons, the TLM temperature is the System on a Chip (SoC) die temperature, not the temperature sensor for which you will need to decode a different advertising frame.
ADV_CNT is the number of advertisement frames sent since the device started and SEC_CNT is the time since device power up. These can be used to infer time and duration.
There’s no device identification in the advertising to uniquely tie the telemetry to a device so Google recommends:
TLM should be interleaved with an identifying (advertising) frame such as Eddystone-UID or Eddystone-EID
However, the additional advertising could equally be iBeacon. All Bluetooth LE receiving devices also receive a Bluetooth MAC address that is visible on all devices apart from iOS. For many sensing scenarios, an additional identifying advertising frame isn’t required.