Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Modbus adapter

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Modbus adapter

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      t-henrichsmann last edited by

      Hallo zusammen,

      ich habe auch das bekannte Problem und komme hier einfach nicht weiter. Ich habe den Modbus Adapter mit einem Raspi und einem USB-Seriell Interface in Betrieb. Dieser kommuniziert mit Klimaanlagen über Modbus RTU. Es werden auch eine Vielzahl von Daten ausgetauscht und das Ganze funktioniert auch nach langem Spielen mit den Timeouteinstellungen im Adapter für Stunden stabil. Nur plötzlich kommt dann, in diesem Fall nach einem Tag, der Error wie im angehängtem Bild. Nur ein Neustart des Adapters löst das Problem. Ich könnte natürlich den Adapter über den Scheduler neu starten aber das ist ja nicht die wahre Lösung. Evtl. kann mir bzw. uns hier Bluefox weiter helfen. Ich verzweifel langsam und hoffe auf eure Ideen. Vielen Dank schon mal im Voraus.

      11793_problem.png

      1 Reply Last reply Reply Quote 0
      • I
        iLOVEioBROKER last edited by

        Bei mir trat der Fehler auch wieder auf. Ich konnte das Problem aber jetzt eingrenzen.

        Mein Raspberry im Keller teilt sich eine Aufputz Zweifachsteckdose mit meinem Zentralstaubsauger.

        Jedesmal wenn der Staubsauger eingeschaltet wird, kommen die Fehlermeldungen vom Modubusadapter.

        Der Adapter muss dann neugestartet werden und dann funktioniert wieder alles.

        Ich hab jetzt den Staubsauger an einer anderen Steckdose angesteckt und seitdem läuft der Adapter super.

        Es liegt also bei mir an einem Stromproblem vom Raspberry. Evtl hilft dir dies weiter.

        1 Reply Last reply Reply Quote 0
        • wendy2702
          wendy2702 last edited by

          In diesem Fall ist eine "gute" Spannungsversorgung für den Raspi wichtig.

          Also kein altes Handy/Tablet Ladegerät verwenden sondern etwas gescheites. Seit ich meine beiden PI's mit einem Hutschienennetzteil betreibe schnurren die beiden auch was Modbus betrifft-

          1 Reply Last reply Reply Quote 0
          • T
            thommy99 last edited by

            @Teamgeist610:

            Hallo zusammen,

            ich versuche zur Zeit meine Vallox Lüftungsanlage mit dem Modbus Adapter abzufragen (Modbus RTU). Leider gelingt mir das nur zum Teil. Wenn ich den Adapter starte, bekomme ich ca. 10-15 Minuten Werte geliefert. Danach disconnected sich der Adapter und versucht danach erfolglos wieder eine Verbindung aufzubauen. Anbei das Log:

            modbus.0 2018-11-12 21:40:59.402 info Disconnected from slave

            modbus.0 2018-11-12 21:40:58.404 warn Poll error count: 2 code: {"err":"timeout"}

            modbus.0 2018-11-12 21:40:58.404 error Request timed out.

            modbus.0 2018-11-12 21:40:58.403 warn Error: undefined

            modbus.0 2018-11-12 21:40:48.388 info Connected to slave

            modbus.0 2018-11-12 21:39:48.198 info Disconnected from slave

            modbus.0 2018-11-12 21:39:47.197 warn Poll error count: 1 code: {"err":"timeout"}

            modbus.0 2018-11-12 21:39:47.196 error Request timed out.

            modbus.0 2018-11-12 21:39:47.192 warn Error: undefined

            modbus.0 2018-11-12 21:30:13.981 info Connected to slave

            modbus.0 2018-11-12 21:30:13.547 info starting. Version 2.0.9 in /opt/iobroker/node_modules/iobroker.modbus, node: v8.12.0

            IOBroker läuft auf einem Debian, welches mittels Virtual Box auf einem Windows 10 visualisiert ist. Die Lüftungsanlage ist via RS485 USB Adapter angeschlossen.

            Hat jemand eine Idee warum es zu den Verbindungsabbrüchen kommt?

            Bis jetzt konnte ich immer die passende Antworten für meine ioBroker Projekte im Forum finden (Bis jetzt 😉 ). Ich habe schon gefühlt mit sämtliche Einstellungen ausprobiert, leider ohne Erfolg. `

            Hallo Teamgeist,

            habe auch eine Vallox Anlage und möchte mit meinem Raspberry Daten lesen und schreiben

            und bekomme immer die obigen Fehlermeldungen.

            Kannst du mir deine Einstellungen und Register mal per PN schicken oder hier posten?

            Vielen lieben Dank!

            VG

            Thommy

            1 Reply Last reply Reply Quote 0
            • M
              Master77 last edited by

              Hallo zusammen. Bei mir ist es genau so, trotz verschiedener Einstellungen bekomme ich ein konstanten Betrieb des Modbus nicht hin. Täglich bekomme ich 1 oder 2 Fehlermeldungen und alle paar Tage kommen so viele Fehler das der Pi / IOBroker neu startet. Habe den Modbus jetzt erst mal ausgeschaltet. Die Stromversorgung erfolgt bei meinem Pi durch ein originales Netzteil welches in einer Mehrfachsteckdose steckt. Alle anderen Adapter laufen einwandfrei.

              Weiß langsam nicht mehr weiter.

              Gruß Markus

              Gesendet von unterwegs mit Tapatalk

              1 Reply Last reply Reply Quote 0
              • wendy2702
                wendy2702 last edited by

                Also wenn ihr Modbus RS485 nutzt sind neben einer Stabilen Spannungsversorgung auch noch andere dinge wichtig.

                Ich habe die besten Erfahrungen mit diesem Stick gemacht: https://www.amazon.de/gp/product/B007VZ … UTF8&psc=1

                Die Verbindung zwischen Stick und Modbus Gerät mit Cat6/Cat7 Kabel und Abschlußwiderstand auf beiden Seiten.

                Damit lese ich Problemlos zwei Modbus Energiezähler aus.

                Wobei ich natürlich nicht ausschließen will das es nicht mit jedem Endgerät Problemlos funktioniert.

                1 Reply Last reply Reply Quote 0
                • D
                  dexter last edited by

                  Ich habe Probleme mit dem Modbus-Adapter im Slave betrieb. Und zwar kann ich keine Coils auslesen (Weder mit dem eigentlichen Master als auch mit diversen Tools).

                  Ich möchte eigentlich nur einen digitalen Wert rausschicken um meine Heizung fern-einzuschalten, aber es scheitert an invaliden Daten… Hat noch jemand das Problem?

                  Node auf 8.15.0

                  npm 6.4.1

                  Admin 3.5.10

                  Modbus 2.0.9

                  Komischerweise erwarte ich einen Bool und bekomme eine Zahl zurück

                  PS: Interessanterweise zerschlägt es mir meine Holding-Register, wenn ich einen Coil mit der gleichen Alias-Adresse anspreche (reading out coil 2 from master will kill write analog 40002 in slave) kann aber auch ein Folgefehler sein.
                  16721_51071025-160fc000-164b-11e9-8098-9914d3cbc558.png
                  16721_51071059-6f77ef00-164b-11e9-8147-9203261d8674.png

                  1 Reply Last reply Reply Quote 0
                  • T
                    thommy99 last edited by

                    Bei mir schmiert wie bei t-henrichsmann die kommunikaton immer wieder ab.

                    Schon mehrere adapter probiert.

                    Geschwindigkeiten, parameter, etc.

                    mehr bekomme ich aus dem log nicht raus und werde nicht schlau.

                    modbus.0 2019-01-13 21:49:45.997 info Connected to slave

                    modbus.0 2019-01-13 21:49:45.989 debug connect to serial /dev/ttyUSB0 with 115200

                    modbus.0 2019-01-13 21:49:43.991 silly inMem message modbus.0.* modbus.0.info.connection

                    modbus.0 2019-01-13 21:49:43.991 debug Cleaning up request fifo.

                    modbus.0 2019-01-13 21:49:43.990 debug Clearing timeout of the current request.

                    modbus.0 2019-01-13 21:49:43.986 info Disconnected from slave

                    modbus.0 2019-01-13 21:49:42.989 silly inMem message modbus.0.* modbus.0.info.connection

                    modbus.0 2019-01-13 21:49:42.984 warn Poll error count: 3 code: {"err":"timeout"}

                    modbus.0 2019-01-13 21:49:42.984 error Request timed out.

                    modbus.0 2019-01-13 21:49:42.984 warn Error: undefined

                    modbus.0 2019-01-13 21:49:40.990 silly inMem message modbus.0.* modbus.0.info.connection

                    modbus.0 2019-01-13 21:49:40.986 debug Poll holdingRegs DevID(10) address 4354 - 1 bytes

                    modbus.0 2019-01-13 21:49:40.986 debug Poll device 10

                    modbus.0 2019-01-13 21:49:40.984 info Connected to slave

                    modbus.0 2019-01-13 21:49:40.976 debug connect to serial /dev/ttyUSB0 with 115200

                    modbus.0 2019-01-13 21:49:38.979 silly inMem message modbus.0.* modbus.0.info.connection

                    modbus.0 2019-01-13 21:49:38.979 debug Cleaning up request fifo.

                    modbus.0 2019-01-13 21:49:38.978 debug Clearing timeout of the current request.

                    modbus.0 2019-01-13 21:49:38.973 info Disconnected from slave

                    modbus.0 2019-01-13 21:49:37.977 silly inMem message modbus.0.* modbus.0.info.connection

                    modbus.0 2019-01-13 21:49:37.973 warn Poll error count: 2 code: {"err":"timeout"}

                    modbus.0 2019-01-13 21:49:37.973 error Request timed out.

                    modbus.0 2019-01-13 21:49:37.971 warn Error: undefined

                    modbus.0 2019-01-13 21:49:35.974 silly inMem message modbus.0.* modbus.0.info.connection

                    modbus.0 2019-01-13 21:49:35.969 debug Poll holdingRegs DevID(10) address 4354 - 1 bytes

                    modbus.0 2019-01-13 21:49:35.969 debug Poll device 10

                    modbus.0 2019-01-13 21:49:35.969 info Connected to slave

                    modbus.0 2019-01-13 21:49:35.967 debug connect to serial /dev/ttyUSB0 with 115200

                    modbus.0 2019-01-13 21:49:33.964 silly inMem message modbus.0.* modbus.0.info.connection

                    modbus.0 2019-01-13 21:49:33.964 debug Cleaning up request fifo.

                    modbus.0 2019-01-13 21:49:33.963 debug Clearing timeout of the current request.

                    modbus.0 2019-01-13 21:49:33.957 info Disconnected from slave

                    modbus.0 2019-01-13 21:49:32.958 silly inMem message modbus.0.* modbus.0.info.connection

                    modbus.0 2019-01-13 21:49:32.952 warn Poll error count: 1 code: {"err":"timeout"}

                    modbus.0 2019-01-13 21:49:32.952 error Request timed out.

                    modbus.0 2019-01-13 21:49:32.952 warn Error: undefined

                    modbus.0 2019-01-13 21:49:30.945 debug Poll holdingRegs DevID(10) address 20507 - 1 bytes

                    modbus.0 2019-01-13 21:49:30.936 silly inMem message modbus.0.* modbus.0.holdingRegisters.4362_SUPP_FAN_SPEED

                    modbus.0 2019-01-13 21:49:30.932 debug Poll holdingRegs DevID(10) address 4609 - 1 bytes

                    modbus.0 2019-01-13 21:49:30.914 debug Poll holdingRegs DevID(10) address 4362 - 1 bytes

                    modbus.0 2019-01-13 21:49:30.898 debug Poll holdingRegs DevID(10) address 4361 - 1 bytes

                    modbus.0 2019-01-13 21:49:30.881 debug Poll holdingRegs DevID(10) address 4360 - 1 bytes

                    modbus.0 2019-01-13 21:49:30.872 silly inMem message modbus.0.* modbus.0.holdingRegisters.4358_TEMP_SUPPLY_AIR

                    modbus.0 2019-01-13 21:49:30.868 debug Poll holdingRegs DevID(10) address 4359 - 1 bytes

                    modbus.0 2019-01-13 21:49:30.861 silly inMem message modbus.0.* modbus.0.holdingRegisters.4357_TEMP_SUPPLY_CELL_AIR

                    modbus.0 2019-01-13 21:49:30.860 silly inMem message modbus.0.* modbus.0.holdingRegisters.4356_TEMP_OUTDOOR_AIR

                    modbus.0 2019-01-13 21:49:30.852 debug Poll holdingRegs DevID(10) address 4358 - 1 bytes

                    modbus.0 2019-01-13 21:49:30.836 debug Poll holdingRegs DevID(10) address 4357 - 1 bytes

                    modbus.0 2019-01-13 21:49:30.818 debug Poll holdingRegs DevID(10) address 4356 - 1 bytes

                    modbus.0 2019-01-13 21:49:30.803 debug Poll holdingRegs DevID(10) address 4355 - 1 bytes

                    modbus.0 2019-01-13 21:49:30.794 debug Poll holdingRegs DevID(10) address 4354 - 1 bytes

                    modbus.0 2019-01-13 21:49:30.792 debug Poll device 10

                    modbus.0 2019-01-13 21:49:25.768 debug Poll holdingRegs DevID(10) address 20507 - 1 bytes

                    1 Reply Last reply Reply Quote 0
                    • T
                      Teamgeist610 last edited by

                      Hallo zusammen,

                      sorry für die späte Antwort, ich war jetzt eine Zeit lang raus. Leider gibt es auch nicht viel neues bei mir. Ich habe die Verbindung zu der Vallox Anlage noch nicht ans laufen bekommen. Gefühl läuft es besser, um so höher die Baud Rate ist. Aber selbst mit 115000 schmiert der Adapter nach max. 3 bis 4 Stunden ab. Manchmal dauert es aber auch nur 15 Minuten. Ich habe mir auch schon einen anderen USB Adapter besorgt, aber das brachte auch nichts. Evtl. versuche ich es die Tage nochmal mit einem CAT 7 Kabel. Im Moment habe ich ein geschirmtes J-Y(ST)Y Kabel. Ich glaube zwar nicht das es daran liegt, aber viel mehr fällt mir nicht mehr ein.

                      Eine Frage zum Adapter hätte ich noch. Wenn ich mit einem anderen Programm eine sekündliche Abfrage starte, habe ich bei ca. 50.000 Abfragen auch ca. 40 bis 50 Timeout Fehler. Das sind aber immer nur einzelne Abfragen die nicht funktionieren. Bedeutet, wenn in einer Sekunde keine Daten kommen, sind diese in der nächsten Sekunde wieder verfügbar. Der Modbus Adapter disconnected sich immer und verbindet sich aber anscheinend danach nicht wieder. Gibt es da evtl. noch eine Einstellung für, wie sich der Adapter bei einem Timeout/Reconnect verhält?

                      Viele Grüße

                      1 Reply Last reply Reply Quote 0
                      • H
                        Hideloop last edited by

                        Hallo zusammen,

                        seid ein paar Tagen habe ich keine Verbindung des Modbus Adapter mehr zu meinem Wechselrichter.

                        modbus.0 2019-01-19 20:09:57.485 warn On error: {"code":"EHOSTUNREACH","errno":"EHOSTUNREACH","syscall":"connect","address":"192.168.1.165","port":1502}

                        modbus.0 2019-01-19 20:09:57.485 error Client in error state.

                        modbus.0 2019-01-19 20:09:57.484 error Socket Error

                        Das sind die Fehlermeldungen. Ich kann auf der entsprechenden Adresse mit anderen Tools die Register auslesen.

                        Jemand eine Idee?

                        Grüße,

                        Hideloop

                        (Adapter entfernt / neu installiert / mehrfach neu gestartet)

                        Hm … es liegt wohl an meiner IOBroker Installation bzw. der Modbus Installation auf diesem. Ich habe gerade einfach einen neuen auf meinem Win

                        System aufgesetzt und da kann ich die Werte auslesen.

                        1 Reply Last reply Reply Quote 0
                        • F
                          Frank_Reich last edited by

                          Hallo.

                          Ich hänge mich auch mal hier rein.

                          Also ich habe gestern eine Modbus RTU Verbindung zu einem überlagerten System aufgebaut.

                          Testweise tausche ich erstmal nur ein Bit aus.

                          Das funktioniert. Am Raspberry betreibe ich den auch hier schon öfter genannten Digitus USB->RS485 Adapter.

                          Bei meiner Installation läuft der ioBroker derzeit als Master.

                          Ist das bei serieller Verbindung nicht möglich, den ioBroker als Slave zu betreiben?

                          1 Reply Last reply Reply Quote 0
                          • wendy2702
                            wendy2702 last edited by

                            @Frank_Reich:

                            Hallo.

                            Ich hänge mich auch mal hier rein.

                            Also ich habe gestern eine Modbus RTU Verbindung zu einem überlagerten System aufgebaut.

                            Testweise tausche ich erstmal nur ein Bit aus.

                            Das funktioniert. Am Raspberry betreibe ich den auch hier schon öfter genannten Digitus USB->RS485 Adapter.

                            Bei meiner Installation läuft der ioBroker derzeit als Master.

                            Ist das bei serieller Verbindung nicht möglich, den ioBroker als Slave zu betreiben? `

                            Ich habe zwei PI‘s als Slave die MODBUS RTU Seriel nutzen.

                            1 Reply Last reply Reply Quote 0
                            • F
                              Frank_Reich last edited by

                              Bei mir kann ich, wenn ’Serial‘ gewählt ist, nicht von ’Master’ auf ’Slave’ umstellen.
                              18084_5545d6f6-a762-4ddd-9feb-43f9136ebdd4.jpeg

                              1 Reply Last reply Reply Quote 0
                              • wendy2702
                                wendy2702 last edited by

                                Ok.

                                Dann reden wir über etwas anderes.

                                Bei mir ist die Modbus Instanz immer der MASTER und das Gerät welches ich Auslese quasi der Slave.

                                Meine PIs laufen als Slaves in einer ioBroker Multihost Umgebung.

                                Warum willst das die Instanz als Slave laufen lassen?

                                Gesendet von iPhone mit Tapatalk Pro

                                1 Reply Last reply Reply Quote 0
                                • F
                                  Frank_Reich last edited by

                                  Ok. Danke für die Info.

                                  Ich benutze ein übergeordnetes System, was ich lieber als Modbus-Master betreiben würde.

                                  Ich möchte den ioBroker quasi als Datensammler bzw. Gateway benutzen. Sodass die eigentlichen Funktionen übergeordnet bearbeitet werden.

                                  Wenn nun weitere Geräte/2.ioBroker dazu kommt, wird es schwieriger diese Signale an das übergeordnete System durchzureichen.

                                  1 Reply Last reply Reply Quote 0
                                  • D
                                    darkbrain85 last edited by

                                    Hier ist ein ähnliches Problem.

                                    Modbus Adapter in aktueller Version mit einem Energiezähler (SDM120 von B+G) (soll an sich mal mehr werden).

                                    Die Kommunikation läuft auch nach dem Start des Adapters sauber. Irgendwann gibt es dann timeouts und nichts geht mehr. Lasse ich den Adapter einfach in Ruhe, wird irgendwann wieder kommuniziert. Die genauen Zeitlichen Abstände oder einen Zusammenhang konnte ich leider noch nicht ausmachen.

                                    Hat dazu noch jemand eine Idee? Aufgrund der teilweise Stundenlangen funktionalität bin ich geneigt erst mal Kabel oder Widerstände auszuschließen. Oder denke ich da zu kurz?

                                    Genutzt wird hier ein RS485 HAT auf einem Raspberry im Slave betrieb.

                                    Ich habe jetzt auch mal einen RS485 USB Stick bestellt. Dann kann ich mal direkt an den Iobroker Master unter Debian gehen.

                                    Haben die Leute mit den Verbindungsabbrüchen auch immer Raspberrys im Einsatz? Und was nutzen die, bei denen es problemlos läuft?

                                    1 Reply Last reply Reply Quote 0
                                    • wendy2702
                                      wendy2702 last edited by

                                      Ich habe PI's im Einsatz und immer den Stick von Digitus. Dazu Verbindung mit CAT6 Kabel und Anschlußwiderstände.

                                      1 Reply Last reply Reply Quote 0
                                      • D
                                        darkbrain85 last edited by

                                        @wendy2702:

                                        Ich habe PI's im Einsatz und immer den Stick von Digitus. Dazu Verbindung mit CAT6 Kabel und Anschlußwiderstände. `

                                        Ich habe mir jetzt zusätzlich auch den Digitus Stick bestellt. Vielleicht muss ich auch noch 120 Ohm Widerstände besorgen. Ich habe momentan je 2 Widerstände mit rechnerisch 121 Ohm… aber das sollte ja nicht weiter relevant sein.

                                        Ist es eigentlich egal welche Art Widerstand man verwendet?

                                        1 Reply Last reply Reply Quote 0
                                        • wendy2702
                                          wendy2702 last edited by

                                          Die Art des Widerstandes sollte egal sein.

                                          1 Reply Last reply Reply Quote 0
                                          • D
                                            darkbrain85 last edited by

                                            Hi!

                                            Der Modbus Adapter trennt ja relativ fix die Verbindung wenn ein Fehler aufgetreten ist. So auch bei Registern die aktuell nicht geschrieben werden können. Bei meinem Zähler muss vorher das Schreiben am Zähler temporär aktiviert werden.

                                            Sobald der Schreibvorgang fehlschlägt, ist die Verbindung weg. Damit kann ich leben. Leider wird dann aber auch nicht neu verbunden. Erst wenn ich den Adapter neu starte, läuft die Kommunikation wieder.

                                            Ist das beabsichtigt, bzw. muss das so? Ich glaube das dies auch bei jedem anderen Fehler der Fall ist. Das sorgt früher oder später zu einem Kommunikationsabbruch. Eventuell ist das ein Problem des Adapters? Oder Generell ein Modbus "Feature"?

                                            1860_bildschirmfoto_2019-01-28_um_16.23.45.png

                                            Edit: Kann es sein, dass der Raspberry zwischendurch den /dev/ttyAMA0 für eine andere Anwendung missbraucht und deswegen die Verbindung abbricht? Und bei einem Neustart des Adapters holt sich iobroker das Interface wieder? die Serielle Konsole habe ich schon deaktiviert, aber sonst wüsste ich nicht wo und wie ich suchen soll….

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

                                            Support us

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

                                            977
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            modbus modbus adapter
                                            140
                                            970
                                            298808
                                            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