Skip to main content
Associate II
August 4, 2025
Solved

Persistent data saving callback

  • August 4, 2025
  • 1 reply
  • 470 views

Hello,

Based on the NVM example, after: ZbPersistNotifyRegister(zigbee_app_info.zb,APP_ZIGBEE_persist_notify_cb,NULL).

What actions cause the device to enter the callback? Where can this information be found?
Thanks,

Best answer by Ouadi

Hi @ISLTG,

The persistence notify callback is called every time a persistent data change occurs on zigbee network, the stack notifies the change using this callback to the application layer.

As an example, the NVM data is saved immediately in case of network update ( device join, device leave, NWK key update..), ZCL attributes change.

You can refer to the wiki page below that describes the Zigbee persistent data management :

 Connectivity:Zigbee persistent data management and non-volatile memory - stm32mcu

Best regards,

Ouadi

1 reply

OuadiBest answer
Technical Moderator
August 8, 2025

Hi @ISLTG,

The persistence notify callback is called every time a persistent data change occurs on zigbee network, the stack notifies the change using this callback to the application layer.

As an example, the NVM data is saved immediately in case of network update ( device join, device leave, NWK key update..), ZCL attributes change.

You can refer to the wiki page below that describes the Zigbee persistent data management :

 Connectivity:Zigbee persistent data management and non-volatile memory - stm32mcu

Best regards,

Ouadi

ISLTGAuthor
Associate II
August 8, 2025

Hello @Ouadi,

Any idea why saving might enter the NMI Handler, or take longer than expected?
I have not changed the NVM functions from the example code.

Thanks,