panda/board/pedal
robbederks 9486836886
UART instability fix with high interrupt load (#283)
* Fixed UART overrun error

* Added stability test scripts

* Refactored UART code. ESP/GPS now uses DMA in circular mode to directly write into the ring buffer, saving a bunch of interrupts and potential race conditions.

* Changed stability test to use amount of bytes instead of amount of non-zero messages, since the ring buffer pointer is only updated on half or full DMA transfer or on line idle (e.g. no more 1 char messages from the gps)

* Increase data limit. It's too low sometimes in normal operation

* Forgot to set write pointer in ring buffer

* Increased test limit even more
2019-10-04 13:28:56 -07:00
..
obj Pedal: only one firmware (#164) 2019-03-03 21:04:41 -08:00
.gitignore Pedal: only one firmware (#164) 2019-03-03 21:04:41 -08:00
Makefile Misra 11.x: pointer usage. (#250) 2019-07-10 20:56:03 -07:00
README Pedal: only one firmware (#164) 2019-03-03 21:04:41 -08:00
main.c UART instability fix with high interrupt load (#283) 2019-10-04 13:28:56 -07:00
main_declarations.h Black (#254) 2019-07-23 15:07:06 -07:00

README

This is the firmware for the comma pedal. It borrows a lot from panda.

The comma pedal is a gas pedal interceptor for Honda/Acura. It allows you to "virtually" press the pedal.

This is the open source software. Note that it is not ready to use yet.

== Test Plan ==

* Startup
** Confirm STATE_FAULT_STARTUP
* Timeout
** Send value
** Confirm value is output
** Stop sending messages
** Confirm value is passthru after 100ms
** Confirm STATE_FAULT_TIMEOUT
* Random values
** Send random 6 byte messages
** Confirm random values cause passthru
** Confirm STATE_FAULT_BAD_CHECKSUM
* Same message lockout
** Send same message repeated
** Confirm timeout behavior
* Don't set enable
** Confirm no output
* Set enable and values
** Confirm output