Messages in this thread | | | Subject | Re: [PATCH v2 1/1] can: ucan: add driver for Theobroma Systems UCAN devices | From | Jakob Unterwurzacher <> | Date | Wed, 14 Mar 2018 20:07:46 +0100 |
| |
On 14.03.18 11:04, Wolfgang Grandegger wrote: >>> (000.000443) can0 20000034 [8] 00 0C 00 00 00 00 78 00 ERRORFRAME >>> controller-problem{rx-error-warning,tx-error-warning} >>> transceiver-status >>> no-acknowledgement-on-tx >>> error-counter-tx-rx{{120}{0}} >>> (000.000444) can0 20000034 [8] 00 3C 00 00 00 00 80 00 ERRORFRAME >>> controller-problem{rx-error-warning,tx-error-warning,rx-error-passive,tx-error-passive} > > Just, > > controller-problem{rx-error-passive,tx-error-passive} >[...] > > Back to error active is missing!?
That was indeed missing. We have fixed the missing back-to-error-active in our firmware.
Also, we no longer send the controller status in every error frame, but only on state changes (see below) which seems to be how other drivers are handling things.
Thanks, Jakob
*** test output ***
Disconnect cable, send one frame
> root@rk3399-q7:~# candump -td -e any,0:0,#FFFFFFFF | head -n 100 > (000.000000) can0 6E7 [2] 7A F9 > (000.000558) can0 20000030 [8] 00 00 00 00 00 00 08 00 ERRORFRAME > transceiver-status > no-acknowledgement-on-tx > error-counter-tx-rx{{8}{0}} [...] > (000.000567) can0 20000034 [8] 00 0C 00 00 00 00 60 00 ERRORFRAME > controller-problem{rx-error-warning,tx-error-warning} > transceiver-status > no-acknowledgement-on-tx > error-counter-tx-rx{{96}{0}} [...] > (000.000527) can0 20000034 [8] 00 30 00 00 00 00 80 00 ERRORFRAME > controller-problem{rx-error-passive,tx-error-passive} > transceiver-status > no-acknowledgement-on-tx > error-counter-tx-rx{{128}{0}} [...]
Reconnect cable
> (000.000687) can1 6E7 [2] 7A F9 > (000.000015) can0 20000004 [8] 00 0C 00 00 00 00 7F 00 ERRORFRAME > controller-problem{rx-error-warning,tx-error-warning} > error-counter-tx-rx{{127}{0}}
Send more frames
> (046.485245) can0 61B [2] E2 D8 > (000.000621) can1 61B [2] E2 D8 [...] > (000.199224) can0 3E6 [0] > (000.000477) can1 3E6 [0] > (000.000044) can0 20000004 [8] 00 40 00 00 00 00 5F 00 ERRORFRAME > controller-problem{back-to-error-active} > error-counter-tx-rx{{95}{0}}
| |