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

  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Modbus adapter

NEWS

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

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

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

Modbus adapter

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
modbus adaptermodbus
978 Beiträge 140 Kommentatoren 382.2k Aufrufe 64 Watching
  • Ä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.
  • L Offline
    L Offline
    lstorm
    schrieb am zuletzt editiert von
    #532

    Hallo,

    ich bin Umsteiger von FHEM und hatte dort schon einige Jahre meinen Stromzähler Eastron SDM630 per Modbus angeschlossen und ausgelesen.
    Nun habe ich diesen auch auf iobroker umgezogen. Beim Zähler hang ein Raspberry PI der als iobroker Slave läuft. An dem Raspberry PI steckt der Modbus USB Serial Wandler (https://www.reichelt.de/raspberry-pi-usb-rs485-schnittstelle-ch340c-rpi-usb-rs485-p242783.html?PROVID=2788&gclid=Cj0KCQjw-Mr0BRDyARIsAKEFbecS4y94rfFFcUSRfe1_YIbp6PDk98SJYgdq9VMpRSjqpTYKJmhm52MaAosbEALw_wcB&&r=1).
    Diese Hardwarekombination lief schon mehrere Jahre unter fhem absolut stabil.

    Nun habe ich alles in iobroker eingerichtet und es hat auch auf anhieb funktioniert. Im Modbusadapter habe ich den USB Stick konfiguriert und das Eingangregister befüllt. Daten kommen an, soweit alles gut.

    Nun das Problem:
    Alle paar Minuten, manchmal auch nach einer Stunde geht der Modbus adapter auf "Gelb" und ich bekomme keine Daten mehr. Starte ich ihn neu läuft es wieder eine gewisse Zeit. Im Log habe ich bisher einmal die Meldung "Disconnect from Slave" gehabt, dies kommt aber auch nicht immer wenn der Adapter auf Gelb geht.

    Momentan habe ich echt keine Idee mehr was ich noch machen kann um die Verbindung stabil zum laufen zu bekommen.

    Ich bin für jeden Tip dankbar, vielleicht hatte ja schon einer von euch ein ähnliches Problem.

    Schon mal vielen Dank!

    Gruß Lars

    ChristianMC 1 Antwort Letzte Antwort
    0
    • L Offline
      L Offline
      lstorm
      schrieb am zuletzt editiert von
      #533

      Zum testen habe ich nun noch die Werte reduziert und habe nur 5 Werte im Eingangsregister eingetragen. Gefühlt bricht die Verbindung weniger ab, von stabil ist aber noch lange keine Rede.

      Nun hatte ich auch wieder ein Eintrag im Log:

      modbus.0	2020-04-12 12:49:49.443	info	(1902) Disconnected from slave
      modbus.0	2020-04-12 12:49:48.444	warn	(1902) Poll error count: 27 code: {"err":"timeout"}
      modbus.0	2020-04-12 12:49:48.443	error	(1902) Request timed out.
      modbus.0	2020-04-12 12:49:48.441	warn	(1902) Error: undefined
      modbus.0	2020-04-12 12:49:43.437	info	(1902) Connected to slave
      
      1 Antwort Letzte Antwort
      0
      • L Offline
        L Offline
        lstorm
        schrieb am zuletzt editiert von
        #534

        Hab nun bei Github gesehen, dass es eine Version 3.0.1 gibt, bei der wohl auch ein "Serial Timeout" Problem gefixt sein soll.

        3.0.1 (2020-01-23)
        (BlackBird77) Fixes for Serial Timeouts done
        (bluefox) Refactoring

        Also nun die 3.0.1 von Github installiert. Leider bekomme ich mit dieser Version überhaupt keine Verbindung. Modbus Adapter bleibt gelb.
        Im Log ist leider auch nichts brauchbares zu sehen:

        modbus.0	2020-04-12 14:54:00.144	info	(1268) List of port: [{"comName":"/dev/ttyAMA0"},{"manufacturer":"1a86","pnpId":"usb-1a86_USB2.0-Serial-if00-port0","vendorId":"1a86","productId":"7523","comName":"/dev/ttyUSB0"}]
        modbus.0	2020-04-12 14:52:49.600	info	(1268) List of port: [{"comName":"/dev/ttyAMA0"},{"manufacturer":"1a86","pnpId":"usb-1a86_USB2.0-Serial-if00-port0","vendorId":"1a86","productId":"7523","comName":"/dev/ttyUSB0"}]
        modbus.0	2020-04-12 14:49:28.214	info	(1268) starting. Version 3.0.1 in /opt/iobroker/node_modules/iobroker.modbus, node: v10.20.0
        
        1 Antwort Letzte Antwort
        0
        • wendy2702W Online
          wendy2702W Online
          wendy2702
          schrieb am zuletzt editiert von
          #535

          Loggen für die Instanz mal auf "Debug" stellen.

          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
          • L Offline
            L Offline
            lstorm
            schrieb am zuletzt editiert von
            #536

            @wendy2702 :Danke für den Hinweis. Habe nun die Modbus Instanz auf Debug gestellt. Leider ist der Log auch nicht viel aussagekräftiger.

            Hier der Log von Version 3.0.0. Zuerst läuft die Kommunikation noch, dann kommt der Timeout.

            modbus.0	2020-04-13 11:19:58.842	debug	(819) connect to serial /dev/ttyUSB0 with 9600
            modbus.0	2020-04-13 11:18:58.846	debug	(819) Cleaning up request fifo.
            modbus.0	2020-04-13 11:18:58.845	debug	(819) Clearing timeout of the current request.
            modbus.0	2020-04-13 11:18:58.839	info	(819) Disconnected from slave
            modbus.0	2020-04-13 11:18:57.838	warn	(819) Poll error count: 2 code: {"err":"timeout"}
            modbus.0	2020-04-13 11:18:57.837	error	(819) Request timed out.
            modbus.0	2020-04-13 11:18:57.835	warn	(819) Error: undefined
            modbus.0	2020-04-13 11:18:52.833	debug	(819) Poll inputRegs DevID(1) address 0 - 88 bytes
            modbus.0	2020-04-13 11:18:52.831	debug	(819) Poll device 1
            modbus.0	2020-04-13 11:18:52.828	info	(819) Connected to slave
            modbus.0	2020-04-13 11:18:52.819	debug	(819) connect to serial /dev/ttyUSB0 with 9600
            modbus.0	2020-04-13 11:17:52.824	debug	(819) Cleaning up request fifo.
            modbus.0	2020-04-13 11:17:52.823	debug	(819) Clearing timeout of the current request.
            modbus.0	2020-04-13 11:17:52.815	info	(819) Disconnected from slave
            modbus.0	2020-04-13 11:17:51.813	warn	(819) Poll error count: 1 code: {"err":"timeout"}
            modbus.0	2020-04-13 11:17:51.811	error	(819) Request timed out.
            modbus.0	2020-04-13 11:17:51.809	warn	(819) Error: undefined
            modbus.0	2020-04-13 11:17:46.805	debug	(819) Poll inputRegs DevID(1) address 0 - 88 bytes
            modbus.0	2020-04-13 11:17:46.804	debug	(819) Poll device 1
            modbus.0	2020-04-13 11:17:45.643	debug	(819) Poll inputRegs DevID(1) address 334 - 48 bytes
            modbus.0	2020-04-13 11:17:45.459	debug	(819) Poll inputRegs DevID(1) address 224 - 46 bytes
            modbus.0	2020-04-13 11:17:45.389	debug	(819) Poll inputRegs DevID(1) address 200 - 8 bytes
            modbus.0	2020-04-13 11:17:45.337	debug	(819) Poll inputRegs DevID(1) address 100 - 8 bytes
            modbus.0	2020-04-13 11:17:45.014	debug	(819) Poll inputRegs DevID(1) address 0 - 88 bytes
            modbus.0	2020-04-13 11:17:45.013	debug	(819) Poll device 1
            modbus.0	2020-04-13 11:17:43.852	debug	(819) Poll inputRegs DevID(1) address 334 - 48 bytes
            modbus.0	2020-04-13 11:17:43.678	debug	(819) Poll inputRegs DevID(1) address 224 - 46 bytes
            modbus.0	2020-04-13 11:17:43.606	debug	(819) Poll inputRegs DevID(1) address 200 - 8 bytes
            modbus.0	2020-04-13 11:17:43.553	debug	(819) Poll inputRegs DevID(1) address 100 - 8 bytes
            modbus.0	2020-04-13 11:17:43.233	debug	(819) Poll inputRegs DevID(1) address 0 - 88 bytes
            modbus.0	2020-04-13 11:17:43.231	debug	(819) Poll device 1
            

            Hier der Log mit Version 3.0.1 Modbus Adapter bleibt gelb:

            modbus.0	2020-04-13 12:01:57.100	info	(1126) starting. Version 3.0.1 in /opt/iobroker/node_modules/iobroker.modbus, node: v10.20.0
            modbus.0	2020-04-13 12:01:56.275	debug	(1126) statesDB connected
            modbus.0	2020-04-13 12:01:56.272	debug	(1126) States connected to redis: 192.168.0.117:9000
            modbus.0	2020-04-13 12:01:56.248	debug	(1126) States create System PubSub Client
            modbus.0	2020-04-13 12:01:56.236	debug	(1126) States create User PubSub Client
            modbus.0	2020-04-13 12:01:56.216	debug	(1126) Redis States: Use Redis connection: 192.168.0.117:9000
            modbus.0	2020-04-13 12:01:56.207	debug	(1126) objectDB connected
            modbus.0	2020-04-13 12:01:56.183	debug	(1126) Objects connected to redis: 192.168.0.117:9001
            modbus.0	2020-04-13 12:01:56.145	debug	(1126) Objects client initialize lua scripts
            modbus.0	2020-04-13 12:01:56.142	debug	(1126) Objects create User PubSub Client
            modbus.0	2020-04-13 12:01:56.138	debug	(1126) Objects create System PubSub Client
            modbus.0	2020-04-13 12:01:56.122	debug	(1126) Objects client ready ... initialize now
            modbus.0	2020-04-13 12:01:55.991	debug	(1126) Redis Objects: Use Redis connection: 192.168.0.117:9001
            host.iobroker2	2020-04-13 12:01:53.219	info	instance system.adapter.modbus.0 started with pid 1126
            host.iobroker2	2020-04-13 12:01:51.344	info	instance system.adapter.modbus.0 terminated with code 156 (156)
            host.iobroker2	2020-04-13 12:01:50.682	info	stopInstance system.adapter.modbus.0 send kill signal
            modbus.0	2020-04-13 12:01:50.654	info	(1111) Terminated (START_IMMEDIATELY_AFTER_STOP): Without reason
            modbus.0	2020-04-13 12:01:50.648	info	(1111) terminating
            modbus.0	2020-04-13 12:01:50.640	info	(1111) Got terminate signal TERMINATE_YOURSELF
            
            1 Antwort Letzte Antwort
            0
            • L lstorm

              Hallo,

              ich bin Umsteiger von FHEM und hatte dort schon einige Jahre meinen Stromzähler Eastron SDM630 per Modbus angeschlossen und ausgelesen.
              Nun habe ich diesen auch auf iobroker umgezogen. Beim Zähler hang ein Raspberry PI der als iobroker Slave läuft. An dem Raspberry PI steckt der Modbus USB Serial Wandler (https://www.reichelt.de/raspberry-pi-usb-rs485-schnittstelle-ch340c-rpi-usb-rs485-p242783.html?PROVID=2788&gclid=Cj0KCQjw-Mr0BRDyARIsAKEFbecS4y94rfFFcUSRfe1_YIbp6PDk98SJYgdq9VMpRSjqpTYKJmhm52MaAosbEALw_wcB&&r=1).
              Diese Hardwarekombination lief schon mehrere Jahre unter fhem absolut stabil.

              Nun habe ich alles in iobroker eingerichtet und es hat auch auf anhieb funktioniert. Im Modbusadapter habe ich den USB Stick konfiguriert und das Eingangregister befüllt. Daten kommen an, soweit alles gut.

              Nun das Problem:
              Alle paar Minuten, manchmal auch nach einer Stunde geht der Modbus adapter auf "Gelb" und ich bekomme keine Daten mehr. Starte ich ihn neu läuft es wieder eine gewisse Zeit. Im Log habe ich bisher einmal die Meldung "Disconnect from Slave" gehabt, dies kommt aber auch nicht immer wenn der Adapter auf Gelb geht.

              Momentan habe ich echt keine Idee mehr was ich noch machen kann um die Verbindung stabil zum laufen zu bekommen.

              Ich bin für jeden Tip dankbar, vielleicht hatte ja schon einer von euch ein ähnliches Problem.

              Schon mal vielen Dank!

              Gruß Lars

              ChristianMC Offline
              ChristianMC Offline
              ChristianM
              schrieb am zuletzt editiert von
              #537

              @lstorm Zeig doch mal deine Konfiguration, hab auch den SDM630 hier am laufen allerdings mit einem Modbus TCP Gateway. Sollte aber vom Prinzip her identisch sein.

              1 Antwort Letzte Antwort
              0
              • ChristianMC Offline
                ChristianMC Offline
                ChristianM
                schrieb am zuletzt editiert von
                #538

                Aber wo wir gerade bei Problemen sind. Gibt es bei dem Modbus irgendeine Adressen Beschränkung ? ab Holdingregister 8300 werden komische Register abgefragt.modbus problem.png

                1 Antwort Letzte Antwort
                0
                • wendy2702W Online
                  wendy2702W Online
                  wendy2702
                  schrieb am zuletzt editiert von
                  #539

                  Die erste Adresse Im Log kommt mir komisch hoch vor.

                  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
                  • L Offline
                    L Offline
                    lstorm
                    schrieb am zuletzt editiert von lstorm
                    #540

                    @ChristianM hier meine Konfig.
                    modbus.JPG

                    Wie schon geschrieben, damit läuft es auch immer mal wieder ne halbe Stunde und dann get der Modbus Adapter auf den Status "Verbunden mit Modbus = falsch".

                    1 Antwort Letzte Antwort
                    0
                    • ChristianMC Offline
                      ChristianMC Offline
                      ChristianM
                      schrieb am zuletzt editiert von
                      #541

                      So hab ich es eingestellt. Screenshot_2020-05-05 instances - ioBroker.png

                      1 Antwort Letzte Antwort
                      0
                      • L Offline
                        L Offline
                        lstorm
                        schrieb am zuletzt editiert von
                        #542

                        Hallo zusammen,
                        mittlerweile habe ich meine SDM630 einigermaßen stabil laufen. Es fehlen in unregelmäßigen Abständen immer mal wieder 2 Minuten Daten. Nun habe ich von solch einem Moment mal den Log im Debugmode mitgeschnitten.
                        Vielleicht hat von euch noch einer eine Idee. Ich hab übrigens mittlerweile die Version 3.0.4 laufen.

                        Der Log beinhaltet den Moment wo noch Daten kommen bis zu dem Moment, wo er wohl den Adater komplett neu startet und dann auch wieder Daten kommen.

                        modbus.0	2020-06-05 17:15:17.317	debug	(3203) Poll inputRegs DevID(1) address 334 - 48 bytes
                        modbus.0	2020-06-05 17:15:17.125	debug	(3203) Poll inputRegs DevID(1) address 224 - 46 bytes
                        modbus.0	2020-06-05 17:15:17.050	debug	(3203) Poll inputRegs DevID(1) address 200 - 8 bytes
                        modbus.0	2020-06-05 17:15:16.984	debug	(3203) Poll inputRegs DevID(1) address 100 - 8 bytes
                        modbus.0	2020-06-05 17:15:16.895	debug	(3203) Poll inputRegs DevID(1) address 80 - 8 bytes
                        modbus.0	2020-06-05 17:15:16.563	debug	(3203) Poll inputRegs DevID(1) address 0 - 80 bytes
                        modbus.0	2020-06-05 17:15:16.558	debug	(3203) Poll device 1
                        modbus.0	2020-06-05 17:15:16.553	info	(3203) Connected to slave
                        modbus.0	2020-06-05 17:15:16.525	debug	(3203) connect to serial /dev/ttyUSB0 with 9600
                        modbus.0	2020-06-05 17:15:13.713	info	(3203) starting. Version 3.0.0 in /opt/iobroker/node_modules/iobroker.modbus, node: v12.18.0, js-controller: 3.1.4
                        modbus.0	2020-06-05 17:14:39.180	info	(3182) Terminated (NO_ERROR): Without reason
                        modbus.0	2020-06-05 17:14:39.176	info	(3182) terminating
                        modbus.0	2020-06-05 17:14:39.168	debug	(3182) Cleaning up request fifo.
                        modbus.0	2020-06-05 17:14:39.166	debug	(3182) Clearing timeout of the current request.
                        modbus.0	2020-06-05 17:14:39.151	error	(3182) Error: Reconnect did not help, restart adapter at pollResult (/opt/iobroker/node_modules/iobroker.modbus/lib/master.js:254:23) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker
                        modbus.0	2020-06-05 17:14:39.147	error	(3182) uncaught exception: Reconnect did not help, restart adapter
                        modbus.0	2020-06-05 17:14:39.139	warn	(3182) Poll error count: 13 code: "App Timeout"
                        modbus.0	2020-06-05 17:14:35.407	debug	(3182) Poll inputRegs DevID(1) address 0 - 80 bytes
                        modbus.0	2020-06-05 17:14:35.405	debug	(3182) Poll device 1
                        modbus.0	2020-06-05 17:14:35.403	info	(3182) Connected to slave
                        modbus.0	2020-06-05 17:14:35.397	debug	(3182) connect to serial /dev/ttyUSB0 with 9600
                        modbus.0	2020-06-05 17:14:33.401	debug	(3182) Cleaning up request fifo.
                        modbus.0	2020-06-05 17:14:33.399	debug	(3182) Clearing timeout of the current request.
                        modbus.0	2020-06-05 17:14:33.393	info	(3182) Disconnected from slave
                        modbus.0	2020-06-05 17:14:33.387	warn	(3182) Poll error count: 12 code: "App Timeout"
                        modbus.0	2020-06-05 17:14:28.939	debug	(3182) Poll inputRegs DevID(1) address 0 - 80 bytes
                        modbus.0	2020-06-05 17:14:28.937	debug	(3182) Poll device 1
                        modbus.0	2020-06-05 17:14:28.934	info	(3182) Connected to slave
                        modbus.0	2020-06-05 17:14:28.928	debug	(3182) connect to serial /dev/ttyUSB0 with 9600
                        modbus.0	2020-06-05 17:14:26.930	debug	(3182) Cleaning up request fifo.
                        modbus.0	2020-06-05 17:14:26.928	debug	(3182) Clearing timeout of the current request.
                        modbus.0	2020-06-05 17:14:26.923	info	(3182) Disconnected from slave
                        modbus.0	2020-06-05 17:14:26.919	warn	(3182) Poll error count: 11 code: "App Timeout"
                        modbus.0	2020-06-05 17:14:23.186	debug	(3182) Poll inputRegs DevID(1) address 0 - 80 bytes
                        modbus.0	2020-06-05 17:14:23.185	debug	(3182) Poll device 1
                        modbus.0	2020-06-05 17:14:23.182	info	(3182) Connected to slave
                        modbus.0	2020-06-05 17:14:23.175	debug	(3182) connect to serial /dev/ttyUSB0 with 9600
                        modbus.0	2020-06-05 17:14:21.178	debug	(3182) Cleaning up request fifo.
                        modbus.0	2020-06-05 17:14:21.176	debug	(3182) Clearing timeout of the current request.
                        modbus.0	2020-06-05 17:14:21.170	info	(3182) Disconnected from slave
                        modbus.0	2020-06-05 17:14:21.167	warn	(3182) Poll error count: 10 code: "App Timeout"
                        modbus.0	2020-06-05 17:14:16.719	debug	(3182) Poll inputRegs DevID(1) address 0 - 80 bytes
                        modbus.0	2020-06-05 17:14:16.717	debug	(3182) Poll device 1
                        modbus.0	2020-06-05 17:14:16.715	info	(3182) Connected to slave
                        modbus.0	2020-06-05 17:14:16.707	debug	(3182) connect to serial /dev/ttyUSB0 with 9600
                        modbus.0	2020-06-05 17:14:14.712	debug	(3182) Cleaning up request fifo.
                        modbus.0	2020-06-05 17:14:14.710	debug	(3182) Clearing timeout of the current request.
                        modbus.0	2020-06-05 17:14:14.703	info	(3182) Disconnected from slave
                        modbus.0	2020-06-05 17:14:14.699	warn	(3182) Poll error count: 9 code: "App Timeout"
                        modbus.0	2020-06-05 17:14:10.965	debug	(3182) Poll inputRegs DevID(1) address 0 - 80 bytes
                        modbus.0	2020-06-05 17:14:10.964	debug	(3182) Poll device 1
                        modbus.0	2020-06-05 17:14:10.961	info	(3182) Connected to slave
                        modbus.0	2020-06-05 17:14:10.955	debug	(3182) connect to serial /dev/ttyUSB0 with 9600
                        modbus.0	2020-06-05 17:14:08.960	debug	(3182) Cleaning up request fifo.
                        modbus.0	2020-06-05 17:14:08.958	debug	(3182) Clearing timeout of the current request.
                        modbus.0	2020-06-05 17:14:08.950	info	(3182) Disconnected from slave
                        modbus.0	2020-06-05 17:14:08.946	warn	(3182) Poll error count: 8 code: "App Timeout"
                        modbus.0	2020-06-05 17:14:04.499	debug	(3182) Poll inputRegs DevID(1) address 0 - 80 bytes
                        modbus.0	2020-06-05 17:14:04.497	debug	(3182) Poll device 1
                        modbus.0	2020-06-05 17:14:04.495	info	(3182) Connected to slave
                        modbus.0	2020-06-05 17:14:04.488	debug	(3182) connect to serial /dev/ttyUSB0 with 9600
                        modbus.0	2020-06-05 17:14:02.491	debug	(3182) Cleaning up request fifo.
                        modbus.0	2020-06-05 17:14:02.490	debug	(3182) Clearing timeout of the current request.
                        modbus.0	2020-06-05 17:14:02.484	info	(3182) Disconnected from slave
                        modbus.0	2020-06-05 17:14:02.481	warn	(3182) Poll error count: 7 code: "App Timeout"
                        modbus.0	2020-06-05 17:13:58.745	debug	(3182) Poll inputRegs DevID(1) address 0 - 80 bytes
                        modbus.0	2020-06-05 17:13:58.744	debug	(3182) Poll device 1
                        modbus.0	2020-06-05 17:13:58.741	info	(3182) Connected to slave
                        modbus.0	2020-06-05 17:13:58.734	debug	(3182) connect to serial /dev/ttyUSB0 with 9600
                        modbus.0	2020-06-05 17:13:56.739	debug	(3182) Cleaning up request fifo.
                        modbus.0	2020-06-05 17:13:56.737	debug	(3182) Clearing timeout of the current request.
                        modbus.0	2020-06-05 17:13:56.731	info	(3182) Disconnected from slave
                        modbus.0	2020-06-05 17:13:56.727	warn	(3182) Poll error count: 6 code: "App Timeout"
                        modbus.0	2020-06-05 17:13:52.281	debug	(3182) Poll inputRegs DevID(1) address 0 - 80 bytes
                        modbus.0	2020-06-05 17:13:52.279	debug	(3182) Poll device 1
                        modbus.0	2020-06-05 17:13:52.277	info	(3182) Connected to slave
                        modbus.0	2020-06-05 17:13:52.271	debug	(3182) connect to serial /dev/ttyUSB0 with 9600
                        modbus.0	2020-06-05 17:13:50.275	debug	(3182) Cleaning up request fifo.
                        modbus.0	2020-06-05 17:13:50.274	debug	(3182) Clearing timeout of the current request.
                        modbus.0	2020-06-05 17:13:50.269	info	(3182) Disconnected from slave
                        modbus.0	2020-06-05 17:13:49.269	warn	(3182) Poll error count: 5 code: {"err":"timeout"}
                        modbus.0	2020-06-05 17:13:49.268	error	(3182) Request timed out.
                        modbus.0	2020-06-05 17:13:49.266	warn	(3182) Error: undefined
                        modbus.0	2020-06-05 17:13:46.526	debug	(3182) Poll inputRegs DevID(1) address 0 - 80 bytes
                        modbus.0	2020-06-05 17:13:46.525	debug	(3182) Poll device 1
                        modbus.0	2020-06-05 17:13:45.521	warn	(3182) Poll error count: 4 code: "App Timeout"
                        modbus.0	2020-06-05 17:13:39.263	debug	(3182) Poll inputRegs DevID(1) address 0 - 80 bytes
                        modbus.0	2020-06-05 17:13:39.261	debug	(3182) Poll device 1
                        modbus.0	2020-06-05 17:13:39.259	info	(3182) Connected to slave
                        modbus.0	2020-06-05 17:13:39.253	debug	(3182) connect to serial /dev/ttyUSB0 with 9600
                        modbus.0	2020-06-05 17:13:37.257	debug	(3182) Cleaning up request fifo.
                        modbus.0	2020-06-05 17:13:37.255	debug	(3182) Clearing timeout of the current request.
                        modbus.0	2020-06-05 17:13:37.249	info	(3182) Disconnected from slave
                        modbus.0	2020-06-05 17:13:36.249	warn	(3182) Poll error count: 3 code: {"err":"timeout"}
                        modbus.0	2020-06-05 17:13:36.248	error	(3182) Request timed out.
                        modbus.0	2020-06-05 17:13:36.247	warn	(3182) Error: undefined
                        modbus.0	2020-06-05 17:13:35.320	debug	(3182) Poll inputRegs DevID(1) address 0 - 80 bytes
                        modbus.0	2020-06-05 17:13:35.318	debug	(3182) Poll device 1
                        modbus.0	2020-06-05 17:13:34.315	warn	(3182) Poll error count: 2 code: "App Timeout"
                        modbus.0	2020-06-05 17:13:26.243	debug	(3182) Poll inputRegs DevID(1) address 0 - 80 bytes
                        modbus.0	2020-06-05 17:13:26.242	debug	(3182) Poll device 1
                        modbus.0	2020-06-05 17:13:26.239	info	(3182) Connected to slave
                        modbus.0	2020-06-05 17:13:26.231	debug	(3182) connect to serial /dev/ttyUSB0 with 9600
                        modbus.0	2020-06-05 17:13:24.238	debug	(3182) Cleaning up request fifo.
                        modbus.0	2020-06-05 17:13:24.236	debug	(3182) Clearing timeout of the current request.
                        modbus.0	2020-06-05 17:13:24.227	info	(3182) Disconnected from slave
                        modbus.0	2020-06-05 17:13:24.115	debug	(3182) Poll inputRegs DevID(1) address 0 - 80 bytes
                        modbus.0	2020-06-05 17:13:24.113	debug	(3182) Poll device 1
                        modbus.0	2020-06-05 17:13:23.223	error	(3182) Request timed out.
                        modbus.0	2020-06-05 17:13:23.220	warn	(3182) Error: undefined
                        modbus.0	2020-06-05 17:13:23.109	warn	(3182) Poll error count: 1 code: "App Timeout"
                        modbus.0	2020-06-05 17:13:13.216	debug	(3182) Poll inputRegs DevID(1) address 80 - 8 bytes
                        modbus.0	2020-06-05 17:13:12.907	debug	(3182) Poll inputRegs DevID(1) address 0 - 80 bytes
                        modbus.0	2020-06-05 17:13:12.906	debug	(3182) Poll device 1
                        modbus.0	2020-06-05 17:13:11.741	debug	(3182) Poll inputRegs DevID(1) address 334 - 48 bytes
                        modbus.0	2020-06-05 17:13:11.561	debug	(3182) Poll inputRegs DevID(1) address 224 - 46 bytes
                        modbus.0	2020-06-05 17:13:11.490	debug	(3182) Poll inputRegs DevID(1) address 200 - 8 bytes
                        modbus.0	2020-06-05 17:13:11.434	debug	(3182) Poll inputRegs DevID(1) address 100 - 8 bytes
                        modbus.0	2020-06-05 17:13:11.376	debug	(3182) Poll inputRegs DevID(1) address 80 - 8 bytes
                        modbus.0	2020-06-05 17:13:11.074	debug	(3182) Poll inputRegs DevID(1) address 0 - 80 bytes
                        modbus.0	2020-06-05 17:13:11.072	debug	(3182) Poll device 1
                        modbus.0	2020-06-05 17:13:09.910	debug	(3182) Poll inputRegs DevID(1) address 334 - 48 bytes
                        modbus.0	2020-06-05 17:13:09.728	debug	(3182) Poll inputRegs DevID(1) address 224 - 46 bytes
                        modbus.0	2020-06-05 17:13:09.655	debug	(3182) Poll inputRegs DevID(1) address 200 - 8 bytes
                        modbus.0	2020-06-05 17:13:09.598	debug	(3182) Poll inputRegs DevID(1) address 100 - 8 bytes
                        modbus.0	2020-06-05 17:13:09.540	debug	(3182) Poll inputRegs DevID(1) address 80 - 8 bytes
                        modbus.0	2020-06-05 17:13:09.230	debug	(3182) Poll inputRegs DevID(1) address 0 - 80 bytes
                        modbus.0	2020-06-05 17:13:09.228	debug	(3182) Poll device 1
                        
                        1 Antwort Letzte Antwort
                        0
                        • M Offline
                          M Offline
                          Mehmet Tarhan
                          schrieb am zuletzt editiert von Mehmet Tarhan
                          #543

                          Edit: Hab eine Verbindung herstellen können. Mit anderem Programm. Wollte nur die richtige Konfiguration wissen und die Kommunikation zwischen Adapter und ESP.

                          Schöne Grüße
                          ############

                          Hallo Leute,

                          ich versuche seit Tagen mit meinem NodeMcu esp8266 Board eine Verbindung zu herstellen über ModBus. Leider haut es nicht hin. Habe alles mögliche ausprobiert. Iobroker-Modbus adapter ist Master und NodeMcu als Sk eingestellt.
                          Eigentlich will ich meine Garage damit steuern mit rs485. Die Garage ist weit weg, mit Wlan ist unmöglich, bricht immer wieder ab. Ich hab mich noch nie mit Modbus befasst. Bin sehr dankbar für alle mögliche Tips oder Hinweise

                          Gruss Memo.

                          Hier ist das Programm mit Arduino-IDE geschrieben für Esp8266.

                          /*
                            Modbus-Arduino Beispiel - Lampe (Modbus Serial)
                            Copyright by André Sarmento Barbosa
                            http://github.com/andresarmento/modbus-arduino
                          */
                           
                          #include <ModbusRTU.h>
                          
                          #define SLAVE_ID 1
                          
                          
                          // Modbus registriert Offsets (0-9999)
                          const  int LAMP1_COIL = 100 ;
                          // Verwendete Pins
                          const  int ledPin = 0 ;
                          
                          // ModbusSerial Objekt
                          ModbusRTU mb;
                          
                          void  setup () {
                              // Modbus Serial konfigurieren (Port, Geschwindigkeit, Byte-Format)
                              Serial.begin(9600, SERIAL_8N1);
                              mb.begin(&Serial);
                              // Setze die Slave ID (1-247)
                              mb.slave(SLAVE_ID);  
                              
                              // LEDPin-Modus einstellen
                              pinMode (ledPin, OUTPUT);
                              // LAMP1_COIL-Register hinzufügen - Verwenden Sie addCoil () für digitale Ausgänge
                              mb. addCoil (LAMP1_COIL);
                          }
                          
                          void  loop () {
                             // Einmal in loop () aufrufen - alles Magie hier
                             mb. task ();
                             
                             // füge ledPin an das LAMP1_COIL Register an     
                             digitalWrite (ledPin, mb. Coil (LAMP1_COIL));
                          }
                          

                          Und hier ist mein Steckboard mit NodeMcu
                          20200606_175133[5172].jpg

                          Modbus Konfiguration
                          1591459897359-a5bce96d-0ebe-4934-8b18-08931858c3f5-image.png

                          1591460387742-39128049-bee8-48d7-95d8-45dd40d5e99d-image.png

                          Iobroker Log
                          1591460681851-f4e5d098-ff7c-4387-a1c4-6ecfb08013b6-image.png

                          1 Antwort Letzte Antwort
                          0
                          • L Offline
                            L Offline
                            Leo84
                            schrieb am zuletzt editiert von
                            #544

                            Hallo,
                            ich bin neu hier und erstmal Danke für den klasse Modbus Adapter!
                            Ich habe meine Heizung ETA PC40 per Modbus TCP angebunden und kann hier auch mehrere Register auslesen.
                            Allerdings kann ich nur ca. 10 Register auslesen, wenn ich mehr versuche zu lesen bricht der Modbus zusammen und er wird rot.
                            Dann immer wieder gelb grün und sofort wieder rot.
                            Sobald ich die auszulesenden Register reduziere werd der Bus wieder Grün.

                            Ich habe das ganze auch mit Node Red getestet, hier kann ich ohne Probleme wesentlich mehr Register auslesen. Ich habe auch die Zeiten geändert, leider alles ohne Erfolg.
                            Habt ihr noch einen Rat?

                            Vielen Dank für eure Hilfe.
                            Modbus.jpg
                            Register.jpg

                            1 Antwort Letzte Antwort
                            0
                            • P Offline
                              P Offline
                              peterfido
                              schrieb am zuletzt editiert von
                              #545

                              Hallo,

                              ich nutze auch Node-Red für Modbus. Mit dem Modus Adapter kam ich auf keinen grünen Zweig.

                              Allerdings klappte es bei Node-Red auch nicht auf Anhieb. Ich musste mehrere USB-RS 485 Adapter probieren, bis endlich einer durchlief. Allerdings klappt es auch mit diesem Stick nicht per Modbus Adapter.

                              Somit spricht für mich nichts dagegen bei Node-Red zu bleiben.

                              Wenn der Umbau weitergeht, will ich den Modbus per TCP anbinden. Dann probiere ich es nochmal mit dem Modbus Adapter. Das dauert allerdings noch etwas.

                              Gruß

                              Peterfido


                              Proxmox auf Intel NUC12WSHi5
                              ioBroker: Debian (VM)
                              CCU: Debmatic (VM)
                              Influx: Debian (VM)
                              Grafana: Debian (VM)
                              eBus: Debian (VM)
                              Zigbee: Debian (VM) mit zigbee2mqtt

                              1 Antwort Letzte Antwort
                              0
                              • BluefoxB Bluefox

                                48_modbus.png
                                Hallo!

                                Ich habe einen neuen Adapter gefertigt: modbus.

                                Kann das jemand testen?

                                Es geht momentan nur TCP. Master und Slave

                                C Offline
                                C Offline
                                cmoehler
                                schrieb am zuletzt editiert von
                                #546

                                @Bluefox

                                Re: Modbus adapter

                                Hallo Zusammen,

                                vielen Dank für diesen tollen Adapter 👍

                                Da ich bei meinem CELSA WECM80-E M das RegSet1 verwende, bin ich leider auch mit Signed 64 bit (Big Endian) Werten konfrontiert.

                                Leider habe ich im Adapter aber nur Unsigned 64 als Auswahlmöglichkeit gefunden. Oder habe ich da etwas übersehen 🤔 ?

                                Falls nicht, könnte man das dann eventuell noch implementieren? Ansonsten müsste ich halt, vor dem weiterverarbeiten der entsprechenden Werte, selbst von UINT64 nach INT64 umwandeln, was aber unschön wäre da in den Objekten dann ja, bei negatieven Werten, riesige Zahlen stehen würden.

                                Vielen Dank für eure Antworten.

                                C 1 Antwort Letzte Antwort
                                0
                                • C cmoehler

                                  @Bluefox

                                  Re: Modbus adapter

                                  Hallo Zusammen,

                                  vielen Dank für diesen tollen Adapter 👍

                                  Da ich bei meinem CELSA WECM80-E M das RegSet1 verwende, bin ich leider auch mit Signed 64 bit (Big Endian) Werten konfrontiert.

                                  Leider habe ich im Adapter aber nur Unsigned 64 als Auswahlmöglichkeit gefunden. Oder habe ich da etwas übersehen 🤔 ?

                                  Falls nicht, könnte man das dann eventuell noch implementieren? Ansonsten müsste ich halt, vor dem weiterverarbeiten der entsprechenden Werte, selbst von UINT64 nach INT64 umwandeln, was aber unschön wäre da in den Objekten dann ja, bei negatieven Werten, riesige Zahlen stehen würden.

                                  Vielen Dank für eure Antworten.

                                  C Offline
                                  C Offline
                                  cmoehler
                                  schrieb am zuletzt editiert von cmoehler
                                  #547

                                  @cmoehler

                                  Ich antworte mir mal selbst:

                                  doublebe - Double ist wohl der richtige Typ ... habe ich wohl übersehen 😬

                                  Allerdings erhalte ich ich bei Double leider immer 0 zurück. Da mache ich wohl immer noch etwas falsch ... aber was ??? 🙄

                                  Falls mir jemand auf die Sprünge helfen kann, schon einmal vielen Dank im Voraus.

                                  Hier noch die Definition im Adapter und die entsprechenden Objekte:

                                  definition modbus (2 x gleichen Register mit unterschiedlichem Datentyp):
                                  iobroker.modbus 64bit definition.png
                                  inhalt der beiden Objekte:
                                  iobroker.modbus 64bit object relult.png

                                  QModMaster
                                  qmodmaster1.png

                                  O 1 Antwort Letzte Antwort
                                  0
                                  • C cmoehler

                                    @cmoehler

                                    Ich antworte mir mal selbst:

                                    doublebe - Double ist wohl der richtige Typ ... habe ich wohl übersehen 😬

                                    Allerdings erhalte ich ich bei Double leider immer 0 zurück. Da mache ich wohl immer noch etwas falsch ... aber was ??? 🙄

                                    Falls mir jemand auf die Sprünge helfen kann, schon einmal vielen Dank im Voraus.

                                    Hier noch die Definition im Adapter und die entsprechenden Objekte:

                                    definition modbus (2 x gleichen Register mit unterschiedlichem Datentyp):
                                    iobroker.modbus 64bit definition.png
                                    inhalt der beiden Objekte:
                                    iobroker.modbus 64bit object relult.png

                                    QModMaster
                                    qmodmaster1.png

                                    O Offline
                                    O Offline
                                    onkel-ede
                                    schrieb am zuletzt editiert von
                                    #548

                                    Hallo zusammen,
                                    ich habe 2 Instanzen des Modbus-Adapter im Einsatz (1xWechselrichter PV-Anlage, 1x Batteriewechselrichter).
                                    Läuft seit ca. 1 Jahr alles prima.
                                    Habe nach Neuinstallation des gesamten Systems Probleme, deren Ursache (Zeitpunkt/Versionen) ich leider nicht mehr nachvollziehen kann.
                                    Ich berechne den Gesamtverbrauch des Hauses mit:
                                    b707902b-09bd-4a81-880a-97b8cde222cf-image.png
                                    Alle Werte aus dem Adapter in kWh, da quasi Zählerstände.
                                    Ich ziehe vom PV-Ertrag die Batterieladung und die Netzeinspeisung ab und addiere die Batteieentladung und den Netzbezug auf.
                                    Funktioniert auch tadellos.
                                    Der Adapter setzt die Werte für PV-Ertrag, Batterie(ent-)ladung um Mitternacht auf "0", weshalb meine Berechnung durcheinanderkommt.
                                    PV-Ertrag:
                                    22e3f1d2-90d5-4547-8010-e71265e7d3f9-image.png
                                    Batterieladung:
                                    208f0b95-d0f1-4471-965e-252ca34083f4-image.png
                                    Batterie-Entladung:
                                    fced1db1-db98-4609-94fd-656b76a99b37-image.png
                                    Die "0"-Werte machen ja bei dem "Zählerstand" keinen Sinn. Kann ich in den Einstellungen des Adapters verhindern, dass die "0"-Werte geschrieben werden?
                                    Viele Grüße
                                    onkel-ede

                                    O 1 Antwort Letzte Antwort
                                    0
                                    • O onkel-ede

                                      Hallo zusammen,
                                      ich habe 2 Instanzen des Modbus-Adapter im Einsatz (1xWechselrichter PV-Anlage, 1x Batteriewechselrichter).
                                      Läuft seit ca. 1 Jahr alles prima.
                                      Habe nach Neuinstallation des gesamten Systems Probleme, deren Ursache (Zeitpunkt/Versionen) ich leider nicht mehr nachvollziehen kann.
                                      Ich berechne den Gesamtverbrauch des Hauses mit:
                                      b707902b-09bd-4a81-880a-97b8cde222cf-image.png
                                      Alle Werte aus dem Adapter in kWh, da quasi Zählerstände.
                                      Ich ziehe vom PV-Ertrag die Batterieladung und die Netzeinspeisung ab und addiere die Batteieentladung und den Netzbezug auf.
                                      Funktioniert auch tadellos.
                                      Der Adapter setzt die Werte für PV-Ertrag, Batterie(ent-)ladung um Mitternacht auf "0", weshalb meine Berechnung durcheinanderkommt.
                                      PV-Ertrag:
                                      22e3f1d2-90d5-4547-8010-e71265e7d3f9-image.png
                                      Batterieladung:
                                      208f0b95-d0f1-4471-965e-252ca34083f4-image.png
                                      Batterie-Entladung:
                                      fced1db1-db98-4609-94fd-656b76a99b37-image.png
                                      Die "0"-Werte machen ja bei dem "Zählerstand" keinen Sinn. Kann ich in den Einstellungen des Adapters verhindern, dass die "0"-Werte geschrieben werden?
                                      Viele Grüße
                                      onkel-ede

                                      O Offline
                                      O Offline
                                      onkel-ede
                                      schrieb am zuletzt editiert von
                                      #549

                                      Ich habe es erstmal so gelöst, indem ich eigene Datenpunkte angelegt habe, in die ich die Werte bereinigt schreibe. Also wenn Wert > 0, dann schriebe in Datenpunkt.
                                      Mit diesen Datenpunkten berechne ich dann den Gesamtverbrauch des Hauses.

                                      1 Antwort Letzte Antwort
                                      0
                                      • U Umsteiger

                                        Hallo,

                                        Ich bin ein umsteiger von OpenHab zu IoBroker.

                                        Habe mit dem Modbus ähnliche probleme wie @TimoS .

                                        Ich kann mit dem Adapter die Werte (Holding und Eingangsregister) aus mein Lüftungsgerät auslesen. Kann aber nicht ins Holding schreiben.

                                        modbus.0	2019-12-21 13:42:24.032	warn	(7404) Poll error count: 1 code: "App Timeout"
                                        modbus.0	2019-12-21 13:42:23.189	error	(7404) Cannot write [1003]: {"err":"timeout"}
                                        modbus.0	2019-12-21 13:42:23.187	error	(7404) Request timed out.
                                        modbus.0	2019-12-21 13:42:23.184	warn	(7404) Error: undefined
                                        modbus.0	2019-12-21 13:42:18.212	error	(7404) unknown function code: 134
                                        

                                        Dieses hatte bei OpenHab ohne probleme Funktioniert.

                                        Link zur Docu vom Lüftungsgerät

                                        ZurZeit ist der Modbus 2.0.9 installiert. den 3.0.0 kann ich nicht Installieren weder über SSH mit npm i iobroker.modbus oder über das Webinterface.

                                        adapter etc. sind alle soweit aktuell. (Laut Webinterface)

                                        MfG Umsteiger

                                        Edit: Ok habe herrausgefunden wie man den Modbus3.0 installiert.

                                        Wird der FC06 oder der FC16 beim schreiben verwendet.kann man das evtl. im log sehen?

                                        T Offline
                                        T Offline
                                        TimoS.
                                        schrieb am zuletzt editiert von TimoS.
                                        #550

                                        @Umsteiger Hast du dein Gerät irgendwie mit dem Modbusadapter ansprechen können? Mein Gerät akzeptiert immer noch keine Werte. Es kann definitiv nur etwas mit FC16 anfangen.

                                        EDIT: Habe einen weg gefunden: https://github.com/ioBroker/ioBroker.modbus/issues/54
                                        Wenn man in der master.js (Version 3.1.4) die Zeile:

                                        if (objects[id].native.len > 1 && !options.config.doNotUseWriteMultipleRegisters) {

                                        auskommentiert bzw. löscht und stattdessen:

                                        if ( !options.config.doNotUseWriteMultipleRegisters) {

                                        nutzt, funktioniert es mit dem Schreiben eines Wertes.

                                        1 Antwort Letzte Antwort
                                        0
                                        • H Offline
                                          H Offline
                                          Habedere
                                          schrieb am zuletzt editiert von Habedere
                                          #551

                                          Servus zusammen,
                                          weiß nicht ob das Problem schon mal angesprochen wurde, aber bei mir stehen in den Objekten andere ID´s als im Eingangsregister des Adapters.
                                          Jemand eine Idee woran das liegen kann?!

                                          EDIT: Problem gefunden bzw. Logik. In den Objekten wird jede ID eine Stufe tiefer erstellt!!
                                          Aus 30002 wird dann 30001. Wtf?!

                                          PS: wenn ich die Werte im Eingangsregister eintrage, übernimmt er die Nummern auch nicht, sondern zählt fortlaufend weiter...

                                          O 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

                                          457

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          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