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

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    Modbus adapter

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

      Habe wegen des "issue with the scale factors" über Github ein Update auf die neuste Version 3.4.5 durchgeführt.
      Dieser Fehler schein beseitigt. Auch sind die gelegentlichen Verbindungsabbrüche weg.

      Bei erweitern der Registerliste gabs anschließend Probleme:


      2021-06-20 15:59:47.186 - debug: modbus.0 (13669) Input Value = 23
      2021-06-20 15:59:47.187 - debug: modbus.0 (13669) Formula = x * Math.pow (10, sf ['40257']);
      2021-06-20 15:59:47.187 - debug: modbus.0 (13669) Calculation result = 2.3000000000000003, type = number
      2021-06-20 15:59:47.188 - debug: modbus.0 (13669) Input Value = 0
      2021-06-20 15:59:47.188 - debug: modbus.0 (13669) Formula = x * Math.pow (10, sf ['40258']);
      2021-06-20 15:59:47.188 - debug: modbus.0 (13669) Calculation result = 0, type = number
      2021-06-20 15:59:47.190 - debug: modbus.0 (13669) Poll holdingRegs DevID(1) address 40334 - -107 bytes
      2021-06-20 15:59:47.194 - debug: modbus.0 (13669) Received pdu describes an error.
      2021-06-20 15:59:47.195 - warn: modbus.0 (13669) Poll error count: 1 code: {"errorCode":131,"exceptionCode":2,"message":"ILLEGAL DATA ADDRESS"}
      2021-06-20 15:59:47.246 - debug: modbus.0 (13669) Poll device 200
      2021-06-20 15:59:47.246 - debug: modbus.0 (13669) Poll holdingRegs DevID(200) address 40087 - 5 bytes

      Es entsteht ein ERROR, da laut LOG -107 bytes (negative Zahl) gelesen werden sollen.

      1 Reply Last reply Reply Quote 0
      • M
        Matis @Glasfaser last edited by

        @glasfaser

        ... neue Installation, Modbus, Views und Java importieren und dann sollte es neue saubere Inst. sein.
        Ich hab's aber wegen zu viel Aufwand aufgegeben, stable neu installiert und iobroker aus dem backup drüber kopiert, läuft einwandfrei, fertig.

        Seit irgendeinem Adapter Update ist die "Übersicht" leer.
        War es aber komischer Weise auch mit der 5er Installation, sobald altes GUI gewählt war.

        1 Reply Last reply Reply Quote 0
        • P
          puppet1912 last edited by

          Hallo zusammen!

          Ich habe den Modbus-Adapter nun schon eine ganze Weile erfolgreich am Laufen. Da mein Raspi3 nun an seinen Grenzen kam, habe ich ein frisches System auf einem Raspi4 mit 8Gb aufgesetzt. Soweit so gut. Beim Gerät das ich Abfrage handelt es sich um eine Pluggit Ap 310 (zentrale Lüftungsanlage für Wohngebäude).

          Genau wie auf dem Alten ist Modbus auf dem Neuen in der Version 3.4.11 installiert. Ebenso nutze ich auf dem neuen wieder Admin 5.
          Nun wollte ich recht simpel die TSV-Datei aus der alten Installation in die neue eintragen. Beim Import selber kommen keine Fehler, jedoch dann im Log selbst. Der Adapter beendet dann auch recht zeitnah die Verbindung zur Pluggit.

          Folgendes steht im Log

          modbus.0
          	2021-09-15 19:10:57.364	info	Disconnected from slave 192.168.178.25
          modbus.0
          	2021-09-15 19:09:56.362	warn	Poll error count: 4 code: {"errorCode":131,"exceptionCode":2,"message":"ILLEGAL DATA ADDRESS"}
          modbus.0
          	2021-09-15 19:09:56.354	info	Connected to slave 192.168.178.25
          modbus.0
          	2021-09-15 19:08:56.350	info	Disconnected from slave 192.168.178.25
          modbus.0
          	2021-09-15 19:07:55.288	warn	Poll error count: 3 code: {"errorCode":131,"exceptionCode":2,"message":"ILLEGAL DATA ADDRESS"}
          modbus.0
          	2021-09-15 19:07:55.278	info	Connected to slave 192.168.178.25
          modbus.0
          	2021-09-15 19:06:55.275	info	Disconnected from slave 192.168.178.25
          modbus.0
          	2021-09-15 19:05:54.273	warn	Poll error count: 2 code: {"errorCode":131,"exceptionCode":2,"message":"ILLEGAL DATA ADDRESS"}
          modbus.0
          	2021-09-15 19:05:54.265	info	Connected to slave 192.168.178.25
          modbus.0
          	2021-09-15 19:04:54.260	info	Disconnected from slave 192.168.178.25
          modbus.0
          	2021-09-15 19:03:53.175	warn	Poll error count: 1 code: {"errorCode":131,"exceptionCode":2,"message":"ILLEGAL DATA ADDRESS"}
          modbus.0
          	2021-09-15 19:03:53.158	info	Connected to slave 192.168.178.25
          modbus.0
          	2021-09-15 19:03:52.451	info	starting. Version 3.4.11 in /opt/iobroker/node_modules/iobroker.modbus, node: v14.17.5, js-controller: 3.3.15
          

          Die Daten stimme 1zu1 mit denen der alten Installation überein, habe sie ja direkt kopiert. Ebenso läuft der Modbus-Adapter auf der alten Installation nicht, wenn ich mit der Neuen teste.

          Jemand eine Idee woran das noch liegen kann?

          Danke und Grüße

          Glasfaser 1 Reply Last reply Reply Quote 0
          • Glasfaser
            Glasfaser @puppet1912 last edited by

            @puppet1912 sagte in Modbus adapter:

            Die Daten stimme 1zu1 mit denen der alten Installation überein,

            Was passiert , wenn du nur ein Register abfragst , also nur ein Eintrag in der TSV

            P 1 Reply Last reply Reply Quote 0
            • P
              puppet1912 @Glasfaser last edited by

              @glasfaser

              @glasfaser said in Modbus adapter:

              Was passiert , wenn du nur ein Register abfragst , also nur ein Eintrag in der TSV

              Das klappt in der Regel. Habe auch schon mal zwei Einträge zum Laufen bekommen. Aber ein Schema erkenne ich da einfach nicht.

              Glasfaser 1 Reply Last reply Reply Quote 0
              • Glasfaser
                Glasfaser @puppet1912 last edited by

                @puppet1912

                dann ist ein Fehler drin .

                Ich weiß ja nicht wieviel du abfragst !?
                ,Teile doch beim einfügen den Inhalt in den TSV , nach und nach den falschen
                Eintrag suchen .

                P 1 Reply Last reply Reply Quote 0
                • P
                  puppet1912 @Glasfaser last edited by

                  @glasfaser

                  Ich frage insgesamt 17 Register ab.

                  _address	name	description	unit	type	len	factor	offset	formula	role	room	poll	wp	cw	isScale
                  40473	prmCurrentBLState	Status setzen 6=Sommer, 1=Normal		uint32sw	2	1	0		level		true	false		
                  40169	prmRamIdxUnitMode	Betriebsart setzen man=4, auto=8, bypass an=128 aus=32896, Sonne=2052		uint32sw	2	1	0		level		true	true		
                  40325	prmRomIdxSpeedLevel	Status Luefter 0,1,2,3,4		uint32sw	2	1	0		level		true	true		
                  40101	prmHALTaho1	Drehzahl Luefter 1 --> out	rpm	floatsw	2	1	0		value		true	false		
                  40103	prmHALTaho2	Drehzahl Luefter 2 <-- in	rpm	floatsw	2	1	0		value		true	false		
                  40133	prmRamIdxT1	Aussentemperatur <-- out	°C	floatsw	2	1	0		value		true	false		
                  40135	prmRamIdxT2	Zuluft zu den Raemen <-- in	°C	floatsw	2	1	0		value		true	false		
                  40137	prmRamIdxT3	Ablufttemperatur aus den Raemen --> in	°C	floatsw	2	1	0		value		true	false		
                  40139	prmRamIdxT4	Ablufttemperatur nach draussen --> out	°C	floatsw	2	1	0		value		true	false		
                  40555	prmFilterRemainingTime	Filterwechsel in	Tage	uint32sw	2	1	0		value		true	false		
                  40625	Arbeitszeit	in Stunden		uint32sw	2	1	0		value		true	false		
                  40445	prmBypassTmin	Min Temperatur fuer Aussenluft	°C	floatsw	2	1	0		value		true	false		
                  40447	prmBypassTmax	Max Temperatur fuer Innenluft	°C	floatsw	2	1	0		value		true	false		
                  40199	prmRamIdxBypassActualState	Status 0=zu, 255=auf		int32sw	2	1	0		value		true	false		
                  40265	prmRamIdxBypassManualTimeout	Manuelle Ruecksetzzeit		int32sw	2	1	0		value		true	false		
                  40431	prmVOC	VOC Sensor	ppm	uint32sw	2	1	0		value		true	false	false	
                  40197	prmRamIdxRh3Corrected	rel. Luftfeuchtigkeit	%	uint32sw	2	1	0		value.humidity		true	false	false	
                  

                  Auch das habe ich bereits versucht. Leider ohne Erfolg. Ich frage mich halt, wie da ein Fehler rein kommen kann. Ich kopiere die TSV ja aus einem Adapter der mit genau dieser Config läuft und keinerlei Fehler bringt.

                  Glasfaser 1 Reply Last reply Reply Quote 0
                  • Glasfaser
                    Glasfaser @puppet1912 last edited by

                    @puppet1912

                    Test mal damit !?

                    _address	name	description	unit	type	len	factor	offset	formula	role	room	poll	wp	cw	isScale
                    40139	prmRamIdxT4	Ablufttemperatur nach draussen --> out	°C	floatsw	2	1	0		value		true	false	false	false
                    40555	prmFilterRemainingTime	Filterwechsel in	Tage	uint32sw	2	1	0		value		true	false	false	false
                    40625	Arbeitszeit	in Stunden		uint32sw	2	1	0		value		true	false	false	false
                    40445	prmBypassTmin	Min Temperatur fuer Aussenluft	°C	floatsw	2	1	0		value		true	false	false	false
                    40447	prmBypassTmax	Max Temperatur fuer Innenluft	°C	floatsw	2	1	0		value		true	false	false	false
                    40199	prmRamIdxBypassActualState	Status 0=zu, 255=auf		int32sw	2	1	0		value		true	false	false	false
                    40265	prmRamIdxBypassManualTimeout	Manuelle Ruecksetzzeit		int32sw	2	1	0		value		true	false	false	false
                    40431	prmVOC	VOC Sensor	ppm	uint32sw	2	1	0		value		true	false	false	false
                    40197	prmRamIdxRh3Corrected	rel. Luftfeuchtigkeit	%	uint32sw	2	1	0		value		true	false	false	false
                    

                    P 1 Reply Last reply Reply Quote 0
                    • P
                      puppet1912 @Glasfaser last edited by puppet1912

                      @glasfaser

                      Da funktioniert nur die ersten drei.

                      Edit:
                      Ich konnte den Fehler finden. Vermutlich der billigste überhaupt der mir unterlaufen konnte. Die Adressen waren in meiner alten TSV nicht aufsteigend geordnet. Damit scheint die neue Installation nicht klar zu kommen, warum auch immer.
                      Ich habe jetzt alles geordnet und bekomme endlich wieder Werte.

                      Ich danke dir vielmals für den Denkanstoß!

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

                        Hallo
                        Ich habe ähnliche probleme.Bei mir ist alles super gelaufen.Als ein Update des Modbus Adapter kam ging plötzlich nichts mehr .Gibt es da schon erfahrungen?

                        modbus.0
                        2021-11-17 21:20:29.204 info Disconnected from slave 192.......
                        modbus.0
                        2021-11-17 21:20:29.153 warn Poll error count: 8 code: {"errorCode":132,"exceptionCode":3,"message":"ILLEGAL DATA VALUE"}
                        modbus.0
                        2021-11-17 21:20:29.134 info Connected to slave 192..........

                        Der code 8 wiederholt sich auf ander also code 1 bis 10

                        Danke schonmal

                        D 1 Reply Last reply Reply Quote 0
                        • D
                          DoubleD @Malu last edited by

                          @Bluefox

                          Ist es möglich einzelne Register die nicht per intervall abgerufen werden sollen. Einzeln manuell anzustoßen?
                          Also irgendwie in der Art getRegister(1234) und dann wird der Register gelesen?
                          Wenn nein, kann man sowas implementieren?

                          Danke & Gruß
                          Daniel

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

                            @Bluefox

                            Ist es möglich einzelne Register die nicht per intervall abgerufen werden sollen. Einzeln manuell anzustoßen?
                            Also irgendwie in der Art getRegister(1234) und dann wird der Register gelesen?
                            Wenn nein, kann man sowas implementieren?

                            Danke & Gruß
                            Daniel

                            K 1 Reply Last reply Reply Quote 0
                            • K
                              klassisch Most Active @DoubleD last edited by

                              @doubled Ich bin kein Modbus Experte, sondern nur Nutzer und das auch nur in einer Konfiguration.
                              In dieser Konfiguration mit einem kleinem Victron Wechselrichter wäre das nicht möglich. Da muß man den Wechselrichter zum Senden auffordern. Man kann dort mit der aktuellen Firmware Version selektiv subskribiren, was man haben möchte. Dann sendet er diese Daten in dem zeitlichen Abstand den er will.
                              Damit wäre in diesem speziellen Fall Dein Anliegen so wie Du es beschrieben hast, leider nicht lösbar.

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

                                3a858ee9-8a9f-48a9-afcc-0151981496bd-grafik.png

                                Guten Morgen,

                                ich verzweifle an der Modbus Beschreibung dieses Sensors. Die Verbindung zum Slave/Server funktioniert. Aber ich weiß nicht, was ich bei Eingangsregister eintragen muss, da ich mit der Beschreibung nicht hin komme 😞 Kann mir jemand helfen?

                                J 1 Reply Last reply Reply Quote 0
                                • J
                                  JoergH @nerg last edited by

                                  @nerg Also ich kenne mich mit diesen Sensoren nicht aus, aber generell musst Du eigentlich nun nur die Holding-Register entsprechend im Adapter eintragen. Dazu gibt es eine Basisaddresse und auf diese werden dann sozusagen die Adressen in der linken Spalte aufgeschlagen. Der Inhalt ist in Deiner Tabelle beschrieben, ebenso welchen Typ das Register hat (z.B. signed Integer, Float, etc.). All diese Werte musst Du im Adapter eintragen, dann werden sie "abgeholt" und in Datenpunkten abgelegt. Schau Dir vielleicht mal die Threads zum Thema Solarwechselrichter an, da ist das im Prinzip genauso.

                                  N 1 Reply Last reply Reply Quote 0
                                  • N
                                    nerg @JoergH last edited by

                                    @joergh Das klappt bisher leider gar nicht. Egal was ich versuche, ich erhalte

                                    	Poll error count: 6 code: {"errorCode":131,"exceptionCode":1,"message":"ILLEGAL FUNCTION"}
                                    

                                    Hab es im Holding Register mit "12" "40012" und allen Float-Typen versucht - ich komme da nicht weiter 😞

                                    F wendy2702 2 Replies Last reply Reply Quote 0
                                    • F
                                      Farmer-cb @nerg last edited by

                                      @nerg schon mal mit 412 getestet

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

                                        @nerg Mal das loggen für den Adapter auf Debug gestellt und geschaut ob im log noch etwas mehr kommt?

                                        N 1 Reply Last reply Reply Quote 0
                                        • N
                                          nerg @wendy2702 last edited by

                                          @wendy2702 @Farmer-cb Nach weiteren Versuchen: Ich musste es auf "Eingagsregister" mit "12" eingeben. Danke für eure Unterstützung

                                          M 1 Reply Last reply Reply Quote 0
                                          • M
                                            Matis @nerg last edited by

                                            Seit dem Update auf 5.0.0 bekomme ich plötzlich Fehler im log für meine Abfrage der Wallbox.
                                            Ich habe absolut nichts geändert, außer dem Update des Modbus Adapters.

                                            2022-05-13 15:14:29.915 - warn: modbus.2 (23092) Error: undefined
                                            2022-05-13 15:14:29.916 - error: modbus.2 (23092) Request timed out.
                                            2022-05-13 15:14:29.919 - error: modbus.2 (23092) Client in error state.
                                            2022-05-13 15:14:29.920 - warn: modbus.2 (23092) Poll error count: 1 code: {"err":"timeout","timeout":5000}

                                            Was kann ich tun, um das weiter einzugrenzen?

                                            Glasfaser 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

                                            931
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

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