debugging CAN bus error flags
On my Nissan Leaf I am getting the following error irqs repeating on CAN bus 2. The error flags appear to be set in esp32can.cpp but I could use some pointers on how to interpret their meaning and hence how to handle the interrupts (assuming they are not real errors): 1970-01-01 13:01:41 NZDT E (89501) can: can2: intr=93510 rxpkt=127559 txpkt=14 errflags=0x23000001 rxerr=0 txerr=0 rxovr=0 txovr=0 txdelay=0 wdgreset=0 errreset=0 1970-01-01 13:01:41 NZDT E (89511) can: can2: intr=93511 rxpkt=127564 txpkt=14 errflags=0x23400401 rxerr=0 txerr=0 rxovr=0 txovr=0 txdelay=0 wdgreset=0 errreset=0 1970-01-01 13:01:41 NZDT E (89531) can: can2: intr=93525 rxpkt=127592 txpkt=14 errflags=0x22400402 rxerr=0 txerr=0 rxovr=0 txovr=0 txdelay=0 wdgreset=0 errreset=0
Derek, error flags are bus (driver) specific, for can2/can3 see mcp2515::AsynchronousInterruptHandler(). E.g. errflags=0x22400402 → CANINTF = 0x22, EFLG = 0x40, 0x0402 = reading RX buffer 1, which was overflown from buffer 0 MCP2515 documentation: CANINTF = 0x22 → Error Interrupt + Receive Buffer 1 Full EFLG = 0x40 → Receive Buffer 0 Overflow Regards, Michael Am 15.07.20 um 13:15 schrieb Derek Caudwell:
On my Nissan Leaf I am getting the following error irqs repeating on CAN bus 2. The error flags appear to be set in esp32can.cpp but I could use some pointers on how to interpret their meaning and hence how to handle the interrupts (assuming they are not real errors):
1970-01-01 13:01:41 NZDT E (89501) can: can2: intr=93510 rxpkt=127559 txpkt=14 errflags=0x23000001 rxerr=0 txerr=0 rxovr=0 txovr=0 txdelay=0 wdgreset=0 errreset=0 1970-01-01 13:01:41 NZDT E (89511) can: can2: intr=93511 rxpkt=127564 txpkt=14 errflags=0x23400401 rxerr=0 txerr=0 rxovr=0 txovr=0 txdelay=0 wdgreset=0 errreset=0 1970-01-01 13:01:41 NZDT E (89531) can: can2: intr=93525 rxpkt=127592 txpkt=14 errflags=0x22400402 rxerr=0 txerr=0 rxovr=0 txovr=0 txdelay=0 wdgreset=0 errreset=0
-- Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal Fon 02333 / 833 5735 * Handy 0176 / 206 989 26
participants (2)
-
Derek Caudwell -
Michael Balzer