Hier kommt die vollständige Anleitung, die zeigt, wie das Modul soc_leaf von openWB 1.9.304 lauffähig gemacht wird.
Hintergrundinformation:
- Weiter verlangt Nissan neu, dass die Passwortübermittlung nicht mehr mit der Blowfish-Verschlüsselung durchgeführt wird sondern mit AES.
- Am 17.07.2025 hat das openWB-Team mitgeteilt, dass die Weiterentwicklung von openWB 1.9 und der kostenfreie Support mit sofortiger Wirkung eingestellt wird.
- Die wegen der Punkte 1 und 2 erforderlichen Anpassungen haben es gerade noch in den letzten nächtlichen Build von openWB 1.9.304 geschafft, leider jedoch noch nicht ganz fehlerfrei.
- Aus diesem Grund muss nach dem Upgrade auf openWB 1.9.304 Nightly noch manuell gepatcht werden. Das Vorgehen wird hier beschrieben.
Annahme: Es ist openWB 1.9.304 oder älter installiert.
Zuerst werden hier einige optionale Schritte erklärt. Es wird der Aufbau eines Raspberry Pi als openWB Standalone beschrieben.
--- Beginn optionale Schritte
- Raspian Buster auf einem Windows-PC herunterladen und mittels Etcher oder Raspberry Pi Imager auf eine microSD schreiben.
- microSD in einen Raspberry PI einstecken und mit angeschlossener Tastatur und Maus sowie Bildschirm booten.
- Es werden beim Bootvorgang einige Fragen gestellt, die zu beantworten sind. Unter anderem muss für den User pi ein Passwort vergeben werden. Es wird auch gefragt, ob das Betriebssystem gleich auf den neuesten Stand gebracht werden soll. Dies bejahen. Zum Schluss wird ein Reboot durchgeführt.
- Nach dem Reboot ein Terminal-Fenster öffnen und die Raspi-Konfiguration aufrufen:
In der Raspi-Konfiguration zumindest SSH aktivieren und den gesamten Plattenspeicher nutzen lassen.
Nach dem Verlassen der Raspi-Konfiguration muss ein Neustart durchgeführt werden.
- Installation von openWB 1.9 in einem Terminal-Fenster:
Code: Alles auswählen
curl -s https://raw.githubusercontent.com/snaptec/openWB/master/openwb-install.sh | sudo bash
- Danach muss im Terminal-Fenster noch die Crontab angepasst werden.
Folgendes am Ende einfügen und dann speichern:
* * * * * /var/www/html/openWB/regel.sh >> /var/log/openWB.log 2>&1
* * * * * sleep 10 && /var/www/html/openWB/regel.sh >> /var/log/openWB.log 2>&1
* * * * * sleep 20 && /var/www/html/openWB/regel.sh >> /var/log/openWB.log 2>&1
* * * * * sleep 30 && /var/www/html/openWB/regel.sh >> /var/log/openWB.log 2>&1
* * * * * sleep 40 && /var/www/html/openWB/regel.sh >> /var/log/openWB.log 2>&1
* * * * * sleep 50 && /var/www/html/openWB/regel.sh >> /var/log/openWB.log 2>&1
- Im Browser vom Raspberry PI das openWB-Web-GUI aufrufen:
Die Konfiguration von openWB kann durchgeführt werden (inklusive die Eingabe vom Benutzername und dem Passwort für die Abfrage vom SOC-Wert des Nissan NV200 oder Leaf beim Nissan-Server).
-- Ende optionale Schritte
- Im Web-GUI muss ein Update auf 1.9.304 Nightly durchgeführt werden. Nach Abschluss des Updates muss der Raspberry Pi neu gestartet werden.
--- Beginn Patching
Nach dem Neustart kann im Web-GUI festgestellt werden, dass das Auslesen des SOC-Wertes vom Nissan NV200 oder Leaf nicht klappt. Es wird sich in der Logdatei von openWB folgender Fehler finden:
Traceback (most recent call last):
File "/var/www/html/openWB/modules/soc_leaf/soc.py", line 4, in <module>
import pycarwings2
File "/var/www/html/openWB/modules/soc_leaf/pycarwings2.py", line 85
def encrypt_aes_password(password: str) -> str:
^
SyntaxError: invalid syntax
Lesen der Logdatei im Terminal-Fenster mit folgendem Befehl:
Die Datei /var/www/html/openWB/modules/soc_leaf/pycarwings2.py muss mit Hilfe eines Editors korrigiert werden.
Die Zeile mit
def encrypt_aes_password(password: str) -> str:
muss korrigiert werden auf
def encrypt_aes_password(password):
Danach wird sich in der Logdatei /var/log/openWB.log noch ein weiterer Fehler finden, nämlich:
Traceback (most recent call last):
File "/var/www/html/openWB/modules/soc_leaf/soc.py", line 4, in <module>
import pycarwings2
File "/var/www/html/openWB/modules/soc_leaf/pycarwings2.py", line 74, in <module>
from Crypto.Util.Padding import pad
ImportError: No module named Padding
Das Modul muss nachinstalliert werden.
--- Ende Patching
Danach einen Neustart durchführen. Nun sollte die SOC-Abfrage klappen.