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

Controlling multiple groups nodes with the nRF mesh APP

Hi 

I want to set up a network of about 4 groups of BLE light modules(using the experimental dimming example). Each group comprises of 5 to 7 light modules.   

Currently the way I implement it is that I configured all the nodes to PROXY server (according to this blog) and then I group them.

With this method, I always need to connect the nodes to the APP each time I want to use the APP.

This is highly inconveniencing to be connecting such number of nodes each time the APP is used.   

Are there better ways I can set up the network of about 4-5 groups comprising of 7 BLE modules and then control them with the nRF APP?

Parents
  • Hi,

    As long as your nodes are configured to use the GATT provisioning bearer, they can be provisioned (and configured) from the smartphone app. Directly connecting to the node is only required for the provisioning. Later, you only need to connect to one of the nodes, in order for the phone app to communicate with any other node on the network.

    Once you have the groups set up, and configured the nodes to subscribe to various groups, from the nRF Mesh app you can go to the Groups tab, select a group, and send mesh packets to that group (e.g. on/off messages for turning light on or off.)

    Regards,
    Terje

  • This works. But another thing I noticed was that when a node that is in the network is removed momentarily (no power), when it is powered again, it can't be controlled in its group until a connection of that node is made via the APP. Is there a way this can be avoided? 

  • Hi,

    The node should remember the subscription to the group address in persistent memory, so that the next time it powers up again it will still be subscribed.

    If the smartphone connected to the network through that specific node, the smartphone will lose the connection to the network when the node powers down. Is that what is happening? When the smartphone loses contact with the GATT proxy node, it needs to find a new GATT proxy node and connect to it, in order to connect to the mesh network.

    Regards,
    Terje

  • No, that is not the issue I have. Take for instance, I have nodes A, B and C. They are all provisioned and in the network. I can control them (State 1).
    If node B's power is removed, only nodes A and C can be controlled (State 2).
    But then when node B's power is re-introduced, the APP still controls only nodes A and C, not all the nodes as in State 1 (State 3). 
    Any hints on how can I solve this problem (in State 3)?

  • Hi,

    I have tried to reproduce, by performing the following steps:

    1. Using 3 nRF52 DKs, I program each DK with the Dimming server example from nRF5 SDK for Mesh v4.1.0.
    2. With the nRF Mesh app for Android, I connect to each DK in turn, and:
      1. Provision the node
      2. Configure the Generic Level Server element by:
        1. Binding Application Key 1 to that element, and
        2. Adding a subscription for that element to the "Living room" group
    3. After all nodes are provisioned and configured, I can turn LED1 of all three DKs on/off from the "Living room" group under the Groups tab of the nRF Mesh app.
    4. I turn off one of the boards (not the one that I am connected to over GATT proxy.)
    5. The two boards that remain powered can still be controlled from the phone, using the group.
    6. I turn on the third board again.
    7. All three boards can be controlled from the phone, using the group.

    In other words, I do not see the issue.

    Are the above steps the same as you do? If not, can you give a list of steps in order to reproduce?

    Regards,
    Terje

  • I reproduced the same as you described with nRF SDK for Mesh v4.1. I saw the issue when I had mesh V3.2. I guess the problem is solved in Mesh v4.1.

Reply Children
No Data
Related