Skip to content

Provisioning

Provisioning mode is a special state used for initial device setup, configuration, and recovery. It is entered by setting a one‑shot flag or via a reboot into DFU/provisioning.

Provisioning is triggered by setting devcfg.fw.prov_start to true. The device reboots into provisioning mode to ensure a clean network state.

{ "devcfg": { "fw": { "prov_start": true } } }

The device uses the network defined by devcfg.fw.prov_net during provisioning. This network must be defined in global.json or unallocdata.json.

{ "devcfg": { "fw": { "prov_net": "k1" } } }

If no activity occurs for 180 seconds, the device automatically exits provisioning and returns to the unallocated state. This timeout allows extra time for Wi‑Fi reconnections at startup (added in firmware 1.0.15).

Provisioning can be exited manually by sending the return_local devwork action:

{ "devwork": [{ "a": "return_local" }] }

This transitions the device back to the unallocated state using /unallocdata.json.

  • When entering DFU or provisioning, the device restores any previously persisted configuration (firmware 1.1.1).
  • When transitioning from unallocated to DFU or provisioning, the device avoids losing persisted config (firmware 1.1.1).
  • Provisioning mode cleans up persisted data (if any) when it starts (firmware 1.0.15).