Forum: Mikrocontroller und Digitale Elektronik CAN kaputt? (Bit recessive Error)


von RS485 (Gast)


Lesenswert?

Hilfe,
eine Linux CAN Rechner meldet:
1
 (2018-07-13 20:00:15.844795)  can0  RX - -  2000008C   [8]  00 04 04 00 00 00 00 87   ERRORFRAME
2
        controller-problem{rx-error-warning}
3
        protocol-violation{{bit-stuffing-error}{}}
4
        bus-error
5
        error-counter-tx-rx{{0}{135}}
Und ein STM32 bxcan meldet viele:
LEC 100: Bit recessive Error


Was ist kaputt gegangen?

von pegel (Gast)


Lesenswert?

Keine Ahnung.

Hier:
https://fabiobaltieri.com/2013/07/23/hacking-into-a-vehicle-can-bus-toyothack-and-socketcan/

gibt es einen Absatz:

If your bitrate is wrong, you should receive a stream of errors from the 
CAN bus interface:

$ candump -cae can0,0:0,#FFFFFFFF
  can0  20000008  [8] 00 00 04 00 00 00 00 00   ERRORFRAME
        protocol-violation{{bit-stuffing-error}{}}
...

In this case, bring the interface back down, and try with a different 
bit-rate. Most common ones are 500kbps, 250kbps and 50kbps.

usw.

Vielleicht hilft das etwas weiter.

von abc. (Gast)


Lesenswert?

bitstuffing-error heisst i.d.r falsche baud rate eingestellt. ansonnsten 
guck mal nach der terminierung oder passiven sternen, falls jmd. an der 
verkabellung etwas gemacht hat.

von rcc (Gast)


Lesenswert?

RS485 schrieb:
> Und ein STM32 bxcan meldet viele:
> LEC 100: Bit recessive Error

Er versucht zu senden  bekommt aber kein dominantes Bit auf dem 
pysical-layer erzeugt, also CAN-H und CAN-L bleiben auf gleichem 
Potentil. Mal die CAN-Leitungen durchmessen ob der Abschlusswiderstand 
passt bzw. ob kein Kurzschluss vorhanden ist.

von Thomas (kosmos)


Lesenswert?

keine Ahnung wieviel Aufwand es bei dir ist. Du könntest alle CAN-Nodes 
vom Bus trennen und dann unter Beobachtung nach und nach wieder 
anstecken um den Verursacher zu finden.

: Bearbeitet durch User
von Rolf M. (rmagnus)


Lesenswert?

Die Klassiker, die man immer als erstes untersucht:

Bitrate, Terminierung, irgendwo CAN high/low vertauscht.

von RS485 (Gast)


Lesenswert?

Rolf M. schrieb:

> Bitrate, Terminierung, irgendwo CAN high/low vertauscht.
  ^^^^^^^
Die Bitrate wars.
 (Indirekt via toller stromspar Automatismen die den Takt absenken..)

Danke an alle für die vielen Debug-Ideen!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.