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

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Modbus Master und Slave

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.4k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Modbus Master und Slave

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
17 Beiträge 4 Kommentatoren 1.6k Aufrufe 2 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.
  • B bitwicht

    @Ralla66
    @Homoran

    Das Problem ist, das ich in keiner Anleitung lesen kann wie sich die Geräte verhalten.

    In den Spezifikationen vom Modbus TCP steht, dass mehrere Master im Bus sein können.

    Der iobroker Modbus Adapter läuft auf: TCP, Master und als Partner ID ist der WR (Solaredge) eingegeben.

    Ich vermute der Solaredge ist ein Slave.
    Ich vermute der Solarlog ist ein Master.

    Sobald der Solarlog und iobroker "an" sind, erhält der Solarlog Daten aber der iobroker rennt in einen Timeout ...

    GlasfaserG Offline
    GlasfaserG Offline
    Glasfaser
    schrieb am zuletzt editiert von
    #8

    @bitwicht sagte in Modbus Master und Slave:

    Sobald der Solarlog und iobroker "an" sind, erhält der Solarlog Daten aber der iobroker rennt in einen Timeout ...

    Richtig ... denn Solaredge über TCP läßt nur eine Verbindung zu .

    So habe ich es :

    Per TCP auf den SolarEdge:

    damit ich per Modbus ioBroker es auslesen kann

    Dann per Modbus TCP IP Adapter auf den Bus RS485 vom SolareEdge

    habe ich EVCC daran angebunden

    Deine Lösung wäre :

    Per Modbus Proxy

    https://forum.iobroker.net/post/1099145

    Also Proxy Modbus auf die SolarEdge

    dann Solarlog und ioBroker nehmen dann den Modbus Proxy

    Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

    1 Antwort Letzte Antwort
    1
    • B Offline
      B Offline
      bitwicht
      schrieb am zuletzt editiert von
      #9

      @Glasfaser

      Danke für die Antwort.
      So ganz habe ich es noch nicht verstanden.

      Ich habe zwei SE WR und kann daher die RS485 nicht verwenden da bei einem WR beide RS485 belegt sind und ich somit nur einen anbinden könnte.

      Der Solarlog ist ja hard-coded auf Port 502 eingestellt.
      Heißt der Modbus-Proxy müsste die SE WR zb: auf Port 1502 abfragen und die Daten auf Port 502 für Solarlog und 503 für iobroker bereitstellen?

      lg Bit

      GlasfaserG 1 Antwort Letzte Antwort
      0
      • B bitwicht

        @Glasfaser

        Danke für die Antwort.
        So ganz habe ich es noch nicht verstanden.

        Ich habe zwei SE WR und kann daher die RS485 nicht verwenden da bei einem WR beide RS485 belegt sind und ich somit nur einen anbinden könnte.

        Der Solarlog ist ja hard-coded auf Port 502 eingestellt.
        Heißt der Modbus-Proxy müsste die SE WR zb: auf Port 1502 abfragen und die Daten auf Port 502 für Solarlog und 503 für iobroker bereitstellen?

        lg Bit

        GlasfaserG Offline
        GlasfaserG Offline
        Glasfaser
        schrieb am zuletzt editiert von
        #10

        @bitwicht sagte in Modbus Master und Slave:

        Heißt der Modbus-Proxy müsste die SE WR zb: auf Port 1502 abfragen und die Daten auf Port 502 für Solarlog und 503 für iobroker bereitstellen?

        Fast richtig

        ... der Modbus Proxy fragt den WR auf Port 1502 ab ,
        dann Solarlog und ioBroker auf die Modbus Proxy IP und 1502 einstellen , dieser läßt dann auch mehere Clients zu .

        Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

        1 Antwort Letzte Antwort
        0
        • B Offline
          B Offline
          bitwicht
          schrieb am zuletzt editiert von
          #11

          @Glasfaser

          Ich habe das kurz getestet aber bekomme einen Fehler wenn ich den Port auf 502 öffnen möchte (mit Port 9000 würde es gehen). Hast du eine Idee?

          pi@raspberrypi:~/.local/bin $ ./modbus-proxy -b tcp://192.168.0.11:502 --modbus tcp://192.168.0.123:1502
          2024-01-01 15:24:41,936     INFO modbus-proxy: Starting...
          Traceback (most recent call last):
            File "/home/pi/.local/bin/./modbus-proxy", line 8, in <module>
              sys.exit(main())
            File "/home/pi/.local/lib/python3.9/site-packages/modbus_proxy.py", line 343, in main
              asyncio.run(run())
            File "/usr/lib/python3.9/asyncio/runners.py", line 44, in run
              return loop.run_until_complete(main)
            File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
              return future.result()
            File "/home/pi/.local/lib/python3.9/site-packages/modbus_proxy.py", line 338, in run
              await run_bridges(bridges, ready=ready)
            File "/home/pi/.local/lib/python3.9/site-packages/modbus_proxy.py", line 327, in run_bridges
              await start_bridges(bridges)
            File "/home/pi/.local/lib/python3.9/site-packages/modbus_proxy.py", line 320, in start_bridges
              await asyncio.gather(*coros)
            File "/home/pi/.local/lib/python3.9/site-packages/modbus_proxy.py", line 188, in start
              self.server = await asyncio.start_server(
            File "/usr/lib/python3.9/asyncio/streams.py", line 94, in start_server
              return await loop.create_server(factory, host, port, **kwds)
            File "/usr/lib/python3.9/asyncio/base_events.py", line 1494, in create_server
              raise OSError(err.errno, 'error while attempting '
          PermissionError: [Errno 13] error while attempting to bind on address ('192.168.0.11', 502): permission denied
          
          
          GlasfaserG 1 Antwort Letzte Antwort
          0
          • B bitwicht

            @Glasfaser

            Ich habe das kurz getestet aber bekomme einen Fehler wenn ich den Port auf 502 öffnen möchte (mit Port 9000 würde es gehen). Hast du eine Idee?

            pi@raspberrypi:~/.local/bin $ ./modbus-proxy -b tcp://192.168.0.11:502 --modbus tcp://192.168.0.123:1502
            2024-01-01 15:24:41,936     INFO modbus-proxy: Starting...
            Traceback (most recent call last):
              File "/home/pi/.local/bin/./modbus-proxy", line 8, in <module>
                sys.exit(main())
              File "/home/pi/.local/lib/python3.9/site-packages/modbus_proxy.py", line 343, in main
                asyncio.run(run())
              File "/usr/lib/python3.9/asyncio/runners.py", line 44, in run
                return loop.run_until_complete(main)
              File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
                return future.result()
              File "/home/pi/.local/lib/python3.9/site-packages/modbus_proxy.py", line 338, in run
                await run_bridges(bridges, ready=ready)
              File "/home/pi/.local/lib/python3.9/site-packages/modbus_proxy.py", line 327, in run_bridges
                await start_bridges(bridges)
              File "/home/pi/.local/lib/python3.9/site-packages/modbus_proxy.py", line 320, in start_bridges
                await asyncio.gather(*coros)
              File "/home/pi/.local/lib/python3.9/site-packages/modbus_proxy.py", line 188, in start
                self.server = await asyncio.start_server(
              File "/usr/lib/python3.9/asyncio/streams.py", line 94, in start_server
                return await loop.create_server(factory, host, port, **kwds)
              File "/usr/lib/python3.9/asyncio/base_events.py", line 1494, in create_server
                raise OSError(err.errno, 'error while attempting '
            PermissionError: [Errno 13] error while attempting to bind on address ('192.168.0.11', 502): permission denied
            
            
            GlasfaserG Offline
            GlasfaserG Offline
            Glasfaser
            schrieb am zuletzt editiert von
            #12

            @bitwicht

            Ich habe es so ... hinbekommen

            Docker holt die Daten von Port 4196 von meinem Master
            (Waveshare Industrial Serial Server RS485 to RJ45 Ethernet TCP/IP to Serial )
            wo ich zwei Modbus Zähler angeschlossen habe .

            7e701097-3492-403d-b6c2-1c967ab34c00-grafik.png

            Einstellung yml Datei

            devices:
            - modbus:
                url: 192.168.178.41:4196
              listen:
                bind: 0:4196
            

            so in ioBroker :

            b2c40e5b-f25c-4127-af4a-dd8bcc4abb7f-grafik.png

            und so in EVCC

            # - name: my_charger_meter
               type: template
               template: eastron
               usage: charge    
                # RS485 via TCP/IP (Modbus RTU)
               modbus: tcpip
               id: 2
               host: 192.168.178.11 # Hostname
               port: 5020 # Port
            

            Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

            1 Antwort Letzte Antwort
            0
            • B Offline
              B Offline
              bitwicht
              schrieb am zuletzt editiert von
              #13

              @Glasfaser

              Der Port 4196 oder 9000 würde sich starten lassen

              pi@raspberrypi:~/.local/bin $ ./modbus-proxy -b tcp://0:4196 --modbus tcp://192.168.0.123:1502
              2024-01-01 15:42:06,788     INFO modbus-proxy: Starting...
              2024-01-01 15:42:06,796     INFO modbus-proxy.ModBus(192.168.0.123:1502): Ready to accept requests on 0:4196
              

              Problem ist, das der Solarlog "hart" auf 502 hört und man den Portnicht ändern kann.

              Ich muss als den Proxy unter 502 starten wo er den Fehler schmeißt :-(

              GlasfaserG 1 Antwort Letzte Antwort
              0
              • B bitwicht

                @Glasfaser

                Der Port 4196 oder 9000 würde sich starten lassen

                pi@raspberrypi:~/.local/bin $ ./modbus-proxy -b tcp://0:4196 --modbus tcp://192.168.0.123:1502
                2024-01-01 15:42:06,788     INFO modbus-proxy: Starting...
                2024-01-01 15:42:06,796     INFO modbus-proxy.ModBus(192.168.0.123:1502): Ready to accept requests on 0:4196
                

                Problem ist, das der Solarlog "hart" auf 502 hört und man den Portnicht ändern kann.

                Ich muss als den Proxy unter 502 starten wo er den Fehler schmeißt :-(

                GlasfaserG Offline
                GlasfaserG Offline
                Glasfaser
                schrieb am zuletzt editiert von Glasfaser
                #14

                @bitwicht

                Das Problem ist ...
                ich kenne es von meiner Wetterstation die ich auch eingebunden habe auf Port 9999
                , da <1025 die Ports Rechte brauchen

                https://forum.iobroker.net/post/361563

                Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                1 Antwort Letzte Antwort
                0
                • B Offline
                  B Offline
                  bitwicht
                  schrieb am zuletzt editiert von
                  #15

                  @Glasfaser

                  mit sudo könnte ich es auch testen, aber bekomme ich wieder einen Fehler:

                  Mache ich da mit sudo was falsch?

                  pi@raspberrypi:~/.local/bin $ sudo ./modbus-proxy -b tcp://192.168.0.11:502 --modbus tcp://192.168.0.123:1502
                  Traceback (most recent call last):
                  File "/home/pi/.local/bin/./modbus-proxy", line 5, in <module>
                  from modbus_proxy import main
                  ModuleNotFoundError: No module named 'modbus_proxy'

                  GlasfaserG 1 Antwort Letzte Antwort
                  0
                  • B bitwicht

                    @Glasfaser

                    mit sudo könnte ich es auch testen, aber bekomme ich wieder einen Fehler:

                    Mache ich da mit sudo was falsch?

                    pi@raspberrypi:~/.local/bin $ sudo ./modbus-proxy -b tcp://192.168.0.11:502 --modbus tcp://192.168.0.123:1502
                    Traceback (most recent call last):
                    File "/home/pi/.local/bin/./modbus-proxy", line 5, in <module>
                    from modbus_proxy import main
                    ModuleNotFoundError: No module named 'modbus_proxy'

                    GlasfaserG Offline
                    GlasfaserG Offline
                    Glasfaser
                    schrieb am zuletzt editiert von Glasfaser
                    #16

                    @bitwicht

                    Es liegt an den Ports , nicht an dem Sudo Befehl zum ausführen .

                    Suche gerade im INet ... aber wie du schon schreibts hart auf Port 502 eingestellt

                    Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                    1 Antwort Letzte Antwort
                    0
                    • B Offline
                      B Offline
                      bitwicht
                      schrieb am zuletzt editiert von
                      #17

                      @Glasfaser

                      ah, ich dachte vielleicht darf nur sudo den Port nutzen.
                      Anscheinend sind im Script oder woher auch immer einige Ports ausgeschlossen.

                      Muss ich einen anderen Weg suchen.
                      Ich wollte in erster Linie den Solarlog FTP Export nutzen.

                      Da ich die Daten eigentlich im iobroker habe, müsste ich die FTP Daten mit dem iobroker zusammenbauen (wenn ich wüsste wie das geht).

                      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

                      430

                      Online

                      32.7k

                      Benutzer

                      82.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