P2 watchdog reset while BLE provisioning


we are working on our phone app to provision the p2 per BLE. the p2 code uses the hardware watchdog (set to a generous 60s) and it is restarting due to the watchdog. (to be clear: it only restarts this when provisioning. disabling the watchdog and it will provision just fine, setting watchdog time to 300s, enough time to select wifi network and fill out password, will also work).

anyone noticed the same? is the BLE provisioning code in deviceOS blocking and not issuing Watchdog.refresh()?


BLE provisioning should not be blocking unless you are not using SYSTEM_THREAD(ENABLED) and are using the default AUTOMATIC system mode. You should definitely be using threading if you are using BLE provisioning.

hi @rickkas7

we have:


and use about your lib to connect to wifi or ethernet (no ethernet connected)

another p2 mystery?


Try running it with

SerialLogHandler logHandler(LOG_LEVEL_TRACE);

and monitor the USB serial debug. There should be some debugging messages. Also make sure that nothing can prevent setup() from exiting if Wi-Fi is not available.