Does characteristics attributes can be saved to a NON-Volatile memory? I need the attributed value data to be saved when the chip loses power (replacing the battery or resetting it…).
I ‘m using the Device information Service from your SDK. I added a write permission to the ‘Serial number’ attribute so I can set the device serial number dynamically by issuing a write requests from a peer device (each device will have its unique serial number). It works fine until I reset the chip and data is lost.
I’m working with the QN9080 chip and the latest SDK release.
If you want some device information to be saved in a non-volatile section of memory, you can use the Non-Volatile Data Storage section of Flash, which is a reserved page of the flash (of a recommended size of 2kB, but configurable in boot information).
This section sues Tag IDs and data values to store different kinds of information, such as BD Address or Device Name.
A Serial Number tag can be created to store this information, and the value can be written to this tag when receiving it from the attribute you're using.
These functions can be found in the nvds.h header file, often found in the /board/ folder of QN9080 example projects.