Closed
Description
Testing on main (after #9325):
Run ble_heart_rate_simpletest on a Metro ESP32-S3. Does not work on 9.0.5 either.
Fixes and diagnoses already done:
xTaskNotifyWait(0, 0, (uint32_t *)&error_code, 200);
used several times.200
is ticks. We changed ticks from 1 per 10msecs to 1 per msec in CONFIG_FREERTOS_HZ = 1000 #9134. I changed to usepdMS_TO_TICKS()
to make it tick-length independent.- xTaskNotifyWait() above may return
error_code
BLE_HS_EAGAIN
, which has to be handled. I added a routine to handle that and called it in various places. - In progress: The default characteristic size for a remote characteristic appears to be zero. By comparison, on nordic it's 20. The zero causes a
PacketBuffer
only big enough for a 2-byte length to be constructed. That then invokes code which never grows the packet buffer. Looking into this to see where the default characteristic size is set up.