Dimmer zu Schalter umfunktionieren

Guten Abend,

ich habe einen elektrischen Verbraucher an meinem Dimmy angeschlossen, den ich nur Ein- und Ausschalten möchte. Kann ich den Dimmer zu einem Schalter umfunktionieren in der Software? Über die Nodes ließe sich das doch bestimmt machen, aber was wäre mit dem Display? Das ist ja von uns nicht anpassbar, oder? Wie wäre dann die Darstellung?

Generell wäre das ja vielleicht noch eine Idee, die in einer späteren Softwareversion fest aufgenommen werden könnte. So ließe sich das System um weitere Schalter erweitern, falls man nicht alle Dimmer benötigt und das Relaisboard bereits voll belegt ist.

Ich freue mich auf eure Antworten. Besten Dank!

Heiko

Hallo Heiko
so könntest du das machen


An dem Link out kannst du den Dimmer einstellen zur Zeit auf Dimmer 1.

[
    {
        "id": "9213c490287643b7",
        "type": "link out",
        "z": "c05b9ff9dd7f8150",
        "name": "link out 2",
        "mode": "link",
        "links": [
            "a4c0fd66546e7864"
        ],
        "x": 1155,
        "y": 960,
        "wires": []
    },
    {
        "id": "9a66dd186e26d56b",
        "type": "ui_switch",
        "z": "c05b9ff9dd7f8150",
        "name": "",
        "label": "switch",
        "tooltip": "",
        "group": "d9229161.b8548",
        "order": 10,
        "width": 0,
        "height": 0,
        "passthru": true,
        "decouple": "false",
        "topic": "topic",
        "topicType": "msg",
        "style": "",
        "onvalue": "true",
        "onvalueType": "bool",
        "onicon": "",
        "oncolor": "",
        "offvalue": "false",
        "offvalueType": "bool",
        "officon": "",
        "offcolor": "",
        "animate": false,
        "className": "",
        "x": 610,
        "y": 940,
        "wires": [
            [
                "b9c2825b11287b9e"
            ]
        ]
    },
    {
        "id": "b9c2825b11287b9e",
        "type": "function",
        "z": "c05b9ff9dd7f8150",
        "name": "function 1",
        "func": "if (msg.payload== true){\n    msg.payload = 100\n}\nif (msg.payload == false) {\n    msg.payload= 0\n}\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "libs": [],
        "x": 860,
        "y": 940,
        "wires": [
            [
                "9213c490287643b7",
                "86460775fd822b54"
            ]
        ]
    },
    {
        "id": "86460775fd822b54",
        "type": "debug",
        "z": "c05b9ff9dd7f8150",
        "name": "Debug",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": true,
        "complete": "true",
        "targetType": "full",
        "statusVal": "payload",
        "statusType": "auto",
        "x": 1070,
        "y": 1020,
        "wires": []
    },
    {
        "id": "48c6674989c77889",
        "type": "comment",
        "z": "c05b9ff9dd7f8150",
        "name": "Hier ist Dimmer 1 eingestellt",
        "info": "",
        "x": 1220,
        "y": 900,
        "wires": []
    },
    {
        "id": "d9229161.b8548",
        "type": "ui_group",
        "name": "Switches",
        "tab": "2fa37e0c8559eb92",
        "order": 2,
        "disp": true,
        "width": "6",
        "collapse": false,
        "className": ""
    },
    {
        "id": "2fa37e0c8559eb92",
        "type": "ui_tab",
        "name": "Switches",
        "icon": "mi-toggle_on",
        "order": 2,
        "disabled": false,
        "hidden": false
    }
]

Du bekommst nur keine Rückmeldung auf den Schalter wenn du am Dimmer einschaltest.
Gruß
Arno

@Heiko
Wenn du vom Pekaway display schalten möchtest, könntest du die Schalter vom Wifi-Relay vergewaltigen.
mit einem Link in Wifi-Relay von der Display Seite.

[
    {
        "id": "9213c490287643b7",
        "type": "link out",
        "z": "c05b9ff9dd7f8150",
        "name": "link out 2",
        "mode": "link",
        "links": [
            "a4c0fd66546e7864"
        ],
        "x": 1155,
        "y": 960,
        "wires": []
    },
    {
        "id": "9a66dd186e26d56b",
        "type": "ui_switch",
        "z": "c05b9ff9dd7f8150",
        "name": "",
        "label": "switch",
        "tooltip": "",
        "group": "d9229161.b8548",
        "order": 10,
        "width": 0,
        "height": 0,
        "passthru": true,
        "decouple": "false",
        "topic": "topic",
        "topicType": "msg",
        "style": "",
        "onvalue": "true",
        "onvalueType": "bool",
        "onicon": "",
        "oncolor": "",
        "offvalue": "false",
        "offvalueType": "bool",
        "officon": "",
        "offcolor": "",
        "animate": false,
        "className": "",
        "x": 610,
        "y": 940,
        "wires": [
            [
                "b9c2825b11287b9e"
            ]
        ]
    },
    {
        "id": "b9c2825b11287b9e",
        "type": "function",
        "z": "c05b9ff9dd7f8150",
        "name": "function 1",
        "func": "if (msg.payload== true){\n    msg.payload = 100\n}\nif (msg.payload == false) {\n    msg.payload= 0\n}\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "libs": [],
        "x": 860,
        "y": 940,
        "wires": [
            [
                "9213c490287643b7",
                "86460775fd822b54"
            ]
        ]
    },
    {
        "id": "86460775fd822b54",
        "type": "debug",
        "z": "c05b9ff9dd7f8150",
        "name": "Debug",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": true,
        "complete": "true",
        "targetType": "full",
        "statusVal": "payload",
        "statusType": "auto",
        "x": 1070,
        "y": 1020,
        "wires": []
    },
    {
        "id": "3ab3d51434c59db3",
        "type": "link in",
        "z": "c05b9ff9dd7f8150",
        "name": "wifiRelay in 1",
        "links": [
            "8a40988dd0ca7485"
        ],
        "x": 605,
        "y": 880,
        "wires": [
            [
                "b9c2825b11287b9e"
            ]
        ]
    },
    {
        "id": "d9229161.b8548",
        "type": "ui_group",
        "name": "Switches",
        "tab": "2fa37e0c8559eb92",
        "order": 2,
        "disp": true,
        "width": "6",
        "collapse": false,
        "className": ""
    },
    {
        "id": "2fa37e0c8559eb92",
        "type": "ui_tab",
        "name": "Switches",
        "icon": "mi-toggle_on",
        "order": 2,
        "disabled": false,
        "hidden": false
    }
]

Guten Abend Arno,

ich danke dir vielmals für deine Gedanken und konkreten Umsetzungsvorschläge! Ich würde das gerne Ausprobieren, aber ich weiß nicht wie. Ja, ich komme ins Backend und ich hab schon mal ein paar Befehle mit der Hilfe aus dem Forum angepasst für die Standheizung, aber dann hört es auch schon auf. Muss wohl mal ein paar Abende YouTube Videos zu Node Red schauen, um überhaupt die Grundlagen zu verstehen. Hatte in den letzten Tagen versucht nen Shelly per MQTT zu verbinden, aber auch da bin ich letztlich gescheitert. Etwas frustrierend…

Beste Grüße
Heiko

Kein Problem
Den code kopieren.
In Node Red oben rechts die 3 Striche anklicken, auf Importieren klicken. Den Code einfügen. Bestätigen, Fertig.
In dem link out den Dimmer einstellen, der ist zur Zeit auf Dimmer 1 eingestellt. Im 2. Code ist der Schalter vom Wifi Relay 1 Pekaway Display im link in eingestellt

1 Like

Gerade wird mir einiges klar… ich danke dir vielmals! Werde das morgen mal testen und dann berichten. Bin so gespannt :grin:

Hallo @Heiko
wenn dir das mit dem WifiRelay zusagt kannst du das auch so machen, dann kannst du alle Möglichkeiten von WifiRelay nutzen Schalter im Pekaway Display oder Noderd Dashboard, Auto on off, Zeitschaltuhr,
grafik

[
    {
        "id": "9213c490287643b7",
        "type": "link out",
        "z": "c05b9ff9dd7f8150",
        "name": "link out 2",
        "mode": "link",
        "links": [
            "a4c0fd66546e7864"
        ],
        "x": 1035,
        "y": 940,
        "wires": []
    },
    {
        "id": "b9c2825b11287b9e",
        "type": "function",
        "z": "c05b9ff9dd7f8150",
        "name": "function 1",
        "func": "if (msg.payload== true){\n    msg.payload = 100\n}\nif (msg.payload == false) {\n    msg.payload= 0\n}\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "libs": [],
        "x": 860,
        "y": 940,
        "wires": [
            [
                "9213c490287643b7",
                "86460775fd822b54"
            ]
        ]
    },
    {
        "id": "86460775fd822b54",
        "type": "debug",
        "z": "c05b9ff9dd7f8150",
        "name": "Debug",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": true,
        "complete": "true",
        "targetType": "full",
        "statusVal": "payload",
        "statusType": "auto",
        "x": 1030,
        "y": 980,
        "wires": []
    },
    {
        "id": "3ab3d51434c59db3",
        "type": "link in",
        "z": "c05b9ff9dd7f8150",
        "name": "wifiRelay in 1",
        "links": [
            "27bdb3ee.04bc8c"
        ],
        "x": 665,
        "y": 940,
        "wires": [
            [
                "b9c2825b11287b9e",
                "39636b901bb84afb"
            ]
        ]
    },
    {
        "id": "39636b901bb84afb",
        "type": "debug",
        "z": "c05b9ff9dd7f8150",
        "name": "Debug",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": true,
        "complete": "true",
        "targetType": "full",
        "statusVal": "payload",
        "statusType": "auto",
        "x": 790,
        "y": 980,
        "wires": []
    }
]

Beim importieren klick unten auf neuen Flow.

Moin Arno,

wie cool ist das denn? Funktioniert prinzipiell :slight_smile: allerdings hab ich zum Testen erstmal dein Script so übernommen und anschließend den Flow gelöscht und nochmal neu gemacht auf Dimmer 4. Nun gehen Dimmer 1 und Dimmer 4 gleichzeitig an? Wieso das?

du musst im link out den Dimmer 1 abschalten

Verstehe ich leider noch nicht. Den alten Flow habe ich davor gelöscht und übernommen. Anschließend den von mir angepassten Flow Importiert als neuen Flow und ebenfalls übernommen.

Hab den Code folgendermaßen verändert (nur den link verändert):

[
    {
        "id": "9213c490287643b7",
        "type": "link out",
        "z": "c05b9ff9dd7f8150",
        "name": "link out 2",
        "mode": "link",
        "links": [
            "77683cc8a2a2dd71"
        ],
        "x": 1035,
        "y": 940,
        "wires": []
    },
    {
        "id": "b9c2825b11287b9e",
        "type": "function",
        "z": "c05b9ff9dd7f8150",
        "name": "function 1",
        "func": "if (msg.payload== true){\n    msg.payload = 100\n}\nif (msg.payload == false) {\n    msg.payload= 0\n}\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "libs": [],
        "x": 860,
        "y": 940,
        "wires": [
            [
                "9213c490287643b7",
                "86460775fd822b54"
            ]
        ]
    },
    {
        "id": "86460775fd822b54",
        "type": "debug",
        "z": "c05b9ff9dd7f8150",
        "name": "Debug",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": true,
        "complete": "true",
        "targetType": "full",
        "statusVal": "payload",
        "statusType": "auto",
        "x": 1030,
        "y": 980,
        "wires": []
    },
    {
        "id": "3ab3d51434c59db3",
        "type": "link in",
        "z": "c05b9ff9dd7f8150",
        "name": "wifiRelay in 1",
        "links": [
            "27bdb3ee.04bc8c"
        ],
        "x": 665,
        "y": 940,
        "wires": [
            [
                "b9c2825b11287b9e",
                "39636b901bb84afb"
            ]
        ]
    },
    {
        "id": "39636b901bb84afb",
        "type": "debug",
        "z": "c05b9ff9dd7f8150",
        "name": "Debug",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": true,
        "complete": "true",
        "targetType": "full",
        "statusVal": "payload",
        "statusType": "auto",
        "x": 790,
        "y": 980,
        "wires": []
    }
]```

Der Flow ist OK soweit ich sehe
schau mal auf der DimmerSeite ob da noch irgend ein Rest rumliegt der vieleicht nicht gelöscht wurde ???


hab sonst keine Idee

Das war tatsächlich so. In dem importierten Flow wurde der Dimmer 1 wieder übernommen, obwohl ich das vorher eindeutig gelöscht hatte. Als ich das dann im Flow korrigiert hatte, konnte ich die Änderung nicht veröffentlichen. Neustart etc. haben nicht geholfen. Dann hab ich das im Dimmer Controller Flow geändert und siehe da: Ich konnte die Änderung übernehmen. Verstehe nicht warum mit löschen eines Flows Reste bleiben und warum ich die Änderungen nicht direkt in dem neu angelegten Flow übernehmen kann, aber das Problem ist gelöst. Vielen Dank @ahtdf ! Hab heute eine Menge gelernt dank dir…

Nun werd ich nochmal schauen, ob ich das Wifi-Relais auf einen MCP Input setzen kann. Im Frontend kann ich das nicht auswählen. Muss also nochmal in den Flows schauen.

Ich vermute das der link out den gleichn Namen bekommen hat, und im dimmer stand der name noch drin, und hat sich deswegen wieder mit dem link out verbunden.
Was möchtest du machen??
Möchtest du mit dem Hardware Taster das wifi relay schalten??

Genau, mit einem Hardwaretaster das Wifi Relay schalten. Ist wohl keine Funktion out of the box im VanPi :sweat_smile:

Moin @Heiko,
ist eigentlich ganz einfach.
willst du einen Tipp, oder erst mal selber suchen???
Kommst du sicher drauf wenn du dir das anschaust.

Moin Arno,

wenn es die Zeit zulässt, dann schaue ich mir das nochmal selber an. Jetzt hast du mich neugierig gemacht :grin: