Greetings to all,
I'm using nRF52840 with the latests SDKs (nRF5 SDK 15.3.0, mesh SDK 3.2.0). I have two questions which are related-
I'm trying to find a clever way of storing all the provisioning data in flash and be able to export it to a JSON file that could be used to reconfigure a provisioner in case of malfunction of another.
Question 1: Is there a recommended way of storying the provisioned network data in flash and export it? I want to use one of the nodes solely with a nRF52840 to serve as a client to some mesh-models and as a provisioner. Therefore, this should be a solution contained within the firmware using the Nordic SDKs and any external libraries that may be required.
I was inspecting the JSON file created (by version 2.0.5 of the nRFMesh App for Android) when one exports the Network Settings. There are a few fields I can't understand what they are. I have highlighted them in bold.
Question 2: Could someone please explain to me what are the meaning of the fields I highlighted in bold?
In the netKeys section:
"netKeys": [
{
"name": "Network Key 1",
"index": 0,
"key": "5992E9C7DEE2334BA76BDD2B14FF5A3D",
"phase": 0,
"minSecurity": "high",
"timestamp": "1970-01-01T01:00:00+0100"
}
]
What are the "phase" and "minSecurity" fields for?
Here is the case for one of the nodes:
{
"UUID": "C4FB244B3D5CE042A124D63E0627A21A",
"name": "nRF5x Mesh Light",
"deviceKey": "5AAF66D1CE7EBF395EC26214B80FE4B4",
"unicastAddress": "0002",
"security": "low",
"configComplete": false,
"cid": "0059",
"pid": "0000",
"vid": "0000",
"crpl": "0028",
"features": {
"friend": 2,
"lowPower": 2,
"proxy": 1,
"relay": 1
},
"defaultTTL": 4,
"networkTransmit": {
"count": 2,
"interval": 1
},
"netKeys": [
{
"index": 0,
"updated": false
}
],
"appKeys": [
{
"index": 0,
"updated": false
}
],
"elements": [
{
"name": "Element: 0x0002",
"index": 0,
"location": "0000",
"models": [
{
"modelId": "0000",
"bind": [],
"subscribe": []
},
{
"modelId": "0002",
"bind": [],
"subscribe": []
},
{
"modelId": "1000",
"bind": [
0
],
"subscribe": [],
"publish": {
"address": "FFFF",
"index": 0,
"ttl": 1,
"period": 2560,
"retransmit": {
"count": 1,
"interval": 1
},
"credentials": 0
}
}
]
}
],
"blacklisted": false
}
What are the "cid", "pid", "vid", "crpl", location, bind, updated and credentials fields?
Also in the groups section, what is the parentAddress?
"groups": [
{
"name": "DemoDevices",
"address": "C000",
"parentAddress": "0000"
}
Thank you very much for your assistance!
Best regards,
//E