Hallo, ich bekomme demnächst meine WP (SG-Ready im April 2025). Ich habe mich auch auf die Suche gemacht, um SG-Ready-Möglichkeiten zu finden und zu bedienen. Letztendlich habe ich mich für die u.s. theoretische Lösung (hardwaretechn. volle Funktion, aber noch nicht angeschlossen) entschieden.
Was benötigt wird:
homeassistant mit Node-Red und Mqtt-Zugang für Deye (z.B. über SA oder über Deye Solarman)
shelly uni plus, hat zwei stromlose kontakte
Einstellung des Deye, Reihenfolge bei mir: Hausverbrauch-Akku-Einspeisung
Ich greife auf den SOC (Akkustand) über MQTT zu und hole den Wert. Mit node-red entscheide ich alle 15 Minuten, ob ich über einen http-request einen Befehl zum ein- oder ausschalten an Shelly uni plus sende. Die beiden kontakte bedienen dann die SG-Ready Kontakte. Ich denke mit etwas Überlegung könnte dann auch, zumindest im Sommer ein E-Auto geladen werden.
Anmerkung: Mit shelly script des uni plus müsste es auch ohne Node-Red funktionieren. Jedoch der SOC wird über MQTT wird trotzdem benötigt.
Node-red flow json (einfach komplett kopieren und als Flox in Node-Red übertragen, die IP austauschen:
[{"id":"c895f37451baaa60","type":"tab","label":"SG-ready","disabled":false,"info":"","env":},{"id":"4b2a8935676eb37b","type":"http request","z":"c895f37451baaa60","name":"192.168.1.82-on-K0","method":"GET","ret":"txt","paytoqs":"ignore","url":"http://192.168.1.82/relay/0?turn=on","tls":"","persist":false,"proxy":"","insecureHTTPParser":false,"authType":"","senderr":false,"headers":[],"x":760,"y":340,"wires":[["f902a6493184e0f8"]]},{"id":"67d9288e1204a2fc","type":"http request","z":"c895f37451baaa60","name":"192.168.1.82-on-K1","method":"GET","ret":"txt","paytoqs":"ignore","url":"http://192.168.1.82/relay/1?turn=on","tls":"","persist":false,"proxy":"","insecureHTTPParser":false,"authType":"","senderr":false,"headers":[],"x":760,"y":400,"wires":[[]]},{"id":"edb03367a1618af6","type":"mqtt in","z":"c895f37451baaa60","name":"MQTT Wert empfangen","topic":"solar_assistant/total/battery_state_of_charge/state","qos":"2","datatype":"auto-detect","broker":"f15aa46aaff3ded3","nl":false,"rap":false,"inputs":0,"x":180,"y":540,"wires":[["7a102167431ba1c5"]]},{"id":"7a102167431ba1c5","type":"switch","z":"c895f37451baaa60","name":"Bedingung überprüfen","property":"payload","propertyType":"msg","rules":[{"t":"btwn","v":"100","vt":"num","v2":"71","v2t":"num"},{"t":"btwn","v":"70","vt":"num","v2":"51","v2t":"num"},{"t":"btwn","v":"50","vt":"num","v2":"30","v2t":"num"}],"checkall":"true","repair":false,"outputs":3,"x":440,"y":540,"wires":[["4b2a8935676eb37b","67d9288e1204a2fc","4725460141b75397"],["c4c9782e10cb2338","37dfc6a628f79c41","4725460141b75397"],["50cca63004a626ad","f9a5954ffd731c7a","4725460141b75397"]]},{"id":"4725460141b75397","type":"delay","z":"c895f37451baaa60","name":"15 Minuten warten","pauseType":"rate","timeout":"5","timeoutUnits":"minutes","rate":"1","nbRateUnits":"15","rateUnits":"minute","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":true,"allowrate":true,"outputs":1,"x":430,"y":700,"wires":[["7a102167431ba1c5"]]},{"id":"c4c9782e10cb2338","type":"http request","z":"c895f37451baaa60","name":"192.168.1.82-off-K0","method":"GET","ret":"txt","paytoqs":"ignore","url":"http://192.168.1.82/relay/0?turn=off","tls":"","persist":false,"proxy":"","insecureHTTPParser":false,"authType":"","senderr":false,"headers":[],"x":760,"y":460,"wires":[["b4a5fbf3fd92fb8b"]]},{"id":"37dfc6a628f79c41","type":"http request","z":"c895f37451baaa60","name":"192.168.1.82-on-K1","method":"GET","ret":"txt","paytoqs":"ignore","url":"http://192.168.1.82/relay/1?turn=on","tls":"","persist":false,"proxy":"","insecureHTTPParser":false,"authType":"","senderr":false,"headers":[],"x":760,"y":500,"wires":[[]]},{"id":"50cca63004a626ad","type":"http request","z":"c895f37451baaa60","name":"192.168.1.82-off-K0","method":"GET","ret":"txt","paytoqs":"ignore","url":"http://192.168.1.82/relay/0?turn=off","tls":"","persist":false,"proxy":"","insecureHTTPParser":false,"authType":"","senderr":false,"headers":[],"x":760,"y":560,"wires":[["b3f226a7cecdfd95"]]},{"id":"f9a5954ffd731c7a","type":"http request","z":"c895f37451baaa60","name":"192.168.1.82-off-K1","method":"GET","ret":"txt","paytoqs":"ignore","url":"http://192.168.1.82/relay/1?turn=off","tls":"","persist":false,"proxy":"","insecureHTTPParser":false,"authType":"","senderr":false,"headers":[],"x":760,"y":620,"wires":[[]]},{"id":"f902a6493184e0f8","type":"mqtt out","z":"c895f37451baaa60","name":"boost_mode","topic":"shelly-plus-uni/boost_mode","qos":"","retain":"","respTopic":"","contentType":"","userProps":"","correl":"","expiry":"","broker":"62838413c4c927cc","x":1110,"y":340,"wires":},{"id":"b4a5fbf3fd92fb8b","type":"mqtt out","z":"c895f37451baaa60","name":"comfort_mode","topic":"shelly-plus-uni/comfort_mode","qos":"","retain":"","respTopic":"","contentType":"","userProps":"","correl":"","expiry":"","broker":"62838413c4c927cc","x":1120,"y":460,"wires":},{"id":"b3f226a7cecdfd95","type":"mqtt out","z":"c895f37451baaa60","name":"normal_mode","topic":"shelly-plus-uni/mqtt-sg-ready-normal_mode","qos":"","retain":"","respTopic":"","contentType":"","userProps":"","correl":"","expiry":"","broker":"62838413c4c927cc","x":1120,"y":560,"wires":},{"id":"f15aa46aaff3ded3","type":"mqtt-broker","name":"","broker":"192.168.1.163","port":1883,"clientid":"","autoConnect":true,"usetls":false,"protocolVersion":4,"keepalive":60,"cleansession":true,"autoUnsubscribe":true,"birthTopic":"","birthQos":"0","birthRetain":"false","birthPayload":"","birthMsg":{},"closeTopic":"","closeQos":"0","closeRetain":"false","closePayload":"","closeMsg":{},"willTopic":"","willQos":"0","willRetain":"false","willPayload":"","willMsg":{},"userProps":"","sessionExpiry":""},{"id":"62838413c4c927cc","type":"mqtt-broker","name":"","broker":"127.0.0.1","port":1883,"tls":"","clientid":"","autoConnect":true,"usetls":false,"protocolVersion":4,"keepalive":60,"cleansession":true,"autoUnsubscribe":true,"birthTopic":"","birthQos":"0","birthRetain":"false","birthPayload":"","birthMsg":{},"closeTopic":"","closeQos":"0","closeRetain":"false","closePayload":"","closeMsg":{},"willTopic":"","willQos":"0","willRetain":"false","willPayload":"","willMsg":{},"userProps":"","sessionExpiry":""}]