This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

lightcontrol demo in Bluetooth Mesh SDK v0.9.1-alpha, why is there "Not in RUNNING state" on RTT?

Hi there, I have four nRF52 DKs, 52832 board. I make one board as client and three boards as server. After flashing corresponding softdevice and application firmware, they can start to run. But after provisioning, I tried to press button to control the light on or off, I found that:

0> <t: 186081>, main.c, 221, Button 1 pressed

0> <t: 186084>, main.c, 224, Not in RUNNING state

I don't know why the state is not in running state, how can I fix it? The log after client reset is below:

0> <t: 0>, main.c, 318, ----- BLE Mesh Light Control Client Demo -----

0> <t: 0>, main.c, 108, Initializing softdevice

0> <t: 0>, nrf_mesh_sdk.c, 109, Initializing SoftDevice...

0> <t: 2>, nrf_mesh_sdk.c, 118, Ram base: 0x200022D8

0> <t: 15>, nrf_mesh_sdk.c, 123, sd_ble_enable: app_ram_base should be adjusted to 0x200019C0

0> <t: 20>, main.c, 116, Initializing mesh stack

0> <t: 313>, main.c, 123, Enabling mesh stack

0> <t: 325>, main.c, 141, Setting up access layer and models

0> <t: 365>, main.c, 265, Configuration of device 0 successful

0> <t: 368>, main.c, 265, Configuration of device 1 successful

0> <t: 164214>, main.c, 221, Button 0 pressed

0> <t: 164217>, main.c, 224, Not in RUNNING state

0> <t: 186081>, main.c, 221, Button 1 pressed

0> <t: 186084>, main.c, 224, Not in RUNNING state

Parents
  • Hi kren,

    From the client log, it seems like only two servers are being provisioned and configured. The client will not transition to the running state until all three servers are provisioned and configured.

    Could one of the servers have a pre-stored configuration? If the applications are compiled with #define PERSISTENT_STORAGE 1, provisioning data will be stored in flash and not erased across power cycles. Use

    nrfjprog -e
    

    on each device to erase all the flash memory, then re-flash the firmware again.

    Best,
    Thomas

Reply
  • Hi kren,

    From the client log, it seems like only two servers are being provisioned and configured. The client will not transition to the running state until all three servers are provisioned and configured.

    Could one of the servers have a pre-stored configuration? If the applications are compiled with #define PERSISTENT_STORAGE 1, provisioning data will be stored in flash and not erased across power cycles. Use

    nrfjprog -e
    

    on each device to erase all the flash memory, then re-flash the firmware again.

    Best,
    Thomas

Children
Related