Open dpkoch opened 5 years ago
Tested the I2C sniff example with 5 sensors (baro, MB1242, GPS, TFmini, and airspeed) and it seems to work. Also seemed to handle hot-plugging/unplugging of any of those sensors pretty well (never crashed, just reported however many were plugged in).
I was (un)plugging them pretty slowly though, so we may want to do a more robust test. We'll need to get the unstick()
function finalized though before that'll work probably.
Also we need to update all the sensor drivers to use the new API
What's the status on this?
This implements the new queue-based I2C driver that allows for greater flexibility handling non-standard I2C peripherals.
We outlined the major blocks of logic that need to be implemented on the whiteboard; I've included pictures of that at the end. We identified the following blocks:
beginJob()
addTask()
finalizeJob()
handleTask()
advanceTask()
handleEvent()
handleError()
unstick()