Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Node-Red
    5. Slider auf null stellen

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Slider auf null stellen

    This topic has been deleted. Only users with topic management privileges can see it.
    • F
      frankyboy73 @neuling321 last edited by frankyboy73

      @neuling321 Hi, das sind aber wirklich wenig Informationen.
      Da wir uns im Node Red Bereich befinden, denke ich mal du meinst nen Slider im Node Red Dashboard. Das der den Wert behält ist ja richtig so, man kann den allerdings am Eingang einen Wert draufgeben, den der dann anzeigt, bzw wo der Slider dann hinfährt. Man könnte auch da direkt den Dimmwert der Lampe anzeigen lassen, dann weiß man wie hell sie aktuell gestellt ist. Die Funktion "If msg arrives on input, pass through to output" würde ich dann allerdings deaktivieren, sonst wird der Wert auch am Ausgang ausgegeben und man erzeugt sich schnell ne Endlosschleife.
      Slider5.jpg
      Slider.jpg
      Das Seitenwechseln, bzw. welchen Tap man aufgerufen hat, kann man sich über die node "ui-control" ausgeben lassen.
      Slider2.jpg
      Dann z.B. per Switch abfragen ob die gewünschte Seite aufgerufen wurde, und darauf reagieren.
      Slider3.jpg

      Slider4.jpg

      Edit: Eventuell so.
      Slider6.jpg
      Slider7.jpg

      Bei meiner ui-control Node habe ich übrigens "Change Tap or Group Events Only" eingestellt, den Rest brauche ich nicht.

      1 Reply Last reply Reply Quote 0
      • N
        neuling321 last edited by

        @ Hallo
        Sorry war heute morgen wohl noch nicht ganz wach, ja waren doch etwas zu wenig Infos.
        Es geht wie frankyboy73 schon richtig gesagt hat, um node-red.

        Leider funktioniert das alles irgendwie nicht, hier mal das was ich bisher habe und was auch funktioniert, nur
        das null Stellen des Sliders beim aufrufen oder verlassen der Webseite klappt nicht.

        [
            {
                "id": "2403138cd6adc1e5",
                "type": "inject",
                "z": "93e0029b8d6617ea",
                "name": "",
                "props": [
                    {
                        "p": "topic",
                        "v": "0",
                        "vt": "num"
                    }
                ],
                "repeat": "",
                "crontab": "",
                "once": true,
                "onceDelay": 0.1,
                "topic": "",
                "x": 90,
                "y": 100,
                "wires": [
                    [
                        "d0b0ed28374d6acd"
                    ]
                ]
            },
            {
                "id": "d0b0ed28374d6acd",
                "type": "change",
                "z": "93e0029b8d6617ea",
                "name": "",
                "rules": [
                    {
                        "t": "set",
                        "p": "payload",
                        "pt": "msg",
                        "to": "0",
                        "tot": "num"
                    }
                ],
                "action": "",
                "property": "",
                "from": "",
                "to": "",
                "reg": false,
                "x": 230,
                "y": 200,
                "wires": [
                    [
                        "e2a11196ba92e0d1"
                    ]
                ]
            },
            {
                "id": "e2a11196ba92e0d1",
                "type": "ui_slider",
                "z": "93e0029b8d6617ea",
                "name": "",
                "label": "slider",
                "tooltip": "",
                "group": "8249f6de3bc04b8f",
                "order": 2,
                "width": 0,
                "height": 0,
                "passthru": false,
                "outs": "all",
                "topic": "topic",
                "topicType": "msg",
                "min": "0",
                "max": "50",
                "step": 1,
                "className": "",
                "x": 390,
                "y": 120,
                "wires": [
                    [
                        "0e9d557add63b1f5",
                        "52b6ecf315b5317a"
                    ]
                ]
            },
            {
                "id": "0e9d557add63b1f5",
                "type": "ui_gauge",
                "z": "93e0029b8d6617ea",
                "name": "",
                "group": "8249f6de3bc04b8f",
                "order": 3,
                "width": 0,
                "height": 0,
                "gtype": "gage",
                "title": "Speedometer",
                "label": "units",
                "format": "",
                "min": "0",
                "max": "50",
                "colors": [
                    "#00b500",
                    "#e6e600",
                    "#ca3838"
                ],
                "seg1": "",
                "seg2": "",
                "className": "",
                "x": 640,
                "y": 160,
                "wires": []
            },
            {
                "id": "52b6ecf315b5317a",
                "type": "range",
                "z": "93e0029b8d6617ea",
                "minin": "0",
                "maxin": "50",
                "minout": "0",
                "maxout": "100",
                "action": "scale",
                "round": true,
                "property": "payload",
                "name": "",
                "x": 620,
                "y": 100,
                "wires": [
                    [
                        "d04b7cfce1455716"
                    ]
                ]
            },
            {
                "id": "d04b7cfce1455716",
                "type": "rpi-gpio out",
                "z": "93e0029b8d6617ea",
                "name": "LED",
                "pin": "12",
                "set": "",
                "level": "0",
                "freq": "100",
                "out": "pwm",
                "bcm": true,
                "x": 790,
                "y": 100,
                "wires": []
            },
            {
                "id": "8249f6de3bc04b8f",
                "type": "ui_group",
                "name": "Slider",
                "tab": "2c5a2c732f2cb639",
                "order": 1,
                "disp": true,
                "width": 7,
                "collapse": false,
                "className": ""
            },
            {
                "id": "2c5a2c732f2cb639",
                "type": "ui_tab",
                "name": "Steuerung",
                "icon": "dashboard",
                "order": 1,
                "disabled": false,
                "hidden": false
            }
        ]
        

        Irgendwie mache ich da wohl noch was falsch.

        mickym F 2 Replies Last reply Reply Quote 0
        • mickym
          mickym Most Active @neuling321 last edited by mickym

          @neuling321

          Wo ist das Problem .- wie @frankyboy73 sagte die ui_control vorne dran setzen. Ich habs mal auch nur für den Steuerungstab gefiltert und natürlich im slider die Nachricht durchgeschleift.

          35334859-bc1e-4541-beaa-4a441e122b4c-image.png

          [
             {
                 "id": "2403138cd6adc1e5",
                 "type": "inject",
                 "z": "a9604a18f9eb47cc",
                 "name": "",
                 "props": [
                     {
                         "p": "topic",
                         "v": "0",
                         "vt": "num"
                     }
                 ],
                 "repeat": "",
                 "crontab": "",
                 "once": true,
                 "onceDelay": 0.1,
                 "topic": "",
                 "x": 310,
                 "y": 180,
                 "wires": [
                     [
                         "d0b0ed28374d6acd"
                     ]
                 ]
             },
             {
                 "id": "d0b0ed28374d6acd",
                 "type": "change",
                 "z": "a9604a18f9eb47cc",
                 "name": "",
                 "rules": [
                     {
                         "t": "set",
                         "p": "payload",
                         "pt": "msg",
                         "to": "0",
                         "tot": "num"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 570,
                 "y": 280,
                 "wires": [
                     [
                         "e2a11196ba92e0d1"
                     ]
                 ]
             },
             {
                 "id": "e2a11196ba92e0d1",
                 "type": "ui_slider",
                 "z": "a9604a18f9eb47cc",
                 "name": "",
                 "label": "slider",
                 "tooltip": "",
                 "group": "8249f6de3bc04b8f",
                 "order": 2,
                 "width": 0,
                 "height": 0,
                 "passthru": true,
                 "outs": "all",
                 "topic": "topic",
                 "topicType": "msg",
                 "min": "0",
                 "max": "50",
                 "step": 1,
                 "className": "",
                 "x": 730,
                 "y": 280,
                 "wires": [
                     [
                         "0e9d557add63b1f5",
                         "52b6ecf315b5317a"
                     ]
                 ]
             },
             {
                 "id": "0e9d557add63b1f5",
                 "type": "ui_gauge",
                 "z": "a9604a18f9eb47cc",
                 "name": "",
                 "group": "8249f6de3bc04b8f",
                 "order": 3,
                 "width": 0,
                 "height": 0,
                 "gtype": "gage",
                 "title": "Speedometer",
                 "label": "units",
                 "format": "",
                 "min": "0",
                 "max": "50",
                 "colors": [
                     "#00b500",
                     "#e6e600",
                     "#ca3838"
                 ],
                 "seg1": "",
                 "seg2": "",
                 "className": "",
                 "x": 900,
                 "y": 300,
                 "wires": []
             },
             {
                 "id": "52b6ecf315b5317a",
                 "type": "range",
                 "z": "a9604a18f9eb47cc",
                 "minin": "0",
                 "maxin": "50",
                 "minout": "0",
                 "maxout": "100",
                 "action": "scale",
                 "round": true,
                 "property": "payload",
                 "name": "",
                 "x": 880,
                 "y": 260,
                 "wires": [
                     []
                 ]
             },
             {
                 "id": "a64d054a38d84c38",
                 "type": "ui_ui_control",
                 "z": "a9604a18f9eb47cc",
                 "name": "",
                 "events": "change",
                 "x": 140,
                 "y": 280,
                 "wires": [
                     [
                         "7664e297e66023da"
                     ]
                 ]
             },
             {
                 "id": "7664e297e66023da",
                 "type": "switch",
                 "z": "a9604a18f9eb47cc",
                 "name": "name = Steuerung?",
                 "property": "name",
                 "propertyType": "msg",
                 "rules": [
                     {
                         "t": "eq",
                         "v": "Steuerung",
                         "vt": "str"
                     }
                 ],
                 "checkall": "true",
                 "repair": false,
                 "outputs": 1,
                 "x": 330,
                 "y": 280,
                 "wires": [
                     [
                         "d0b0ed28374d6acd"
                     ]
                 ]
             },
             {
                 "id": "8249f6de3bc04b8f",
                 "type": "ui_group",
                 "name": "Slider",
                 "tab": "2c5a2c732f2cb639",
                 "order": 1,
                 "disp": true,
                 "width": 7,
                 "collapse": false,
                 "className": ""
             },
             {
                 "id": "2c5a2c732f2cb639",
                 "type": "ui_tab",
                 "name": "Steuerung",
                 "icon": "dashboard",
                 "order": 1,
                 "disabled": false,
                 "hidden": false
             }
          ]
          

          Wenn es beim Verlassen des tabs auch auf 0 gestellt werden soll, dann halt den Filter weglassen.

          34f8f57b-0b1f-4e68-bf18-ceaee3a9e9c0-image.png

          Die slider Node gibt aber nichts aus, wenn sie schon auf 0 war.

          F 1 Reply Last reply Reply Quote 0
          • F
            frankyboy73 @neuling321 last edited by frankyboy73

            @neuling321 Hi, da fehlt die ui-control. Aus der kommt der Name raus den du über einen Switch auswerten kannst. Also mal die Debug Ausgabe anschauen wenn du die Seite / Tab aufrufst und den Namen in die Switch Node eintragen.
            Slider1.jpg
            Slider2.jpg

            [
                {
                    "id": "d0b0ed28374d6acd",
                    "type": "change",
                    "z": "9e1c0edb.e6d2d",
                    "name": "",
                    "rules": [
                        {
                            "t": "set",
                            "p": "payload",
                            "pt": "msg",
                            "to": "0",
                            "tot": "num"
                        }
                    ],
                    "action": "",
                    "property": "",
                    "from": "",
                    "to": "",
                    "reg": false,
                    "x": 490,
                    "y": 2660,
                    "wires": [
                        [
                            "e2a11196ba92e0d1"
                        ]
                    ]
                },
                {
                    "id": "e2a11196ba92e0d1",
                    "type": "ui_slider",
                    "z": "9e1c0edb.e6d2d",
                    "name": "",
                    "label": "slider",
                    "tooltip": "",
                    "group": "8249f6de3bc04b8f",
                    "order": 2,
                    "width": 0,
                    "height": 0,
                    "passthru": false,
                    "outs": "all",
                    "topic": "topic",
                    "topicType": "msg",
                    "min": "0",
                    "max": "50",
                    "step": 1,
                    "className": "",
                    "x": 670,
                    "y": 2640,
                    "wires": [
                        [
                            "0e9d557add63b1f5",
                            "52b6ecf315b5317a"
                        ]
                    ]
                },
                {
                    "id": "0e9d557add63b1f5",
                    "type": "ui_gauge",
                    "z": "9e1c0edb.e6d2d",
                    "name": "",
                    "group": "8249f6de3bc04b8f",
                    "order": 3,
                    "width": 0,
                    "height": 0,
                    "gtype": "gage",
                    "title": "Speedometer",
                    "label": "units",
                    "format": "",
                    "min": "0",
                    "max": "50",
                    "colors": [
                        "#00b500",
                        "#e6e600",
                        "#ca3838"
                    ],
                    "seg1": "",
                    "seg2": "",
                    "className": "",
                    "x": 920,
                    "y": 2680,
                    "wires": []
                },
                {
                    "id": "52b6ecf315b5317a",
                    "type": "range",
                    "z": "9e1c0edb.e6d2d",
                    "minin": "0",
                    "maxin": "50",
                    "minout": "0",
                    "maxout": "100",
                    "action": "scale",
                    "round": true,
                    "property": "payload",
                    "name": "",
                    "x": 900,
                    "y": 2620,
                    "wires": [
                        []
                    ]
                },
                {
                    "id": "f30e16aa84098d4f",
                    "type": "ui_ui_control",
                    "z": "9e1c0edb.e6d2d",
                    "name": "",
                    "events": "change",
                    "x": 380,
                    "y": 2540,
                    "wires": [
                        [
                            "58ae926d0a8d4f68",
                            "b7951df2b2cbc185"
                        ]
                    ]
                },
                {
                    "id": "58ae926d0a8d4f68",
                    "type": "debug",
                    "z": "9e1c0edb.e6d2d",
                    "name": "",
                    "active": true,
                    "tosidebar": true,
                    "console": false,
                    "tostatus": false,
                    "complete": "true",
                    "targetType": "full",
                    "statusVal": "",
                    "statusType": "auto",
                    "x": 750,
                    "y": 2480,
                    "wires": []
                },
                {
                    "id": "b7951df2b2cbc185",
                    "type": "switch",
                    "z": "9e1c0edb.e6d2d",
                    "name": "",
                    "property": "name",
                    "propertyType": "msg",
                    "rules": [
                        {
                            "t": "eq",
                            "v": "Start",
                            "vt": "str"
                        }
                    ],
                    "checkall": "true",
                    "repair": false,
                    "outputs": 1,
                    "x": 450,
                    "y": 2600,
                    "wires": [
                        [
                            "d0b0ed28374d6acd"
                        ]
                    ]
                },
                {
                    "id": "8249f6de3bc04b8f",
                    "type": "ui_group",
                    "name": "Slider",
                    "tab": "2c5a2c732f2cb639",
                    "order": 1,
                    "disp": true,
                    "width": 7,
                    "collapse": false,
                    "className": ""
                },
                {
                    "id": "2c5a2c732f2cb639",
                    "type": "ui_tab",
                    "name": "Steuerung",
                    "icon": "dashboard",
                    "order": 1,
                    "disabled": false,
                    "hidden": false
                }
            ]
            

            Im Code fehlt die letzte Node, die musste ich zum testen löschen, weil ich die nicht benutze.
            Edit: Da war @mickym mal wieder schneller.👍
            Edit 2: Warum hast du eigentlich im Slider die Range 0-50 und änderst das dann auf 0-100? Warum nicht gleich im Slider 0-100?

            1 Reply Last reply Reply Quote 0
            • N
              neuling321 last edited by

              @all

              Cool,
              wieder einiges gelernt.
              Klappt hervorragend.

              Vielen Dank

              1 Reply Last reply Reply Quote 0
              • F
                frankyboy73 @mickym last edited by

                @mickym sagte in Slider auf null stellen:

                Die slider Node gibt aber nichts aus, wenn sie schon auf 0 war.

                Ah, ok, das wusste ich auch noch nicht. Dann kann man sich ja auch ausversehen keine Schleife erstellen. Oder gilt das nur für 0?

                mickym 1 Reply Last reply Reply Quote 0
                • mickym
                  mickym Most Active @frankyboy73 last edited by

                  @frankyboy73 Ich habs nicht ausprobiert - vielleicht auch nur bei geänderten Werten. 😉 Hab den Testflow schon wieder gelöscht. 😉

                  F 1 Reply Last reply Reply Quote 0
                  • N
                    neuling321 last edited by

                    Peinlich aber nun habe ich ein paar fragen zum Flow von mickym.

                    ui Control -> von welchem Tab komme ich -> das ist klar
                    switch -> wenn der Name stimmt gehe über Pin 1 weiter -> auch klar

                    inject -> wer triggert das?
                    Change -> kann der inject das nicht direkt an den Slider senden ?

                    Gruss Sascha

                    mickym F 2 Replies Last reply Reply Quote 0
                    • F
                      frankyboy73 @mickym last edited by

                      @mickym Da hast du recht, habs getestet, wenn Input und letzter Wert gleich, wird nichts ausgegeben.👍

                      1 Reply Last reply Reply Quote 0
                      • mickym
                        mickym Most Active @neuling321 last edited by mickym

                        @neuling321 Ich habs mir ehrlich gesagt nicht so genau angeschaut, die Inject stammt ja aus Deinem Flow zu initialisieren gehe ich mal davon aus. Die ChangeNode schmeisst grundsätzlich alles weg - woher es kommt und setzt die payload auf 0.
                        Du willst ja nicht das was aus der ui_control Node kommt in Deinem slider haben. Insofern hast Du Recht, dass Du die Inject Node auch direkt mit Deinem Slider verbindest und nur die Change NOde für den ui_control Input verwendest.

                        1 Reply Last reply Reply Quote 0
                        • F
                          frankyboy73 @neuling321 last edited by frankyboy73

                          @neuling321 Hi, der Injekt ist eigentlich nur zum testen, man kann mit der Node allerdings auch zu bestimmten Zeiten oder Intervallen Sachen auslösen.
                          Die Change brauchst du, weil der Trigger aus der ui-control kommt, aber da steht ja nicht die richtige msg (msg.payload = number 0) drin, deshalb die change um die Nachricht die aus der ui-control rauskommt zu ändern, in "msg.payload, number 0"
                          Wenn du das mal richtig nachverfolgen willst, was der Flow macht, dann häng doch mal hinter alle Nodes ne Debug Node und stelle in den Debug Nodes ein Volles Nachrichten Objekt ausgeben, damit kannst du dann sehen was wo ausgegeben und umgewandelt wird.
                          Debug1.jpg
                          Debug2.jpg

                          1 Reply Last reply Reply Quote 0
                          • N
                            neuling321 last edited by

                            Willen Dank für die Erklärungen werde das am WE mal testen.
                            Aber ich bin schon wieder etwas schlauer geworden.

                            Danke

                            1 Reply Last reply Reply Quote 0
                            • First post
                              Last post

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            491
                            Online

                            31.7k
                            Users

                            79.8k
                            Topics

                            1.3m
                            Posts

                            4
                            14
                            753
                            Loading More Posts
                            • Oldest to Newest
                            • Newest to Oldest
                            • Most Votes
                            Reply
                            • Reply as topic
                            Log in to reply
                            Community
                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                            The ioBroker Community 2014-2023
                            logo