NEWS
Node Red fehler bei Umstieg auf Raspi4
-
@oskar Na das war die Ausgangsseite - nun kümmern wir uns um die Eingangssseite.
Aus Deinem Blockly entnehme ich, dass POWER2 zum Schließen war, POWER1 zum Öffnen.
Den Power ohne Zahl ignorieren wir mal.
Nun bitte wieder den vollständigen Pfad dieser beiden Punkte in die Zwischenablage und dann hier wieder posten:
-
-
@oskar sagte in Node Red fehler bei Umstieg auf Raspi4:
So dann die Nodes importieren:
[ { "id": "e3c385f5.293128", "type": "ioBroker in", "z": "dce8fa20.2e93c8", "name": "Power1 = Öffnen", "topic": "sonoff.0.RollladenBuero.POWER1", "payloadType": "value", "onlyack": "", "func": "all", "gap": "", "fireOnStart": "false", "x": 2400, "y": 2060, "wires": [ [ "bf97d8e0.aec038" ] ] }, { "id": "8ac22f81.e7c65", "type": "ioBroker in", "z": "dce8fa20.2e93c8", "name": "Power2 = Schließen", "topic": "sonoff.0.RollladenBuero.POWER2", "payloadType": "value", "onlyack": "", "func": "all", "gap": "", "fireOnStart": "false", "x": 2390, "y": 2120, "wires": [ [ "bf97d8e0.aec038" ] ] }, { "id": "bf97d8e0.aec038", "type": "debug", "z": "dce8fa20.2e93c8", "name": "Output Sonoff Taster", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 2670, "y": 2100, "wires": [] } ]
Dann zum Beispiel - wie geplant eine Taste betätigen - loslassen - innerhalb von 2 sek wieder betätigen - loslassen und dann nach 5 sek wieder betätigen und hier den Inhalt des Debugfensters posten.
-
@mickym 30.1.2021, 20:55:47node: Output Sonoff Taster
sonoff/0/RollladenBuero/POWER1 : msg.payload : string[5]
"false"
30.1.2021, 20:55:47node: Output Sonoff Taster
sonoff/0/RollladenBuero/POWER2 : msg.payload : string[5]
"false"
30.1.2021, 20:58:40node: Output Sonoff Taster
sonoff/0/RollladenBuero/POWER2 : msg.payload : string[4]
"true"
30.1.2021, 20:58:40node: Output Sonoff Taster
sonoff/0/RollladenBuero/POWER2 : msg.payload : string[4]
"true"
30.1.2021, 20:58:42node: Output Sonoff Taster
sonoff/0/RollladenBuero/POWER2 : msg.payload : string[5]
"false"
30.1.2021, 20:58:42node: Output Sonoff Taster
sonoff/0/RollladenBuero/POWER2 : msg.payload : string[5]
"false"
30.1.2021, 20:58:50node: Output Sonoff Taster
sonoff/0/RollladenBuero/POWER2 : msg.payload : string[4]
"true"
30.1.2021, 20:58:50node: Output Sonoff Taster
sonoff/0/RollladenBuero/POWER2 : msg.payload : string[4]
"true"
30.1.2021, 20:58:57node: Output Sonoff Taster
sonoff/0/RollladenBuero/POWER2 : msg.payload : string[5]
"false"
30.1.2021, 20:58:57node: Output Sonoff Taster
sonoff/0/RollladenBuero/POWER2 : msg.payload : string[5]
"false"
30.1.2021, 21:00:47node: Output Sonoff Taster
sonoff/0/RollladenBuero/POWER1 : msg.payload : string[5]
"false"
30.1.2021, 21:00:47node: Output Sonoff Taster
sonoff/0/RollladenBuero/POWER2 : msg.payload : string[5]
"false" -
@oskar OK dann ändere bitte in beiden iobroker in Nodes den Mode:
Mach das Gleiche nochmal und poste bitte das Ergebnis wieder.
-
@mickym 30.1.2021, 21:13:19node: Output Sonoff Taster
sonoff/0/RollladenBuero/POWER2 : msg.payload : string[4]
"true"
30.1.2021, 21:13:22node: Output Sonoff Taster
sonoff/0/RollladenBuero/POWER2 : msg.payload : string[5]
"false"
30.1.2021, 21:13:29node: Output Sonoff Taster
sonoff/0/RollladenBuero/POWER2 : msg.payload : string[4]
"true"
30.1.2021, 21:13:30node: Output Sonoff Taster
sonoff/0/RollladenBuero/POWER2 : msg.payload : string[5]
"false"
Beim dritten Drücken, Drücke ich ein viertes mal damit der Schalter wieder zurück geht -
@oskar Wie geht denn der Schalter wieder zurück also aus?
Alleine wenn Du loslässt - sprich musst Du den Schalter gedrückt halten (also wie ein Taster?). Oder drückst Du einmal zum Einschalten und einmal zum Ausschalten? (wie ein normaler Wippschalter)
-
@mickym einmal zum einschalten und dann wieder drücken zum ausschalten, geht nur mit der Finger Berührung
-
@oskar Wenn der Schalter eingeschaltet ist - leuchten dann die blauen Kreise und die bleiben solange an - bis Du wieder ausgeschaltet hast - auch wenn der Rollladen schon längst unten ist?
-
@mickym ja genau
-
@oskar Gut dann prüfen wir noch, ob Du den Schalter auch via NodeRed automatisch ausschalten kannst. Das machen wir wieder mit einer Inject Node. Ich kenne den Sonoff Adapter nicht - weil bei MQTT sind die Datenpunkte zum Steuern und States unterschiedlich - vielleicht ist das bei dem Adapter aber anders.
Um das zu Testen hier - also Deinen Schalter fernzusteuern teste diese Inject Nodes:
[ { "id": "9671bfd3.7e8cd", "type": "inject", "z": "dce8fa20.2e93c8", "name": "Schalter Öffnen AUS", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "sonoff.0.RollladenBuero.POWER1", "payload": "false", "payloadType": "bool", "x": 2530, "y": 2240, "wires": [ [ "8d9d2b22.839698" ] ] }, { "id": "7dfc73d.8473b8c", "type": "inject", "z": "dce8fa20.2e93c8", "name": "Schalter Öffnen EIN", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "sonoff.0.RollladenBuero.POWER1", "payload": "true", "payloadType": "bool", "x": 2530, "y": 2200, "wires": [ [ "8d9d2b22.839698" ] ] }, { "id": "1249b812.fb7888", "type": "inject", "z": "dce8fa20.2e93c8", "name": "Schalter Schließen AUS", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "sonoff.0.RollladenBuero.POWER2", "payload": "false", "payloadType": "bool", "x": 2540, "y": 2340, "wires": [ [ "8d9d2b22.839698" ] ] }, { "id": "ef2ebe2.cfe1c4", "type": "inject", "z": "dce8fa20.2e93c8", "name": "Schalter Schließen EIN", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "sonoff.0.RollladenBuero.POWER2", "payload": "true", "payloadType": "bool", "x": 2540, "y": 2300, "wires": [ [ "8d9d2b22.839698" ] ] }, { "id": "8d9d2b22.839698", "type": "ioBroker out", "z": "dce8fa20.2e93c8", "name": "", "topic": "", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 2840, "y": 2260, "wires": [] } ]
Anschließend sagst Du mir noch wie lange der Rolladen max. braucht, um von ganz oben nach unten zu fahren.
Dann formuliere ich meine Idee zur Steuerungslogik. OK?
-
@mickym hallo, dies mit dem ein und ausschalten vom Taster geht.
beim öffnen dauert es 24 sek, das schliessen geht in 22 sek. -
@oskar Gut dann wäre meine Idee - das Stoppen des Rollos nicht über die Zeit zu machen, sondern wenn Du den entsprechenden Öffnen/Schließen Schalter ausschaltest.
Wenn Du das Rollo ganz hoch und runter fahren willst - lässt Du den entsprechenden Öffnen und Schließen Schalter an und nach ca. 30sek, in der keine erneute Betätigung des Schalters stattgefunden hat, wird er automatisch ausgeschaltet.
Wäre das eine für Dich angenehme Steuerung?
-
@mickym ja das wäre so ok
-
@oskar Dann würde ich empfehlen, dass Du alle Flows die Du heute zum Testen importiert hast wieder zu Löschen. Außerdem musst Du das Blockly deaktivieren - damit uns das nicht dazwischenfunkt. Bevor Du es löscht - kannst Du es ja ggf. in eine Textdatei (XML) exportieren und zur Sicherheit aufbewahren. Ich kann es Dir nämlich nicht mehr erstellen. Du weißt ich bin NOde-Red FAN.
Melde mich dann mit dem neuen Flow.
-
@oskar So hier die Steuerung - wie gesagt schau - dass nichts anderes mehr dazwischen funkt. Ich habe keine Debug-Nodes dran, d.h. wenn ich einen Denkfehler in meiner Logik habe, müssen wir die ggf. noch dranhängen.
Hier der Flow:
[ { "id": "e3c385f5.293128", "type": "ioBroker in", "z": "dce8fa20.2e93c8", "name": "Power1 = Öffnen", "topic": "sonoff.0.RollladenBuero.POWER1", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "false", "x": 2280, "y": 1980, "wires": [ [ "ad6542db.6fbe8" ] ] }, { "id": "8ac22f81.e7c65", "type": "ioBroker in", "z": "dce8fa20.2e93c8", "name": "Power2 = Schließen", "topic": "sonoff.0.RollladenBuero.POWER2", "payloadType": "value", "onlyack": "", "func": "rbe", "gap": "", "fireOnStart": "false", "x": 2270, "y": 2060, "wires": [ [ "23b54309.caa04c" ] ] }, { "id": "ad6542db.6fbe8", "type": "switch", "z": "dce8fa20.2e93c8", "name": "ein/aus?", "property": "payload", "propertyType": "msg", "rules": [ { "t": "eq", "v": "true", "vt": "str" }, { "t": "eq", "v": "false", "vt": "str" } ], "checkall": "true", "repair": false, "outputs": 2, "x": 2480, "y": 1980, "wires": [ [ "5912ee91.5d09" ], [ "e9e267a.0b20998" ] ] }, { "id": "23b54309.caa04c", "type": "switch", "z": "dce8fa20.2e93c8", "name": "ein/aus?", "property": "payload", "propertyType": "msg", "rules": [ { "t": "eq", "v": "false", "vt": "str" }, { "t": "eq", "v": "true", "vt": "str" } ], "checkall": "true", "repair": false, "outputs": 2, "x": 2480, "y": 2060, "wires": [ [ "e9e267a.0b20998" ], [ "6dbd3b20.9affd4" ] ] }, { "id": "e9e267a.0b20998", "type": "change", "z": "dce8fa20.2e93c8", "name": "Drücke Pause", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "true", "tot": "bool" }, { "t": "set", "p": "topic", "pt": "msg", "to": "shelly.0.SHSW-25#BA79FE#1.Shutter.Pause", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 2680, "y": 2020, "wires": [ [ "30d0b82a.7f9588" ] ] }, { "id": "5912ee91.5d09", "type": "change", "z": "dce8fa20.2e93c8", "name": "Drücke Open", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "true", "tot": "bool" }, { "t": "set", "p": "topic", "pt": "msg", "to": "shelly.0.SHSW-25#BA79FE#1.Shutter.Open", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 2670, "y": 1960, "wires": [ [ "30d0b82a.7f9588", "686ad050.f9261" ] ] }, { "id": "6dbd3b20.9affd4", "type": "change", "z": "dce8fa20.2e93c8", "name": "Drücke Close", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "true", "tot": "bool" }, { "t": "set", "p": "topic", "pt": "msg", "to": "shelly.0.SHSW-25#BA79FE#1.Shutter.Close", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 2680, "y": 2080, "wires": [ [ "30d0b82a.7f9588", "7f1f47dc.ac7f98" ] ] }, { "id": "30d0b82a.7f9588", "type": "ioBroker out", "z": "dce8fa20.2e93c8", "name": "Shelly betätigen", "topic": "", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 2900, "y": 2020, "wires": [] }, { "id": "686ad050.f9261", "type": "trigger", "z": "dce8fa20.2e93c8", "name": "Schalter ausschalten", "op1": "", "op2": "false", "op1type": "nul", "op2type": "bool", "duration": "30", "extend": true, "overrideDelay": false, "units": "s", "reset": "", "bytopic": "all", "topic": "topic", "outputs": 1, "x": 2920, "y": 1960, "wires": [ [ "5d772b9c.3fbdb4" ] ] }, { "id": "7f1f47dc.ac7f98", "type": "trigger", "z": "dce8fa20.2e93c8", "name": "Schalter ausschalten", "op1": "", "op2": "false", "op1type": "nul", "op2type": "bool", "duration": "30", "extend": true, "overrideDelay": false, "units": "s", "reset": "", "bytopic": "all", "topic": "topic", "outputs": 1, "x": 2920, "y": 2080, "wires": [ [ "39caf999.632c36" ] ] }, { "id": "5d772b9c.3fbdb4", "type": "change", "z": "dce8fa20.2e93c8", "name": "", "rules": [ { "t": "set", "p": "topic", "pt": "msg", "to": "sonoff.0.RollladenBuero.POWER1", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 3140, "y": 1960, "wires": [ [ "a801e5d5.7e61a8" ] ] }, { "id": "39caf999.632c36", "type": "change", "z": "dce8fa20.2e93c8", "name": "", "rules": [ { "t": "set", "p": "topic", "pt": "msg", "to": "sonoff.0.RollladenBuero.POWER2", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 3140, "y": 2080, "wires": [ [ "a801e5d5.7e61a8" ] ] }, { "id": "a801e5d5.7e61a8", "type": "ioBroker out", "z": "dce8fa20.2e93c8", "name": "Sonoff Schalter ausschalten", "topic": "", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 3400, "y": 2020, "wires": [] } ]
So ist doch gar nicht so kompliziert^^.
Ist dem Flow noch nicht enthalten - mach bitte noch in den 2 iobroker in Nodes den Haken rein:
Das ist noch ein klein wenig mehr Schutz gegen Endlosschleifen - da damit nur bestätigte (also vom Adaper bestätigte Nachrichten) durchkommen und keine selbst gesetzten (commands).
-
@mickym Danke, Danke, Danke, ich kann nicht genug danken es geht wie gewünscht. Es gibt nicht viel die so viel Geduld aufbringen wie Du es mit mir hattest . LG und noch einen schönen Samstag Abend.
-
@oskar sagte in Node Red fehler bei Umstieg auf Raspi4:
@mickym Danke, Danke, Danke, ich kann nicht genug danken es geht wie gewünscht. Es gibt nicht viel die so viel Geduld aufbringen wie Du es mit mir hattest . LG und noch einen schönen Samstag Abend.
Ändere vielleicht noch den kleinen Haken. Aber natürlich freut es mich, wenn alles so geht, wie Du Dir das vorstellst.
Inzwischen kann dieser Thread schon als Tutorial für Node-RED dienen. Ich hoffe Du vollziehst ein bisschen nach, was wir gemacht haben - dann wirst Du diese Logikmaschine auch immer mehr für Deine zukünftigen Ideen einsetzen.
-
ändere vielleicht noch den kleinen Haken.
was meinst Du damit? lg -
@oskar In den iobroker-In Nodes (s. roter Pfeil):
Also so, dass: "Send only on then ack==true" aktiv ist. Falls dann was nicht mehr geht - kannst den Haken immer noch raus machen. Aber eigentlich gehört er rein, da dann nur die Nachrichten durchkommen, die vom Sonoff-Adapter bestätigt wurden.