hier noch mal mein Beitrag aus 'Internet der Dinge', dem Offenen Brief an Max Viessmann, als neuer Thread - Diskussionen, Fragen etc. bitte hier 🙂
Moin Freunde*!
Da Viessmann zwar ein wunderschöne Schnittstelle (UDS, ISO-TP oder DoIP) eingebaut hat, das aber nur eingeschränkt und für eine 4-stellige Summe (per WAGO Gateway) zur Verfügung stellt, haben wir uns bekanntlich dran gemacht, das selber offen zu legen. 🙂
Stand der Dinge ist:
- Wir haben eine MQTT fähige Lösung zum Anschluss an den externen CAN Bus ("Stecker 91"), die es erlaubt, E3 Geräte (Wärmepumpen, Gasgeräte, (PV Speicher gerade in der Testphase, BSZ brauchen wir noch Kandidaten)) in Home Automation Systeme einzubinden. ioBroker, Home Assistant, Node-RED und so weiter also alles einfach machbar und bei uns schon im dauerhaften Einsatz.
- Das Ganze läuft lokal, also ohne irgendeine Hersteller oder sonstwelche Cloud, ohne Internet! Bei der CAN Bus Kopplung kann die gleichzeitige Verbindung mit dem Viessmann Server zwecks Wahrung der Gewährleistungs- und Garantieansprüche aufrechterhalten bleiben.
Eine Anbindung über den WLAN Access Point ist auch möglich, damit aber keine parallele Viesmann-Server-Verbindung mehr.
und last not least: das Ganze ist natürlich kostenfrei und open source! im Sinne eins besseren Miteinanders 😉
Der laufend aktualisiert werdende Stand der Linux Lösung ist auf
https://github.com/open3e/open3e
verfügbar.
Eine Sammlung von nützlichen Informationen hat @TSG initiert:
https://github.com/open3e/open3e/wiki
beste Grüße!
Phil
zur Beachtung: Der Zugriff auf das Zielgerät mittels dieser durch Viessmann nicht vorgesehenen Lösung zieht möglicherweise den Verlust von Gewährleistungs-/Garantieansprüchen nach sich und kann unter Umständen zu GEFAHREN FÜR LEIBLICHE UNVERSEHRTHEIT ODER SACHWERTE führen! Die Autoren schliessen jegliche Haftung aus.
Beispiele aktueller Home Assistant Integrationen von Wärmepumpen:
Vitocal 250 Kältekreisübersicht: View und Installationsanleitung gibt's hier: https://github.com/MyHomeMyData/iob.vis.vitocal250.git
Einen Adapter für ioBroker:
https://github.com/MyHomeMyData/ioBroker.e3oncan
und noch ein paar andre Sachen, die aber in dem Adapter integriert sind. Schaut einfach mal sein Repo an...
https://github.com/MyHomeMyData
ps. wer uns unterstützen will und kann ist herzlich willkommen!
pps. und wir freuen uns über jedes 'like' (👍) - damit zeigt ihr deutlich, dass ihr eine offene und lokale Kommunikation mit den 'One Base' Geräten eigentlich von Viessmann erwartet
also Ich habe jetzt mal die Datenpunkte getestet und es gab einen Treffer:
{"mode": "read-json", "data":[3228]}
Antwort:
der Import passt denke ich, sollte der aktuelle Zählerstand gesamt sein..
Damit kann ich den Zählerstand aktuell, und den aktuellen Bezug über alle 3 Phasen ablesen.
jetzt muss ich es nur noch schaffen die Werte irgendwie in HA als Entitäten/Sensoren zu erfassen.
interessanter Weise ist meine VX3 noch aus. Die Daten werden dann wohl von der Vitocal interpretiert und auf dem Datenpunkt bekannt gegeben.
Eigentlich sollte es doch recht einfach sein den Sensor zu erstellen:
https://www.home-assistant.io/integrations/sensor.mqtt/
Du musst dann nur das Topic entsprechend anpassen.
Gruß
Der Datenpunkt 1810 ist bei mir verfügbar, allerdings verstehe ich die Werte nicht.
Die anderen Datenpunkte sind bei mir leider nicht vorhanden.
Open3e ist up2date und depict ist auch frisch durchgeführt worden.
open3e -r 1810,3228,3229,3239 -v
0x680 1810 ElectricalEnergyInverterPowerAc {"ActivePower": 2745.0, "ReactivePower": 974.0}
0x680 3228 ERR/0x680.3228 "Device rejected this read access. Probably DID 3228 is not available. ReadDataByIdentifier service execution returned a negative response ConditionsNotCorrect (0x22)"
0x680 3229 ERR/0x680.3229 "Device rejected this read access. Probably DID 3229 is not available. ReadDataByIdentifier service execution returned a negative response ConditionsNotCorrect (0x22)"
0x680 3239 ERR/0x680.3239 "Device rejected this read access. Probably DID 3239 is not available. ReadDataByIdentifier service execution returned a negative response ConditionsNotCorrect (0x22)"
Ich habe noch den 0x680.680 verfügbar aber der wurde nicht dekodiert:
open3e -r 680 -v
0x680 680 EnergyMeter "0250004fffa6fe560242010eff0332030000000000889205000000000038092e092e090a001e00140000000332030000000000000000000000000061030100000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000620301"
Btw. open3e -a geht bei mir gar nicht:
root@ubuntu:/# open3e -a
reading 0x680, 180 datapoints, please be patient...
2025-07-16 16:56:21 [ERROR] UdsClient: [UnicodeDecodeError] : 'utf-8' codec can't decode byte 0x90 in position 14: invalid start byte
Traceback (most recent call last):
File "/root/open3e/.venv/bin/open3e", line 8, in <module>
sys.exit(main())
....
....
Gruß
hm, blöd immer, dass udsoncan nicht die DID Nummer angibt beim Fehler. Scheinbar liefert ein DID, wo irgendwas als uft-8 kodiert sein soll, ein in dieser Hinsicht unzulässiges Zeichen. vielleicht erfahren wir mehr zu welcher DID das ist mit einem -v im Aufruf?
Moin,
unter 0x680. 378, 378 und 380 konnte ich das finden, auch ein Anfang:
0x680 378 PointOfCommonCouplingPhaseOne {"ActivePower": 70.0, "ReactivePower": -171.0}
0x680 379 PointOfCommonCouplingPhaseTwo {"ActivePower": -187.0, "ReactivePower": -115.0}
0x680 380 PointOfCommonCouplingPhaseThree {"ActivePower": 141.0, "ReactivePower": -232.0}
Leider bringt auch das verbose flag nicht mehr infos zum Problem:
open3e -a -v
reading 0x680, 180 datapoints, please be patient...
2025-07-17 13:21:02 [ERROR] UdsClient: [UnicodeDecodeError] : 'utf-8' codec can't decode byte 0x90 in position 14: invalid start byte
Traceback (most recent call last):
File "/root/open3e/.venv/bin/open3e", line 8, in <module>
sys.exit(main())
^^^^^^
File "/root/open3e/.venv/lib/python3.12/site-packages/open3e/Open3Eclient.py", line 572, in main
lst = ecu.readAll(args.raw)
^^^^^^^^^^^^^^^^^^^^^
File "/root/open3e/.venv/lib/python3.12/site-packages/open3e/Open3Eclass.py", line 343, in readAll
value,idstr = self._readByDid(int(did), raw=raw)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/open3e/.venv/lib/python3.12/site-packages/open3e/Open3Eclass.py", line 272, in _readByDid
response = self.uds_client.read_data_by_identifier([did])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/open3e/.venv/lib/python3.12/site-packages/udsoncan/client.py", line 167, in decorated
return func(self, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/open3e/.venv/lib/python3.12/site-packages/udsoncan/client.py", line 471, in read_data_by_identifier
response = services.ReadDataByIdentifier.interpret_response(response,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/open3e/.venv/lib/python3.12/site-packages/udsoncan/services/ReadDataByIdentifier.py", line 164, in interpret_response
val = codec.decode(subpayload)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/open3e/.venv/lib/python3.12/site-packages/open3e/Open3Ecodecs.py", line 524, in decode
result[subType.id] = subType.decode(string_bin[index:index+subType.string_len])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/open3e/.venv/lib/python3.12/site-packages/open3e/Open3Ecodecs.py", line 166, in decode
mystr = string_bin[0:self.string_len].decode('utf-8')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x90 in position 14: invalid start byte
Macht es sinn die files aus dem depictSystem, die man mit python3 Open3E_depictSystem.py -s erstellt hat, an die devs zu schicken?
Gruß
hallo @HerrP
bisher bin ich echt begeistert von den Möglichkeiten. Danke für eure Arbeit an diesem Projekt.
Mich würde jetzt noch die graphische Aufarbeitung der Vitocal 200S für Home Assistant aus dem Initialpost interessieren. Hast Dazu mehr informationen wie das mit dem Bild umgesetzt wurde?
Viessmann schickt mal wieder keine Benachrichtigungen... aber jetzt hab ich's grad gesehen
> Macht es sinn die files aus dem depictSystem, die man mit python3 Open3E_depictSystem.py -s erstellt hat, an die devs zu schicken?
mit viel Aufwand würden wir dann die 0x90 in Zusammenhang mit utf wahrscheinlich finden, aber einfacher wäre, wenn du mal grad in Zeile 343 in Open3Eclass.py bitte
den Unterstrich vor readByDid(...) wegnimmst und dafür bei den return vars einen anfügst, also
ändern in
ich hatte das beim readAll() ein wenig blöd gemacht. Bei dem 'kompletten' readByDid() ist eine Fehlerbehandlung mit Ausgabe des DID drin, bei dem 'Kern-' _readByDid() nicht...
Ich hab das grad im develop branch auch geändert und hochgeladen.
bitte auch Rückmeldung danach 🙂
danke!
@Sven73 danke für die Blumen! Sowas freut uns immer 🙂
die Bildchen für die 200-S stammen von unserem Urgestein abnoname, der ist aber inzwischen schwer zu erreichen. Sie wurden aber in gleicher Weise erstellt wie das da drunter für die 250, wo Jürgen ja eine Anleitung zu gemacht hat.
Im Prinzip ist das ziemlich einfach: Bild aus dem Handbuch kopieren und in HA in irgendsoeinem Editor öffnen und Labels reinpositionieren und die mit den Werten verknüpfen.
Hallo Phil @HerrP
vielen Dank für die Antworten. Ich kenne mich mit Python nicht aus, aber ich werde es mal versuchen.
Ich hatte die Hoffnung das man dem paho.mqtt.client irgendwie ein retry inklusive Re-Connect Versuchen mitgeben kann, aber hab auch nichts gefunden.
Bzgl. Frage 1 haben wir uns glaube ich missverstanden. Meine Frage wäre, ob es empfohlen ist das automatische Update bei meinem VX3 zu erlauben oder eher nicht. Also neue Features/Fehlerbehebungen vs. Gefahr das Viessmann eure Lösung abschießt.
Bei mir haben sich noch zwei Fragen ergeben.
1. Ich hab open3e auf nem PiZero laufen. Geht auch gut, solange ich nicht zu viele IDs lese. Sobald ich das übertreibe geht die load sehr hoch und ich bekomme Timeout Meldungen vom CAN. Woher kommt diese hohe Last? Ist das UDS Protokoll so anspruchsvoll?
2. Mir ist aufgefallen, dass die Daten vom CAN und aus der Gridbox eine gewisse Abweichung haben. Sowohl aktuelle PV Leistung als auch in der Folge die gesamte Tagesproduktion zeigt vom CAN mehr an.
Kennt da jemand die Erklärung?
Grüße
Stefan
moin @Pollux
> Ich kenne mich mit Python nicht aus, aber ich werde es mal versuchen
is ja eigentlich ganz einfach. nur die Zeile da einfügen. Wichtig ist die Einrückung, die muss bei der eingefügten Zeile identisch mit der der vorhergehenden Zeile sein (am besten kopieren, ich denke es sind 8 Leerzeichen)
> das man dem paho.mqtt.client irgendwie ein retry inklusive Re-Connect Versuchen mitgeben kann
nö, sowas kenn ich auch nicht. beim connect werden ja auch die call-back Funktionen übergeben und so, das kann paho 'alleine' ja kaum machen.
> ob es empfohlen ist das automatische Update bei meinem VX3 zu erlauben oder eher nicht
wie gesagt, das hat ja (mindesten) 2 Aspekte. Zum einen eben dass open3e lustig weiter au dem CAN Bus kommuniziert, während der CAN Bus zu Updaten benutzt wird und ggf. dabei (auf der Anlage) auch mal runtergefahren und neu gestartet wird. Zum anderen den Aspekt, dass V mit einem Update alles verschlüsseln könnte (sehr unwahrscheinlich) oder so. Ich denke ich habe auf beides Bezug genommen.
> auf nem PiZero laufen. Geht auch gut, solange ich nicht zu viele IDs lese. Sobald ich das übertreibe geht die load sehr hoch und ich bekomme Timeout Meldungen vom CAN. Woher kommt diese hohe Last? Ist das UDS Protokoll so anspruchsvoll?
das UDS ist nicht sonderlich anspruchsvoll. Wahrscheinlich liegt es dadran, dass udsoncan dann anfängt, die CAN Frames auszuwerten in Bezug auf die Antwort. Es sind ne Menge CAN Frames die da ständig rumflitzenn (mach mal nen candump... 😉 ), und wenn die Filter nicht sehr selektiv gesetzt sind, bedeutet das ne ganze Menge Arbeit für den Prozessor. Schon ein PI 3 hat da ja merklich zu tun.
> dass die Daten vom CAN und aus der Gridbox eine gewisse Abweichung haben.
welche Daten vom CAN? Es gibt da ja Dutzende... wahrscheilich nusst du nur ein wenig suchen (und vlt noch irgendwelche Differenzen bilden), bis das 'konsistent' ist
Moin,
leider hat die Benachrichtigungsfunktion wieder nicht funktioniert.
Ich werde das ganze mal testen und berichten.
Was bewirkt das entfernen des _ vor dem Funktionsnamen?
Bei den return variablen verstehe ich es so, dass der erste Rückgabewert von readByDid(..) in value, der 2. in idstr und der Rest in _ geschrieben wird?
Gruß
ja, die Benachrichtigungen scheinen sich mit der Zuverlässigkeit der Viessmann Cloud Geschichten zu solidarisieren... 🤣
der Unterstrich vor dem Funktionsnamen ist einfach Teil des Namens. Es gibt die Funktionen readByDid(..) und neuerdings (seit v0.5.x) _readByDid(..). Die, die jetzt _readByDid(..) ist, war die ursprüngliche readByDid(..).
den Unterstrich hab ich davorgeschrieben, als wir das mit dem Subs lesen und der 'namentlichen Adressierung' (und das neue Fehlerbehandlungskonzept) eingebaut haben. Die dementsprechende 'Behandlung' passiert jetzt in der neuen readByDid(..) und die ruft im einfachsten Falle einfach die alte _readByDid(..) auf.
Mit dieser 'Umbenennung' blieb der Rest vom Code, der readByDid() aufruft, nahezu unverändert.
In Python wird ein vorangestellter Unterstrich gewöhnlich dazu benutzt, um irgendwas als 'lokal' zu kennzeichnen (optisch), und ich fand, dass passte in diesem Zusammenhang ganz gut.
Das mit dem Unterstrich im Return hast du richtig erkannt, nur, dass es pro (unbenutztem) Rückgabewert einen Unterstrich braucht, aber in diesem Fall ist 'der Rest' ja nur ein zusätzlicher Rückgabewert, nämlich der DID als integer, für den Fall dass er als string (Klartext) in die Funktion reingegangen wäre.
Eigentlich machen wir diese Änderung ja nur wegen der Fehlerbehandlung, die es nur in der 'neuen' readByDid gibt. Den Rest (Behandlung von Klartext und Sub) brauchen wir hier im readAll eigentlich garnicht, deswegen hatte ich ursprünglich die 'alte' readByDid aufgerufen, dabei aber mal wieder 'zu sparsam' gedacht 😉
Alles klar,
hatte mich auch gerade kurz durchs repo geklickt und die "alte" Funktion auch entdeckt.
Die Ausgabe verwirrt mich, denn 0x680 256 ist das erste Element in der Open3Edatapoints_680.py
Edit:
habe noch die Zeile entdeckt:
0x680 1132 ERR/0x680.1132 "'utf-8' codec can't decode byte 0x90 in position 14: invalid start byte"
rufe ich jedoch den Datenpunkt direkt auf gibt es kein Problem:
open3e -v -r 1132
0x680 1132 ViessmannIdentificationNumberListInternal {"Count": 4, "VIN1": "772752010xxxxxxx", "VIN2": "772752010xxxxxxx", "VIN3": "772752010xxxxxxx", "VIN4": "772752010xxxxxxx", "VIN5": "", "VIN6": ""}
Btw. ist die gridX Cloud einigermaßen stabil. Nur verliert meine VX3 alle paar Tage mal die Verbindung zur Gridbox. Früher hat es geholfen die VX3 dann in der App zu löschen, neu zu scannen und im Anschluss die VX3 als All-In-One Anlage neu hinzuzufügen. Seit neuestem muss ich aber die VX3 komlpett Stromlos machen und so neustarten. Ein CAN Datenpunkt den man dafür triggern könnte wäre perfekt 😉
Gruß
Ich brauche einen gelben Verbinder 91, aber wir können die ganze Packung bunter Verbinder nur für 20-30 Euro kaufen.
Kann man stattdessen etwas Selbstgemachtes verwenden?
meinst du die
die gibts bei Bezos für etwas unter 10 € für 10 Stk
ich denk mal die Farbe spielt keine Rolle.
cheers
wwsolar
ja, die Installateure oder wer auch immer mopsen gerne die gelben Stecker. eigentlich sind sie bei der Anlage mit bei und gehören dem Anlagenbesitzer. ich finde das 'Entwenden' eine Unverschämtheit und strengenommen ist es eine Straftat nach §242 StGB.
War es nicht so, dass der gelbe Stecker eine 'proprietäre Nase' hat? aber mit Dremel oder Küchenmesser bekommt man die gewöhnlichen grünen Stecker auch passend...
sorry, ich hatte mal wieder keine Benachrichtigung und deinen Beitrag entsprechend wieder erst jetzt bemerkt.
Wegen der 'Modultrennung' werden bei readAll (-a) ja erstmal alle DIDs gelesen, in einer Liste 'geparkt' und am Ende wird die Liste ausgegeben.
Wenn beim Lesen ein Fehler passiert, wird der aber wohlmöglich direkt ausgegeben. Deswegen stehen dann die Fehlermeldungen vor dem ersten Datenpunkt. Doof dabei ist, dass udsoncan den Fehler abfängt und die Meldung ausgibt, leider wieder ohne Bezug auf die DID Nummer, also wissen wir nicht, bei welchem DID das passiert ist.
Wenn wir das wissen wollen, könntest du, wo du ja jetzt schon in der Python Codemanipulation erfahren bist, in Open3Eclass.py an Zeile 343 ein print(hex(self.tx), did) einfügen. Dann sehen wir in der Console, bei welchem DID der Fehler passiert (das steht dann direkt über der Fehlermeldung).
Grüsse!
ps ach ja, das unterschiedliche Verhalten zwischen readAll und open3e -v -r 1132 ist mir unerklärlich. Schliesslich ruft ja beides unsere Funktion readByDid() auf, und die sollte sich beidesmal gleich verhalten, es sei denn, es werden wirklich unterschiedliche Daten empfangen. Das könnte man mittels mitlaufendem candump klären.
pps. zu dem "can't decode 0xf7 in position 12" solltest du auch noch so eine Meldung finden wie zu dem mit 1132. dann brauchen wir auch die Zeile mit dem print(...) nicht mehr
Danke, wwsolar.
Wie HerrP erwähnte, unterscheiden sich die originalen gelben Anschlüsse von den Universalanschlüssen, die Sie überall kaufen können.
hier nochmal das 'Profil' von Seite 3
passt denn 3,81mm? es gibt auch das 5.08mm Raster, das hat auch diese Rundungen. vorsichtshalber mal messen...
Hey HerrP,
wollen wir die Konversation bei den github open3e discussions weiterführen?
Jetzt liefert auch der direkte Aufruf von open3e -v -r 1132 den Fehler
2025-08-05 12:43:22 [ERROR] UdsClient: [UnicodeDecodeError] : 'utf-8' codec can't decode byte 0x98 in position 3: invalid start byte
0x680 0 ERR/0x680.1132 "'utf-8' codec can't decode byte 0x98 in position 3: invalid start byte"
Die Änderung in der Open3Eclass.py scheint gar nix gebracht zu haben. Um zu schauen ob die Funktion überhaupt aufgerufen wird habe ich direkt als erstes noch ein print() hinzugefügt aber die Ausgabe erscheint nicht. Daran, dass ich open3e nicht via
pip install git+https://github.com/open3e/open3e.git@develop
sondern so nutze sollte nicht das Problem sein oder?
git clone https://github.com/open3e/open3e.git
cd open3e
python3 -m venv .venv
pip install .
Aufruf dann so
source .venv/bin/activate
open3e -v -a
reading 0x680, 180 datapoints, please be patient...
2025-08-05 12:57:04 [ERROR] UdsClient: [UnicodeDecodeError] : 'utf-8' codec can't decode byte 0x90 in position 14: invalid start byte
Traceback (most recent call last):
File "/home/vx3/open3e/.venv/bin/open3e", line 8, in <module>
sys.exit(main())
^^^^^^
File "/home/vx3/open3e/.venv/lib/python3.12/site-packages/open3e/Open3Eclient.py", line 572, in main
lst = ecu.readAll(args.raw)
^^^^^^^^^^^^^^^^^^^^^
File "/home/vx3/open3e/.venv/lib/python3.12/site-packages/open3e/Open3Eclass.py", line 343, in readAll
value,idstr = self._readByDid(int(did), raw=raw)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/vx3/open3e/.venv/lib/python3.12/site-packages/open3e/Open3Eclass.py", line 272, in _readByDid
response = self.uds_client.read_data_by_identifier([did])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/vx3/open3e/.venv/lib/python3.12/site-packages/udsoncan/client.py", line 175, in decorated
return func(self, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/vx3/open3e/.venv/lib/python3.12/site-packages/udsoncan/client.py", line 488, in read_data_by_identifier
response = services.ReadDataByIdentifier.interpret_response(response,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/vx3/open3e/.venv/lib/python3.12/site-packages/udsoncan/services/ReadDataByIdentifier.py", line 164, in interpret_response
val = codec.decode(subpayload)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/vx3/open3e/.venv/lib/python3.12/site-packages/open3e/Open3Ecodecs.py", line 524, in decode
result[subType.id] = subType.decode(string_bin[index:index+subType.string_len])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/vx3/open3e/.venv/lib/python3.12/site-packages/open3e/Open3Ecodecs.py", line 166, in decode
mystr = string_bin[0:self.string_len].decode('utf-8')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x90 in position 14: invalid start byte
Gruß
Ich habe gerade mein Problem gefunden.
1. mein git clone checked natürlich erstmal den master branch aus. daher hab ich auch deine readAll Änderung noch nicht drin gehabt.
2. dadurch, dass ich anders installiert habe muss ich nach der Änderung an der Datei src/open3e/Open3Eclass.py
pip install .
erneut aufrufen. Die Python Klassen werden doch aber nicht kompiliert oder?
Kann ich nicht irgendwie die "main" direkt starten?
Hier jetzt das Ergebnis von:
open3e -v -a
0x680 1132
2025-08-05 14:43:50 [ERROR] UdsClient: [UnicodeDecodeError] : 'utf-8' codec can't decode byte 0x90 in position 14: invalid start byte
0x680 1138
0x680 1286
2025-08-05 14:43:51 [ERROR] UdsClient: [UnicodeDecodeError] : 'utf-8' codec can't decode byte 0xf7 in position 12: invalid start byte
0x680 1287
Gruß
> wollen wir die Konversation bei den github open3e discussions weiterführen?
ja, -> https://github.com/open3e/open3e/discussions/257
Hallo HerrP,
nachdem jetzt Viessman das ViGuide wirklich abgeschaltet hat, bin ich auf die Empfehlung zu eurer Lösung gestoßen.
Jetzt die Frage: was ist der "Stecker #91"? Ich hab den nicht gefunden, nur einen PLatz mit "CAN" beschriftet, aber ohne Stecksockel!?
@Jonny_Holly du hast glaube ich keine WP mit E3 Regelung und noch eine Vitotronic, oder ?
Dann wäre das hier die richtige Lösung: