Ankündigung

Einklappen
Keine Ankündigung bisher.

Generischer MOD-Bus TCP-Connector

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #16
    Zitat von sipiyou Beitrag anzeigen
    @lio123: Hab im Git die beiden json für Sigenergy hochgeladen. Bitte testen und mir bescheid geben. Kann sein, dass du die Abfrage in HA erstmal deaktivieren musst.
    ?
    sipiyou wow, das ging ja schnell! War ja nur ne Frage! Ich werde das testen sobald die Anlage betriebsbereit ist!

    Vielen Dank aber schon mal!

    Viele Grüße,
    Lio

    Kommentar


      #17
      Die Admin arbeitet als eigene Instantz zum Testen und hat nichts mit dem LBS zutun. Dafür gibt es den Button oben rechts zum stoppen - oder aus dem Steuergerät rausgehen.

      Es gibt Geräte, die können nur 1-2 Verbindungen aufbauen, d.h. Schau, dass beim Testen der LBS deaktiviert ist und du HA auch abschaltest.
      Probier bitte aus, ob es dann fehlerfrei geht.
      Die gleichen Fehler hatte ich bei meiner Wallbox auch, weil EVCC die Verbindung offen hält und die nur eine Verbindung kann. Bei EVCC hab ich jetzt den Modbus Proxy aktiviert und jetzt können beide drauf zugreifen.

      Werde am Wochenende die json erweitern, dass du die Daten dort auch eingeben kannst.

      Kommentar


        #18
        Moin,

        Heute nochmal alles durchgetestet... leider immer noch so ahnungslos wie zuvor...😭😭

        Ist eigentlich die FC06-Funktion (Write single holding register) implementiert?
        Ich versuche hier zuschreiben was nicht funktioniert bzw. Fehler zurück gibt:
        Code:
                            
        "2": {
                                "start": 5,
                                "size": 1,
                                "rw": "RW",
                                "function": "0x03",
                                "name": "T_setpoint",
                                "desc": "T Soll - Soll-Betriebstemperatur für WW. Werkseinstellung: 55°C",
                                "type": "int16",
                                "unit": "°C",
                                "scaleFactor": "",
                                "range": "5-62",
                                "notsupported": 0
                            },​
        Das sollte doch mit FC06 gemacht werden?

        https://www.support.aceautomation.eu...unktionscodes/

        Holding-Register = digitale Ausgänge, die einem Register entsprechen (daher der Name), oder ein nicht-binärer Wert (ein 16-Bit-Wort).
        Der Modbus-Datentyp ist 4.
        Er wird oft als 4x bezeichnet, was die Adressierung erleichtert.
        Der Datentyp 4x ist zum Lesen und Schreiben verfügbar.
        Zum Lesen wird der Funktionscode 3 (FC03 und 03h) verwendet.
        Zum Schreiben von Daten dieses Typs wird der Funktionscode 6 (FC06 und 06h) verwendet.
        Zum Schreiben mehrerer aufeinanderfolgender Daten wird der Funktionscode 16 (10h) verwendet.
        Dieser Datentyp wird auf verschiedene Weise notiert:
        %MW1, 40001, 400001..,
        Die Notation sollte 4×0000 (bis zu 4xFFFF) lauten.​
        aber hier wiederum funktioniert es...
        Code:
        "5": {
                                "start": 21,
                                "size": 2,
                                "rw": "RW",
                                "function": "0x03",
                                "name": "ModbusAddress",
                                "desc": "Modbus node address (0x0014)",
                                "type": "float32",
                                "unit": "",
                                "scaleFactor": "",
                                "range": "1-247",
                                "notsupported": 0
                            },
        ​
        sipiyou, wie liest du deine Modbus Geräte aus? Gateway oder direkt?

        Gruß

        PS: habe die Modbus Parameter und .json (wolf_fhs_280_s .pdf bitte Namen in .json ändern) mal angehängt.
        Angehängte Dateien
        Zuletzt geändert von toddler; 21.05.2026, 19:53.

        Kommentar


          #19
          Bitte auf die 1.08 updaten. Fct 06 war nicht implementiert. In der json kannst du jetzt ip usw. angeben, hab die Dokumentation im Git geupdated.

          Ich hab im git unter https://github.com/sipiyou/fronius_s...r/wolfs_fhs280 die neue json abgelegt und alle Gruppen jetzt aufgeführt.

          /edit: übrigens ist maxRegs=30 hier eigentlich nicht erforderlich, die Gruppe hat exakt 30 Elemente, d.h. hier erfolgt kein Chunking, aber probier bitte aus.

          Der LBS führt eine DB-Migration durch, dann kannst du in der Geräte-Config auswählen, ob die Writes über 16 oder 6 laufen sollen.

          Ich hab die Wallbox (EVC04), die lese ich über EVCC modbus proxy aus, weil die nur eine Modbus Verbindung unterstützt.
          Meinen Fronius WR+Batterie lese ich direkt aus, der hat direkt Modbus-TCP.

          Mehr Modbus-Geräte hab ich aktuell nicht, als nächstes kommt meine Tecalor-WP kommen, sobald ich mit dem Support geklärt habe, dass die die Modbus-Firmware auf mein ISG flashen sollen. Die kann aber auch direkt modbus-tcp.

          Ich hab lediglich für meine Klimaanlage waveshare rs485 <> tcp-gateway, das hat aber nichts mit diesem LBS zutun und ist im anderen Thread beschrieben.
          Zuletzt geändert von sipiyou; Gestern, 07:25.

          Kommentar


            #20
            Moin Nima,

            Danke für die schnelle Umsetzung.
            Der timeout Fehler ist bis jetzt mit der 1.08 nur noch in der Admin aufgetreten.
            Schreiben auf dem Logikeditor hat bis jetzt ohne timeout Fehler funktioniert. Also erstmal kein Problem mehr.

            Im Log wurde nur dieser Fehler abgelegt:
            Code:
            Write-Exception Wolf_FHS_280 / RTCDay: Modbus exception FC06@107 (192.168.20.36): code=3
            Wobei die Uhrzeit nur zwei mal jährlich geändert wird, also ist dass nicht weiter schlimm.


            Noch als Info, ich hatte an beiden Testumgebung direkt nach dem einspielen der 1.08 in der Admin diesen Fehler:

            HTTP 500.jpg

            Wurde der LBS einmalig eingeschalten war der Fehler in der Admin weg.
            Als Test bin ich mal von 1.08 auf 1.07 und gleich wieder auf 1.08. Fehler ist nicht mehr aufgetreten.
            In meinem Produktiv Edomi ist es auch nicht aufgetreten.
            Edomi läuft bei mir unter Proxmox mit dem LXC von starwarsfan.




            Für die Doku in deinem Git kannst du folgende BWWP noch aufnehmen:

            Wolf:
            - FHS-280-S
            - FHS-280-HE
            - FHS-180-S

            Ecodesign:
            - ED3xx
            - ED400
            - ED180 WL

            Vesttherm:
            - VT31xx

            Kermi:
            - x-change fresh

            Richter-Frenzel:
            - Optiline Trinkwasserwärmepumpe Fresh 300

            Die BWWP kommen alle vom selben Hersteller (ich glaube Vesttherm) und sind nur entsprechen gelabelt.
            Speicher gibt es in unterschiedlichen Größen, mit oder ohne Heizregister. Ab einem "gewissen Baujahr" ist die Steuerung bei allen die selbe.

            Bis auf die Optiline habe ich alle Unterlagen welche ich dir gern zukommen lassen kann.


            Vielen Dank für deine Hilfe.

            Gruß
            Zuletzt geändert von toddler; Gestern, 20:26.

            Kommentar


              #21
              Danke fürs Testen. 1.08 migriert nochmal die Datenbank, deshalb muss da erst der lbs laufen, bevor du auf die Admin gehst.

              Einige Steuergeräte können nur eine Verbindung, sprich:
              liest der Lbs gerade, dann kann die Admin einen Fehler haben.

              Die Admin ist nur zum testen, aber nicht für den produktiven Betrieb. D.h. eigentlich sollte man den LBS deaktivieren, wenn man mit der Admin sich die Infos raussucht.

              Die Verbindung wird auch jedesmal beim neuen Lesen/Schreiben neu aufgebaut. Das dürfte wahrscheinlich auch den Fehler bei dir erklären, dass das Steuergerät nur eine Verbindung verwalten kann.

              Probier bitte aus, ob es Fehler gibt, wenn du nur die Admin aktiv hast. Die liest die Daten auch in einer wesentlich höheren Frequenz aus.

              Sind die Modbus Register bei allen gleich ?

              Kommentar


                #22
                Moin,

                1.08 migriert nochmal die Datenbank, deshalb muss da erst der lbs laufen, bevor du auf die Admin gehst.
                So etwas dachte ich mir schon, wollte es aber erwähnen. Da es auf meinem Produktiv Edomi noch keine DB gab wird es hier auf anhieb funktioniert haben.

                Einige Steuergeräte können nur eine Verbindung, sprich:
                liest der Lbs gerade, dann kann die Admin einen Fehler haben.

                Die Admin ist nur zum testen, aber nicht für den produktiven Betrieb. D.h. eigentlich sollte man den LBS deaktivieren, wenn man mit der Admin sich die Infos raussucht.​
                Der Waveshare kann mehrere Verbindungen. Steht so auch in der Anleitung, habe jetzt nur nicht auf die schnelle gefunden wie viele. Was eigentlich auch nicht weiter wichtig ist.

                Die Verbindung wird auch jedes Mal beim neuen Lesen/Schreiben neu aufgebaut. Das dürfte wahrscheinlich auch den Fehler bei dir erklären, dass das Steuergerät nur eine Verbindung verwalten kann.
                Das würde erklären warum ich in Vircom wenn immer nur sehr kurz die "TCP Connection" als "Established" angezeigt bekomme.

                vircom.jpg

                Probiere bitte aus, ob es Fehler gibt, wenn du nur die Admin aktiv hast. Die liest die Daten auch in einer wesentlich höheren Frequenz aus.
                Kann ich probieren. Ich lasse die Admin einfach mal aktiv und schaue ob es zu Fehler kommt.

                Sind die Modbus Register bei allen gleich ?
                Wenn sich das auf die Auflistung der BWWP´s bezieht dann ja, soweit ich weiß und es vergleichen konnte sind die Register gleich.
                Die Modbus Schnittstelle ist in der Doku nicht weiter erwähnt oder dokumentiert. Es sind nur die Register aufgelistet ohne weitere Erklärung.

                Unterschiede die mir bekannt sind, AC-Lüfter und EC-Lüfter, mit Heizregister und ohne Heizregister, R134a und R290, Opfer Anode und aktive Anode.

                Du hast in der .json schon alle Register eingefügt so das du alle Variationen der BWWP abdeckst.


                Als ich beim kauf auf der Suche nach den BWWP war habe ich nirgends Angebote für eine mit EC-Lüfter gefunden, selbst R290 nur ganz vereinzelt.

                Ich kann dir gerne den Aufbau dokumentieren und samt Unterlagen zukommen lassen.

                Gruß
                Zuletzt geändert von toddler; Heute, 11:45.

                Kommentar

                Lädt...
                X