Android-nRF-Mesh-Library: Segmentation feedback of acknowledged msg is mostly failing when sent to non-proxy device


Describe the bug As title states, when sending segmented acknowledged messages to non-proxy devices, it is too often failing to construct back the Status.

To Reproduce Steps to reproduce the behavior:

  1. Provision at least 2 nodes
  2. Connect to proxy
  3. Send either CompositionDataGet, ConfigModelPublicationSet, or any msg that would result in segmented answer to the device that is not the proxy
  4. Witness the library failing to construct the Status msg – it can totally fail or will pass it once a retransmission from the device is done

Expected behavior The library is able to construct the Status as soon as all feedback segments has been received (eg. SEG 0 == SEG N), and the non-proxy device should not have to retransmit at this point (?).

Platform details:

  • Device: any
  • OS: Android 9 and above
  • Library Version: 3.1.5
  • Mesh SDK: 4.0
  • Chipset: nrf52840 xxAA
  • MTU size: 66

Logs / Screenshots I spent some time to build enough material for you. I hope it will be enough to spot any bug, or give us hint on why this behavior.

log files suffixed with OK --> expected behavior log files suffixed with KO --> unexpected behavior: all segments received from device but no Status is being constructed. But we have it once the device is retransmitting some segments log files suffixed with full_KO --> unexpected behavior: all segments received from device but no Status is being constructed. The device seems to have received every acknowledgements as it is not retransmitting

Unfortunately, this behavior is even more problematic in our commercial application as we have implemented a FIFO for such msg with auto-retry mechanism. Meaning this kind of msg is in a FIFO, when sending a cmd, we wait for feedback and retry every 2.5 sec (retried 2 times). The success rate is below 15% because of this problem and it makes the app unusable for a lot of our features. If we increase the retry timer to 5-6sec, the success rate raises to ~60%, but it is still not enough, and is not acceptable for our customers. We may force proxy connection to raise success rate to 95%, but it is not acceptable for most features that need these segmented feedbacks, and moreover it’s blocking the power of mesh n/w.

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Reactions: 1
  • Comments: 44 (19 by maintainers)

Most upvoted comments

I was going to post an issue on your repository, but I don’t think your plugin is the problem since it still persists when using the latest version of the nRF mesh app.

Hello @bslisowski ,

Please use our repository to post issues ! Well, unfortunately I am slowly forgotting our adventures on mesh network…if I remember correctly, no we never fixed that bug and could not figure out if it was a firmware problem or a mobile app problem.

Hi @roshanrajaratnam, i guess you can close this one, it was probably a problem on our side 👍

sent 👍

Hi, it was labelled awaiting user input long time ago before we got a response from you. I have been busy with some other projects. I will look in to yours 😉

Hi, we’re all on vacations right now. Please expect some delays in responses in July.

This one 😃 compatible_DK

android-devs@nordicsemi.no

Hello there. Sorry I didn’t have time to look into this issue as we shipped force proxy as a temporary workaround on prod and I was busy with some other priorities! We may find some time to look for it. But first we will try out the new release 🕺

@R0m4in-dooz I have had some training programs yesterday and today so I have not had time yet to look in to your issue. I will try my best to have a look at this during this week.

Hey sorry, been busy with some other tasks. Unfortunately i won’t be back to work until Tuesday due to national holidays in Norway. I’ll try to take a look at this next week!

Get Outlook for Androidhttps://aka.ms/AAb9ysg


From: R0m4in-dooz @.> Sent: Friday, May 14, 2021 12:27:58 PM To: NordicSemiconductor/Android-nRF-Mesh-Library @.> Cc: Rajaratnam, Roshan @.>; Mention @.> Subject: Re: [NordicSemiconductor/Android-nRF-Mesh-Library] Segmentation feedback of acknowledged msg is mostly failing when sent to non-proxy device (#426)

Hello @roshanrajaratnamhttps://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Froshanrajaratnam&data=04|01|roshan.rajaratnam%40nordicsemi.no|db2f0299f99b4136b12e08d916c2f292|28e5afa2bf6f419a8cf6b31c6e9e5e8d|0|0|637565848823122352|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=XWvT6ztKu%2BuY4ESEV7zPu0chco9wMtn3GdSufYoLZBk%3D&reserved=0 😃 any updates ?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FNordicSemiconductor%2FAndroid-nRF-Mesh-Library%2Fissues%2F426%23issuecomment-841158540&data=04|01|roshan.rajaratnam%40nordicsemi.no|db2f0299f99b4136b12e08d916c2f292|28e5afa2bf6f419a8cf6b31c6e9e5e8d|0|0|637565848823132309|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=k9v5vR%2Bq7ainPfdlb6EzudIOZYCYQsT9Qz7%2BjiKLRd0%3D&reserved=0, or unsubscribehttps://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FACCK6DOVN7VECYUVSXCTPW3TNT3K5ANCNFSM44KKHPZQ&data=04|01|roshan.rajaratnam%40nordicsemi.no|db2f0299f99b4136b12e08d916c2f292|28e5afa2bf6f419a8cf6b31c6e9e5e8d|0|0|637565848823132309|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=Ki%2F%2FGHMT7DDAG2twe4x4uGdbtdYZbKcSDTCJkDz%2FKw8%3D&reserved=0.