Open
Description
Ideally, for sysid we should be using the streaming functionality provided by CAN, DMA and AutoSPI to handle input reading rather then trying to hold a tight loop to read values.
DMA already has an example, and could trivially be configured to read all roboRIO inputs.
AutoSPI would require slight changes to each driver to create a queue of values, rather just a final accumulator, but this is an easy change.
CAN needs an example on how to do this, as vendors would need to implement a streaming API themselves. As an example, lets add a streaming CAN API to PD, PH and PCM for an example that vendors can look at on how to do this.