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

Encapsulating data and sending multiple notifications | NO_MEM with MTU set to 23 bybtes

My application running on top of the S132 has a data base which can store up to 12 hours of data (720 points @6 bytes each). A request is made from the GATT Client to retrieve from this data base. Knowing that there is a limitation, the amount of data I can send being (MTU - 3) = 20Bytes,  I queue the request and package 3 data points into each notification. The payload from the App is then MAX 18 bytes for each Notification.

For example, if the request is 60 (1 hour of data), I pull the data from the database and add it into a temp buffer. I then grab 3 points and put it into a notification. My intention, is to continue doing this until all 60 data points have gone through, which would be 20 Notifications Total.

All is great, but after I send just a few notifications,  I receive a NRF_ERROR_NO_MEM from NRF_ERROR_STK_BASE_NUM, error code is 0x3004. 

1) I was under the impression that I can send notifications as long as they are below 20 bytes?

Related