This project is for deciphering the BLE interface to Garmin's Varia 820 radar/light.
It consists of this document, along with a python library and example script.
This is currently a work in progress, so some things may be incorrect or incomplete.
- Changing device settings and setting the light mode should all work.
- Radar data is available, but I haven't tested it much yet.
To change settings or access the radar data stream, you must pair with the device. Long press the button when turning it on to go into pairing mode before running the example script.
In progress, see code for now.
Notify on characteristic 6a4e3204-667b-11e3-949a-0800200c9a66.
First two bytes are a header, followed by 1 or more 9 byte target structs.
| Offset | Bytes | Field | Desc |
|---|---|---|---|
| 0 | 1 | Target ID | |
| 1 | 1 | Class | |
| 2 | 3 | Range | range X/Y are 11 and 13 bits |
| 5 | 1 | Length | |
| 6 | 1 | Width | |
| 7 | 1 | SpeedX | |
| 8 | 1 | SpeedY |
Before changing any settings, notify on 6a4e2f11-667b-11e3-949a-0800200c9a66 to receive updated settings.
Write to 6a4e2f11-667b-11e3-949a-0800200c9a66
Notify on 6a4e2f14-667b-11e3-949a-0800200c9a66