haukepetersen opened a new issue #1105:
URL: https://github.com/apache/mynewt-nimble/issues/1105


   We are debugging a strange behavior we encountered when doing some 
experiments with extended advertisements: we have 14 nodes periodically 
transmitting data to a central sink node via extended advertisements. The way 
we transmit the data is to write the data into an unused advertising instance 
(configured to use a total of 10), and then advertise the data exactly 3 times.
   
   Now we wanted to run a 24h experiment, and everything went fine for the 
first ~18,1 hours. But after ~65500 seconds, all of our 14 nodes stop sending 
out data at the same time. What we can observe, is that NimBLE stops to trigger 
`BLE_GAP_EVENT_ADV_COMPLETE` events and the counters we put into the PHY code 
show that the node is not transmitting any packets anymore.
   
   So far I don't have a lead on what could cause this behavior, but here are 
some thoughts we have collected so far:
   - as 14 nodes show exactly the same behavior at the same time (in the order 
of the same second), my guess is that this is a systematic software bug 
somewhere in NimBLE
   - the time between reboot (all nodes are rebooted at beginning of each 
experiment) and the faulty behavior is awfully close to `UINT16_MAX` -> does 
intuitively point to some kind of (timer?) overflow issue
   - as the node stop to send out any packets on the radio, could this be 
related to the controller's scheduler?
   
   Does anyone have experience running extended advertisements for longer 
periods of time? Or is there any idea what could be causing this? Due to a 
paper deadline approaching it would be great to have our setup stable ASAP :-)
   
   Build/configuration context:
   - NimBLE @ RIOT
   - NimBLE version b9c20addd87f1692ea27600ede82f641c77315be
   - Using the following configuration for extended advertisements:
   ```
   MYNEWT_VAL_MSYS_1_BLOCK_SIZE=294
   MYNEWT_VAL_MSYS_1_BLOCK_COUNT=32
   
   MYNEWT_VAL_BLE_MULTI_ADV_INSTANCES=9
   MYNEWT_VAL_BLE_EXT_ADV=1
   MYNEWT_VAL_BLE_EXT_ADV_MAX_SIZE=1650
   MYNEWT_VAL_BLE_HCI_EVT_HI_BUF_COUNT=12
   MYNEWT_VAL_BLE_HCI_EVT_BUF_SIZE=257
   MYNEWT_VAL_BLE_LL_EXT_ADV_AUX_PTR_CNT=10
   MYNEWT_VAL_BLE_LL_CFG_FEAT_LL_EXT_ADV=1
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to