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

Bulk reliable mesh message limited to 50 bytes

Hi,

We are trying to send a mesh packets containing 72 bytes from client to server with reliable message transmission method (Using access_model_reliable_cancel() based on the light switch example). We modified the transmission packet structure and the definitions of GENERIC_ONOFF_STATUS_MINLEN and GENERIC_ONOFF_STATUS_MAXLEN to match our mesh packet length.

However, we noticed that with this setup, the server can only accept/acknowledge the packet up to 50 bytes - The server never acknowledge any packet that is more than 50 bytes and cause transmission timed out in the end.

We are aware that by switching the standard mesh to Nordic Instaburst will solve this issue, but is there any setup that we might overlook?

Any suggestions will be much appreciated!

Many thanks!

  • Hi,

    The fact that instaburst solves the issue points in the direction of possibly a cap on number of packets in a segmented message, or possibly buffer sizes (if they scale with segment size, as Instaburst is increasing segment size through the use of advertiser extensions.)

    Is the limit at 50 bytes exactly? Have you done any debugging and/or packet sniffing to see what gets sent over the air?

    If you are manually cancelling the message, might it be due to segmented messages getting sent in individual packets with some delay between each packet, and then timing out before all such packets are sent?

    I also see there is some time since you asked the question, have you come any further in the mean time?

    Regards,
    Terje

Related