How to reset a remote node using the Mesh provisioner example in NCS 1.9.1

Hello Experts,

I am trying to realize the following sequence

1) Reset button pressed on the remote node.

2) Remote node intimates the Mesh provisioner node by sending a message to it.

3) Mesh provisioner node initiates a node reset procedure remotely.

Could you please guide me through the process? I am using the nrf52832 DK as a provisioner and nrf52840 Dk as the sensor server/sensor client.

Thank you!

Parents Reply
  • Also, Please correct me if I am wrong. Since the callback timesout before it sees the reset status message, the provisioner doesn't remove the node from its CDB. Even though there is no chance for an attack(in my case atleast), I am not going to be able to reuse the address used by the node which got reset.

    Is there a way to manually remove the node from the CDB?

Children
  • Could you show me how you are calling bt_mesh_cfg_node_reset? And I assume you are seeing the same issue when you are simply calling it from the provisioner without the first step of the remote node triggering it?

    Susheel said:
    Is there a way to manually remove the node from the CDB?
    Susheel said:
    Since the callback timesout before it sees the reset status message, the provisioner doesn't remove the node from its CDB.

    Well that might depend on the provisioner, but I guess there would be no safe way for it to remove it from CDB without the status message. I do not think bt_mesh_cfg_node_reset does this though, it should be done manually.  Use bt_mesh_cdb_node_del to delete the node from CDB. Then refresh the keys. To perform key-refresh, use bt_mesh_cfg_cli_net_key_update to upload a new key to all nodes, then use bt_mesh_cfg_cli_krp_set to switch key-refresh phase on all nodes.

    It would of course be preferable to find the issue here instead of betting on bt_mesh_cfg_node_reset to function correctly, but giving no response.

    Regards,

    Elfving

Related