Zwischen unserem TD5 Steuergerät und dem Mikroprozessor sollten Daten ausgetauscht werden. Doch unterscheiden sich die Spannungspegel um ein Vielfaches und sind von der Logik her invertiert, also verdreht.
Zu dem noch unterscheiden sich die Kommunikationsprotokolle, denn der Mikroprozessor spricht eine andere Sprache, als unser Steuergerät. Dem Steuergerät werden wir keine neue Sprache beibringen können, doch unser Mikroprozessor ist sehr lernfähig und dem können wir auch neue Sprachen beibiringen.
Doch Eins nach dem Anderen. - Erst einmal müssen wir das Signal umdrehen und dann auch noch die für den Mikroprozessor absolut tötlichen Signale in etwas Passendes umwandeln. Das ist ein Bisschen viel für einen schönen Sonntag Morgen, doch zum Glück beschäftigte ich mich damit schon vor ein paar Wochen, direkt nach dem Schneeschippen vor der Haustüre und in der Einfahrt.
Das ist die Originalschaltung von EA2EGA. - EA2EGA ist kein Verwandter von R2D2, sondern ein spanischer Funkamateur. Jo, so wat bin ich auch, nur als DF5CL und nicht für Spanien, sondern für unsere Bundesrepublik. Aber zurück zu unserem Weg durch den Dschungel…
# The first version of the circuit had poor noise inmunity
# This version have changed some resistance values and added a
# high frecuency noise filtering capacitor.
# No the number of chesum errors is negligible.
#
# Car Obd Port | CP2102 USB to TTL converter
# |
# K-line 12 Volt GND | GND 5 Volt RX TX
# | | | | | | |
# | | |---|-------| | | |
# | | | | | |
# |--510------| | Reduce signal | | |
# | | to 0-5V | | |
# | |--100pF-| | | |
# | | | | |
# |--2K2--------1N4184->--------------| | |
# | | | |
# | |------------------------------------| |
# | |
# | |
# | 2N2222A (Invert again and Power) |
# | C B E |
# | | | |-------GND |
# |------ | |
# | |
# |--------| |
# | |
# 5 Volt | 2N2222A (Inverter) |
# |-----2K2----C B E |
# | |----- GND |
# | |
# |------------------2K2---------|
Schaltpläne mit ein paar Zeichen zu zeichnen ist wirklich anspruchsvoll und leider sehr fehlerträchtig. Ich experimentierte einen Sonntag hin und her, fand ein paar Ungereimtheiten und hatte nach etwas Gewiggel dieses Simulationsergebnis:

Die 12V waren noch falsch, denn wenn die TD5 Lichtmaschine unsere Batterie vollpumpt, geht’s auch mal hoch auf 14,7 Volt und zudem können Spannungsspitzen beim Schalten von Verbrauchern auftreten.
Die knapp 4 Volt könnten auch tötlich für unseren Miktoprozessor enden.
Doch machen wir jetzt hier mal nicht alles madig, sondern freuen uns über die positiven Tendenzen:
- Der Pegel konnte erfolgreich invertiert werden
- Die Tendenz der Pegelanpassung ist vielversprechend, doch muss noch korrekt durchgerechnet werden
- Wenn wir die beiden vorhergehenden Bedingungen erfüllen, sind wir im Ziel!
Na also, geht doch!
Meinen ersten Schaltplanentwurf kann ich zwar in die Tonne werfen, doch nicht ohne aus den gemachten Fehlern zu lernen.

Mit etwas Feingefühl komme ich auch auf Werte, die den Mikroprozessor für eine Weile im Stecksockel belassen sollten.

Jetzt muss die Schaltung in einen Schaltpaneditor übertragen werden und da ich viel OpenSource mache, fällt meine Wahl auf KiCad. Alle Bauteile werden erfasst und mit den richtigen Werten versehen. Dann muss man nur noch die Bauteile verbinden und auf eine einseitige oder mehrseitige Platine verteilen. Das wurde mal mit Bleistift und Kästchenpapier gemacht und geht heute sehr schön im Schaltplaneditor.

Und hier auch gleich der Download: KiCad-Schaltung
Jetzt ist die Schaltung komplett, hat auch einen DC/DC Konverter und den Mikroprozessor. Das ist jetzt ein ESP32, doch könnte man auch einen Raspberry Pi PICO, Arduino UNO oder vielleicht sogar auch nur einen ATtiny verwenden. Eigentlich wollte ich heute schon ein PCB entwerfen, doch die Schaltung ist so simpel, dass ich überlege sie einfach nur mit einer Lochraster-Platine aufzubauen.
Der OBD-Stecker hat die folgende Belegung:

Für uns an der OBD-Buchse relevant:
- Masse: PIN 4, 5
- Daten: PIN 7
- +12V: PIN 16
Vor 2 Jahren war ich happy Fritzing, eine Entwicklung der Berliner Uni, zu entdecken. Speziell im Zusammenhang mit Breadboards (Steckbrettern) kann man sich schnell einen Prototypen bauen und auch gleich die passende Platine aus dem Fritzing-Interface heraus fertigen lassen. Ich habe grob mal alles zusammengestöpselt, doch machte ich keinen Funktionstest. Also bitte nicht einfach übernehmen, sondern nochmal alle Verbindungen durchdenken.

Fritzing-Datei: ESP32-WROOM_TD5.fzz
Fritzing-Datei geändert! - Das Abbild vom Bauteil und das Symbol im Schaltplan unterscheiden sich drastisch. Ich habe jetzt aus Schaltplan-Sicht den DC/DC-Wandler korrigiert und die Masse auf den Ausgang, der korrekt war, gelegt.
Seid mit dem DC/DC Konverter vorsichtig. Das eingebundene Bauteil hat am Eingang zweimal +IN und +IN. Einer davon ist aber -IN, da machte der Schöpfer des DC/DC-Wandler Elements leider einen kleinen Fehler, der für uns teuer sein könnte. Vergleicht also unbedingt Realität und vorgegaukelte Simulation. Natürlich ist der reale Baustein ausschlaggebend. - Letztes Jahr liess ich damit eine Platine fertigen. Das mir vorliegende Bauteil war auch korrekt beschaltet, doch die nächste Charge von gelieferten DC/DC-Konvertern war anders gepolt und das roch dann so komisch…
Meine ursprünglichen Ambitionen mit Verkauf von Bausätzen sind nun leider bei -180° gelandet.
Das Thema ist zu kompliziert für Deutschland oder Europa. Vielleicht rede ich mal mit dem Peter Hochsieder von Nakatanenga. Der hat vielleicht einen Vorschlag wie wir das unter seinem Schirm festzurren könnten.
