Uplink Messages
Uplink messages are sent from the device to the backend. They report real‑time state, sensor readings, alert status, and user‑driven app/widget events.
The device sends uplink data automatically on state change, at a
configurable periodic interval (devcfg.core.update_period_mins),
or immediately when you request a value by sending null for a
devdata key in a downlink message.
// Uplink messages use the same envelope as downlink.// The device populates devdata and app sections.{ "devdata": {}, // dynamic device state and sensor values "app": {} // widget value changes and user interactions}Dynamic values that describe the device’s current state. Each field
is sent automatically on change or can be fetched on demand by
requesting it with a null value downlink.
| Group | Key path |
|---|---|
| Core State | devdata.core |
| Alert State | devdata.alert |
| Power | devdata.power |
| Firmware Info | devdata.fw |
| UI State | devdata.ui |
| Audio Results | devdata.audioin / audioout |
| BLE Scan Results | devdata.blescan |
| Sensors | devdata.temp / accel |
| NFC & Smartcard | devdata.nfc / iso7816 |
| Time | devdata.time |
| Network State | net.<name>.state, wifi/mqtt/ble flags |
Widget value changes and user‑interaction events. The device reports when a widget value is updated (e.g., a button was pressed, a message was marked read) so the backend can stay in sync.
| Group | Content | Page |
|---|---|---|
| Widget Value Reports | Current value of a widget sent on change or on request | app index |
| Msglist Events | isRead updates, button presses, delete confirmations | msglist |
Related
Section titled “Related”- MQTT Overview — the full MQTT message envelope and topic structure
- Downlink Commands — commands the backend sends to the device
- Configuration Files — how the device is configured
- Reference Tables — alert origins, state codes, action aliases