SlimeVR / SlimeVR-Tracker-ESP

SlimeVR tracker firmware for ESP32/ESP8266 and different IMUs
Apache License 2.0
868 stars 298 forks source link

BNO080: Try to handle reset better #268

Closed l0ud closed 1 year ago

l0ud commented 1 year ago

So far firmware worked with assumption that it'll get 2 BNO reset responses, which is not always true. In my testing it seems like first reset is performed automatically on BNO power on, then second is performed on demand by firmware.

When BNO was earlier in working order and firmware is restarting (because ESP crashed or was resetted without power cut) BNO will not generate first reset, which was assumed to happen in firmware so far. So BMI driver was waiting for 5 seconds starving software watchdog set to 3 seconds by default.

This change:

Should help with https://github.com/SlimeVR/SlimeVR-Tracker-ESP/issues/264