Hallo
Ich präsentiere teilweise Teardown und eine Modifikation der Funktionalität der OBD2 VGATE-Schnittstelle mit einem WiFi-Modul anstelle von BT. Diese Schnittstelle habe ich vor ein paar Monaten gekauft und in Verbindung mit dem Android verwendet Head Unit im Auto mit der Hybrid Assistant App.
Standardmäßig arbeitet die Schnittstelle als AP, erstellt ein offenes WiFi-Netzwerk mit SSID VLINK. Nach dem Verbinden erhält das Client-Gerät eine IP-Adresse im Bereich 192.168.0.0/24. Die Schnittstelle arbeitet als transparenter bidirektionaler TCP-Konverter - seriell, sie lauscht Adresse 192.168.0.10 und Port 35000. Auf ELM327-Seite serielle Übertragung 38400 bps. Man kann sich mit Standard-Telnet verbinden und ELM327 Befehle erteilen.
Elm327 präsentiert sich als:
ATZ
ELM327 v2.1
ATI
OBDII ist ein RS232-Interpreter
Die Schnittstelle nimmt bis zu 50 mA auf, wenn das WiFi-Modul arbeitet. Man kann den automatischen Schlafmodus nach einer voreingestellten Zeit der Inaktivität ausschalten. Nach dem Eintritt in den Schlafmodus sinkt der Verbrauch auf 1 mA, aber das Modul wird aus diesem Modus heraus nicht aufwachen, weil die WiFi-Schnittstelle ausgeschaltet ist. Außerdem mein Exemplar senkt die Versorgungsspannung sehr, ich werde versuchen dagegen anzukämpfen, da der ELM327 über die Möglichkeit der Softwarekalibrierung verfügt. Da der AP-Modus der OBD2-Schnittstelle für mich unpraktisch ist, habe ich mich entschieden, das Modul zu demontieren in der Hoffnung, dass es ESP32 oder etwas Ähnliches enthalten wird, mit dem man Alternative FW installieren kann.
Das Modul besteht aus 2 Leiterplatten, die filigran auf ein Sandwich verbunden sind:
- die untere enthält eine komplette OBD2-Schnittstelle basierend auf PIC18f25k80
- die obere enthält das HF-LPT230-Modul und den 12 V -> 3V3-Konverter. Umwandlung von Spannungen auf der PIC18f25k80-Leitung (5 V-Versorgung) wird durch einen Spannungsteiler realisiert
Leiterplatten werden mit einem 5-poligen Steckverbinder im 2-mm-Raster verbunden, Signale
LED ELM_RXD ELM_TXT GND 12V
Das HF-LPT230-Modul ist eine relativ beliebte und elegante Lösung
Dokumentation ist erhältlich unter:
https://fccid.io/2ACSV-HF-LPT230/User-Manual/Users-Manual-3552381.pdf
Für weitere Experimente habe ich die RX- und TX-Signale getrennt zwischen Modul und PIC18f25k80 und ging zu weiteren Experimenten mit UART - USB-Schnittstelle für Terminalprogramm und Telnet. Unter anderem habe ich transparente Datenübertragung verifiziert.
Leider ist der Versuch, auf die Standardkonfigurationsseite zuzugreifen, fehlgeschlagen jetzt wird die GUI angezeigt, aber es fragt nach einem Passwort und die in der Dokumentation bereitgestellte Admin/Admin funktioniert nicht.
Ich habe die in der Dokumentation beschriebenen Escape-Sequenzen ausprobiert: +++ Warten auf den Buchstaben a und Senden des Zeichens a und es hat funktioniert:
Mit AT + Befehlen wurde die Modulkonfiguration auf STA geändert, eingestellt eigene SSID und Verschlüsselung:
AT + WMODE = STA
+ ca
AT + WSSSID = Prius2
+ ca
und die Konfiguration gespeichert.
Nach dem Neustart hat sich die OBD2-Schnittstelle als Client verbunden, die IP-Adresse abgerufen und war im HA im Kraftfahrzeug Head Unit verfügbar.
Ich habe mein Ziel relativ leicht erreicht, aber die Antwort des Moduls auf Escape-Sequenzen im fertigen Produkt beunruhigt etwas. Glücklicherweise reagiert das Modul nur von der Seite der seriellen Schnittstelle. Hier erinnere ich mich am Anfang vom Internet an das Hinzufügen von +++ ATH0 in E-Mails, das falsch konfigurierte TPSA-Modems trennte.
Ich präsentiere teilweise Teardown und eine Modifikation der Funktionalität der OBD2 VGATE-Schnittstelle mit einem WiFi-Modul anstelle von BT. Diese Schnittstelle habe ich vor ein paar Monaten gekauft und in Verbindung mit dem Android verwendet Head Unit im Auto mit der Hybrid Assistant App.

Standardmäßig arbeitet die Schnittstelle als AP, erstellt ein offenes WiFi-Netzwerk mit SSID VLINK. Nach dem Verbinden erhält das Client-Gerät eine IP-Adresse im Bereich 192.168.0.0/24. Die Schnittstelle arbeitet als transparenter bidirektionaler TCP-Konverter - seriell, sie lauscht Adresse 192.168.0.10 und Port 35000. Auf ELM327-Seite serielle Übertragung 38400 bps. Man kann sich mit Standard-Telnet verbinden und ELM327 Befehle erteilen.
Elm327 präsentiert sich als:
ATZ
ELM327 v2.1
ATI
OBDII ist ein RS232-Interpreter
Die Schnittstelle nimmt bis zu 50 mA auf, wenn das WiFi-Modul arbeitet. Man kann den automatischen Schlafmodus nach einer voreingestellten Zeit der Inaktivität ausschalten. Nach dem Eintritt in den Schlafmodus sinkt der Verbrauch auf 1 mA, aber das Modul wird aus diesem Modus heraus nicht aufwachen, weil die WiFi-Schnittstelle ausgeschaltet ist. Außerdem mein Exemplar senkt die Versorgungsspannung sehr, ich werde versuchen dagegen anzukämpfen, da der ELM327 über die Möglichkeit der Softwarekalibrierung verfügt. Da der AP-Modus der OBD2-Schnittstelle für mich unpraktisch ist, habe ich mich entschieden, das Modul zu demontieren in der Hoffnung, dass es ESP32 oder etwas Ähnliches enthalten wird, mit dem man Alternative FW installieren kann.
Das Modul besteht aus 2 Leiterplatten, die filigran auf ein Sandwich verbunden sind:
- die untere enthält eine komplette OBD2-Schnittstelle basierend auf PIC18f25k80
- die obere enthält das HF-LPT230-Modul und den 12 V -> 3V3-Konverter. Umwandlung von Spannungen auf der PIC18f25k80-Leitung (5 V-Versorgung) wird durch einen Spannungsteiler realisiert


Leiterplatten werden mit einem 5-poligen Steckverbinder im 2-mm-Raster verbunden, Signale
LED ELM_RXD ELM_TXT GND 12V
Das HF-LPT230-Modul ist eine relativ beliebte und elegante Lösung
Dokumentation ist erhältlich unter:
https://fccid.io/2ACSV-HF-LPT230/User-Manual/Users-Manual-3552381.pdf
Für weitere Experimente habe ich die RX- und TX-Signale getrennt zwischen Modul und PIC18f25k80 und ging zu weiteren Experimenten mit UART - USB-Schnittstelle für Terminalprogramm und Telnet. Unter anderem habe ich transparente Datenübertragung verifiziert.

Leider ist der Versuch, auf die Standardkonfigurationsseite zuzugreifen, fehlgeschlagen jetzt wird die GUI angezeigt, aber es fragt nach einem Passwort und die in der Dokumentation bereitgestellte Admin/Admin funktioniert nicht.

Ich habe die in der Dokumentation beschriebenen Escape-Sequenzen ausprobiert: +++ Warten auf den Buchstaben a und Senden des Zeichens a und es hat funktioniert:

Mit AT + Befehlen wurde die Modulkonfiguration auf STA geändert, eingestellt eigene SSID und Verschlüsselung:
AT + WMODE = STA
+ ca
AT + WSSSID = Prius2
+ ca
und die Konfiguration gespeichert.
Nach dem Neustart hat sich die OBD2-Schnittstelle als Client verbunden, die IP-Adresse abgerufen und war im HA im Kraftfahrzeug Head Unit verfügbar.

Ich habe mein Ziel relativ leicht erreicht, aber die Antwort des Moduls auf Escape-Sequenzen im fertigen Produkt beunruhigt etwas. Glücklicherweise reagiert das Modul nur von der Seite der seriellen Schnittstelle. Hier erinnere ich mich am Anfang vom Internet an das Hinzufügen von +++ ATH0 in E-Mails, das falsch konfigurierte TPSA-Modems trennte.
Cool? DIY-Rangliste