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, mosquitto, 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.
- Aktuell ist nur das Auslesen von Daten weitergehend erprobt. Bei den wichtigen Daten haben wir auch schon die Formate zur Interpretation geklärt, wir arbeiten an einer vollständigen Klärung.
Das Schreiben ist bei vielen Daten auch schon erprobt.
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. Einen guten 'Leitfaden' für den Einstieg hat @Hotzen-Plotz hier zur Verfügung gestellt:
https://github.com/open3e/open3e/discussions/5
Eine Sammlung von nützlichen Informationen hat @TSG initiert:
https://github.com/TheSmartGerman/open3e/wiki
(werden wir bald auch unter das open3e Projekt migrieren)
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
Wer es ausprobieren möchte: Hier gibt es eine Anleitung.
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
>> Es ist ja wirklich etwas anderes, Daten zu ändern, als sie nur zu lesen.
> Das sehe ich genauso. Allerdings könnte man die theoretische Möglichkeit konstruieren, dass eventuell auch > der Lese-Request, besonders sequentiell, zu unvorhergesehenen Ereignissen führen könnte, beispielsweise eine Überlastung von Resourcen.
Wenn man http://<ip-vitocal250> aufruft, dann kommt eine Liste der von Viessman verwendeten Open Source Lizenzen der genutzen Libs. Für den Canbus werden demnach can-utils-access, can-utils-cantest, can-utils-isotp, can-utils-j1939, can-utils-log, can-utils-slcan und can-utils genutzt. Viessmann hat das Canbus Rad daher sicher nicht neu erfunden.
Wurden bei open3e schon Situationen bekannt, bei denen eine Überlastung des Canbus aufgetreten ist? Die Issues in can-utils können Hinweise liefern, was evtl. schief gehen kann. Das kann natürlich bei allen am Canbus angeschlossenen Teilnehmern passieren, nicht nur bei open3e.
wir haben noch nie irgendwelche Anzeichen von Überlastung gesehen. Wie gesagt, es sind ja vorsichtshalber auch noch extra Pausen eingebaut.
Bezüglich der Buslast sehe ich da auch eigentlich keine Möglichkeit irgendwelcher Probleme. Der Bus wird ja nicht direkt vom Prozessor der Steuerung verarbeitet, sondern von einem CAN Controller. Diese dürften heute allesamt 100%-Buslast-fähig sein, und aufgrund der Arbitration können mehr als 100% nicht auftreten. Die verwendeten COB-IDs im 0x6yz Bereich liegen oben im 11-Bit Spektrum, und von daher haben die 'internen' Nachrichten sowieso höhere Priorität.
Aber die an ein 'Device' gerichteten Requests werden ja von diesem verarbeitet, und da haben wir halt keinen Einblick, wie 'sauber' das da gelöst ist. Gewöhnlich werden bei einem 'Overflow' von Requests diese einfach verworfen und fertig.
Ich möchte das Thema auch garnicht weiter vertiefen, weil es wie gesagt theoretischern Natur ist und in der Praxis keine erkennbare Rolle spielt.
Die Frage ist eigentlich eher, ob es sich bei der Benutzung eines an Klemme 91 eines Viessmann Gerätes angeschlossenen CAN Busteilnehmer mit UDS Funktionalität (open3e) um "bestimmungsgemässe Verwendung" handelt oder nicht. Das ist ja wahrscheinlich der Ansatz, der greifen würde, wenn eine Gewährleistung verweigert werden sollte.
Grüsse!
Hallo,
gibt es schon Neuigkeiten oder Ergänzungen zur Tabelle (E380 - Zähler)?
Die in gelb hervorgehobenen Zeilen konnte ich leider so noch nicht bei mir reproduzieren. Sofern sich damit Energien in Wh/kWh ergeben sollen, erhalte ich keine plausiblen Werte. Gibt es eine Erklärung zu den abstrus wirkenden Offsets?
Hier mal die ungefähren Werte, die ich erwarten würde (laut mygridbox Jahresbilanz):
Bezug | 39,8 kWh |
Einspeisung | 520,7kWh |
2 aktuelle CAN-Frames mit ID 0x258:
0x1164214720A5FE48 |
0xAB64214737A5FE48 |
Der unter der ID 0x25C kommunizierte Zählerstand entspricht wie erwartet der bezogenen Energie (hier 39,8 kWh).
MfG
Welchen raspberry Pi 4 soll man kaufen, 2, 4 oder 8 GB?
Das kommt darauf an, was noch alles auf dem Raspi laufen soll. Für open3e alleine sind 2GB schon mehr als genug. Wenn aber noch weitere Anwendungen dazu kommen, wie z.B. Docker als Container Plattform, evtl. noch eine SQL Datenbank etc., dann sollte die 8GB Version in Betracht gezogen werden.
Zu viel RAM hat noch nie geschadet...
das Tool läuft, so viel ich weiß, auch auf Windows.
Wenn du nur den einen Parameter ändern möchtest, kanns du die Regelung in den AP Modus versetzten, den Windows PC per Wifi verbinden.
Einmal zum Testen alle Parameter ausgeben lassen und den einen Parameter neu setzen.
>> Zu viel RAM hat noch nie geschadet...
das mit dem RAM ist so wie mit dem Hubraum 😁 (Umweltaspekt mal ausgeblendet)
open3e alleine 'so als Adapter' läuft auch auf einem Raspi Zero mit 512MB problemlos.
@M_K soweit ich erinner, laufen die 0x258 Werte 'wie ein Zähler'. Vielleicht kann man da die Werte des EVU Zählers reinschreiben und dann sollte das immer das gleiche anzeigen? ist aber nur eine Vermutung, und PDOs schreiben ist ja eh so eine Sache 😉
Man könnte ja spasseshalber mal einen SDO Scan (wahrscheinlich 5000..50FF) machen und schauen, ob man da (wohlmöglich in irgendeinem SubIndex) die Werte findet und setzen kann. Man kann aber den Offset einfach auch in 'seiner' Software lokal runterrechnen...
neuere Erkenntnisse zum Energiezähler haben wir sonst meines Wissens nicht. Und auch noch nix geschreiben, was das capturen würde und MQTT posten. Die, die bei uns des Programmierens mächtig sind, haben wenig Zeit.... 😉
Grüsse!
Ich werde mal die Grundausstattung kaufen, 4er Pi mit 8GB, Gehäuse, Netzteil, Adapter für Hdmi. Braucht man sonst noch was, Speicherkarte oder ssd oder sonst was?
Außer der von Hotzenplotz aufgeführten Liste?
Eine microSD Speicherkarte brauchst du für den Raspi immer. Die ist sozusagen das 'Systemlaufwerk'. Wenn du große Datenbanken mit deinen Daten aufbauen möchtest, ist eine SSD wahrscheinlich empfehlenswert (schneller als die Karte, aber damit kannst du auch erstmal warten, bis du dir sicher bist. auf ner modernen Karte ist auch erstmal genug Platz). Ansonsten brauchst du noch ein bischen Draht, um die beiden Stecker zu verbinden 😁
Grüsse!
Es wurde ja schon geantwortet. Es geht hauptsächlich um die Frage, wieviel Zeugs man laufen lassen will versus dem RAM.
Anscheinend geht auch ein Raspi 3 (mit immer 1GB RAM), aber das wird sehr schnell eng (nicht wegen open3e).
Mit 4GB auf einem Raspi 4 bist Du vermutlich für das meiste ausreichend aufgestellt. 8 GB ist besser und weniger "geht auch".
Betont sei hier, dass Du auf dem Raspi ja irgendeine der vielen Homeautomation/IoT Softwares laufen lassen musst, welche überhaupt erst etwas sinnvolles macht mit den Daten, die open3e besorgt (z.B. in einer Datenbank speichern und dann visualisieren).
In meinem Fall ist das iobroker(https://www.iobroker.net/#en/download), aber da nutzt jeder, was er will.
Und sowas wie iobroker verbraucht dann (je nach Ausbau mit Adaptern) weitaus mehr Ressourcen als open3e - daher der Tip mit dem RAM.
Iobroker und ähnliches konnte ich auch als Ahnungsloser zum Laufen bekommen mithilfe eines freundlichen Forums, aber auch das ist eine Reise, die nicht ohne Aufwand hinzubekommen ist. Ich habe den Teil hinter mir gehabt, bevor hier Open3e auftauchte (man konnte ja vorher schon seine Daten aus der Lieferantencloud beziehen).
Vielleicht hier nochmal gesamthaft die Hardware:
Tatsächlich ist es für die ersten Schritte angenehmer, wenn der Raspi mit GUI nutzbar ist als nur per SSH und Kommandozeile. Dann brauchst Du tatsächlich eine HDMI-Verbindung für einen Monitor und eine USB-Tastatur und eine USB-Maus.
Vielen Dank für die Informationen und Unterstützung. Das ich mich da reinfuxen muss ist klar, aber die derzeitige Viessmann App Situation geht mir sowas auf den Zeiger, dass ich was tun muss.
Ich mach dann auch ioBroker drauf.
128GB microSd von SanDisk gibt es relativ günstig.
Baseberry hat derzeit keine 8GB, da muss ich woanders kaufen.
Braucht man noch ne WLAN Antenne, im Heizraum ist kaum Empfang.
ne kleine Anmerkung noch...
>> dass Du auf dem Raspi ja irgendeine der vielen Homeautomation/IoT Softwares laufen lassen musst,
man muss das nicht. Viele Leute haben den MQTT Broker und die HA und alles auf einem anderen System laufen (das kann dann auch Windoofs oder so sein), dann reicht tatsächlich ein Raspi Zero für open3e, der die Daten einfach per TCP/IP in Form von MQTT 'Posts' an das andre System schickt (bzw. später mal austauscht - der bidirektionale Verkehr ist ja grad schon in Vorbereitung).
Aber wenn du eh so nen 'dicken Brummer' besorgst, soll der auch was tun - sonst wäre es ja Verschwendung 😁 Ausserdem verbraucht dann auch nur ein System 24/7(365) Strom - das gilt es ja auch immer zu bedenken. Bei 8760 Stunden im Jahr sind auch nur 10 Watt schon 87 Kilowattstunden...
Grüsse!
.
ps. @Hotzen-Plotz dein Post auf open3e ist inzwischen aufgetaucht - mit mir unerklärlicher Verzögerung 😶 jetzt steht es halt zwei mal da 🙂
ach ja und noch ne Anmerkung: gewöhnlich ist doch bei den Raspbians schon der VNC Server mit drauf. Den muss man nur in der Konfiguration aktivieren, und dann kann man sich den Raspi Desktop einfach auf einen anderen Computer holen ("Remote Desktop") - dann braucht man keinen Bildschirm und keine Tastatur/Maus am Raspi und man braucht nicht im Keller hocken. Und man kann mit der Zwischenablage die meisten Sachen ganz einfach transferieren, das ist auch immer praktisch.
Ist eine 128GB microSd Karte für den raspberry ausreichend?
Absolut. Auch 32 oder 64 tun es dicke für die meisten absehbaren Zwecke (was natürlich eine indiviuelle Perspektive ist).
Dazu noch ein paar Anmerkungen
Dann kauf ich mir eine 2 oder 4GB 4er Variante als Testumgebung und wenns den 5er gibt, dann 8GB mit SSD?
der 4er mit 4GB wird schon satt reichen. Mein grade benutztes Windoofs(!) Laptop hat nur 3GB und die grauen Haare kommen eher von meinem Alter 😉 Du willst mit dem Ding ja keine Rennen fahren. Mach dir eine Kopie von der Karte, wenn das System mal so ist, wie es sein soll, und irgendwelche Datenbanken kann man auch mal zwischendurch auf was andres sichern. Die modernen SD Karten sehen schon von selber zu, dass sie nicht immer auf den gleichen Zellen rumschreiben, von daher ist das alles nicht mehr soo tragisch, erst recht, wenn die Hälfte der Karte oder mehr frei ist.
Ob man den Raspi im Netzwerk isolieren muss? naja, sicherer geht immer, aber ich hab da wenig Bedenken, eben weil das Konstrukt nix mit dem Internetz am Hut hat. Erst, wenn du auf deinen Home Assistant auch aus der Ferne zugreifen willst, macht es wohlmöglich mehr Sinn, über sowas nachzudenken. (finde ich, der grade mit einem nicht isolierten Win7 im Netz unterwegs ist, was ja auch schon ein Nogo ist... 😉 )
Grüsse!
Phil
Hallo zusammen,
ihr habt dort ein super spannendes Projekt gestartet. Gratulation und Respekt über und zum Weg bis hierher.
Ich selber habe gerade ein Haus von 1964 kernsaniert und bei mir steht die Integration in SmartHome an.
Als Zielplattform des Managements werde ich IoBroker verwenden. Zur Integration stehen bei mir folgende Systeme an:
Der IoBroker läuft bei mir auf einer virtuellen Maschine. Die virtuelle Maschine läuft auf einem Proxmox Host. Hier laufen noch diverse weitere Maschinen drauf.
Physikalisch hängt das Ganze auf einem Server mit 2x Xenon CPU, 256 GB RAM, 40 Terra HDD als Raid.
Netzwerkseitig habe ich ein software defined Network mit diversen VLAN´s, das Infrastrukturnetzwerk ist dabei separiert. Das Netzwerk ist flächendeckend in 1GB und 10GB vorhanden. Ebenso flächendeckend ist eine Wifi 6 Infrastruktur mit diversen AccessPoints. Die AccessPoints bilden die verschiedenen VLAN´s ab.
Die Firewall ist dediziert in einer eigenen Hardware, redundant ausgelegt. Die Firewall hat zeitgleich diverse Netzwerksteuerungsaufgaben, unter anderem DHCP, Netzmanagement, Router, DNS-Server, Proxy, AddBlocker, VirusScan, Authentifizierungsserver.
Das Backup ist mehrfach redundant (Raid Z2 im Server, Backupserver an 2 Standorten im Haus, CloudBackup).
Internetseitig ist das System mit 2x 1 GB von zwei Providern angebunden, als Notfallbackup existiert eine LTE Anbindung.
Ziel der Integration der Viessmann-Komponenten wird primär die Datenerfassung uns Analyse sein. Ohne ein detailliertes Konzept zu haben schweben mir hier die folgenden Ideen vor:
Die besondere Herausforderung ist sicherlich die Nutzung des CanBus in der Garantiezeit. Die Kabellänge sollte unkritisch sein. Welchen Can-Bus-Adapter ich nehme muss ich noch rausfinden, entscheidend ist hier die Frage ob ich für jedes Gerät eine eigene Leitung benötige oder einfach parallel auf die Leitung kann.
Ich freue mich auf das Projekt und eure Anregungen.
Viele Grüße
Torsten
Moin Torsten!
meine Herrn, mit der IT hast du ja mächtig aufgefahren 😎 ich hatte bis vor kurzem noch ne 256GB 'Festplatte' (SSD)... Ich kann da also kaum mitreden (hab ich ja oben schon geschrieben - ich benutze noch Win7 😁 ), aber mit CAN kenn ich mich aus 🙂
CAN ist ein Bus System, das heisst du kannst die Viessmann Geräte nicht nur auf eine Leitung legen, sonden du hast garkeine andre Wahl - Vitocal und Vitovent werden damit eh verbunden. Da kannst du Leitungen legen, so viel du willst - das läuft alles auf eine raus (und ein Ring ist bei CAN nicht vorgesehen), zumindest 'extern', also Klemme 91. Es gibt auch noch interne CAN Busse, aber da willst du wahrscheinlich nicht dran... Tu dir den Gefallen und nimm einen galvanisch getrennten CAN Adapter - ich vermute, ein Ground Konzept hast du für deine IT und alle angeschlossen Komponenten nicht gemacht? Wenn es noch weitere (nicht-Viessmann) Geräte mit CAN gibt, könnte man dafür durchaus über weitere CAN Busse nachdenken, spätestens wenn die Baudrates nicht gleich sind oder es mehrere Geräte mit NMT Master gibt.
Grüsse!
Phil
Hab jetzt alles bestellt inkl. dem originalen Steckerset. Eine 64 GB SanDisk High Endurance ist es geworden und ob die tatsächlich mehr Schreibzyklen aushält, keine Ahnung, es beruhigt etwas.
klingt doch gut. wie gesagt, mach mal ne Kopie von der Karte, wenn das System steht. Es passiert beim Raspi schon mal, dass ein Karte kaputt geht, das muss nicht an der Karte liegen. Ich hab tatsächlich auch schon mehrere zerbrochen beim rein und raus Fummeln 🙃 (manche Raspis sitzen bei mir schlecht zugänglich...) Die Kopie kann man auch auf einen USB Stick machen, der sogar kleiner sein kann als die Karte. Von dem Stick kann man dann ein Image machen und das auf irgend ner Festplatte ablegen und davon im Bedarfsfall wieder ne Karte erstellen....
mein kleiner SD Karten-Friedhof... 😁
bemerkenswerterweise sind die SanDisk überwiegend auf nicht-mechanische Weise verstorben. Ich muss allerdings auch gestehen, dass bei den Raspis gewöhnlich einfach die Spannung abgeschaltet wird und nix runtergefahren, das kann auch schnell mal tödlich für die Karte sein...