Conversation
|
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 |
|
Also we need to update all the sensor drivers to use the new API |
|
What's the status on this? |
superjax
left a comment
There was a problem hiding this comment.
Do we want to merge this in as-is, or do we want to finish up unstick?
| @@ -0,0 +1,133 @@ | |||
| /* | |||
There was a problem hiding this comment.
I don't think we want to keep this file around
| @@ -0,0 +1,564 @@ | |||
| /* | |||
There was a problem hiding this comment.
do we need this file still?
| static const int cyc = 200; | ||
|
|
||
| // clock out some bits | ||
| for (int i = 0; i < 18; ++i) |
There was a problem hiding this comment.
This is not something we want to be doing while flying.
What is left on unstick?
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()