This project features the Texas Instruments SimpleLink Bluetooth Low Energy CC2640R2F Launchpad powered by 2xAA batteries to function as Bluetooth Low Energy Eddystone Beacon.
What are Beacons?
Beacons are used to mark important places. They have been used throughout history. A good example of a beacon is a lighthouse. A lighthouse is a tower, building, or other type of structure designed to emit light from a system of lamps and lenses. It serves as a beacon to sea vessels and function as navigational aid.
Similar to a lighthouse, Bluetooth Beacons broadcast identifiers to provide information about a particular place.
Google developed the Eddystone open Beacon format. Any Bluetooth Beacons that uses the Eddystone Beacon format are called Eddystone Beacons. Here below are the types of Eddystone Beacon format.
- Eddystone-UID: A unique, static ID with a 10-byte Namespace component and a 6-byte Instance component.
- Eddystone-URL: A compressed URL that, once parsed and decompressed, is directly usable by the client.
- Eddystone-TLM: Beacon status data that is useful for beacon fleet maintenance, and powers Google Proximity Beacon API’s diagnostics endpoint. -TLM should be interleaved with an identifying frame such as Eddystone-UID or Eddystone-EID (for which the encrypted eTLM version preserves security).
- Eddystone-EID: A time-varying beacon frame that can be resolved to a stable identifier by a linked resolver, such as Proximity Beacon API.
For this project the TI CC2640R2F Eddystone Beacon will advertise Eddystone-URL packets. Every 10th advertise is a Eddystone-TLM Packet which will consist of Battery Voltage, Temperature, Advertise Packet Count and Running time. The TI CC2640R2F Launchpad does not have temperature sensor and Temperature Value is set at 19.5 Celsius.
At Power On the TI CC2640R2F Eddystone Beacon will go to Configuration Mode. At this state the device is connectable. If there is no connection made within 30 seconds the device will enter Beacon Mode. At Beacon Mode the device is not connectable.
At Configuration Mode you can change Beacon Settings using the Eddystone URL Configuration Service, shown in this video below.
Program: TI CC2640R2F Eddystone Beacon
Note: See, program link README.md for instructions.
Using the Eddystone URL Configuration Service you can also change the Beacon Interval and TX Power. I do not have a Spectrum Analyzer to verify the change in TX Power. An alternative way to verify a change in TX Power is to measure the peak current consumption of a device during Beacon Advertisement. To do this I use a XDS110 Debug Probe plus Energy Trace Add-On.
0 dBM Energy Trace Current Consumption Profile:
5 dBM Energy Trace Current Consumption Profile:
Beacon Advertisement Current Waveform:
Using Energy Trace I can also get the estimated Battery Life with Beacon Interval = 300 ms and TX Power = 0 dBM. The estimated Battery Life is 4 months and 3 days.