abbrechen
Suchergebnisse werden angezeigt für 
Anzeigen  nur  | Stattdessen suchen nach 
Meintest du: 

CAN Bus, Home Automation E3 Generation lokal und kostenlos

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 einfachen Daten wie z.B. Warmwasser-Solltemperatur und so auch schon erprobt.

 

- In nicht all zu ferner Zukunft wird es eine einfache Windows Oberfläche zum Setzen der bisher den 'Fachpartnern' mit entsprechendem kostenpflichtigen Account vorbehaltenen Einstellungen wie zum Beispiel den "Energiespareinstellungen" bei den Gasgeräten geben.

 

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!

HerrP_2-1692095743490.png

 

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:

 

HerrP_3-1692095743607.jpeg

 

HerrP_3-1697543763132.png

Vitocal 250 Kältekreisübersicht: View und Installationsanleitung gibt's hier: https://github.com/MyHomeMyData/iob.vis.vitocal250.git

 
Jürgen hat auch noch weitere schöne Sachen abgeleitet.

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

1.023 ANTWORTEN 1.023

Parameter 1415 (HK1):

- 01 01: reduced temperature

- 01 02: standard temperature

- 01 03: comfort temperature

Super, vielen Dank!

@galegroTatsächlich! Ist bei mir genauso. Ich habe probeweise alle 4 Minuten den Wert erneut auf 1 gesetzt. Dann läuft die Pumpe ohne Unterbrechnung. Genau 5 Minuten nach dem letzten Schreibvorgang wird sie ausgeschaltet.


@Juergen-B  schrieb:

Tatsächlich! Ist bei mir genauso


Danke für die Rückmeldung.

 

Allerdings ist das alles nicht weiter schlimm, lässt sich das Ganze durch Skripte ja nach Belieben steuern.

 

Derzeit bin ich schon Tage vergeblich auf der Suche nach Parametern, die ich gerne einsehen und teilweise auch steuern würde. Zwar funktioniert mittlerweile ja die Umschaltung Gas/Strom, aber die Umschaltschwelle von 20KxMin scheint mir doch etwas knapp bemessen. Hast du eine Idee, wo ich fündig werden könnte?

 

Ebenfalls suche ich Datenpunkte, welche die Optionen bivalent parallel und bivalent alternativ beinhalten. Auch würde ich gerne die sog. (untere) Bivalenztemperatur (die ich ja von -5°C auf +2°C geändert habe) einsehen und ggf. ändern können. Dann gibt es hoffentlich auch den Datenpunkte zur oberen Bivalenztemperatur (die derzeit 5°C beträgt und von der ich nicht weiß, was der eigentlich genau bewirkt) und zur Option, welche die Gastherme auch bei höheren Außentemperaturen freischaltet, um so etwa die derzeit (noch) nicht funktionierende Hygienefunktion fehlerfrei durchlaufen zu können. Schließlich suche ich auch noch die Daten zu Tarifeingaben, die ja in der Betriebsart ökonomisch die Umschaltung Gas/Strom regeln soll, was ja derzeit auch noch nicht funktioniert.

 

Vielleicht hilft es ja, dass ich regelmäßig den Kundendienst belämmere, indem ich die Beseitigung der Fehlfunktionen anmahne, solange ja noch Garantieansprüche bestehen. Wenn Viessmann das zu teuer wird, könnte dies sie zum Umdenken bewegen.😏

Filtern nach "bivalence" fördert 2404 und 2831 zu Tage. Leider bisher kein passender Code verfügbar:

 

JuergenB_0-1708008813944.png

 

@Juergen-B

Du hast natürlich recht und es klappt wieder.

 

 Top. Danke! 


@Dreman  schrieb:

@galegro  Ist vielleicht bei der WP anders, aber bei der Vitodens ist der week-Wert immer ein rollierender Wert über die letzten 7 Tage.


Du hattest recht. Die Angaben im Datenpunkt week enthalten stets die Summe der letzten sieben Tage.

Hallo,

versuche es einmal ganz ungezwungen : Thema  mqtt. Ich weiss nicht woran es liegt aber ich krieg aus dem open3e nix an meinen Server geschickt. Hab seit Jahren eine Haussteuerung mit fhem am Laufen und schicke Tonnen von Daten in alle Richtungen. Aber mit

      python3 Open3Eclient.py -c can0 -dev vx3 -r 505,506,1690 -m 192.168.178.24:1883:open3e -muser <user>:<pw> -v

tut sich einfach nix.

Jemand ähnliche Probleme oder gar eine Lösung?

Bitte melden

 

Gruss Harald

hm, gewöhnlich funktioniert das problemlos. ich selbst hab es allerdings immer nur ohne user/pwd gemacht.

 

häng mal ein  -t 3  oder so dran, damit es wiederholt gelesen und gesendet wird. Hast du mal mit MQTT Explorer geguckt? @Juergen-B  kennt sich besser mit der Thematik aus...

liest es denn überhaupt? mit -v müsste ja eine Ausgabe in der Konsole erscheinen

Hi Phil,

Danke für deine Antwort

 

rausgefunden, wo es dran hing. war alles ein Problem der topics

hatte in meinem mosquitto client /ESP8266/+ angegeben und bin davon ausgegangen, dass alle subtopics in dem Ast mitgenommen werden. Hatte bislang auch nur eine Ebene darunter. Durch die vx3 Namen ist eine zusätzliche Ebene dazu gekommen. Hier hab ich das /open3e dazwischen gehängt. Hat nicht geklappt. Zudem bei Werten wie PhotovoltaicCurrentStringPower eine Matrix dranhängt, muss diese durch Angabe von /ESP8266/PhotovoltaicCurrentStringPower/+ angegeben werden. Jetzt läuft alles in fhem richtig rein.

 

Gruss und schönes Wochenende

Harald

d.h durch Angabe von /ESP8266/+/+ funzt es nun. Für jede weitere Ebene ein /+ dazutun.

 

mfG

Warum abonnierst Du nicht einfach alles unterhalb von ESP8266? => ESP8266/#

 

Schande über mir. Kannte den Parameter (noch) nicht. Aber dafür bin ich ja auch newbie hier.

Danke

 

Gruss Harald

Moin moin,

kurze Frage zum Kabel zwischen Canbus- und seriellem Stecker: Das wird bei mir etwa 6-7m lang sein, weil der Raspberry PI wegen der Feuchtigkeit nicht im Heizungsraum steht.

Ich hab hier wahlweise ein Feuchtraumkabel mit 3x1,5mm Adern, die jeweils einzeln farbig ummantelt sind, dann noch so eine duenne Kunststoffschicht, bevor der Aussenmantel kommt. Diese duenne Kunststoffschicht ist keine Folie o.ae., wie ich sie von CAT-Kabeln kenne, sondern weicher Kunsstoff.

Dann noch eine Klingelleitung, 4x0.8 mm mit einzeln ummantelten Adern ohne weitere Schicht zum Aussenmantel hin.

Wuerden solche Kabel funktionieren, oder brauche ich ein geschirmtes Kabel mit so einer speziellen Folie wie bei CAT-Kabeln? Oder was bedeutet sonst "geschirmt", woran erkennt man das? Bei Amazon finden sich z.B. einige Kabel mit Angabe "geschirmt", die auch nur den Aussenmantel und einen farbigen Kunsstoffmantel pro Ader haben.

cu,

Frank

moin Frank!

 

meiner Erfahrung nach ist es wichtiger, dass CAN_Hi und CAN_Lo verdrillt sind, als dass das abgeschirmt ist. Die Abschirmung ist eher wichtig für andere Geräte, da es sich ja um ein digitales Signal mit recht steilen Flanken -> breites Band höherer Harmonischer handelt. CAN selber ist ziemlich robust gegen Einstreungen, erst recht wenn die Leiter verdrillt sind. Dementsprechend würde ich die Klingelleitung bevorzugen. Im Wiki hab ich auch was zur CAN Physik geschrieben.

 

Wichtig ist bei längeren Strecken, dass du die Bus-Widerstände entsprechend platzierst, also je einen (der zwei) an je einem räumlichen Ende. Und den CAN_Gnd nicht vergessen!! 

ps. wenn du CAT Kabel rumfliegen hast nimm das. Das hat sogar fast genau den gleichen Wellenwiderstand wie explizite CAN Kabel.

Vielen Dank! Beim Klingelkabel ist tatsaechlich nichts verdrillt, das sind 4 massive Adern (also jeweils nur 1 Kupferlitze, nicht 10 duenne), die alle parallel verlaufen.

 

CAT6-Kabel habe ich, die gehen hoffentlich auch (auch wenn in Deinem Screenshot nur Cat5 und 7 erwaehnt sind!?). Da war mir nur so unsympathisch, dass die Litzen je extrem duenn sind und ich darum Angst haette, dass die mir am Canbus-Stecker abreisse. Da ist ja leider kein Steckergehaeuse drumherum, wo ich das Kabel inkl. Mantel "festquetschen" kann, so dass auf den einzelnen Litzen kein Zug entsteht.

 

Zum Thema Widerstand: laut Handbuch muss ich an der Heizung den Abschlusswiderstandsschalter auf "on" stellen, und an der Gegenseite verwende ich den hier empfohlenen Konverter in der USB2CAN-C Variante, da kann ich ja gar nichts einstellen. Hat der schon einen Widerstand aktiviert oder muss ich da noch irgendwas machen?

es geht nicht um feinadrige 'Litze', die in sich verdreht ist, sondern Hi und Lo müssen 'umeinander' verdrillt sein, so wie DNA Stränge immer dargestellt werden. So wie da z.B. https://www.ebay.de/itm/234024171598 (ich lach mir nen Ast - 0,35 mm² Klingeldraht für 3,20eu pro Meter 🤑 )

 

bei dem Adapter musst du diesen Jumper stecken damit der Widerstand angeschaltet ist

 

HerrP_0-1708454631309.pngHerrP_1-1708454990108.png

 

 

Ja, bei meinem Klingeldraht sind die einzelnen Adern leider nicht miteinander verdrillt, werde ich also doch das Cat-Kabel nehmen.

Als Adapter hab ich den hier: https://www.amazon.de/dp/B09K3LL93Q, da kann ich also nichts jumpern...?

das mit dem Verdrillen ist jetz kein Voodoo oder so, sondern hat folgenden Hintergrund:

 

HerrP_2-1708456323803.png

 

die Pfeile nach schräg oben sind eine elektromagnetische Störung. die induziert da was in die Leiter. und wie man hoffentlich erkennt, induziert sie in der einen Schleife genau das Entgegengesetzte wie in der nächsten, und so löscht sich das wieder aus.

 

Wenn du es ganz genau machen willst, zählst du die Verdrillungen und achtest darauf, dass sie geradzahlig sind (Achtung, Scherz 😉 )

ps. bei der Cable Variante des Adapters haben die am Stecker noch mal nen Jumper gemacht:

 

HerrP_1-1708459442956.png

 

 

Nee, mein (laut Banderole) "Klingelkabel" ist so eins, nur ohne die blaue Schirmfolie:

https://www.amazon.de/Fernmeldeleitung-Telefonkabel-2x2x0-geschirmt-Beidraht/dp/B07D81HYS2

Das waere ein bisschen muehsam, da ein Adernpaar zu verdrillen 😉

Dass der Jumper auf dem Weibchen sitzt, hab ich nicht kapiert, vielen Dank 🙂

>> CAT6-Kabel habe ich, die gehen hoffentlich auch (auch wenn in Deinem Screenshot nur Cat5 und 7 erwaehnt sind!?)

 

Der Wellenwiderstand von 'Ethernet Kabeln' ist mit 100 Ohm spezifiziert. Das gilt für CAT6 genauso wie für CAT5 und 7. Oft haben die Drähte in der Praxis etwas mehr. Für CAN 'Drähte' sind 120 Ohm spezifiziert.

 

Wichtig ist, dass du ein verdrilltes Paar benutzt (oder meintwegen zwei wenn dir der Querschnitt zu dünn erscheint)

Ich mach mich ans Schrauben, vielen Dank fuer die ganze Unterstuetzung! Via AP laeuft die ganze Steuerung schon automatisiert ueber cron und paar Linux-Scripte, aber die App parallel nutzen zu koennen, waer schon auch nett, darum jetzt per CAN-Bus.

Top-Lösungsautoren