Hallo zusammen,
erst einmal vielen Dank an Heye und alle, die hier ihre StreetScooter-Reparaturen und Reverse-Engineering-Ergebnisse dokumentieren. Auch LRBen für das Teilen der DBC-Unterlagen und Jacobsmess für den Hinweis darauf möchte ich danken. Heyes Projektbericht, LRBens DBC-Beitrag und eure Vorarbeit hier haben mir schon sehr geholfen, meinen eigenen Wagen zu untersuchen.
Ich habe vor Kurzem einen defekten StreetScooter WORK Box aus den Niederlanden gekauft: B16C, Erstzulassung Dezember 2020, 47.987 km, laut Angebot mit 40-kWh-Akku. Die genaue Revision des tatsächlich eingebauten Akkus muss ich noch anhand des Typenschilds bestimmen. Ich setze deshalb noch nicht voraus, dass er identisch mit Heyes Akku ist.
Der Benutzername StressScooter passt inzwischen ganz gut: Der Wagen fährt nicht und lädt den HV-Akku nicht. Immerhin habe ich inzwischen CAN-Mitschnitte und einige konkrete Befunde.
Ich habe meinen Fall auch bei OpenInverter eingestellt. Dort wurde der Beitrag zunächst in die Moderationswarteschlange gestellt.
Was der Wagen macht
- Das Kombiinstrument zeigt seit Übernahme durchgehend 0 % SOC, dazu Schildkröte und Batterie-/Antriebswarnungen. Beim Startversuch erscheint „Werkstatt“. Ein Schließen der HV-Schütze höre ich nicht.
- Der Schlüssel im Schloss unter dem Sicherungskasten steht waagerecht.
- Der Ladestecker verriegelt bei geschlossener Zentralverriegelung. Die rechte grüne LED an der Ladebuchse blinkt schnell.
- Der Ladeziegel zeigt „Charging“. Bei einem dokumentierten Versuch standen dort aber nur etwa 229 V / 1 A / 0,2 kW. Der separate LEAB CHAMP 1207 lädt die 12-V-Batterie nach; die über CAN gemeldete Bordnetzspannung stieg von etwa 12 auf 13 V. Das bestätigt noch keine Ladung des Traktionsakkus.
- Die Handbremse war mechanisch angezogen, wurde anfangs aber nicht erkannt. Ich habe ein abgeknicktes Kabel am Handbremsschalter repariert. Jetzt wird die angezogene Handbremse im Kombiinstrument korrekt angezeigt, und im CAN steht
HandBrakeOn. Auch „Tür offen“ wird im Kombiinstrument korrekt angezeigt. Das Bremspedal wird ebenfalls in den CAN-Daten erkannt. - Den „Affengriff“-Reset habe ich ungefähr zehnmal erfolglos versucht. Auch mit repariertem Handbremskabel und korrekter Handbremsanzeige hat er keine Wirkung. Kein hörbares Schützklicken, weiterhin weder Fahrbereitschaft noch HV-Ladung.
- Ein Vorbesitzer hatte den Parksperrenaktuator vom Getriebe abgebaut und elektrisch angeschlossen außerhalb seiner Einbauposition hängen lassen. Die Sperrklinke selbst ist noch im Getriebe. Der Aktuator ist ein Nidec 405.712 / 10258490 und hat sich bei meinen Versuchen nicht sichtbar bewegt. Das ist ein offener mechanischer bzw. steuerungsseitiger Befund; ob er auch die Ladung verhindert, ist noch nicht geklärt.
- Der Fahrtrichtungshebel ist ein APEM BF240SD1BK0000. Versorgung und beide Analogausgänge habe ich am Hebel geprüft; dort entsprechen sie der Spezifikation. Den vollständigen Signalweg bis zum Steuergerät bestätigt das noch nicht.
Verbaut sind ein Kostal-HV-Lader D16X1761A7C1_01, HW 002 / SW 002, und ein Bosch-Inverter INV3.3 STDA13, SW i420. Die Typenschilder habe ich fotografiert.
CAN-Mitschnitt und BMS-Diagnose
Ich zeichne mit ESP32 und SN65HVD230 an OBD-Pins 6/14 bei 500 kbit/s und 11-Bit-IDs auf. Der Aufbau hört ausschließlich mit: Listen-only-Modus, TX-Eingang des Transceivers fest auf rezessiv. Ich habe mit dem Sniffer keine Diagnoseanfragen, CAN-Resetbefehle oder Aktuatorbefehle gesendet. Die oben erwähnten Resetversuche erfolgten über die Bedienelemente des Fahrzeugs.
Vorhanden sind etwa 319.000 Frames aus 15 Mitschnitten vom 7./8. Oktober. Ich werte sie offline mit der Community-Datei 11kW Kostal Charger.dbc aus. Ob jede Zuordnung zur Firmware meines Fahrzeugs passt, ist noch zu prüfen. Alle folgenden IDs und Nutzdaten sind hexadezimal.
Die decodierten Packspannungsfelder melden ungefähr 413–416 V, obwohl im Tacho 0 % stehen. Das BMS meldet errorInBattery, gleichzeitig gesetzte Zellüberspannungs- und Zellunterspannungsflags sowie offene Schütze. Die HV-Freigabe steht auf 0, der angeforderte Ladestrom ebenfalls auf 0 A.
Diese drei Diagnoseframes tauchen in fünf längeren Mitschnitten wiederholt auf:
382#4000FF0000138705
382#40090265C49166B7
382#400A840000000000
Mit der DBC ergibt sich:
| Feld | Decodierter Wert |
|---|---|
master_st_batt |
255 = BMS_STATE_ERR |
master_err_0_code / part / cell |
101 / 196 / 145 |
master_err_log0_code / part / cell |
102 / 183 / 132 |
Die Tabellenwerte sind dezimal. Für die Codes 101/102 und die Codierung von part/cell fehlt mir eine verifizierte Erklärung. Ich interpretiere sie weder als reale Zellnummern noch als normale OBD-P-Codes.
Eine Stolperfalle in der DBC: 0x06E BMS_State = 7 / Initializing ist ausdrücklich als fester Wert kommentiert. Daraus leite ich deshalb keine hängengebliebene BMS-Initialisierung ab.
Auffällige Zell- und Temperaturwerte
Die folgenden String-/Slave-/Kanalnummern sind Bezeichnungen aus der DBC, noch keine bestätigten Positionen im Akku. Es handelt sich um vom BMS gemeldete Werte, nicht um unabhängig an den Zellen gemessene Spannungen und Temperaturen.
Viele Spannungskanäle liegen bei ungefähr 4,0–4,07 V. Einige fallen deutlich auf:
- String 1 / Slave 6: Kanal 2 und 4 melden 0 mV, Kanal 3 und 6 jeweils 4999 mV. Das ist zusätzlich zu Kanal 5, den die DBC bei V6-Varianten als unbeschaltet beschreibt.
- String 2 / Slave 4 / Kanal 10: Der gemeldete Wert sank über die Mitschnitte von 476 auf 411 mV. Am selben logischen Modul änderte sich
temp2von 13,0 auf 44,3 °C, allerdings nicht gleichmäßig ansteigend. Im letzten Mitschnitt lagen die beiden anderen Temperaturfelder dieses Moduls bei 20,9 und 23,6 °C; die Temperaturkanäle der übrigen Module bei etwa 19–21 °C. Draußen waren ungefähr 18 °C. - String 2 / Slave 7 / Kanal 10 und 11: Zwei benachbarte Werte ändern sich gegenläufig, während ihre Summe exakt gleich bleibt. Beide Kanäle stehen jeweils im selben Frame:
382#96030D9112050FDE -> 3473 + 4613 = 8086 mV
382#96030D9C11FA0FDD -> 3484 + 4602 = 8086 mV
Bei diesem letzten Beispiel frage ich mich, ob ein gemeinsamer Messabgriff oder die Eingangsstufe der Zellmessung beteiligt ist. Das ist eine Hypothese, keine Diagnose. Tatsächliche Zellabweichungen und eine unpassende Protokollzuordnung muss ich davon noch unterscheiden.
Hier auch die letzten Rohbeispiele für den besonders niedrigen Spannungskanal und die Temperatur:
382#9303019B0F810F95 -> S2/Slave4/Kanal10: 411 mV
382#9304FB6501BB00D1 -> S2/Slave4/temp2: 44,3 °C; temp3: 20,9 °C
Eine weitere Auffälligkeit: 0x485 decodiert die erlaubten HV-Spannungsgrenzen zu Minimum 707 V und Maximum 320 V, beispielsweise bei 485#000000C3021410C5. Das sind Grenzwertfelder, keine gemessenen 707 V Akkuspannung. Ob das eine Folge fehlerhafter Zellwerte, ein Fehler-/Ersatzwert oder eine DBC-Abweichung ist, weiß ich noch nicht.
Wo mir eure Erfahrung helfen würde
- Kennt jemand die BMS-Codes 101/102 samt Zusatzbytes oder hat eine passende Codetabelle bzw. Firmware-Referenz? Wie lässt sich am besten feststellen, zu welcher BMS-Softwarevariante diese Nachrichten gehören?
- Hat jemand das 0-/4999-mV-Muster oder gegenläufige Nachbarkanäle schon an diesen Akkus gesehen? Gibt es bekannte Fehler an Messabgriffen/Modulplatinen oder dokumentierte Kennwerte für ungültige Messungen?
- Gibt es, nach Identifikation der Packrevision, eine belegte Zuordnung der String-/Slave-/Kanalnummern zu den physischen Modulen und Temperaturfühlern?
- Weiß jemand, wie die Parksperrenrückmeldung die Ladefreigabe beim B16C beeinflusst? Und sollten die Statusnachrichten dieser Kostal-Revision am OBD-Anschluss sichtbar sein? Ich sehe
0x618, aber keine der in der DBC beschriebenen OBC-Statusnachrichten0x611bis0x614.
Heyes später gefundene defekte Crimpverbindung im Batterie-Ladezweig ist für mich ein guter Hinweis, auch die Verkabelung zu prüfen. Meine BMS-Befunde könnten auf einen anderen Fehler hindeuten. Ich versuche deshalb, Beobachtungen und Interpretation auseinanderzuhalten.
Ich plane, den HV-Akku am Wochenende aus dem Fahrzeug auszubauen.
Weitere Rohframes, Zellkanaltabellen und Bauteilfotos kann ich bei Bedarf ergänzen. Ich möchte die Fehlersuche dokumentieren und bestätigte Protokolldetails sowie die spätere Reparatur wieder mit der Community teilen.
Vielen Dank!
StressScooter
