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. Node-Red Modbus mehrere Slave ID´s abfragen

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Node-Red Modbus mehrere Slave ID´s abfragen

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      Malaus @mickym last edited by

      @mickym das letzte hat die 20

      3fc02eb3-82ef-4a6b-afc3-feeab3a439a4-image.png

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

        Ok danke. 😉 - Das heißt die queuelänge baut sich auf und wird nur intern abgearbeitet 😉

        Die msg.parts Eigenschaft scheint nicht durch zu kommen, sondern nur das topic - dann müssen wir ggf. doch das topic nutzen aber nicht anhand des Namens sondern dann würde ich wirklich nach der msg.parts Eigenschaft das topic setzen.

        das heißt wir wissen ja wieviele Elemente kommen und setzten da topic entsprechend.

        M 1 Reply Last reply Reply Quote 0
        • M
          Malaus @mickym last edited by

          @mickym
          das erste:
          e8014b45-e262-4662-8f09-74729f4fbee8-image.png

          das letzte:
          cda61a06-3590-465e-bcb6-6ed44750a75d-image.png

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

            @malaus Ok wenn das topic das Einzige war was durchkommt (das msg.parts Objekt wird leider durch die GETTER Node nicht durchgereicht oder ist das enthalten?) , dann nehmen wir im Prinzip deine Lösung, setzen das topic aber nicht einen bestimmten Namen in dem array, sondern lassen einfach runterzählen. 😉

            a933b1df-2e2c-4eac-98f6-3838033521a4-image.png

            Das sollte dann aber auch tun. 😉

            Ist also im Prinzip dein Flow mit dem switch als trigger nur das ich im topic nun die Anzahl der noch zu erwartenden Elemente durchreiche:

            [
               {
                   "id": "36239d1d9d361a2e",
                   "type": "change",
                   "z": "7e6af0015415146d",
                   "name": "create Array",
                   "rules": [
                       {
                           "t": "set",
                           "p": "payload",
                           "pt": "msg",
                           "to": "[\t            {\t                \"unitId\": payload,\t                \"_address\": 0,\t                \"name\": \"Voltage\",\t                \"description\": \"Voltage\",\t                \"unit\": \"V\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 6,\t                \"name\": \"Current\",\t                \"description\": \"Current\",\t                \"unit\": \"A\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 12,\t                \"name\": \"ActivePower\",\t                \"description\": \"Active Power\",\t                \"unit\": \"W\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 18,\t                \"name\": \"ApparentPower\",\t                \"description\": \"ApparentPower\",\t                \"unit\": \"VA\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 24,\t                \"name\": \"ReactivePower\",\t                \"description\": \"ReactivePower\",\t                \"unit\": \"VAr\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 30,\t                \"name\": \"PowerFactor\",\t                \"description\": \"PowerFactor\",\t                \"unit\": \"\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 70,\t                \"name\": \"Frequency\",\t                \"description\": \"Frequency\",\t                \"unit\": \"Hz\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 72,\t                \"name\": \"ActiveEnergy\",\t                \"description\": \"Active Energy\",\t                \"unit\": \"kWh\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 74,\t                \"name\": \"ExportActiveEnergy\",\t                \"description\": \"ExportActiveEnergy\",\t                \"unit\": \"kWh\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 74,\t                \"name\": \"TotalSystemPowerDemand\",\t                \"description\": \"TotalSystemPowerDemand\",\t                \"unit\": \"W\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 76,\t                \"name\": \"ImportReactiveEnergy\",\t                \"description\": \"ImportReactiveEnergy\",\t                \"unit\": \"kvarh\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 76,\t                \"name\": \"MaxTotalSystemPowerDemand\",\t                \"description\": \"MaxTotalSystemPowerDemand\",\t                \"unit\": \"W\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 78,\t                \"name\": \"ExportReactiveEnergy\",\t                \"description\": \"ExportReactiveEnergy\",\t                \"unit\": \"kvarh\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 88,\t                \"name\": \"ImportSystemPowerDemand\",\t                \"description\": \"ImportSystemPowerDemand\",\t                \"unit\": \"W\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 90,\t                \"name\": \"MaxImportSystemPowerDemand\",\t                \"description\": \"MaxImportSystemPowerDemand\",\t                \"unit\": \"W\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 92,\t                \"name\": \"ExportSystemPowerDemand\",\t                \"description\": \"ExportSystemPowerDemand\",\t                \"unit\": \"W\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 94,\t                \"name\": \"MaxExportSystemPowerDemand\",\t                \"description\": \"MaxExportSystemPowerDemand\",\t                \"unit\": \"W\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 258,\t                \"name\": \"CurrentDemand\",\t                \"description\": \"CurrentDemand\",\t                \"unit\": \"A\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 264,\t                \"name\": \"MaxCurrentDemand\",\t                \"description\": \"MaxCurrentDemand\",\t                \"unit\": \"A\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 342,\t                \"name\": \"TotalActiveEnergy\",\t                \"description\": \"TotalActiveEnergy\",\t                \"unit\": \"kWh\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            },\t            {\t                \"unitId\": payload,\t                \"_address\": 344,\t                \"name\": \"TotalReactiveEnergy\",\t                \"description\": \"TotalReactiveEnergy\",\t                \"unit\": \"kvarh\",\t                \"type\": \"floatbe\",\t                \"len\": 2,\t                \"factor\": 1,\t                \"offset\": 0,\t                \"formula\": \"\",\t                \"role\": \"level\",\t                \"room\": \"\",\t                \"cw\": false,\t                \"isScale\": false\t            }\t]",
                           "tot": "jsonata"
                       }
                   ],
                   "action": "",
                   "property": "",
                   "from": "",
                   "to": "",
                   "reg": false,
                   "x": 730,
                   "y": 860,
                   "wires": [
                       [
                           "833e22472f593063"
                       ]
                   ]
               },
               {
                   "id": "8b8fb28987277d75",
                   "type": "function",
                   "z": "7e6af0015415146d",
                   "name": "Trigger IDs",
                   "func": "if (msg.payload) {\n    context.set(\"data\",msg.payload);\n    context.set(\"pointer\",0)\n}\nvar array = context.get(\"data\");\nvar pointer = context.get(\"pointer\");\npointer ++;\n\nif ( pointer <= array.length)\n{\n    msg.payload = array[pointer - 1];\n    context.set(\"pointer\",pointer);\n    return msg;\n}\n\n",
                   "outputs": 1,
                   "noerr": 0,
                   "initialize": "",
                   "finalize": "",
                   "libs": [],
                   "x": 550,
                   "y": 860,
                   "wires": [
                       [
                           "36239d1d9d361a2e"
                       ]
                   ]
               },
               {
                   "id": "6521f44463e25c3c",
                   "type": "inject",
                   "z": "7e6af0015415146d",
                   "name": "Mehrere IDs",
                   "props": [
                       {
                           "p": "payload"
                       }
                   ],
                   "repeat": "",
                   "crontab": "",
                   "once": false,
                   "onceDelay": 0.1,
                   "topic": "",
                   "payload": "[10,11,12]",
                   "payloadType": "json",
                   "x": 230,
                   "y": 860,
                   "wires": [
                       [
                           "8b8fb28987277d75"
                       ]
                   ]
               },
               {
                   "id": "557989f42ddad473",
                   "type": "change",
                   "z": "7e6af0015415146d",
                   "name": "Read Modbus",
                   "rules": [
                       {
                           "t": "set",
                           "p": "topic",
                           "pt": "msg",
                           "to": "parts.count - parts.index - 1",
                           "tot": "jsonata"
                       },
                       {
                           "t": "set",
                           "p": "payload",
                           "pt": "msg",
                           "to": "{\t   \"fc\": 4,\t   \"unitid\": payload.unitId,\t   \"address\": payload._address,\t   \"quantity\": 2,\t   \"value\": 2\t}",
                           "tot": "jsonata"
                       }
                   ],
                   "action": "",
                   "property": "",
                   "from": "",
                   "to": "",
                   "reg": false,
                   "x": 1080,
                   "y": 860,
                   "wires": [
                       [
                           "0f4f661c760aa72b"
                       ]
                   ]
               },
               {
                   "id": "833e22472f593063",
                   "type": "split",
                   "z": "7e6af0015415146d",
                   "name": "split Array",
                   "splt": "\\n",
                   "spltType": "str",
                   "arraySplt": 1,
                   "arraySpltType": "len",
                   "stream": false,
                   "addname": "",
                   "x": 900,
                   "y": 860,
                   "wires": [
                       [
                           "557989f42ddad473"
                       ]
                   ]
               },
               {
                   "id": "0f4f661c760aa72b",
                   "type": "function",
                   "z": "7e6af0015415146d",
                   "name": "Simulate Modbus getter",
                   "func": "var msg2 = {\n    topic : msg.topic,\n    queueLengthByUnitId : {\n        unitID: msg.payload.unitid,\n        queueLength: msg.parts.index\n    }\n}\n\n\nvar msg1 = {\n    payload : {\n        data : [0,0],\n        buffer: Buffer.alloc(3)\n    },\n    modbusRequest : {\n        address : 99,\n        quantity : 2\n    }\n}\n\n\nreturn [msg1,msg2];",
                   "outputs": 2,
                   "noerr": 0,
                   "initialize": "",
                   "finalize": "",
                   "libs": [],
                   "x": 1310,
                   "y": 860,
                   "wires": [
                       [
                           "5e5a202488c31ae0"
                       ],
                       [
                           "3a68bda0a135f481"
                       ]
                   ]
               },
               {
                   "id": "5e5a202488c31ae0",
                   "type": "change",
                   "z": "7e6af0015415146d",
                   "name": "WriteModbus",
                   "rules": [
                       {
                           "t": "set",
                           "p": "payload",
                           "pt": "msg",
                           "to": "{\t    \"value\": payload,\t    \"fc\": 6,\t    \"unitid\" : 1, /* unitId */\t    \"address\": modbusRequest.address,\t    \"quantity\": modbusRequest.quantity\t}",
                           "tot": "jsonata"
                       }
                   ],
                   "action": "",
                   "property": "",
                   "from": "",
                   "to": "",
                   "reg": false,
                   "x": 1530,
                   "y": 840,
                   "wires": [
                       []
                   ]
               },
               {
                   "id": "112befc65439e8b7",
                   "type": "comment",
                   "z": "7e6af0015415146d",
                   "name": "Getriggert by Getter Node",
                   "info": "",
                   "x": 230,
                   "y": 800,
                   "wires": []
               },
               {
                   "id": "4a433464d06dc6d8",
                   "type": "change",
                   "z": "7e6af0015415146d",
                   "name": "Trigger next ID",
                   "rules": [
                       {
                           "t": "set",
                           "p": "trigger",
                           "pt": "msg",
                           "to": "true",
                           "tot": "bool"
                       },
                       {
                           "t": "delete",
                           "p": "payload",
                           "pt": "msg"
                       }
                   ],
                   "action": "",
                   "property": "",
                   "from": "",
                   "to": "",
                   "reg": false,
                   "x": 780,
                   "y": 920,
                   "wires": [
                       [
                           "8b8fb28987277d75"
                       ]
                   ]
               },
               {
                   "id": "315c37ef4aceb5d4",
                   "type": "debug",
                   "z": "7e6af0015415146d",
                   "name": "next ID wenn topic 0 (array zu ende)",
                   "active": true,
                   "tosidebar": true,
                   "console": false,
                   "tostatus": false,
                   "complete": "true",
                   "targetType": "full",
                   "statusVal": "",
                   "statusType": "auto",
                   "x": 1330,
                   "y": 980,
                   "wires": []
               },
               {
                   "id": "3a68bda0a135f481",
                   "type": "switch",
                   "z": "7e6af0015415146d",
                   "name": "",
                   "property": "topic",
                   "propertyType": "msg",
                   "rules": [
                       {
                           "t": "eq",
                           "v": "0",
                           "vt": "num"
                       }
                   ],
                   "checkall": "true",
                   "repair": false,
                   "outputs": 1,
                   "x": 1050,
                   "y": 980,
                   "wires": [
                       [
                           "4a433464d06dc6d8",
                           "315c37ef4aceb5d4"
                       ]
                   ]
               }
            ]
            

            Hier konntest Du ja auch nach dem topic filtern: https://forum.iobroker.net/post/947167 - also sollte es jetzt auch gehen.

            Wie gesagt Deine Lösung https://forum.iobroker.net/post/947177 funktioniert ja auch - aber mich würde halt stören, dass ich als Marker für das array Ende einen festen Namen im Array verwenden muss. 😉

            M 1 Reply Last reply Reply Quote 0
            • M
              Malaus @mickym last edited by

              @mickym ich musste die zahlen um eins erhöhen, weil der die null nicht wollte aber jetzt funktioniert es.
              Die letzte Zahl ist also die 1.

              Ich habe den Trigger ID´s nochmal angepasst, damit am Ende es automatisch wieder von vorne anfängt.
              Ansonsten funktioniert es jetzt.
              Danke!

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

                @malaus Ich habs zwar nicht verstanden, warum die 0 nicht funktioniert - aber wenn es jetzt funktioniert bin ich erst mal raus. Ich denke Du hast das Prinzip ja verstanden. Vielleicht setzt die GETTER Node ein eigenes topic wenn keines gesetzt war und interpretiert deshalb die 0 als falsch. Das kann natürlich sein und Du hast Dir ja dann geholfen. Wie gesagt, ich habe halt keine getter Nodes und tapse deshalb bissi im Dunkeln.

                M 1 Reply Last reply Reply Quote 0
                • M
                  Malaus @mickym last edited by

                  @mickym mir ist aufgefallen, wenn das ganze mal z.B. durch einen Neustart oä gestoppt wird, nicht von alleine weiter macht. Gibt es bei NodeRed sowas, dass bestimmte Sachen gestartet werden, wenn die Instanz startet?
                  Ebenfalls habe ich das Gefühl, dass das ganze durch Backitup unterbrochen wird und danach nicht wieder anläuft.

                  Oder ist sinnvoller eine Art Überwachung, wenn nach x Minuten keine neue Variable eingelesen wird, mache Neustart.

                  Hast du Erfahrung mit sowas? Bzw. hattest du so einen ähnlichen Fall schon mal?

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

                    @malaus
                    Also einfach Deine Inject Node aufmachen - mehrere IDs.

                    359ed340-5939-4547-a2aa-cfa9639d0ce7-image.png

                    Anhaken, dass einmal nach x Sekunden getriggert wird. Dieses X Sekunden beziehen sich auf den Start von Node-Red oder in dem Fall auf die Adapterinstanz.

                    Anasonsten kann natürlich alles andere auch triggern. Aber von irgendwas muss ein Flow ja angestossen werden, Hardware, Zeit,manuell oder eben einmal nach dem Start.

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

                      @malaus sagte in Node-Red Modbus mehrere Slave ID´s abfragen:

                      Ebenfalls habe ich das Gefühl, dass das ganze durch Backitup unterbrochen wird und danach nicht wieder anläuft.

                      Kann ich mir höchstens vorstellen wenn Dein Hardware durch das Backup überfordert wird und zuviel CPU verschlingt. Dann bleiben halt für die anderen Adapter nicht mehr soviel über. Ich bin ja auch grundsätzlich kein Freund - von solchen Pollmechanismen - also zyklisch die Hardware abzufragen - aber das ist eine andere Geschichte. Ich finde es besser immer die Hardware triggern zu lassen.

                      Das sind aber prinzipielle Fragen - wie man solche Flows aufbaut. Ich hätte wesentlich eher die modbus reads genommen und die Hardware triggern lassen - also zyklisch abzufragen. In der Beschreibung zu der Node sieht man auch http trigger - die also auch nicht zyklisch, sondern von der Hardware initiiert das Auslesen der Getter-Nodes initiiieren.

                      Lange Rede kurzer Sinn - Du musst halt schauen, ob Deine Hardware durch das Backup nicht in die Knie gezwingen wird.

                      M 1 Reply Last reply Reply Quote 1
                      • M
                        Malaus @mickym last edited by

                        @mickym danke für die schnelle Rückmeldung.

                        Ich habe das mal so wie oben umgesetzt.
                        Zusätzlich habe ich das hier mal von 128 auf 512 erhöht:

                        b3984407-4294-448d-bfa0-7f4c092ceda7-image.png

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

                          @malaus sagte in Node-Red Modbus mehrere Slave ID´s abfragen:

                          @mickym danke für die schnelle Rückmeldung.

                          Ich habe das mal so wie oben umgesetzt.
                          Zusätzlich habe ich das hier mal von 128 auf 512 erhöht:

                          b3984407-4294-448d-bfa0-7f4c092ceda7-image.png

                          Ja das macht einiges aus - wenn man NodeRed zuwenig Speicher zur Verfügung stellt. Ich hab 2 MB genommen - das heißt ja nicht, dass die sofort aufgebraucht werden.

                          1 Reply Last reply Reply Quote 0
                          • G
                            Garf @Malaus last edited by

                            @malaus sagte in Node-Red Modbus mehrere Slave ID´s abfragen:

                            Wieso nicht das Flex Getter benutzen?

                            Mein Raspi4 kommuniziert über die Modbusschnittstelle mit einem SAIA Regler. Also nur eine Adresse, aber mehrere Modbusregister. Anfangs hatte ich mehrere function Nodes im Einsatz. Aber es gibt hier User die dieses Node geradezu ablehnen. Ich komme aber nicht mehr drauf wer daß nur sein könnte.😊
                            Leider hat er auch noch Recht, es geht auch anders.

                            0be670a1-bb02-4dbd-b3c4-a6106f931d98-grafik.png

                            Und natürlich kannst Du auch das FlexGetter verwenden. Ich wollte nur die Gedanken mal in eine andere Richtung lenken.

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            956
                            Online

                            31.7k
                            Users

                            79.7k
                            Topics

                            1.3m
                            Posts

                            javascript node-red
                            4
                            36
                            2839
                            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