Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Modbus - Erste Schritte

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.8k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

Modbus - Erste Schritte

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
159 Beiträge 17 Kommentatoren 38.9k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • VumerV Offline
    VumerV Offline
    Vumer
    schrieb am zuletzt editiert von
    #147

    Hallo Jensen,

    eigentlich habe ich auf deine Fragen noch ( hoffe ich ;) ) keine Antwort. Hab einfach dem qModMaster genohmen und die Adressen durchgescannt.

    Die Uhr, links oben auf dem Schaltplan, kann ich ab Adresse 53 sehen und ändern was ich auch im vis machen möchte. Im Adapter habe ich rausgefunden das dass die ab Adresse 40054 unter Holding Registers sind, nur leider zeigt mir der Adapter die Werte in Decimal an aber ich brauche sie in Hex. Wie ich die Adressen ausrechne habe ich noch keine Ahnung, beim S7 Protokol ist das einfacher :D , alles was ich an Info habe ist das

    Schöne Grüße
    2071_modbus_hilfe.jpg

    1 Antwort Letzte Antwort
    0
    • R Offline
      R Offline
      RS_Tobi
      schrieb am zuletzt editiert von
      #148

      Hi.

      Ich kann zur aktuellen Diskussion nichts beitragen, habe aber eine Frage.

      Mein AußentemperaturSensor den ich abfrage zeigt derzeit 32654 Grad Celsius.

      [emoji3]

      Kann es sein dass der Wert nur positiv angezeigt? Auf welchen Typ müsste ich umstellen um auch negative Werte im iobroker geliefert zu bekommen?

      Danke

      Grüße Tobi

      Gesendet von meinem D5803 mit Tapatalk

      1 Antwort Letzte Antwort
      0
      • Z Offline
        Z Offline
        Zippolighter
        schrieb am zuletzt editiert von
        #149

        @andre:

        @Bluefox:

        Ich wurde Uint16 nehmen.

        z.B. deine Uint16 Variable heißt modbus.0.MyDouble

        var id = 'modbus.0.MyDouble';
        createState(id + '.One');
        createState(id + '.Two');
        on(id, function (obj) {
             setState(id + '.One', (obj.state.val >> 16) & 0xFF, true);
             setState(id + '.One', obj.state.val & 0xFF, true);
        });
        
        ```` `  
        

        Hallo Bluefox,

        vielen Dank für deinen Lösungsansatz. Habe damit ein wenig rum probiert und ihn nach meinen Bedürfnissen angepasst. :) Läuft soweit und die Werte scheinen schlüssig.

        In Anlehnung an dein (ungetestetes) Beispiel musste ich das Script so anpassen/ korrigieren:

        var id = 'modbus.0.MyDouble';
        createState(id + '.One');
        createState(id + '.Two');
        on(id, function (obj) {
             setState(id + '.One', (obj.state.val >> 8) & 0xFF, true);
             setState(id + '.Two', obj.state.val & 0xFF, true);
        });
        

        Letztendlich läuft es bei mir (mit meinen Datenpunkten) so:

        var id = 'modbus.0.holdingRegisters.40082_Autarkie_Eigenverbrauch';
        createState('e3dc.modbus.Autarkie');
        createState('e3dc.modbus.Eigenverbrauch');
        on(id, function (obj) {
             setState('e3dc.modbus.Autarkie', (obj.state.val >> 8) & 0xFF, true);
             setState('e3dc.modbus.Eigenverbrauch', obj.state.val & 0xFF, true);
        });
        

        Vielleicht kann es ja noch jemand benötigen…

        DANKE!

        MfG,

        André `

        Sorry das ich nachfrage. Bei mir stimmt der Eigenverbrauch nicht. Habe Dein Script verwendet.

        Allerdings zeigt mir die e3dc view z.B. 55% an, während der Eigenverbrauch vom Script 19% anzeigt.

        Irgend jemand eine Idee wie ich das genauer überprüfen kann

        Danke Gruß Zippolighter

        1 Antwort Letzte Antwort
        0
        • andreA Offline
          andreA Offline
          andre
          Developer
          schrieb am zuletzt editiert von
          #150

          @Zippolighter:

          Sorry das ich nachfrage. Bei mir stimmt der Eigenverbrauch nicht. Habe Dein Script verwendet.

          Allerdings zeigt mir die e3dc view z.B. 55% an, während der Eigenverbrauch vom Script 19% anzeigt.

          Irgend jemand eine Idee wie ich das genauer überprüfen kann

          Danke Gruß Zippolighter `

          Ganz sicher dass das so ist? Liest du auf der Website ab? Die Website ist nicht aktuell… Oder hast du die Differenz zwischen ioBroker und dem Display des E3DC-Geräts? Bei mir stimmt es überein...

          MfG,

          André

          Bitte keine Support-Fragen per PN! Nutzt die öffentliche Kanäle damit auch andere von den Antworten profitieren können!

          1 Antwort Letzte Antwort
          0
          • Z Offline
            Z Offline
            Zippolighter
            schrieb am zuletzt editiert von
            #151

            Hi Andre, jepp die Webseite ist immer 15 Minuten gemittelt.

            Aber wenn ich als Modbus über eine Stunde immer zwischen 18 und 24% habe und die Webseite zeigt mir über diesen Zeitraum 50 -55% an, kann da was nicht stimmen.

            Werde die Werte mir auch noch mal am Gerät anschauen und vergleichen.

            Auf jeden Fall

            Danke für die Antwort

            Gruß Zippolighter

            1 Antwort Letzte Antwort
            0
            • K Offline
              K Offline
              Kunibert
              schrieb am zuletzt editiert von
              #152

              Hallo zusammen,

              ich habe mein ioBroker umgezogen (vom Raspberry auf einen Rock64). Alles hat auch wunderbar funktioniert inkl. der Migration der MySQL-Datenbank. Nur mein Modbus-Adapter macht Ärger, dabei ist es einer meiner wichtigsten (> Steuerung Heizung & Warmwasser). Der Adapter steht nur auf rot bzw. er zeigt in der Admin-Oberfläche (V3.3.3) auch kein Symbol an und wenn ich auf Konfigurieren klicke kommt die Fehlermeldung "File index.html not found".

              Ich habe sehr viele Einstellungen gemacht, die hoffentlich alle aus dem Backup wieder eingestellt wurden. Weil ich sie nicht verlieren möchte habe ich den Adapter bisher nicht komplett gelöscht und noch einmal neu installiert - oder bleiben die Einstellungen in diesem Fall sogar erhalten?

              Im Log tauchen die folgenden Einträge auf:

              host.rock64	2018-03-16 23:17:03.360	info	iobroker node-pre-gyp ERR! node-pre-gyp -v v0.6.32node-pre-gyp ERR!
              host.rock64	2018-03-16 23:17:03.359	info	iobroker ERR! cwd /opt/iobroker/node_modules/jsmodbus/node_modules/serialportnode-pre-gyp ERR! node -v v6.13.1
              host.rock64	2018-03-16 23:17:03.359	info	iobroker Linux 4.4.77-rockchip-ayufan-136node-pre-gyp ERR! command "/usr/bin/node" "/opt/iobroker/node_modules/jsmodbus/node_modules/serialport/node_modules/.bin/node-pre-gyp" "install" "--fallback-t
              host.rock64	2018-03-16 23:17:03.358	info	iobroker node-pre-gyp ERR! System
              host.rock64	2018-03-16 23:17:03.358	info	iobroker at emitTwo (events.js:106:13)node-pre-gyp ERR! stack at ChildProcess.emit (events.js:191:7) node-pre-gyp ERR! stack at maybeClose (internal/child_process.js:920:16) node-pre-gyp
              host.rock64	2018-03-16 23:17:03.357	info	iobroker ERR! stack
              host.rock64	2018-03-16 23:17:03.357	info	iobroker node-pre-gyp ERR! stack at ChildProcess. (/opt/iobroker/node_modules/jsmodbus/node_modules/serialport/node_modules/node-pre-gyp/lib/util/compile.js:83:29)node-pre-gyp
              host.rock64	2018-03-16 23:17:03.356	info	iobroker ERR! stack Error: Failed to execute '/usr/bin/node /usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js configure --fallback-to-build --module=/opt/iobroker/node_modules/jsmodbus/
              host.rock64	2018-03-16 23:17:03.355	info	iobroker node-pre-gyp
              host.rock64	2018-03-16 23:17:03.325	info	iobroker node-pre-gyp ERR! build error
              host.rock64	2018-03-16 23:17:03.322	info	iobroker ERR! stack at ChildProcess.onCpExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:336:16)gyp ERR! stack at emitTwo (events.js:106:13) gyp ERR! stack at ChildP
              host.rock64	2018-03-16 23:17:03.321	info	iobroker stack Error: `gyp` failed with exit code: 1gyp
              host.rock64	2018-03-16 23:17:03.298	info	iobroker gyp ERR!
              host.rock64	2018-03-16 23:17:03.289	info	iobroker ERR! configure error
              host.rock64	2018-03-16 23:17:03.287	info	iobroker
              host.rock64	2018-03-16 23:17:03.273	info	iobroker gyp
              host.rock64	2018-03-16 23:17:03.263	info	iobroker import gyp File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/__init__.py", line 8, in import gyp.input File "/usr/lib/node_modules/npm/node_modules/node-
              host.rock64	2018-03-16 23:17:03.245	info	iobroker Traceback (most recent call last): File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py", line 13, in
              host.rock64	2018-03-16 23:16:59.865	info	iobroker Pre-built binaries not found for serialport@4.0.7 and node@6.13.1 (node-v48 ABI) (falling back to source compile with node-gyp)
              host.rock64	2018-03-16 23:16:59.864	info	iobroker ERR!
              host.rock64	2018-03-16 23:16:59.864	info	iobroker node-pre-gyp
              host.rock64	2018-03-16 23:16:59.863	info	iobroker
              host.rock64	2018-03-16 23:16:59.863	info	iobroker Tried to download(404): https://github.com/EmergingTechnologyAdvisors/node-serialport/releases/download/4.0.7/serialport-v4.0.7-node-v48-linux-arm64.tar.gz
              host.rock64	2018-03-16 23:16:59.862	info	iobroker ERR!
              host.rock64	2018-03-16 23:16:59.862	info	iobroker
              host.rock64	2018-03-16 23:16:59.858	info	iobroker node-pre-gyp
              host.rock64	2018-03-16 23:16:55.163	info	iobroker node-pre-gyp ERR! node -v v6.13.1node-pre-gyp ERR! node-pre-gyp -v v0.6.32 node-pre-gyp ERR! not ok
              host.rock64	2018-03-16 23:16:55.153	info	iobroker "/usr/bin/node" "/opt/iobroker/node_modules/iobroker.discovery/node_modules/serialport/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"node-pre-gyp ERR! cwd /opt/iobroker/node
              host.rock64	2018-03-16 23:16:55.153	info	iobroker ERR! System Linux 4.4.77-rockchip-ayufan-136node-pre-gyp ERR! command
              host.rock64	2018-03-16 23:16:55.152	info	iobroker node-pre-gyp ERR! stack at ChildProcess.emit (events.js:191:7)node-pre-gyp ERR! stack at maybeClose (internal/child_process.js:920:16) node-pre-gyp ERR! stack at Process.ChildProc
              host.rock64	2018-03-16 23:16:55.141	info	iobroker at emitTwo (events.js:106:13)
              host.rock64	2018-03-16 23:16:55.140	info	iobroker ERR! stack at ChildProcess. (/opt/iobroker/node_modules/iobroker.discovery/node_modules/serialport/node_modules/node-pre-gyp/lib/util/compile.js:83:29)node-pre-gyp ERR! stack
              host.rock64	2018-03-16 23:16:55.139	info	iobroker node-pre-gyp ERR! stack Error: Failed to execute '/usr/bin/node /usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js configure --fallback-to-build --module=/opt/iobroker/node_modul
              host.rock64	2018-03-16 23:16:55.123	info	iobroker build error
              host.rock64	2018-03-16 23:16:55.122	info	iobroker node-pre-gyp ERR!
              host.rock64	2018-03-16 23:16:55.111	info	iobroker gyp ERR! configure error gyp ERR! stack Error: `gyp` failed with exit code: 1 gyp ERR! stack at ChildProcess.onCpExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:336
              host.rock64	2018-03-16 23:16:55.066	info	iobroker Traceback (most recent call last): File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py", line 13, in import gyp File "/usr/lib/node_modules/npm/node_modules/
              iobroker	2018-03-16 22:16:51.161	info	node-pre-gyp ERR! Tried to download(404): https://github.com/EmergingTechnologyAdvisors/node-serialport/releases/download/4.0.7/serialport-v4.0.7-node-v48-linux-arm64.tar.gz node-pre-gyp ERR! Pre-bui
              

              Liegt es nur an einem fehlenden serialport-Paket? das habe ich per npm serialport bzw. nach dieser Anleitung schon installiert:

              http://www.iobroker.net/docu/?page_id=5510&lang=de

              Es bleibt aber bei den Fehlermeldungen. Hat jemand eine Idee, was ich noch tun könnte?

              Liebe Grüße

              David

              1 Antwort Letzte Antwort
              0
              • wendy2702W Offline
                wendy2702W Offline
                wendy2702
                schrieb am zuletzt editiert von
                #153

                Moin,

                Welche node, npm und Serialport Versione hast du auf dem neuen System?

                Das hier wird ja scheinbar erwartet aber nicht gefunden:

                 Pre-built binaries not found for serialport@4.0.7 and node@6.13.1 (node-v48 ABI) (falling back to source compile with node-gyp)
                

                Entweder du bringst die auf die richtige Version oder löscht den Adapter und installierst ihn neu damit er mit deinen aktuellen Versionen installiert wird oder versuchst ein

                reinstall.sh
                

                Only my 2 cents

                Bitte keine Fragen per PN, die gehören ins Forum!

                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                1 Antwort Letzte Antwort
                0
                • K Offline
                  K Offline
                  Kunibert
                  schrieb am zuletzt editiert von
                  #154

                  Hi,

                  es ist Node V6.13.1 und node-gyp v3.6.0 installiert. Das Problem ist wohl das serialport einfach nicht installiert werden kann. Bekomme ich diesen Fehler bei apt-get install serialport:

                  root@rock64:~# npm install serialport
                  
                  > serialport@6.1.1 install /root/node_modules/serialport
                  > prebuild-install || node-gyp rebuild
                  
                  prebuild-install info begin Prebuild-install version 2.5.1
                  prebuild-install info looking for local prebuild @ prebuilds/serialport-v6.1.1-node-v48-linux-arm64.tar.gz
                  prebuild-install info looking for cached prebuild @ /root/.npm/_prebuilds/https-github.com-node-serialport-node-serialport-releases-download-v6.1.1-serialport-v6.1.1-node-v48-linux-arm64.tar.gz
                  prebuild-install http request GET https://github.com/node-serialport/node-serialport/releases/download/v6.1.1/serialport-v6.1.1-node-v48-linux-arm64.tar.gz
                  prebuild-install http 404 https://github.com/node-serialport/node-serialport/releases/download/v6.1.1/serialport-v6.1.1-node-v48-linux-arm64.tar.gz
                  prebuild-install WARN install No prebuilt binaries found (target=6.13.1 runtime=node arch=arm64 platform=linux)
                  Traceback (most recent call last):
                    File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py", line 13, in <module>
                      import gyp
                    File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/__init__.py", line 8, in <module>
                      import gyp.input
                    File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/input.py", line 5, in <module>
                      from compiler.ast import Const
                  ImportError: No module named compiler.ast
                  gyp ERR! configure error
                  gyp ERR! stack Error: `gyp` failed with exit code: 1
                  gyp ERR! stack     at ChildProcess.onCpExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:336:16)
                  gyp ERR! stack     at emitTwo (events.js:106:13)
                  gyp ERR! stack     at ChildProcess.emit (events.js:191:7)
                  gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:219:12)
                  gyp ERR! System Linux 4.4.77-rockchip-ayufan-136
                  gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
                  gyp ERR! cwd /root/node_modules/serialport
                  gyp ERR! node -v v6.13.1
                  gyp ERR! node-gyp -v v3.6.0
                  gyp ERR! not ok
                  npm WARN enoent ENOENT: no such file or directory, open '/root/package.json'
                  npm WARN root No description
                  npm WARN root No repository field.
                  npm WARN root No README data
                  npm WARN root No license field.
                  npm ERR! code ELIFECYCLE
                  npm ERR! errno 1
                  npm ERR! serialport@6.1.1 install: `prebuild-install || node-gyp rebuild`
                  npm ERR! Exit status 1
                  npm ERR!
                  npm ERR! Failed at the serialport@6.1.1 install script.
                  npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
                  
                  npm ERR! A complete log of this run can be found in:
                  npm ERR!     /root/.npm/_logs/2018-03-17T10_38_02_882Z-debug.log</module></module></module>
                  

                  Ich bin kein Linux-Crack aber so wie ich es interpretiere findet er nicht die passenden Sourcen, oder? Wie kann ich das ändern, habt ihr eine Idee?

                  1 Antwort Letzte Antwort
                  0
                  • K Offline
                    K Offline
                    Kunibert
                    schrieb am zuletzt editiert von
                    #155

                    Habe mal einen Issue bei Github aufgemacht, ich weiß hier nicht mehr weiter :shock:

                    https://github.com/node-serialport/node … ssues/1522

                    1 Antwort Letzte Antwort
                    0
                    • wendy2702W Offline
                      wendy2702W Offline
                      wendy2702
                      schrieb am zuletzt editiert von
                      #156

                      Kannst du es mal damit versuchen:

                      sudo npm install serialport --unsafe-perm --build-from-source
                      

                      Bitte keine Fragen per PN, die gehören ins Forum!

                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                      1 Antwort Letzte Antwort
                      0
                      • K Offline
                        K Offline
                        Kunibert
                        schrieb am zuletzt editiert von
                        #157

                        @wendy2702:

                        Kannst du es mal damit versuchen:

                        sudo npm install serialport --unsafe-perm --build-from-source
                        ```` `  
                        

                        Hatte ich alles probiert, es scheint am Ende an der Python-Dev-Umgebung gelegen zu haben. Python war zwar mit V.2.7 installiert aber warum auch immer klappte es nicht.

                        Habe dann````
                        apt-get install python-dev

                        
                        Danke für deine Unterstützung!
                        
                        Einziges Problem ist jetzt noch - aber das hat ja nix mit Modbus zu tun - das in der Admin-oberfläche unter "Adapter" "Keine Daten" angezeigt wird. Die Instanzen laufen aber alle und wenn ich auf der Konsole iobroker update eingebe sehe ich alle installierten Versionen. Das werde ich jetzt auch noch hinbekommen :-)
                        1 Antwort Letzte Antwort
                        0
                        • wendy2702W Offline
                          wendy2702W Offline
                          wendy2702
                          schrieb am zuletzt editiert von
                          #158

                          Versuch mal````
                          STRG + F5

                          
                          Cache löschen hast du schon versucht nehme ich an.

                          Bitte keine Fragen per PN, die gehören ins Forum!

                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                          1 Antwort Letzte Antwort
                          -1
                          • K Offline
                            K Offline
                            Kunibert
                            schrieb am zuletzt editiert von
                            #159

                            @wendy2702:

                            Versuch mal````
                            STRG + F5

                            
                            Cache löschen hast du schon versucht nehme ich an. `  
                            

                            Läuft jetzt, danke! :mrgreen:

                            1 Antwort Letzte Antwort
                            0
                            Antworten
                            • In einem neuen Thema antworten
                            Anmelden zum Antworten
                            • Älteste zuerst
                            • Neuste zuerst
                            • Meiste Stimmen


                            Support us

                            ioBroker
                            Community Adapters
                            Donate
                            FAQ Cloud / IOT
                            HowTo: Node.js-Update
                            HowTo: Backup/Restore
                            Downloads
                            BLOG

                            884

                            Online

                            32.4k

                            Benutzer

                            81.5k

                            Themen

                            1.3m

                            Beiträge
                            Community
                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                            ioBroker Community 2014-2025
                            logo
                            • Anmelden

                            • Du hast noch kein Konto? Registrieren

                            • Anmelden oder registrieren, um zu suchen
                            • Erster Beitrag
                              Letzter Beitrag
                            0
                            • Home
                            • Aktuell
                            • Tags
                            • Ungelesen 0
                            • Kategorien
                            • Unreplied
                            • Beliebt
                            • GitHub
                            • Docu
                            • Hilfe