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

Network collapse when Zigbee light bulb example runs

Hello to all,

i've developed some application under 3.2.0 SDK. Now I want to port my application on new 4.1.0 SDK but a I have found a relevant issue.

Before migrating my application (I read migration guide and the modifications are consistent), I decided to try light bulb example.

When the example runs all network activity stops, on the sniffer the last message is identified as "beacon request".

Until the example is still running, I can't see any other message, any command from coordinator and other device (and vice-versa) doesn't work.

I attach sniffer trace sdk_410_starts.pcapng to show you wath happens. In order to view the trace this is the key: 8a:89:a1:cc:a3:66:11:15:05:88:8f:a7:9e:f5:99:67

BR,

Maurizio

Parents
  • Hello,

    Are the other devices in the network also nRF devices running on SDK4.1? It shouldn't really matter, but for debugging purposes.

    Does the coordinator receive any event? Does it say anything after the beacon request from the nRF light bulb? Does this also happen if you try the light_control example (light- bulb, switch, and coordinator) from SDK4.1?

  • Hi,

    Are the other devices in the network also nRF devices running on SDK4.1?

    there's no other nRF devices.

    Does the coordinator receive any event? Does it say anything after the beacon request from the nRF light bulb?

    Coordinator is based on ETRX357 Telegesis with CLI interface, but on CLI I've no event on beacon request. 

    Does this also happen if you try the light_control example (light- bulb, switch, and coordinator) from SDK4.1?

    I've only two Nordic board, and I can't try full example, but if I try the same example based on SDK 3.2.0 this issue doesn't occur.

    BR,

    Maurizio

Reply
  • Hi,

    Are the other devices in the network also nRF devices running on SDK4.1?

    there's no other nRF devices.

    Does the coordinator receive any event? Does it say anything after the beacon request from the nRF light bulb?

    Coordinator is based on ETRX357 Telegesis with CLI interface, but on CLI I've no event on beacon request. 

    Does this also happen if you try the light_control example (light- bulb, switch, and coordinator) from SDK4.1?

    I've only two Nordic board, and I can't try full example, but if I try the same example based on SDK 3.2.0 this issue doesn't occur.

    BR,

    Maurizio

Children
  • Perhaps the coordinator doesn't like that there is a "new" device that tries to join with the same address as the old light bulb? Do you have any possibility to debug the coordinator? I don't know what their SDK looks like, but there must be some event that is generated when a new device tries to join. Did you remove the device properly from the network first?

    I can't say anything from the sniffer trace. After the new node's beacon request, the coordinator should reply to this, which it doesn't do in the sniffer trace.

    BR,
    Edvin

  • Hi Edvin,

    Perhaps the coordinator doesn't like that there is a "new" device that tries to join with the same address as the old light bulb?

    To clarify the device with light bulb example on 4.1.0 is only powered and never associated to my network.

    Do you have any possibility to debug the coordinator?

    I guess not, this is not mentioned in the documentation.

    Did you remove the device properly from the network first?

    I've also tried with no device associated to the network (coordinator only), and the only messages sniffed are link status, but when I turn on light bulb example the beacon request message appears and then nothing until device is powered. 

    I can't say anything from the sniffer trace.

    In all situations, as soon as I turn off device with light bulb example the network is "unlocked" and messages return to normality.

    It would seem that as long as the device with the example is running the radio channel remains busy and no other device is able to communicate. In fact if I set on the example the Zigbee channel to one different to my network (I'm using channel 11) this issue doesn't happen.

    I had not yet said I am using the PCA10056 board, maybe the issue is related to nRF52840 hardware?

    BR,

    Maurizio

  • mau said:
    To clarify the device with light bulb example on 4.1.0 is only powered and never associated to my network.

     But you said that the network stops working after you turn it on, is that the case?

     

    mau said:
    I guess not, this is not mentioned in the documentation.

     So it is not something you have made? It is a product that you bought of the shelf?

     

    mau said:
    when I turn on light bulb example the beacon request message appears and then nothing until device is powered. 

     What device? And do you mean power cycled? What happens then?

    I just tested the light bulb with a coordinator running on the CLI example, both running on pca10056 boards. No issues there.

    Can you say something about the coordinator? What is the coordinator looking for? Will it accept any device? Please note that there is a difference in the light bulb example and e.g. a Philips Hue light bulb, 

    Can you test two things for me:

    1: Delete the entire flash of the light bulb before you try to run the light bulb example. Perhaps it has some old network settings in flash from when you were using the older SDK. Use the command "nrfjprog --eraseall" (you must have nrfjprog installed. Let me know if you don't know how to install it).

    2: You said you have two DKs. Can you try to use one with the light bulb example (remember to erase the flash first). Program the other one with the CLI example from SDK\examples\zigbee\experimental\cli. Once you have programmed it and you have a putty terminal with the correct settings, type the commands:

    bdb channel <the channel that you use on your lightbulb>.
    
    bdb role zc
    
    bdb start.

    Does that work?

  • Hi Edvin,

    But you said that the network stops working after you turn it on, is that the case?

    I confirm.

    So it is not something you have made? It is a product that you bought of the shelf?

    Yes, the coordinator is a commercial product.

    What device? And do you mean power cycled? What happens then?

    The device running Light Bulb Example as mentioned above.

    I just tested the light bulb with a coordinator running on the CLI example, both running on pca10056 boards. No issues there.

     I tried this setup before on SDK 3.2.0 and after on SDK 4.1.0. These is the results:

    On SDK 3.2.0 I programmed one board as CLI and the other one with Light Bulb Example. At startup the board with Light Bulb Example has LED 4 switched on and LED3 switched off. On CLI I issue:

    bdb channel 11
    
    bdb role zc
    
    bdb start

    LED3 on the board with Light Bulb Example is switched on to indicate right association.

    Then I issued this command:

    zcl cmd F4CE368732AA67A8 10 0x0008 -p 0x0104  0x00 -l 00ffff

    LED4 on the board with Light Bulb Example is switched off in response of my level control command

    And at the end I issued this command:

    zcl cmd F4CE368732AA67A8 10 0x0008 -p 0x0104  0x00 -l ffffff

    LED4 on board with Light Bulb Example is switched on again.

    At this point I executed "nrfjprog --eraseall" for each board and then I programmed with SDK 4.1.0.

    I ran the same commands but on the board with Light Bulb Example LED4 is alway on and LED3 is always off.

    You say that you have no issues with this setup, what tests did you get after bdb start?

    BR,

    Maurizio

Related