У меня есть приложение BLE, работающее на Mbed 9.7.2 на nRF52832 (softdevice 132). У меня интервал подключения (к центральному) 11,25 мс, а задержка подчиненного устройства 3. Каждая характеристика имеет размер 20 байтов и состоит из 8 2-байтовых значений и одного 4-байтового значения. Приложение будет заполнять одну характеристику новыми данными каждые 10 мс; когда все 3 характеристики обновлены, я вызываю BLE::Instance().gattServer().write()
, чтобы записать новые данные через BLE в течение следующего интервала соединения.
Моя проблема заключается в следующем. Когда я пытаюсь BLE::Instance().gattServer().write()
, я регистрирую результат. При первом запуске приложения результат этой операции BLE_ERROR_NONE
, что означает, что все в порядке. С течением времени результат BLE::Instance().gattServer().write()
чаще становится BLE_STACK_BUSY
.
Любое понимание этого очень приветствуется.