Schaltkontakt per Funk "verkabeln"?
-
- Beiträge: 1073
- Registriert: So Okt 30, 2022 8:07 am
- Has thanked: 39 times
- Been thanked: 76 times
Schaltkontakt per Funk "verkabeln"?
Das betrifft zwar nicht direkt die openWB, aber hier lesen bestimmt einige mit, die wissen, wie man das realisieren könnte.
Meine neue Wärmepumpe hat nun auch eine passive Kühlfunktion.
Ich habe zwar noch keine Ahnung, wie effektiv das ist (bin eher skeptisch), war aber quasi "dabei".
Nun müssen die Raumthermostate beim Kühlen ja genau invertiert arbeiten, damit die "Heizkreise" offen bleiben.
Dafür gibt es einen Schaltkontakt an der Wärmepumpe, wenn sich diese im Kühlmodus befindet.
Da ich aber keine Verkabelung zu den Heizkreisverteilern habe, muss ich nun überlegen, wie ich diese Schaltung dort hinbekomme.
Hat dazu einer eine tolle Idee oder Lösung parat?
Meine neue Wärmepumpe hat nun auch eine passive Kühlfunktion.
Ich habe zwar noch keine Ahnung, wie effektiv das ist (bin eher skeptisch), war aber quasi "dabei".
Nun müssen die Raumthermostate beim Kühlen ja genau invertiert arbeiten, damit die "Heizkreise" offen bleiben.
Dafür gibt es einen Schaltkontakt an der Wärmepumpe, wenn sich diese im Kühlmodus befindet.
Da ich aber keine Verkabelung zu den Heizkreisverteilern habe, muss ich nun überlegen, wie ich diese Schaltung dort hinbekomme.
Hat dazu einer eine tolle Idee oder Lösung parat?
openWB Series 2 Standard+, SW-Version 2
SolarEdge SE10K-RWS, BYD LVS 8, 16,8 kWp.
CUPRA Born
SolarEdge SE10K-RWS, BYD LVS 8, 16,8 kWp.
CUPRA Born
- humschti
- Beiträge: 698
- Registriert: Mo Nov 25, 2019 8:25 am
- Wohnort: Nürensdorf (Schweiz)
- Has thanked: 12 times
- Been thanked: 6 times
Re: Schaltkontakt per Funk "verkabeln"?
Shelly via WLAN?
openWB Series 2 Duo mit EVU, 1/3 Umschaltung und abgesetztem Display, 16 kWp mit Solaredge, Ansteuerung Haushaltsgeräte mit Shelly
Tesla Model S und Cupra Born (SoC via EVCC)
Tesla Model S und Cupra Born (SoC via EVCC)
-
- Beiträge: 1073
- Registriert: So Okt 30, 2022 8:07 am
- Has thanked: 39 times
- Been thanked: 76 times
Re: Schaltkontakt per Funk "verkabeln"?
Vermutlich beides, Danke für die Ideen. 
Bis zum Dimmkit habe ich sowieso Kabel zu liegen und wenn später ein Shelly über den Eingang geschaltet werden kann, ist das die einfachste Lösung.
Mir hatte nur der "Sender" gefehlt.

Bis zum Dimmkit habe ich sowieso Kabel zu liegen und wenn später ein Shelly über den Eingang geschaltet werden kann, ist das die einfachste Lösung.
Mir hatte nur der "Sender" gefehlt.
openWB Series 2 Standard+, SW-Version 2
SolarEdge SE10K-RWS, BYD LVS 8, 16,8 kWp.
CUPRA Born
SolarEdge SE10K-RWS, BYD LVS 8, 16,8 kWp.
CUPRA Born
-
- Beiträge: 1073
- Registriert: So Okt 30, 2022 8:07 am
- Has thanked: 39 times
- Been thanked: 76 times
Re: Schaltkontakt per Funk "verkabeln"?
So, ich habe das Eingangssignal der WP an DI8 des D&C Kit angeschlossen.
Die Heizungsverteiler sind getauscht, mit einem Eingang, der die Kühlung aktiviert.
Ein Shelly ist jeweils eingerichtet, (1Plus) der den Eingang schaltet.
Da die Shellies ja Scripte unterstützen, müssten die doch wahrscheinlich den Status des DI8 der OpenWB per MQTT abfragen und damit schalten können?
Gibt es hier jemand, der weiß, wie so ein Script aussieht?
Die Heizungsverteiler sind getauscht, mit einem Eingang, der die Kühlung aktiviert.
Ein Shelly ist jeweils eingerichtet, (1Plus) der den Eingang schaltet.
Da die Shellies ja Scripte unterstützen, müssten die doch wahrscheinlich den Status des DI8 der OpenWB per MQTT abfragen und damit schalten können?
Gibt es hier jemand, der weiß, wie so ein Script aussieht?
openWB Series 2 Standard+, SW-Version 2
SolarEdge SE10K-RWS, BYD LVS 8, 16,8 kWp.
CUPRA Born
SolarEdge SE10K-RWS, BYD LVS 8, 16,8 kWp.
CUPRA Born
-
- Beiträge: 3982
- Registriert: Sa Feb 20, 2021 9:55 am
- Has thanked: 21 times
- Been thanked: 143 times
Re: Schaltkontakt per Funk "verkabeln"?
Das sieht mir ziemlich nach Javascript aus:
https://www.shelly.com/de/blogs/scripts-library
Der reinen Logik nach, musst du, um an die MQTT-Topics ranzukommen, einen MQTT-client auf dem Shelly haben, der das entsprechende openWB-Topic abonniert. Ob da schon einer drauf ist? Ich weiss es nicht. Du kannst aber such die http-API der openWB nehmen und den DI8 jedes Mal per http abfragen (und dann dementsprechend die Ausgänge invertieren, da möchtest du doch hin, oder?)
https://www.shelly.com/de/blogs/scripts-library
Der reinen Logik nach, musst du, um an die MQTT-Topics ranzukommen, einen MQTT-client auf dem Shelly haben, der das entsprechende openWB-Topic abonniert. Ob da schon einer drauf ist? Ich weiss es nicht. Du kannst aber such die http-API der openWB nehmen und den DI8 jedes Mal per http abfragen (und dann dementsprechend die Ausgänge invertieren, da möchtest du doch hin, oder?)
openWB-series2, openWB-Buchse, E3/DC S10pro+19.5kWh, 30kWp Ost-Süd, Model 3 und Ion
-
- Beiträge: 1073
- Registriert: So Okt 30, 2022 8:07 am
- Has thanked: 39 times
- Been thanked: 76 times
Re: Schaltkontakt per Funk "verkabeln"?
Wenn DI8 auf true geht, soll der Shelly schalten.Gero hat geschrieben: Di Jun 03, 2025 5:35 am Das sieht mir ziemlich nach Javascript aus:
https://www.shelly.com/de/blogs/scripts-library
Der reinen Logik nach, musst du, um an die MQTT-Topics ranzukommen, einen MQTT-client auf dem Shelly haben, der das entsprechende openWB-Topic abonniert. Ob da schon einer drauf ist? Ich weiss es nicht. Du kannst aber such die http-API der openWB nehmen und den DI8 jedes Mal per http abfragen (und dann dementsprechend die Ausgänge invertieren, da möchtest du doch hin, oder?)
Wenn er auf false ist, soll der Shelly ausschalten.
Ich denke der Shelly hat MQTT im Bauch?
openWB Series 2 Standard+, SW-Version 2
SolarEdge SE10K-RWS, BYD LVS 8, 16,8 kWp.
CUPRA Born
SolarEdge SE10K-RWS, BYD LVS 8, 16,8 kWp.
CUPRA Born
-
- Beiträge: 3982
- Registriert: Sa Feb 20, 2021 9:55 am
- Has thanked: 21 times
- Been thanked: 143 times
Re: Schaltkontakt per Funk "verkabeln"?
Einfach einen neuen Wert in den Broker zu schreiben ist etwas anderes als dem Broker zu sagen, dass man gerne Updates erhalten will und auf etwaige Änderungen auch wartet. Im letzten Fall muss man noch etwas implementieren, was die ganze Zeit für den Broker empfangsbereit ist. Aber letzten Endes weiß ich nicht, ob ein Shelly schon einen MQTT-client mitbringt hat oder nicht. Werte publishen können alle.
Mit meiner invertierung des Schaltsignals vermutete ich, dass du den Shelly im Heizkreisverteiler einbauen willst um damit statt „auf“ des Stellers bei Heizen ein „zu“ des Stellers bei Kühlen zu machen. Das wäre vom Event her einfacher, denn das script hängt man dann einfach auf „am Schalteingang tut aich was“ - das gibt‘s bestimmt.
DI8 abonnieren und bei Änderung einen Shelly schalten ist in nodeRed in ein paar Sekunden zusammengeklickt…
Edit: ich habe ja nur miniEMs als Gen2-Shellies, keine Schalter. Aber gefunden habe ich das hier https://shelly-api-docs.shelly.cloud/ge ... tsubscribe - ein client ist also da
Mit meiner invertierung des Schaltsignals vermutete ich, dass du den Shelly im Heizkreisverteiler einbauen willst um damit statt „auf“ des Stellers bei Heizen ein „zu“ des Stellers bei Kühlen zu machen. Das wäre vom Event her einfacher, denn das script hängt man dann einfach auf „am Schalteingang tut aich was“ - das gibt‘s bestimmt.
DI8 abonnieren und bei Änderung einen Shelly schalten ist in nodeRed in ein paar Sekunden zusammengeklickt…
Edit: ich habe ja nur miniEMs als Gen2-Shellies, keine Schalter. Aber gefunden habe ich das hier https://shelly-api-docs.shelly.cloud/ge ... tsubscribe - ein client ist also da
openWB-series2, openWB-Buchse, E3/DC S10pro+19.5kWh, 30kWp Ost-Süd, Model 3 und Ion
-
- Beiträge: 3982
- Registriert: Sa Feb 20, 2021 9:55 am
- Has thanked: 21 times
- Been thanked: 143 times
Re: Schaltkontakt per Funk "verkabeln"?
Es geht! Und war auch eine schöne Forschungsaufgabe!
Zuerst einmal machen wir ein Script, welches ein topic auf true published, das ist ja die Vorgabe:
In den Shellies ist ein komplettes MQTT-Objekt implementiert mit publish, subscribe etc. Der Broker ist der in der Konfiguration eingetragene - ich habe den der openWB genommen. Wenn man dieses Script laufen lässt, erscheint auch prompt das neue topic "di8" im MQTT-Explorer.
Nun müssen wir das subscriben, dabei müssen wir eine Funktion mitgeben, die bei einer Änderung des Topics aufgerufen wird. Weil wir publishen ja schon können, lassen wir unsere Funktion das so machen:
Damit wir ein bisschen hin- und herklicken können, machen wir noch ein publish auf false und haben dann drei Scripts:
Nun können wir mit den beiden publishern den Wert unseres neuen Topics "di8" verändern und sehen im neuen Topic "di8-out" den Wert, der in dem di8-Topic gepublished ist. Das funktioniert auch, wenn man den Wert von "di8" z.B. im MQTT-Explorer verändert.
Bei dem Schalter "Run on startup" würde ich vermuten, dass wenn der Shelly bootet, dieses Script gestartet wird. Deswegen ist der Schalter beim "subscriber" eingeschaltet.
Und damit man nicht alles abtippen muss (das mit dem Editieren der Scripts im Shelly ist ein bisschen nervig) hier nochmal als code-Block
Nun muss nur noch herausgefunden werden, wie man statt des publishen den Shelly schaltet. Kann ich nicht probieren, weil meinem Shelly das Relay fehlt. Und alle meine schaltenden Shellies Gen 1 sind.
Apropos Gen1. Da ist als Prefix für's Topic leider "shellies" fest vorgegeben, weshalb man mit denen nicht in den von der openWB freigegebenen "others"-Zweig reinkommt. Es wäre schön, wenn man in der openWB neben den "others" auch noch "shellies" mit freigeben würde. Vielleicht kopiert ja einer mal die entsprechende Zeile in der mosquitto.conf und stellt einen PR.
Zuerst einmal machen wir ein Script, welches ein topic auf true published, das ist ja die Vorgabe:
In den Shellies ist ein komplettes MQTT-Objekt implementiert mit publish, subscribe etc. Der Broker ist der in der Konfiguration eingetragene - ich habe den der openWB genommen. Wenn man dieses Script laufen lässt, erscheint auch prompt das neue topic "di8" im MQTT-Explorer.
Nun müssen wir das subscriben, dabei müssen wir eine Funktion mitgeben, die bei einer Änderung des Topics aufgerufen wird. Weil wir publishen ja schon können, lassen wir unsere Funktion das so machen:
Damit wir ein bisschen hin- und herklicken können, machen wir noch ein publish auf false und haben dann drei Scripts:
Nun können wir mit den beiden publishern den Wert unseres neuen Topics "di8" verändern und sehen im neuen Topic "di8-out" den Wert, der in dem di8-Topic gepublished ist. Das funktioniert auch, wenn man den Wert von "di8" z.B. im MQTT-Explorer verändert.
Bei dem Schalter "Run on startup" würde ich vermuten, dass wenn der Shelly bootet, dieses Script gestartet wird. Deswegen ist der Schalter beim "subscriber" eingeschaltet.
Und damit man nicht alles abtippen muss (das mit dem Editieren der Scripts im Shelly ist ein bisschen nervig) hier nochmal als code-Block
Code: Alles auswählen
MQTT.publish("others/di8", JSON.stringify(true), 0, false);
MQTT.subscribe("others/di8", function(topic, message) {
MQTT.publish("others/di8-out", message, 0, false);
});
MQTT.publish("others/di8", JSON.stringify(false), 0, false);
Apropos Gen1. Da ist als Prefix für's Topic leider "shellies" fest vorgegeben, weshalb man mit denen nicht in den von der openWB freigegebenen "others"-Zweig reinkommt. Es wäre schön, wenn man in der openWB neben den "others" auch noch "shellies" mit freigeben würde. Vielleicht kopiert ja einer mal die entsprechende Zeile in der mosquitto.conf und stellt einen PR.
openWB-series2, openWB-Buchse, E3/DC S10pro+19.5kWh, 30kWp Ost-Süd, Model 3 und Ion
-
- Beiträge: 1073
- Registriert: So Okt 30, 2022 8:07 am
- Has thanked: 39 times
- Been thanked: 76 times
Re: Schaltkontakt per Funk "verkabeln"?
Supercool, Danke für die Hilfe, es funktioniert.
Die Werte im Broker muss ich nicht schreiben, nur lesen.
Die WP hat ein Relaisausgang, der bei Kühlmodus geschlossen wird.
Das ist per echtem Kabel an das openWB D&C Kit am Eingang DI8 angeschlossen.
Das Topic lautet in meinem Fall:
openWB/io/states/0/get/digital_input
Die Werte sehen so aus:
P.S: Zum Invertieren der Heizungsregler:
Ich habe mir neue Heizverteiler geholt, weder meine Regler noch die Verteiler sind Smart.
Der Verteiler kann aber auch mit Heizungsreglern betrieben werden, die gar keinen Kühlmodus unterstützen, das invertiert das Gerät automatisch.
Außerdem hat es noch einen automatischen hydraulischen Abgleich:
https://homeperfect.de/Moehlenhoff-Ansc ... V-8-Zonen/
Das war preiswerter, als alle Regler zu tauschen, einen (einfacheren) Verteiler, der Kühlmodus schalten kann, hätte ich sowieso gebraucht.
Code: Alles auswählen
MQTT.subscribe("openWB/io/states/0/get/digital_input", function(topic, message) {
try {
let payload = JSON.parse(message);
let DI8 = payload["DI8"];
if (DI8 === true) {
Shelly.call("Switch.set", { id:0, on:true });
} else if (DI8 === false) {
Shelly.call("Switch.set", { id:0, on:false });
}
} catch (error) {
print("Fehler beim Parsen der Nachricht: " + error);
}
});
Die WP hat ein Relaisausgang, der bei Kühlmodus geschlossen wird.
Das ist per echtem Kabel an das openWB D&C Kit am Eingang DI8 angeschlossen.
Das Topic lautet in meinem Fall:
openWB/io/states/0/get/digital_input
Die Werte sehen so aus:
Code: Alles auswählen
{"DI1": true, "DI2": false, "DI3": false, "DI4": false, "DI5": false, "DI6": false, "DI7": false, "DI8": true}
Ich habe mir neue Heizverteiler geholt, weder meine Regler noch die Verteiler sind Smart.
Der Verteiler kann aber auch mit Heizungsreglern betrieben werden, die gar keinen Kühlmodus unterstützen, das invertiert das Gerät automatisch.
Außerdem hat es noch einen automatischen hydraulischen Abgleich:
https://homeperfect.de/Moehlenhoff-Ansc ... V-8-Zonen/
Das war preiswerter, als alle Regler zu tauschen, einen (einfacheren) Verteiler, der Kühlmodus schalten kann, hätte ich sowieso gebraucht.
openWB Series 2 Standard+, SW-Version 2
SolarEdge SE10K-RWS, BYD LVS 8, 16,8 kWp.
CUPRA Born
SolarEdge SE10K-RWS, BYD LVS 8, 16,8 kWp.
CUPRA Born