zb_zdo_mgmt_lqi_req occasionally does not call the callback

We've noted that our coordinator sometimes hangs and it's because that sometimes, maybe once every 1000-10000th call, the zb_zdo_mgmt_lqi_req API never responds to the callback and our code gets stuck on a semaphore waiting on that reply. I've checked that we get a buffer from zb_buf_get_any and that zb_zdo_mgmt_lqi_req does not return 0xff, so everything looks right.

Is there a better, more preferred, way to get the list of connected end devices or is this it and I should rework the code to be prepared that it might not always get a response?

I guess this could be considered a bug in the Zboss library? We're running version 3.11.1.5.

Regards

/Martin 

Parents
  • Hi Martin,

    Which SDK and version are you using?

    Is there a better, more preferred, way to get the list of connected end devices or is this it and I should rework the code to be prepared that it might not always get a response?

    Do you want to get the neighbor table of the coordinator itself or the other devices in the network? If you are only interested in the former, you can use zb_nwk_nbr_iterator_next() instead of sending a Mgmt_Lqi_req.

    Best regards,
    Marte

  • Hey. Sorry for late answer.

    ZBoss is 3.11.1.5, SD is 7.0.1, MDK is 8.51.0. Do you need some other version?

    Yes, I only need the local neighbours, we're not using any routers.
    Where can I see example code for zb_nwk_nbr_iterator_next? Didn't find any when googling and the documentation doesn't explain very well how to call it.

Reply Children
Related