Core State Uplink Data
Reports the current device operating state, uptime, and whether
the backend connection is healthy. All values are sent automatically
on change and periodically (based on update_period_mins).
Key path: devdata.core
To request current values:
{ "devdata": { "core": null } }Current device state as a single character code.
Configuration variables
- Type: string (single character)
- Sent on: Every state change
| Code | State |
|---|---|
I | Initialising |
B | Boot / starting |
U | Unallocated |
A | Allocated |
E | Error |
W | Wiping / formatting |
D | DFU mode |
P | Provisioning |
{ "devdata": { "core": { "state": "A" } } }System timestamp in milliseconds (device uptime). Useful for correlating events.
Configuration variables
- Type: integer (milliseconds)
- Sent on: With every devdata message
{ "devdata": { "core": { "ts": 987654321 } } }comm_ok
Section titled “comm_ok”true when the device has received any MQTT message within
devcfg.core.app_timeout_secs. Goes false when the timeout
expires with no traffic.
Configuration variables
- Type: boolean
- Sent on: Every state change, periodic updates
{ "devdata": { "core": { "comm_ok": false } } }app_ok
Section titled “app_ok”true when the device has received an application‑level message
(anything in the app or devcfg sections) within the timeout.
false when only system‑level traffic (pings, etc.) has been seen.
Configuration variables
- Type: boolean
- Sent on: Every state change, periodic updates
{ "devdata": { "core": { "app_ok": false } } }Related
Section titled “Related”- Core Config (Downlink) —
app_timeout_secs - State Codes Reference — full list of state codes
- MQTT Overview — how messages are sent