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

Configuration process in nrf_mesh APP

Hi, I'm provisioning mesh nodes using nrf_mesh APP. After I finished it and added device into mesh network, I have some questions in configuration process.

In nrf_mesh APP we can see the procedure while provisioning,and it shows these data app send and reveive  also we can find it in GATT provisioning and Proxy file.But I dno't know how the  node received data then it need to add/bind app key ,set pulication/subscribtion address to itself.I can't find the function calls to it.Could you please tell me where to realize it?

The another qestion is that when  I  config node it can reinitialize and reconnect to APP ,they send much data and I don't understand them because I can find it have any connection about appkey and pulication/subscribtion address .

Any help will be thanked advanced.

Best Regards!

ZhengRui.

Parents
  • Hi,

    I am not sure I understood your question. The configuration server model is implemented by us and takes care of the configuration process. You can take a look at the implementation of the server model inside nrf5_SDK_for_Mesh_v3.1.0_src\models\foundation\config

    If you want to create your own model you should take a look at the documentation in the infocenter here.

    There is also a part of the documentation about GATT and Proxy provisioning here.

    Best regards,

    Marjeris

  • emm,maybe there are some misconception for us.I'm develope my own provisioner in Android based on nrf_mesh APP, using nrf5_SDK_for_Mesh_v2.2.0 and nrf_mesh APP to provision proxy_client.Now I have finished the process of provision so that I need to config it,is that right?

    After APP reconnects to proxy client,there are some thing to do such as add/bind appkey and set publication address for this node.But I can't find codes in this procedure to complete the function.There is no codes point to appkey add /bind in mesh_gatt.c and proxy.c files,which is I really want to understand because  I don't know how to work it out .

    the documentation about GATT and Proxy provisioning here.

    It shows that we need to exchange something between Android and nrf_board as follows:

     But nrf_mesh APP shows some different information in this process.It need to send block acknowledgement information,can you tell me what's function about block acknowledgement?

    Best weshes,

    Zhengrui.

  • Hi , If you are using nRF Mesh Library for Android you don't have to worry about sending/receiving block acknowledgements. This is something that is handled by the library. Usually block acknowledgements are sent/received when sending/receiving segmented mesh messages. This will confirm that certain messages are sent/received and based on this some messages are retransmitted ensuring all messages are sent/received. Whatever you see in the UI here is just displayed as information for the user based on what messages are sent and received. There are callbacks for sending/receiving block acknowledgements and based on this the UI is updated accordingly.

    Just as a note nRF Mesh app autmates a few configuration steps right after the provisioning completes, so that it becomes a little bit easier for the user to not go through all the configuration steps. Based on the diagram you have attached the composition data get, app key add messages are sent right after the provisioning is completed  as I mentioned above. They are all segmented messages and are sent in multiple segments. The library will respond automatically to the node with block acknowledgements to ensure each segment is received and you don't have to handle block acknowledgments yourself.

    Hope this clarifies

  • ok,it's clear for me to understand and thnks for your answer.

    But another question is that how to add and bind app key or set publish address on my nrf5 boards using codes after receive messages from APP. I can't find the connection between the received messages and appkey add/bind  function in codes so I still confused about configuration. Could you point out where is to complete  these work (add & bind appkey & set publish/subsccription address) in code. I just receive message but don't know how to use them.

  • As I pointed out in my previous answer, the configuration process is implemented and taken care of in config_server.c.

  • Of course I know that all of thses functions is defined in the structure of access_opcode_handler_t opcode_handlers[]. But which I confused is that how to jump to the here after I  received configuration messages (I mean that which function is called or where the functions are initiallized).

    That's my problem.

    Thanks advance.

  • Hi zhengrui,

    I am sorry but I think there is a misunderstanding, because I am not sure what you are asking for.

    The configuration server model takes care of the configuration and you don't need to implement anything yourself in the application side. It should work automatically if the project is configured in the right way. The configuration is a standardize process and is taken care of by the stack. You shouldn't be modifying the stack.

    If your application is not working then something else must be wrong. If it's not working you need to give us more details about what exactly is not working so we can help you better.

    Have you tested the nRF mesh app together with the unmodified light switch example and confirm that it works as expected?

    Best regards,

    Marjeris

Reply
  • Hi zhengrui,

    I am sorry but I think there is a misunderstanding, because I am not sure what you are asking for.

    The configuration server model takes care of the configuration and you don't need to implement anything yourself in the application side. It should work automatically if the project is configured in the right way. The configuration is a standardize process and is taken care of by the stack. You shouldn't be modifying the stack.

    If your application is not working then something else must be wrong. If it's not working you need to give us more details about what exactly is not working so we can help you better.

    Have you tested the nRF mesh app together with the unmodified light switch example and confirm that it works as expected?

    Best regards,

    Marjeris

Children
Related