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. Einsteigerfragen
  4. Sofar Solar HYD10 KTL Wechselrichter an modbus Adapter

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Sofar Solar HYD10 KTL Wechselrichter an modbus Adapter

Geplant Angeheftet Gesperrt Verschoben Einsteigerfragen
186 Beiträge 20 Kommentatoren 25.1k Aufrufe 16 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.
  • spicerS spicer

    @WilliK sagte in Sofar Solar HYD10 KTL Wechselrichter an modbus Adapter:

    @spicer hast du diese Einstellungen mal komplett übernommen und ausprobiert, du hast in deinen Screenshots einiges anders eingestellt. https://forum.iobroker.net/post/974683

    Mein Waveshare hat nicht die gleiche Eingabemaske.

    HomoranH Nicht stören
    HomoranH Nicht stören
    Homoran
    Global Moderator Administrators
    schrieb am zuletzt editiert von
    #170

    @spicer sagte in Sofar Solar HYD10 KTL Wechselrichter an modbus Adapter:

    Mein Waveshare hat nicht die gleiche Eingabemaske.

    aber wahrscheinlich vergleichbare Felder.

    So hast du bei iob RTUoverTCP strhen,@willik nur TCP, da sein waveshare ein tcp server ist.

    Hast du das mal verglichen/getestet?

    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

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

    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

    spicerS 1 Antwort Letzte Antwort
    0
    • HomoranH Homoran

      @spicer sagte in Sofar Solar HYD10 KTL Wechselrichter an modbus Adapter:

      Mein Waveshare hat nicht die gleiche Eingabemaske.

      aber wahrscheinlich vergleichbare Felder.

      So hast du bei iob RTUoverTCP strhen,@willik nur TCP, da sein waveshare ein tcp server ist.

      Hast du das mal verglichen/getestet?

      spicerS Online
      spicerS Online
      spicer
      schrieb am zuletzt editiert von spicer
      #171

      @Homoran sagte in Sofar Solar HYD10 KTL Wechselrichter an modbus Adapter:

      @spicer sagte in Sofar Solar HYD10 KTL Wechselrichter an modbus Adapter:

      Mein Waveshare hat nicht die gleiche Eingabemaske.

      aber wahrscheinlich vergleichbare Felder.

      So hast du bei iob RTUoverTCP strhen,@willik nur TCP, da sein waveshare ein tcp server ist.

      Hast du das mal verglichen/getestet?

      Du bist mein Held. Mit TCP klappt es.
      Mann, über seit 1 Jahr :D

      Ich vermute, dass auch der Kabelwechsel heute etwas gebracht hat. Habe ein abgeschirmtes eingebaut. Standard bei Auslieferung war ein gewöhnliches TD 12x0.75.

      Wenn es mehrere Möglichkeiten gibt, eine Aufgabe zu erledigen, und eine davon in einer Katastrophe endet oder sonstwie unerwünschte Konsequenzen nach sich zieht, dann wird es jemand genau so machen. Alles, was schiefgehen kann, wird auch schiefgehen.
      (Murphys Gesetz)

      1 Antwort Letzte Antwort
      0
      • spicerS Online
        spicerS Online
        spicer
        schrieb am zuletzt editiert von
        #172

        Welcher Parameter ist das Total für Battery Power und SOC?
        Ich sehe in der xls Tabelle nur Parameter für Bat1, Bat2 usw.
        Ich habe 4 Batterien dran.

        Wenn es mehrere Möglichkeiten gibt, eine Aufgabe zu erledigen, und eine davon in einer Katastrophe endet oder sonstwie unerwünschte Konsequenzen nach sich zieht, dann wird es jemand genau so machen. Alles, was schiefgehen kann, wird auch schiefgehen.
        (Murphys Gesetz)

        1 Antwort Letzte Antwort
        0
        • R Online
          R Online
          RISSN
          schrieb am zuletzt editiert von
          #173

          Warum nimmst du nicht einen Stick? Die Sticks für den Sofar mit LAN können auch Modbus, nutze ich so schon ein Jahr, geht super und die Daten gehen auch gleich in die App

          1 Antwort Letzte Antwort
          0
          • spicerS Online
            spicerS Online
            spicer
            schrieb am zuletzt editiert von
            #174

            Hab ich auch gehört, dass der lan Stick das kann. Wäre die nächste Variante gewesen, wenn das mit der rs485 nicht geklappt hätte.

            Wenn es mehrere Möglichkeiten gibt, eine Aufgabe zu erledigen, und eine davon in einer Katastrophe endet oder sonstwie unerwünschte Konsequenzen nach sich zieht, dann wird es jemand genau so machen. Alles, was schiefgehen kann, wird auch schiefgehen.
            (Murphys Gesetz)

            1 Antwort Letzte Antwort
            0
            • spicerS Online
              spicerS Online
              spicer
              schrieb am zuletzt editiert von spicer
              #175

              Habe nun ein anderes Problem.
              Nach 1-2h kommt ein "Socket closed with error". Dann geht nichts mehr.
              Siehe Log ab 18:22:55

              2026-02-05 18:22:43.831  - debug: modbus.0 (914062) [DevID_1] Poll start ---------------------
              2026-02-05 18:22:43.832  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
              2026-02-05 18:22:43.899  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1157 DONE
              2026-02-05 18:22:44.150  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1160 - 1 registers
              2026-02-05 18:22:44.209  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1160 DONE
              2026-02-05 18:22:44.459  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1476 - 1 registers
              2026-02-05 18:22:44.519  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1476 DONE
              2026-02-05 18:22:44.770  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1542 - 1 registers
              2026-02-05 18:22:44.829  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1542 DONE
              2026-02-05 18:22:45.080  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1544 - 1 registers
              2026-02-05 18:22:45.139  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1544 DONE
              2026-02-05 18:22:45.389  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1668 - 2 registers
              2026-02-05 18:22:45.469  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1668 DONE
              2026-02-05 18:22:49.101  - debug: modbus.0 (914062) [DevID_1] Poll start ---------------------
              2026-02-05 18:22:49.102  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
              2026-02-05 18:22:49.159  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1157 DONE
              2026-02-05 18:22:49.161  - debug: modbus.0 (914062) [DevID_1] Poll start ---------------------
              2026-02-05 18:22:49.161  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
              2026-02-05 18:22:49.219  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1157 DONE
              2026-02-05 18:22:49.221  - debug: modbus.0 (914062) [DevID_1] Poll start ---------------------
              2026-02-05 18:22:49.221  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
              2026-02-05 18:22:49.279  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1157 DONE
              2026-02-05 18:22:49.281  - debug: modbus.0 (914062) [DevID_1] Poll start ---------------------
              2026-02-05 18:22:49.281  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
              2026-02-05 18:22:49.352  - debug: modbus.0 (914062) [DevID_1] Poll start ---------------------
              2026-02-05 18:22:49.352  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
              2026-02-05 18:22:49.410  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1160 - 1 registers
              2026-02-05 18:22:49.470  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1160 - 1 registers
              2026-02-05 18:22:49.530  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1160 - 1 registers
              2026-02-05 18:22:51.023  - debug: modbus.0 (914062) [DevID_1] Poll start ---------------------
              2026-02-05 18:22:51.023  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
              2026-02-05 18:22:55.300  - debug: modbus.0 (914062) Socket closed with error
              2026-02-05 18:22:55.300  - debug: modbus.0 (914062) Clearing timeout of the current request.
              2026-02-05 18:22:55.300  - debug: modbus.0 (914062) Cleaning up request fifo.
              2026-02-05 18:22:56.302  - debug: modbus.0 (914062) Closing client on purpose.
              2026-02-05 18:22:56.303  - info: modbus.0 (914062) Disconnected from slave 192.168.88.101
              2026-02-05 18:23:03.307  - info: modbus.0 (914062) Connected to slave 192.168.88.101
              2026-02-05 18:23:03.307  - debug: modbus.0 (914062) [DevID_1] Poll start ---------------------
              2026-02-05 18:23:03.307  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
              2026-02-05 18:23:09.341  - debug: modbus.0 (914062) Socket closed with error
              2026-02-05 18:23:09.341  - debug: modbus.0 (914062) Clearing timeout of the current request.
              2026-02-05 18:23:09.341  - debug: modbus.0 (914062) Cleaning up request fifo.
              2026-02-05 18:23:10.341  - debug: modbus.0 (914062) Closing client on purpose.
              2026-02-05 18:23:10.341  - info: modbus.0 (914062) Disconnected from slave 192.168.88.101
              2026-02-05 18:23:17.345  - info: modbus.0 (914062) Connected to slave 192.168.88.101
              2026-02-05 18:23:17.345  - debug: modbus.0 (914062) [DevID_1] Poll start ---------------------
              2026-02-05 18:23:17.345  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
              2026-02-05 18:23:23.371  - debug: modbus.0 (914062) Socket closed with error
              2026-02-05 18:23:23.371  - debug: modbus.0 (914062) Clearing timeout of the current request.
              2026-02-05 18:23:23.371  - debug: modbus.0 (914062) Cleaning up request fifo.
              2026-02-05 18:23:24.372  - debug: modbus.0 (914062) Closing client on purpose.
              2026-02-05 18:23:24.373  - info: modbus.0 (914062) Disconnected from slave 192.168.88.101
              2026-02-05 18:23:31.375  - info: modbus.0 (914062) Connected to slave 192.168.88.101
              2026-02-05 18:23:31.376  - debug: modbus.0 (914062) [DevID_1] Poll start ---------------------
              2026-02-05 18:23:31.376  - debug: modbus.0 (914062) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
              2026-02-05 18:23:37.401  - debug: modbus.0 (914062) Socket closed with error
              2026-02-05 18:23:37.402  - debug: modbus.0 (914062) Clearing timeout of the current request.
              2026-02-05 18:23:37.402  - debug: modbus.0 (914062) Cleaning up request fifo.
              2026-02-05 18:23:38.402  - debug: modbus.0 (914062) Closing client on purpose.
              2026-02-05 18:23:38.402  - info: modbus.0 (914062) Disconnected from slave 192.168.88.101
              

              Wenn ich den modbus Adapter neu starte, läuft's wieder.

              Wenn es mehrere Möglichkeiten gibt, eine Aufgabe zu erledigen, und eine davon in einer Katastrophe endet oder sonstwie unerwünschte Konsequenzen nach sich zieht, dann wird es jemand genau so machen. Alles, was schiefgehen kann, wird auch schiefgehen.
              (Murphys Gesetz)

              1 Antwort Letzte Antwort
              0
              • spicerS Online
                spicerS Online
                spicer
                schrieb am zuletzt editiert von spicer
                #176

                Ergänzend fällt mir auf, dass der immer mit einem "Socket closed with error" abschliesst.

                modbus.0
                	2026-02-05 19:19:38.941	info	Disconnected from slave 192.168.88.101
                modbus.0
                	2026-02-05 19:19:38.940	debug	Closing client on purpose.
                modbus.0
                	2026-02-05 19:19:37.940	debug	Cleaning up request fifo.
                modbus.0
                	2026-02-05 19:19:37.939	debug	Clearing timeout of the current request.
                modbus.0
                	2026-02-05 19:19:37.939	debug	Socket closed with error
                modbus.0
                	2026-02-05 19:19:31.988	debug	[DevID_1/holdingRegs] Poll address 1668 DONE
                modbus.0
                	2026-02-05 19:19:31.919	debug	[DevID_1/holdingRegs] Poll address 1668 - 2 registers
                modbus.0
                	2026-02-05 19:19:31.668	debug	[DevID_1/holdingRegs] Poll address 1544 DONE
                modbus.0
                	2026-02-05 19:19:31.609	debug	[DevID_1/holdingRegs] Poll address 1544 - 1 registers
                modbus.0
                	2026-02-05 19:19:31.358	debug	[DevID_1/holdingRegs] Poll address 1542 DONE
                modbus.0
                	2026-02-05 19:19:31.299	debug	[DevID_1/holdingRegs] Poll address 1542 - 1 registers
                modbus.0
                	2026-02-05 19:19:31.048	debug	[DevID_1/holdingRegs] Poll address 1476 DONE
                modbus.0
                	2026-02-05 19:19:30.988	debug	[DevID_1/holdingRegs] Poll address 1476 - 1 registers
                modbus.0
                	2026-02-05 19:19:30.738	debug	[DevID_1/holdingRegs] Poll address 1160 DONE
                modbus.0
                	2026-02-05 19:19:30.679	debug	[DevID_1/holdingRegs] Poll address 1160 - 1 registers
                modbus.0
                	2026-02-05 19:19:30.428	debug	[DevID_1/holdingRegs] Poll address 1157 DONE
                modbus.0
                	2026-02-05 19:19:30.364	debug	[DevID_1/holdingRegs] Poll address 1157 - 1 registers
                modbus.0
                	2026-02-05 19:19:30.364	debug	[DevID_1] Poll start ---------------------
                

                Einstellungen:

                8b8ff11c-e77d-4e59-8a74-f064bff9d633-grafik.png

                Wenn es mehrere Möglichkeiten gibt, eine Aufgabe zu erledigen, und eine davon in einer Katastrophe endet oder sonstwie unerwünschte Konsequenzen nach sich zieht, dann wird es jemand genau so machen. Alles, was schiefgehen kann, wird auch schiefgehen.
                (Murphys Gesetz)

                1 Antwort Letzte Antwort
                0
                • spicerS Online
                  spicerS Online
                  spicer
                  schrieb zuletzt editiert von spicer
                  #177

                  Schon wieder. Adapter lief ca 3-4h.
                  Man siehe den Log ab 2026-02-06 03:59:39.013.
                  Da stirbt die Übertragung langsam bis ab 2026-02-06 03:59:56.664 nix mehr kommt.
                  Wie bereits gesagt, funktioniert alles wieder nach einem Adapter neustart.

                  2026-02-06 03:59:02.830  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                  2026-02-06 03:59:02.831  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                  2026-02-06 03:59:02.831  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                  2026-02-06 03:59:02.897  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 DONE
                  2026-02-06 03:59:03.148  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1160 - 1 registers
                  2026-02-06 03:59:03.207  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1160 DONE
                  2026-02-06 03:59:03.458  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1476 - 1 registers
                  2026-02-06 03:59:03.517  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1476 DONE
                  2026-02-06 03:59:03.768  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1542 - 1 registers
                  2026-02-06 03:59:03.827  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1542 DONE
                  2026-02-06 03:59:04.078  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1544 - 1 registers
                  2026-02-06 03:59:04.138  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1544 DONE
                  2026-02-06 03:59:04.388  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1668 - 2 registers
                  2026-02-06 03:59:04.477  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1668 DONE
                  2026-02-06 03:59:10.408  - debug: modbus.0 (919438) Socket closed with error
                  2026-02-06 03:59:10.408  - debug: modbus.0 (919438) Clearing timeout of the current request.
                  2026-02-06 03:59:10.408  - debug: modbus.0 (919438) Cleaning up request fifo.
                  2026-02-06 03:59:11.409  - debug: modbus.0 (919438) Closing client on purpose.
                  2026-02-06 03:59:11.410  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                  2026-02-06 03:59:21.412  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                  2026-02-06 03:59:21.413  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                  2026-02-06 03:59:21.413  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                  2026-02-06 03:59:21.478  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 DONE
                  2026-02-06 03:59:21.729  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1160 - 1 registers
                  2026-02-06 03:59:21.788  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1160 DONE
                  2026-02-06 03:59:22.039  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1476 - 1 registers
                  2026-02-06 03:59:22.098  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1476 DONE
                  2026-02-06 03:59:22.349  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1542 - 1 registers
                  2026-02-06 03:59:22.408  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1542 DONE
                  2026-02-06 03:59:22.659  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1544 - 1 registers
                  2026-02-06 03:59:22.738  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1544 DONE
                  2026-02-06 03:59:22.989  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1668 - 2 registers
                  2026-02-06 03:59:23.048  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1668 DONE
                  2026-02-06 03:59:28.009  - debug: modbus.0 (919438) Socket closed with error
                  2026-02-06 03:59:28.009  - debug: modbus.0 (919438) Clearing timeout of the current request.
                  2026-02-06 03:59:28.009  - debug: modbus.0 (919438) Cleaning up request fifo.
                  2026-02-06 03:59:29.011  - debug: modbus.0 (919438) Closing client on purpose.
                  2026-02-06 03:59:29.011  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                  2026-02-06 03:59:39.013  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                  2026-02-06 03:59:39.014  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                  2026-02-06 03:59:39.014  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                  2026-02-06 03:59:39.079  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 DONE
                  2026-02-06 03:59:39.330  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1160 - 1 registers
                  2026-02-06 03:59:39.389  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1160 DONE
                  2026-02-06 03:59:39.639  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1476 - 1 registers
                  2026-02-06 03:59:45.659  - debug: modbus.0 (919438) Socket closed with error
                  2026-02-06 03:59:45.660  - debug: modbus.0 (919438) Clearing timeout of the current request.
                  2026-02-06 03:59:45.660  - debug: modbus.0 (919438) Cleaning up request fifo.
                  2026-02-06 03:59:46.660  - debug: modbus.0 (919438) Closing client on purpose.
                  2026-02-06 03:59:46.661  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                  2026-02-06 03:59:56.664  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                  2026-02-06 03:59:56.664  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                  2026-02-06 03:59:56.665  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                  2026-02-06 04:00:02.690  - debug: modbus.0 (919438) Socket closed with error
                  2026-02-06 04:00:02.690  - debug: modbus.0 (919438) Clearing timeout of the current request.
                  2026-02-06 04:00:02.690  - debug: modbus.0 (919438) Cleaning up request fifo.
                  2026-02-06 04:00:03.692  - debug: modbus.0 (919438) Closing client on purpose.
                  2026-02-06 04:00:03.692  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                  2026-02-06 04:00:13.696  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                  2026-02-06 04:00:13.696  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                  2026-02-06 04:00:13.696  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                  2026-02-06 04:00:19.720  - debug: modbus.0 (919438) Socket closed with error
                  2026-02-06 04:00:19.720  - debug: modbus.0 (919438) Clearing timeout of the current request.
                  2026-02-06 04:00:19.720  - debug: modbus.0 (919438) Cleaning up request fifo.
                  2026-02-06 04:00:20.721  - debug: modbus.0 (919438) Closing client on purpose.
                  2026-02-06 04:00:20.722  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                  2026-02-06 04:00:30.725  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                  2026-02-06 04:00:30.726  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                  2026-02-06 04:00:30.726  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                  2026-02-06 04:00:36.751  - debug: modbus.0 (919438) Socket closed with error
                  2026-02-06 04:00:36.751  - debug: modbus.0 (919438) Clearing timeout of the current request.
                  2026-02-06 04:00:36.751  - debug: modbus.0 (919438) Cleaning up request fifo.
                  2026-02-06 04:00:37.752  - debug: modbus.0 (919438) Closing client on purpose.
                  2026-02-06 04:00:37.753  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                  2026-02-06 04:00:47.756  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                  2026-02-06 04:00:47.757  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                  2026-02-06 04:00:47.757  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                  2026-02-06 04:00:53.781  - debug: modbus.0 (919438) Socket closed with error
                  2026-02-06 04:00:53.782  - debug: modbus.0 (919438) Clearing timeout of the current request.
                  2026-02-06 04:00:53.782  - debug: modbus.0 (919438) Cleaning up request fifo.
                  2026-02-06 04:00:54.782  - debug: modbus.0 (919438) Closing client on purpose.
                  2026-02-06 04:00:54.783  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                  2026-02-06 04:01:04.785  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                  2026-02-06 04:01:04.786  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                  2026-02-06 04:01:04.786  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                  2026-02-06 04:01:10.812  - debug: modbus.0 (919438) Socket closed with error
                  2026-02-06 04:01:10.812  - debug: modbus.0 (919438) Clearing timeout of the current request.
                  2026-02-06 04:01:10.813  - debug: modbus.0 (919438) Cleaning up request fifo.
                  2026-02-06 04:01:11.812  - debug: modbus.0 (919438) Closing client on purpose.
                  2026-02-06 04:01:11.813  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                  2026-02-06 04:01:21.815  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                  2026-02-06 04:01:21.816  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                  2026-02-06 04:01:21.816  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                  2026-02-06 04:01:27.843  - debug: modbus.0 (919438) Socket closed with error
                  2026-02-06 04:01:27.843  - debug: modbus.0 (919438) Clearing timeout of the current request.
                  2026-02-06 04:01:27.843  - debug: modbus.0 (919438) Cleaning up request fifo.
                  2026-02-06 04:01:28.845  - debug: modbus.0 (919438) Closing client on purpose.
                  2026-02-06 04:01:28.845  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                  

                  Konfiguration:

                  grafik.png

                  grafik.png

                  grafik.png

                  Wenn es mehrere Möglichkeiten gibt, eine Aufgabe zu erledigen, und eine davon in einer Katastrophe endet oder sonstwie unerwünschte Konsequenzen nach sich zieht, dann wird es jemand genau so machen. Alles, was schiefgehen kann, wird auch schiefgehen.
                  (Murphys Gesetz)

                  HomoranH 1 Antwort Letzte Antwort
                  0
                  • spicerS spicer

                    Schon wieder. Adapter lief ca 3-4h.
                    Man siehe den Log ab 2026-02-06 03:59:39.013.
                    Da stirbt die Übertragung langsam bis ab 2026-02-06 03:59:56.664 nix mehr kommt.
                    Wie bereits gesagt, funktioniert alles wieder nach einem Adapter neustart.

                    2026-02-06 03:59:02.830  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                    2026-02-06 03:59:02.831  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                    2026-02-06 03:59:02.831  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                    2026-02-06 03:59:02.897  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 DONE
                    2026-02-06 03:59:03.148  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1160 - 1 registers
                    2026-02-06 03:59:03.207  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1160 DONE
                    2026-02-06 03:59:03.458  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1476 - 1 registers
                    2026-02-06 03:59:03.517  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1476 DONE
                    2026-02-06 03:59:03.768  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1542 - 1 registers
                    2026-02-06 03:59:03.827  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1542 DONE
                    2026-02-06 03:59:04.078  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1544 - 1 registers
                    2026-02-06 03:59:04.138  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1544 DONE
                    2026-02-06 03:59:04.388  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1668 - 2 registers
                    2026-02-06 03:59:04.477  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1668 DONE
                    2026-02-06 03:59:10.408  - debug: modbus.0 (919438) Socket closed with error
                    2026-02-06 03:59:10.408  - debug: modbus.0 (919438) Clearing timeout of the current request.
                    2026-02-06 03:59:10.408  - debug: modbus.0 (919438) Cleaning up request fifo.
                    2026-02-06 03:59:11.409  - debug: modbus.0 (919438) Closing client on purpose.
                    2026-02-06 03:59:11.410  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                    2026-02-06 03:59:21.412  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                    2026-02-06 03:59:21.413  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                    2026-02-06 03:59:21.413  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                    2026-02-06 03:59:21.478  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 DONE
                    2026-02-06 03:59:21.729  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1160 - 1 registers
                    2026-02-06 03:59:21.788  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1160 DONE
                    2026-02-06 03:59:22.039  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1476 - 1 registers
                    2026-02-06 03:59:22.098  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1476 DONE
                    2026-02-06 03:59:22.349  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1542 - 1 registers
                    2026-02-06 03:59:22.408  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1542 DONE
                    2026-02-06 03:59:22.659  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1544 - 1 registers
                    2026-02-06 03:59:22.738  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1544 DONE
                    2026-02-06 03:59:22.989  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1668 - 2 registers
                    2026-02-06 03:59:23.048  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1668 DONE
                    2026-02-06 03:59:28.009  - debug: modbus.0 (919438) Socket closed with error
                    2026-02-06 03:59:28.009  - debug: modbus.0 (919438) Clearing timeout of the current request.
                    2026-02-06 03:59:28.009  - debug: modbus.0 (919438) Cleaning up request fifo.
                    2026-02-06 03:59:29.011  - debug: modbus.0 (919438) Closing client on purpose.
                    2026-02-06 03:59:29.011  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                    2026-02-06 03:59:39.013  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                    2026-02-06 03:59:39.014  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                    2026-02-06 03:59:39.014  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                    2026-02-06 03:59:39.079  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 DONE
                    2026-02-06 03:59:39.330  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1160 - 1 registers
                    2026-02-06 03:59:39.389  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1160 DONE
                    2026-02-06 03:59:39.639  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1476 - 1 registers
                    2026-02-06 03:59:45.659  - debug: modbus.0 (919438) Socket closed with error
                    2026-02-06 03:59:45.660  - debug: modbus.0 (919438) Clearing timeout of the current request.
                    2026-02-06 03:59:45.660  - debug: modbus.0 (919438) Cleaning up request fifo.
                    2026-02-06 03:59:46.660  - debug: modbus.0 (919438) Closing client on purpose.
                    2026-02-06 03:59:46.661  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                    2026-02-06 03:59:56.664  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                    2026-02-06 03:59:56.664  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                    2026-02-06 03:59:56.665  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                    2026-02-06 04:00:02.690  - debug: modbus.0 (919438) Socket closed with error
                    2026-02-06 04:00:02.690  - debug: modbus.0 (919438) Clearing timeout of the current request.
                    2026-02-06 04:00:02.690  - debug: modbus.0 (919438) Cleaning up request fifo.
                    2026-02-06 04:00:03.692  - debug: modbus.0 (919438) Closing client on purpose.
                    2026-02-06 04:00:03.692  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                    2026-02-06 04:00:13.696  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                    2026-02-06 04:00:13.696  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                    2026-02-06 04:00:13.696  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                    2026-02-06 04:00:19.720  - debug: modbus.0 (919438) Socket closed with error
                    2026-02-06 04:00:19.720  - debug: modbus.0 (919438) Clearing timeout of the current request.
                    2026-02-06 04:00:19.720  - debug: modbus.0 (919438) Cleaning up request fifo.
                    2026-02-06 04:00:20.721  - debug: modbus.0 (919438) Closing client on purpose.
                    2026-02-06 04:00:20.722  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                    2026-02-06 04:00:30.725  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                    2026-02-06 04:00:30.726  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                    2026-02-06 04:00:30.726  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                    2026-02-06 04:00:36.751  - debug: modbus.0 (919438) Socket closed with error
                    2026-02-06 04:00:36.751  - debug: modbus.0 (919438) Clearing timeout of the current request.
                    2026-02-06 04:00:36.751  - debug: modbus.0 (919438) Cleaning up request fifo.
                    2026-02-06 04:00:37.752  - debug: modbus.0 (919438) Closing client on purpose.
                    2026-02-06 04:00:37.753  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                    2026-02-06 04:00:47.756  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                    2026-02-06 04:00:47.757  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                    2026-02-06 04:00:47.757  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                    2026-02-06 04:00:53.781  - debug: modbus.0 (919438) Socket closed with error
                    2026-02-06 04:00:53.782  - debug: modbus.0 (919438) Clearing timeout of the current request.
                    2026-02-06 04:00:53.782  - debug: modbus.0 (919438) Cleaning up request fifo.
                    2026-02-06 04:00:54.782  - debug: modbus.0 (919438) Closing client on purpose.
                    2026-02-06 04:00:54.783  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                    2026-02-06 04:01:04.785  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                    2026-02-06 04:01:04.786  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                    2026-02-06 04:01:04.786  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                    2026-02-06 04:01:10.812  - debug: modbus.0 (919438) Socket closed with error
                    2026-02-06 04:01:10.812  - debug: modbus.0 (919438) Clearing timeout of the current request.
                    2026-02-06 04:01:10.813  - debug: modbus.0 (919438) Cleaning up request fifo.
                    2026-02-06 04:01:11.812  - debug: modbus.0 (919438) Closing client on purpose.
                    2026-02-06 04:01:11.813  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                    2026-02-06 04:01:21.815  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                    2026-02-06 04:01:21.816  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                    2026-02-06 04:01:21.816  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                    2026-02-06 04:01:27.843  - debug: modbus.0 (919438) Socket closed with error
                    2026-02-06 04:01:27.843  - debug: modbus.0 (919438) Clearing timeout of the current request.
                    2026-02-06 04:01:27.843  - debug: modbus.0 (919438) Cleaning up request fifo.
                    2026-02-06 04:01:28.845  - debug: modbus.0 (919438) Closing client on purpose.
                    2026-02-06 04:01:28.845  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                    

                    Konfiguration:

                    grafik.png

                    grafik.png

                    grafik.png

                    HomoranH Nicht stören
                    HomoranH Nicht stören
                    Homoran
                    Global Moderator Administrators
                    schrieb zuletzt editiert von
                    #178

                    @spicer sagte in Sofar Solar HYD10 KTL Wechselrichter an modbus Adapter:

                    Da stirbt die Übertragung langsam bis ab 2026-02-06 03:59:56.664 nix mehr kommt.

                    was startet bei dir um 04:00?

                    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

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

                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                    1 Antwort Letzte Antwort
                    0
                    • spicerS Online
                      spicerS Online
                      spicer
                      schrieb zuletzt editiert von spicer
                      #179

                      Laut Log nichts zur Fraglichen Zeit.
                      Die gelesenen Register nehmen schon vor sofarcloud und weathersense ab.

                      2026-02-06 03:59:39.013  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                      2026-02-06 03:59:39.014  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                      2026-02-06 03:59:39.014  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                      2026-02-06 03:59:39.079  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 DONE
                      2026-02-06 03:59:39.330  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1160 - 1 registers
                      2026-02-06 03:59:39.389  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1160 DONE
                      2026-02-06 03:59:39.639  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1476 - 1 registers
                      2026-02-06 03:59:45.659  - debug: modbus.0 (919438) Socket closed with error
                      2026-02-06 03:59:45.660  - debug: modbus.0 (919438) Clearing timeout of the current request.
                      2026-02-06 03:59:45.660  - debug: modbus.0 (919438) Cleaning up request fifo.
                      2026-02-06 03:59:46.660  - debug: modbus.0 (919438) Closing client on purpose.
                      2026-02-06 03:59:46.661  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                      2026-02-06 03:59:56.664  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                      2026-02-06 03:59:56.664  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                      2026-02-06 03:59:56.665  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                      2026-02-06 04:00:02.690  - debug: modbus.0 (919438) Socket closed with error
                      2026-02-06 04:00:02.690  - debug: modbus.0 (919438) Clearing timeout of the current request.
                      2026-02-06 04:00:02.690  - debug: modbus.0 (919438) Cleaning up request fifo.
                      2026-02-06 04:00:03.692  - debug: modbus.0 (919438) Closing client on purpose.
                      2026-02-06 04:00:03.692  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                      2026-02-06 04:00:07.029  - info: host.iobroker instance system.adapter.weathersense.0 in version "4.2.1" started with pid 933290
                      2026-02-06 04:00:09.479  - info: weathersense.0 (933290) starting. Version 4.2.1 in /opt/iobroker/node_modules/iobroker.weathersense, node: v22.22.0, js-controller: 7.0.7
                      2026-02-06 04:00:09.509  - info: weathersense.0 (933290) Start cloud query after 20 Seconds...
                      2026-02-06 04:00:13.696  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                      2026-02-06 04:00:13.696  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                      2026-02-06 04:00:13.696  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                      2026-02-06 04:00:19.720  - debug: modbus.0 (919438) Socket closed with error
                      2026-02-06 04:00:19.720  - debug: modbus.0 (919438) Clearing timeout of the current request.
                      2026-02-06 04:00:19.720  - debug: modbus.0 (919438) Cleaning up request fifo.
                      2026-02-06 04:00:20.721  - debug: modbus.0 (919438) Closing client on purpose.
                      2026-02-06 04:00:20.722  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                      2026-02-06 04:00:29.030  - info: host.iobroker instance system.adapter.sofarcloud.0 in version "3.3.0" started with pid 933306
                      2026-02-06 04:00:30.725  - info: modbus.0 (919438) Connected to slave 192.168.88.101
                      2026-02-06 04:00:30.726  - debug: modbus.0 (919438) [DevID_1] Poll start ---------------------
                      2026-02-06 04:00:30.726  - debug: modbus.0 (919438) [DevID_1/holdingRegs] Poll address 1157 - 1 registers
                      2026-02-06 04:00:31.877  - info: sofarcloud.0 (933306) starting. Version 3.3.0 in /opt/iobroker/node_modules/iobroker.sofarcloud, node: v22.22.0, js-controller: 7.0.7
                      2026-02-06 04:00:32.002  - info: sofarcloud.0 (933306) Start cloud query after 112 seconds...
                      2026-02-06 04:00:32.413  - info: weathersense.0 (933290) Terminated (NO_ERROR): Everything done. Going to terminate till next schedule
                      2026-02-06 04:00:32.952  - info: host.iobroker instance system.adapter.weathersense.0 having pid 933290 terminated with code 0 (NO_ERROR)
                      2026-02-06 04:00:36.751  - debug: modbus.0 (919438) Socket closed with error
                      2026-02-06 04:00:36.751  - debug: modbus.0 (919438) Clearing timeout of the current request.
                      2026-02-06 04:00:36.751  - debug: modbus.0 (919438) Cleaning up request fifo.
                      2026-02-06 04:00:37.752  - debug: modbus.0 (919438) Closing client on purpose.
                      2026-02-06 04:00:37.753  - info: modbus.0 (919438) Disconnected from slave 192.168.88.101
                      

                      Wenn es mehrere Möglichkeiten gibt, eine Aufgabe zu erledigen, und eine davon in einer Katastrophe endet oder sonstwie unerwünschte Konsequenzen nach sich zieht, dann wird es jemand genau so machen. Alles, was schiefgehen kann, wird auch schiefgehen.
                      (Murphys Gesetz)

                      1 Antwort Letzte Antwort
                      0
                      • spicerS Online
                        spicerS Online
                        spicer
                        schrieb zuletzt editiert von
                        #180

                        Aber ist schon auffällig, dass es immer um die gleiche Zeit passiert.
                        Kann ich iwie den Adapter immer um 4:01 neu starten?

                        Wenn es mehrere Möglichkeiten gibt, eine Aufgabe zu erledigen, und eine davon in einer Katastrophe endet oder sonstwie unerwünschte Konsequenzen nach sich zieht, dann wird es jemand genau so machen. Alles, was schiefgehen kann, wird auch schiefgehen.
                        (Murphys Gesetz)

                        1 Antwort Letzte Antwort
                        0
                        • spicerS Online
                          spicerS Online
                          spicer
                          schrieb zuletzt editiert von spicer
                          #181

                          Jetzt hat es um 2026-02-06 16:04:24.546 angefangen. Nach nur ein paar Minuten!

                          Mir gefällt das "Socket closed with error" jedesmal nicht.
                          Das könnte doch irgend etwas füllen bis zum Crash.
                          Sauber ist das auf jeden Fall nicht.

                          Wenn es mehrere Möglichkeiten gibt, eine Aufgabe zu erledigen, und eine davon in einer Katastrophe endet oder sonstwie unerwünschte Konsequenzen nach sich zieht, dann wird es jemand genau so machen. Alles, was schiefgehen kann, wird auch schiefgehen.
                          (Murphys Gesetz)

                          1 Antwort Letzte Antwort
                          0
                          • R Online
                            R Online
                            RISSN
                            schrieb zuletzt editiert von
                            #182

                            https://www.solarvie.at/en-eu/products/sofarsolar-ethernet-dongle-lse-3

                            kaufe dir einfach dieses Teil und du hast Ruhe, 55 Euro kostet weniger als die Nerven die du lassen musst. Vor allem hast du es gleich auch noch in der App

                            1 Antwort Letzte Antwort
                            0
                            • spicerS Online
                              spicerS Online
                              spicer
                              schrieb zuletzt editiert von spicer
                              #183

                              Habe mir eine eigene Lösung geschrieben, welche ich euch nicht vorenthalten möchte.
                              Habe in einem LXC, welcher für diverse Skripte zuständig ist, folgendes Python Script drauf gemacht plus eine config.yaml .
                              Dies sendet die Sofar-Daten per MQTT an den ioBroker.

                              /opt/modbus-mqtt/modbus_tcp_rtu.py

                              #!/usr/bin/env python3
                              
                              import socket
                              import struct
                              import time
                              import yaml
                              import logging
                              import paho.mqtt.client as mqtt
                              import os
                              
                              CONFIG_FILE = "/opt/modbus-mqtt/config.yaml"
                              LOG_FILE = "/var/log/modbus-mqtt.log"
                              
                              logging.basicConfig(
                                  filename=LOG_FILE,
                                  level=logging.INFO,
                                  format="%(asctime)s [%(levelname)s] %(message)s"
                              )
                              
                              logging.info("Starting modbus-mqtt with config from disk")
                              
                              try:
                                  with open(CONFIG_FILE, "r") as f:
                                      cfg = yaml.safe_load(f)
                              except Exception as e:
                                  logging.error(f"Failed to load config: {e}")
                                  exit(1)
                              
                              last_mtime = os.path.getmtime(CONFIG_FILE)
                              
                              MODBUS_HOST = cfg["modbus"]["host"]
                              MODBUS_PORT = cfg["modbus"]["port"]
                              UNIT_ID = cfg["modbus"]["unit_id"]
                              
                              MQTT_HOST = cfg["mqtt"]["host"]
                              MQTT_PORT = cfg["mqtt"]["port"]
                              BASE_TOPIC = cfg["mqtt"]["base_topic"]
                              
                              POLL_INTERVAL = cfg["poll_interval"]
                              REGISTERS = cfg["registers"]
                              
                              mqttc = mqtt.Client()
                              mqttc.username_pw_set(cfg["mqtt"]["username"], cfg["mqtt"]["password"])
                              mqttc.connect(MQTT_HOST, MQTT_PORT)
                              mqttc.loop_start()
                              
                              # ---------------------------------------------------------
                              # CRC16 Modbus
                              # ---------------------------------------------------------
                              
                              def crc16(data):
                                  crc = 0xFFFF
                                  for pos in data:
                                      crc ^= pos
                                      for _ in range(8):
                                          if crc & 1:
                                              crc = (crc >> 1) ^ 0xA001
                                          else:
                                              crc >>= 1
                                  return crc.to_bytes(2, byteorder="little")
                              
                              # ---------------------------------------------------------
                              # RTU‑Frame senden über TCP
                              # ---------------------------------------------------------
                              
                              def read_holding_registers_rtu_tcp(unit, address, count):
                                  # Build RTU frame: [unit][function][addr_hi][addr_lo][count_hi][count_lo][crc_lo][crc_hi]
                                  frame = bytearray()
                                  frame.append(unit)
                                  frame.append(0x03)  # Function code: Read Holding Registers
                                  frame += struct.pack(">HH", address, count)
                                  frame += crc16(frame)
                              
                                  # TCP socket
                                  s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
                                  s.settimeout(2)
                                  s.connect((MODBUS_HOST, MODBUS_PORT))
                                  s.send(frame)
                              
                                  # Response
                                  response = s.recv(256)
                                  s.close()
                              
                                  # Validate minimum length
                                  if len(response) < 5:
                                      raise Exception("Invalid response length")
                              
                                  # Validate CRC
                                  data = response[:-2]
                                  crc_received = response[-2:]
                                  crc_calc = crc16(data)
                                  if crc_received != crc_calc:
                                      raise Exception("CRC mismatch")
                              
                                  # Byte count
                                  byte_count = response[2]
                                  if byte_count != count * 2:
                                      raise Exception("Unexpected byte count")
                              
                                  # Extract registers
                                  registers = []
                                  for i in range(count):
                                      hi = response[3 + i*2]
                                      lo = response[4 + i*2]
                                      registers.append((hi << 8) | lo)
                              
                                  return registers
                              
                              # ---------------------------------------------------------
                              # Poll‑Loop
                              # ---------------------------------------------------------
                              
                              while True:
                                  # Auto‑Reload wenn config.yaml geändert wurde
                                  current_mtime = os.path.getmtime(CONFIG_FILE)
                                  if current_mtime != last_mtime:
                                      logging.info("Config changed, restarting...")
                                      mqttc.loop_stop()
                                      exit(0)
                              
                                  for reg in REGISTERS:
                                      addr = reg["addr"]
                                      reg_type = reg["type"]
                                      factor = reg["factor"]
                                      length = 2 if reg_type == "uint32" else 1
                              
                                      try:
                                          regs = read_holding_registers_rtu_tcp(UNIT_ID, addr, length)
                              
                                          if reg_type == "int16":
                                              value = struct.unpack(">h", struct.pack(">H", regs[0]))[0]
                                          elif reg_type == "uint16":
                                              value = regs[0]
                                          elif reg_type == "uint32":
                                              value = (regs[0] << 16) | regs[1]
                                          else:
                                              continue
                              
                                          value *= factor
                              
                                          topic = f"{BASE_TOPIC}/register/{addr}"
                                          mqttc.publish(topic, value)
                                          #logging.info(f"Published {topic} = {value}")
                              
                                      except Exception as e:
                                          logging.error(f"Error reading register {addr}: {e}")
                              
                                      time.sleep(0.2)
                              
                                  time.sleep(POLL_INTERVAL)
                              
                              

                              /opt/modbus-mqtt/config.yaml

                              modbus:
                                host: "192.168.88.101"
                                port: 8899
                                unit_id: 1
                              
                              mqtt:
                                host: "192.168.1.251"
                                port: 1883
                                base_topic: "modbus/inverter"
                                username: "mqtt_user"
                                password: "mqtt_passwort"
                              
                              poll_interval: 20
                              
                              registers:
                                - addr: 1199
                                  name: "ActivePower_Load_Sys"
                                  type: "uint16"
                                  factor: 0.01
                              
                                - addr: 1160
                                  name: "ActivePower_PCC_Total"
                                  type: "int16"
                                  factor: 0.01
                              
                                - addr: 1476
                                  name: "Power_PV_Total"
                                  type: "uint16"
                                  factor: 0.1
                              
                                - addr: 1542
                                  name: "Power_Bat1"
                                  type: "int16"
                                  factor: 0.01
                              
                                - addr: 1544
                                  name: "SOC_Bat1"
                                  type: "uint16"
                                  factor: 1
                              
                                - addr: 1668
                                  name: "PV_Generation_Today"
                                  type: "uint32"
                                  factor: 0.01
                              
                              

                              Beim Waveshare musste ich auf "Transparent" (anstelle von "modbus TCP <=> modbus RTU") stellen.
                              In der config seht ihr auch, dass LXCs und der Waveshare nicht im gleichen Netzwerk sind. WAN von 192.168.88.0 (MikroTik Router) hängt am Netz 192.168.1.0 (Fritzbox). Da hab ich eine Route definiert, damit man vom einen ins andere Netz zugreifen kann.
                              Die IPs, Ports, Usernames und Passwörter müsst ihr natürlich auf eure Gegebenheiten anpassen.

                              In der /etc/systemd/system/modbus-mqtt.service

                              [Unit]
                              Description=Modbus RTU over TCP to MQTT Gateway
                              After=network-online.target
                              Wants=network-online.target
                              
                              [Service]
                              Type=simple
                              User=root
                              WorkingDirectory=/opt/modbus-mqtt
                              ExecStart=/usr/bin/env python3 /opt/modbus-mqtt/modbus_tcp_rtu.py
                              Restart=always
                              RestartSec=5
                              Environment=PYTHONUNBUFFERED=1
                              
                              [Install]
                              WantedBy=multi-user.target
                              

                              Wenn alles fertig ist, eingeben:

                              sudo systemctl daemon-reload
                              sudo systemctl enable modbus-mqtt.service
                              sudo systemctl start modbus-mqtt.service
                              

                              Die Daten werden nun per MQTT an den ioBroker gesendet.
                              Der Datenpunkt sieht dann etwa so aus:

                              mqtt.0.modbus.inverter.register.{Registeradresse}

                              c231d92c-1d69-4e52-a206-48dfd9e63cf5-grafik.png

                              Wenn es mehrere Möglichkeiten gibt, eine Aufgabe zu erledigen, und eine davon in einer Katastrophe endet oder sonstwie unerwünschte Konsequenzen nach sich zieht, dann wird es jemand genau so machen. Alles, was schiefgehen kann, wird auch schiefgehen.
                              (Murphys Gesetz)

                              HomoranH 1 Antwort Letzte Antwort
                              0
                              • spicerS spicer

                                Habe mir eine eigene Lösung geschrieben, welche ich euch nicht vorenthalten möchte.
                                Habe in einem LXC, welcher für diverse Skripte zuständig ist, folgendes Python Script drauf gemacht plus eine config.yaml .
                                Dies sendet die Sofar-Daten per MQTT an den ioBroker.

                                /opt/modbus-mqtt/modbus_tcp_rtu.py

                                #!/usr/bin/env python3
                                
                                import socket
                                import struct
                                import time
                                import yaml
                                import logging
                                import paho.mqtt.client as mqtt
                                import os
                                
                                CONFIG_FILE = "/opt/modbus-mqtt/config.yaml"
                                LOG_FILE = "/var/log/modbus-mqtt.log"
                                
                                logging.basicConfig(
                                    filename=LOG_FILE,
                                    level=logging.INFO,
                                    format="%(asctime)s [%(levelname)s] %(message)s"
                                )
                                
                                logging.info("Starting modbus-mqtt with config from disk")
                                
                                try:
                                    with open(CONFIG_FILE, "r") as f:
                                        cfg = yaml.safe_load(f)
                                except Exception as e:
                                    logging.error(f"Failed to load config: {e}")
                                    exit(1)
                                
                                last_mtime = os.path.getmtime(CONFIG_FILE)
                                
                                MODBUS_HOST = cfg["modbus"]["host"]
                                MODBUS_PORT = cfg["modbus"]["port"]
                                UNIT_ID = cfg["modbus"]["unit_id"]
                                
                                MQTT_HOST = cfg["mqtt"]["host"]
                                MQTT_PORT = cfg["mqtt"]["port"]
                                BASE_TOPIC = cfg["mqtt"]["base_topic"]
                                
                                POLL_INTERVAL = cfg["poll_interval"]
                                REGISTERS = cfg["registers"]
                                
                                mqttc = mqtt.Client()
                                mqttc.username_pw_set(cfg["mqtt"]["username"], cfg["mqtt"]["password"])
                                mqttc.connect(MQTT_HOST, MQTT_PORT)
                                mqttc.loop_start()
                                
                                # ---------------------------------------------------------
                                # CRC16 Modbus
                                # ---------------------------------------------------------
                                
                                def crc16(data):
                                    crc = 0xFFFF
                                    for pos in data:
                                        crc ^= pos
                                        for _ in range(8):
                                            if crc & 1:
                                                crc = (crc >> 1) ^ 0xA001
                                            else:
                                                crc >>= 1
                                    return crc.to_bytes(2, byteorder="little")
                                
                                # ---------------------------------------------------------
                                # RTU‑Frame senden über TCP
                                # ---------------------------------------------------------
                                
                                def read_holding_registers_rtu_tcp(unit, address, count):
                                    # Build RTU frame: [unit][function][addr_hi][addr_lo][count_hi][count_lo][crc_lo][crc_hi]
                                    frame = bytearray()
                                    frame.append(unit)
                                    frame.append(0x03)  # Function code: Read Holding Registers
                                    frame += struct.pack(">HH", address, count)
                                    frame += crc16(frame)
                                
                                    # TCP socket
                                    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
                                    s.settimeout(2)
                                    s.connect((MODBUS_HOST, MODBUS_PORT))
                                    s.send(frame)
                                
                                    # Response
                                    response = s.recv(256)
                                    s.close()
                                
                                    # Validate minimum length
                                    if len(response) < 5:
                                        raise Exception("Invalid response length")
                                
                                    # Validate CRC
                                    data = response[:-2]
                                    crc_received = response[-2:]
                                    crc_calc = crc16(data)
                                    if crc_received != crc_calc:
                                        raise Exception("CRC mismatch")
                                
                                    # Byte count
                                    byte_count = response[2]
                                    if byte_count != count * 2:
                                        raise Exception("Unexpected byte count")
                                
                                    # Extract registers
                                    registers = []
                                    for i in range(count):
                                        hi = response[3 + i*2]
                                        lo = response[4 + i*2]
                                        registers.append((hi << 8) | lo)
                                
                                    return registers
                                
                                # ---------------------------------------------------------
                                # Poll‑Loop
                                # ---------------------------------------------------------
                                
                                while True:
                                    # Auto‑Reload wenn config.yaml geändert wurde
                                    current_mtime = os.path.getmtime(CONFIG_FILE)
                                    if current_mtime != last_mtime:
                                        logging.info("Config changed, restarting...")
                                        mqttc.loop_stop()
                                        exit(0)
                                
                                    for reg in REGISTERS:
                                        addr = reg["addr"]
                                        reg_type = reg["type"]
                                        factor = reg["factor"]
                                        length = 2 if reg_type == "uint32" else 1
                                
                                        try:
                                            regs = read_holding_registers_rtu_tcp(UNIT_ID, addr, length)
                                
                                            if reg_type == "int16":
                                                value = struct.unpack(">h", struct.pack(">H", regs[0]))[0]
                                            elif reg_type == "uint16":
                                                value = regs[0]
                                            elif reg_type == "uint32":
                                                value = (regs[0] << 16) | regs[1]
                                            else:
                                                continue
                                
                                            value *= factor
                                
                                            topic = f"{BASE_TOPIC}/register/{addr}"
                                            mqttc.publish(topic, value)
                                            #logging.info(f"Published {topic} = {value}")
                                
                                        except Exception as e:
                                            logging.error(f"Error reading register {addr}: {e}")
                                
                                        time.sleep(0.2)
                                
                                    time.sleep(POLL_INTERVAL)
                                
                                

                                /opt/modbus-mqtt/config.yaml

                                modbus:
                                  host: "192.168.88.101"
                                  port: 8899
                                  unit_id: 1
                                
                                mqtt:
                                  host: "192.168.1.251"
                                  port: 1883
                                  base_topic: "modbus/inverter"
                                  username: "mqtt_user"
                                  password: "mqtt_passwort"
                                
                                poll_interval: 20
                                
                                registers:
                                  - addr: 1199
                                    name: "ActivePower_Load_Sys"
                                    type: "uint16"
                                    factor: 0.01
                                
                                  - addr: 1160
                                    name: "ActivePower_PCC_Total"
                                    type: "int16"
                                    factor: 0.01
                                
                                  - addr: 1476
                                    name: "Power_PV_Total"
                                    type: "uint16"
                                    factor: 0.1
                                
                                  - addr: 1542
                                    name: "Power_Bat1"
                                    type: "int16"
                                    factor: 0.01
                                
                                  - addr: 1544
                                    name: "SOC_Bat1"
                                    type: "uint16"
                                    factor: 1
                                
                                  - addr: 1668
                                    name: "PV_Generation_Today"
                                    type: "uint32"
                                    factor: 0.01
                                
                                

                                Beim Waveshare musste ich auf "Transparent" (anstelle von "modbus TCP <=> modbus RTU") stellen.
                                In der config seht ihr auch, dass LXCs und der Waveshare nicht im gleichen Netzwerk sind. WAN von 192.168.88.0 (MikroTik Router) hängt am Netz 192.168.1.0 (Fritzbox). Da hab ich eine Route definiert, damit man vom einen ins andere Netz zugreifen kann.
                                Die IPs, Ports, Usernames und Passwörter müsst ihr natürlich auf eure Gegebenheiten anpassen.

                                In der /etc/systemd/system/modbus-mqtt.service

                                [Unit]
                                Description=Modbus RTU over TCP to MQTT Gateway
                                After=network-online.target
                                Wants=network-online.target
                                
                                [Service]
                                Type=simple
                                User=root
                                WorkingDirectory=/opt/modbus-mqtt
                                ExecStart=/usr/bin/env python3 /opt/modbus-mqtt/modbus_tcp_rtu.py
                                Restart=always
                                RestartSec=5
                                Environment=PYTHONUNBUFFERED=1
                                
                                [Install]
                                WantedBy=multi-user.target
                                

                                Wenn alles fertig ist, eingeben:

                                sudo systemctl daemon-reload
                                sudo systemctl enable modbus-mqtt.service
                                sudo systemctl start modbus-mqtt.service
                                

                                Die Daten werden nun per MQTT an den ioBroker gesendet.
                                Der Datenpunkt sieht dann etwa so aus:

                                mqtt.0.modbus.inverter.register.{Registeradresse}

                                c231d92c-1d69-4e52-a206-48dfd9e63cf5-grafik.png

                                HomoranH Nicht stören
                                HomoranH Nicht stören
                                Homoran
                                Global Moderator Administrators
                                schrieb zuletzt editiert von
                                #184

                                @spicer sagte in Sofar Solar HYD10 KTL Wechselrichter an modbus Adapter:

                                Beim Waveshare musste ich auf "Transparent" (anstelle von "modbus TCP <=> modbus RTU") stellen.

                                das ist, warum mir ein solcher Konverter zu komplex ist.
                                Dann noch bei gleichem Hersteller unterschiedliche Einstellungen braucht....

                                @spicer sagte in Sofar Solar HYD10 KTL Wechselrichter an modbus Adapter:

                                dass LXCs und der Waveshare nicht im gleichen Netzwerk sind.

                                davon war bisher keine Rede

                                kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

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

                                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                spicerS 1 Antwort Letzte Antwort
                                0
                                • HomoranH Homoran

                                  @spicer sagte in Sofar Solar HYD10 KTL Wechselrichter an modbus Adapter:

                                  Beim Waveshare musste ich auf "Transparent" (anstelle von "modbus TCP <=> modbus RTU") stellen.

                                  das ist, warum mir ein solcher Konverter zu komplex ist.
                                  Dann noch bei gleichem Hersteller unterschiedliche Einstellungen braucht....

                                  @spicer sagte in Sofar Solar HYD10 KTL Wechselrichter an modbus Adapter:

                                  dass LXCs und der Waveshare nicht im gleichen Netzwerk sind.

                                  davon war bisher keine Rede

                                  spicerS Online
                                  spicerS Online
                                  spicer
                                  schrieb zuletzt editiert von
                                  #185

                                  @Homoran sagte in Sofar Solar HYD10 KTL Wechselrichter an modbus Adapter:

                                  davon war bisher keine Rede

                                  Das hat ja auch nichts mit den "Hängern" zutun ;)
                                  Der Adapter läuft ja ein paar Stunden gut.

                                  Wenn es mehrere Möglichkeiten gibt, eine Aufgabe zu erledigen, und eine davon in einer Katastrophe endet oder sonstwie unerwünschte Konsequenzen nach sich zieht, dann wird es jemand genau so machen. Alles, was schiefgehen kann, wird auch schiefgehen.
                                  (Murphys Gesetz)

                                  HomoranH 1 Antwort Letzte Antwort
                                  0
                                  • spicerS spicer

                                    @Homoran sagte in Sofar Solar HYD10 KTL Wechselrichter an modbus Adapter:

                                    davon war bisher keine Rede

                                    Das hat ja auch nichts mit den "Hängern" zutun ;)
                                    Der Adapter läuft ja ein paar Stunden gut.

                                    HomoranH Nicht stören
                                    HomoranH Nicht stören
                                    Homoran
                                    Global Moderator Administrators
                                    schrieb zuletzt editiert von
                                    #186

                                    @spicer sagte in Sofar Solar HYD10 KTL Wechselrichter an modbus Adapter:

                                    Das hat ja auch nichts mit den "Hängern" zutun ;)

                                    sicher?

                                    der socket wird angemeckert!

                                    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

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

                                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                    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

                                    753

                                    Online

                                    32.6k

                                    Benutzer

                                    82.2k

                                    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