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. Tester
  4. [Adapter] cloudfreie Auslesung von Deye-Invertern

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.0k

[Adapter] cloudfreie Auslesung von Deye-Invertern

Geplant Angeheftet Gesperrt Verschoben Tester
1.2k Beiträge 108 Kommentatoren 377.8k Aufrufe 92 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.
  • Rene55R Rene55

    @christianblenk Hallo Chris, ich habe auch nur eine Übersicht von einigen Registern für den Deye.
    Welche Werte sollen denn bei einem Disconnect genullt werden? Welches ist das OPC-Item?

    Warum sollte ich gleichheißende Items abfangen? Wenn der Benutzer das so eingibt, wird er sich was dabei gedacht haben, oder?
    LG

    C Offline
    C Offline
    ChristianBlenk
    schrieb am zuletzt editiert von
    #174

    @rene55 ich meine den Qualitätscode. Der steht immer auf 0x00 good, sollte vielleicht auf 0x42 device not connected gehen.

    Der Hintergrund ist der, dass man auf dieser Basis die Daten in der Datenbank (INFLUX, etc) anders bewerten kann.

    Auf Grund der Flexibilität deines Adapters könnte man vieleicht ein boolean Flag in der Konfig setzen, welche Werte genullt werden sollen, wenn das Device auf diconnect geht. Spannung, Strom, Leistung.

    Das Problem bei den Kisten ist, dass wenn die keinen Saft mehr über die PV bekommen, aus gehen und dann die Werte einfach stehen bleiben und ggf. weiter geloggt werden.

    Theoretisch kann ich das auch über Blockly selber bauen. Im Adapter wäre das schicker.

    Grüße
    Chris

    Host: Proxmox i7, Containerstation: Docker Node.js: 20.18.0, NPM: 10.8.2, JS-controller: 8.8.3, Admin: 7.1.5

    Rene55R 1 Antwort Letzte Antwort
    0
    • C ChristianBlenk

      @rene55 ich meine den Qualitätscode. Der steht immer auf 0x00 good, sollte vielleicht auf 0x42 device not connected gehen.

      Der Hintergrund ist der, dass man auf dieser Basis die Daten in der Datenbank (INFLUX, etc) anders bewerten kann.

      Auf Grund der Flexibilität deines Adapters könnte man vieleicht ein boolean Flag in der Konfig setzen, welche Werte genullt werden sollen, wenn das Device auf diconnect geht. Spannung, Strom, Leistung.

      Das Problem bei den Kisten ist, dass wenn die keinen Saft mehr über die PV bekommen, aus gehen und dann die Werte einfach stehen bleiben und ggf. weiter geloggt werden.

      Theoretisch kann ich das auch über Blockly selber bauen. Im Adapter wäre das schicker.

      Grüße
      Chris

      Rene55R Offline
      Rene55R Offline
      Rene55
      schrieb am zuletzt editiert von
      #175

      @christianblenk sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:

      Qualitätscode

      Hab ich irgendwie auch im Hinterkopf, weiß nur noch nich genau, woran ich das festmachen soll.

      @christianblenk sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:

      Device auf diconnect

      Ist nicht ganz so einfach: Ich hab da gerade im Winter überraschungen erlebt, dass auch tagsüber disconected wurde.

      @christianblenk sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:

      keinen Saft mehr über die PV

      Genau. Auch bei WLAN-Ausfall, warum auch immer, aber Gerät produziert weiter. Daher ist hier ein 0-stellen nicht so prickelnd. Aber ja, wenn man das konfigurieren kann, kann der der es so haben will ja einschalten.

      Host: Fujitsu Intel(R) Pentium(R) CPU G4560T, 32 GB RAM, Proxmox 8.x + lxc Ubuntu 22.04
      ioBroker (8 GB RAM) Node.js: 20.19.1, NPM: 10.8.2, js-Controller: 7.0.6, Admin: 7.6.3
      Wetterstation: Froggit WH3000SE V1.6.6

      cashC 1 Antwort Letzte Antwort
      0
      • Rene55R Rene55

        @christianblenk sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:

        Qualitätscode

        Hab ich irgendwie auch im Hinterkopf, weiß nur noch nich genau, woran ich das festmachen soll.

        @christianblenk sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:

        Device auf diconnect

        Ist nicht ganz so einfach: Ich hab da gerade im Winter überraschungen erlebt, dass auch tagsüber disconected wurde.

        @christianblenk sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:

        keinen Saft mehr über die PV

        Genau. Auch bei WLAN-Ausfall, warum auch immer, aber Gerät produziert weiter. Daher ist hier ein 0-stellen nicht so prickelnd. Aber ja, wenn man das konfigurieren kann, kann der der es so haben will ja einschalten.

        cashC Offline
        cashC Offline
        cash
        Most Active
        schrieb am zuletzt editiert von
        #176

        @rene55 Kann ich bestätigen. Ich pinge den Deye regelmäßig an und bekomme regelmäßig den Hinweis das das Gerät per Ping nicht erreichbar ist. Die Pingabfrage erfolgt alle 10 Minuten und meist ist es bei der nächsten Abfrage wieder erreichbar. Produziert wird dabei durchgehend. WLAN ist im Garten sehr gut. Inverter ist auch nur 2 meter - eher weniger vom WLan entfernt. Die Chinesen können den Inverter ja auch neu starten und die Firmware aktualisieren.

        C 1 Antwort Letzte Antwort
        0
        • cashC cash

          @rene55 Kann ich bestätigen. Ich pinge den Deye regelmäßig an und bekomme regelmäßig den Hinweis das das Gerät per Ping nicht erreichbar ist. Die Pingabfrage erfolgt alle 10 Minuten und meist ist es bei der nächsten Abfrage wieder erreichbar. Produziert wird dabei durchgehend. WLAN ist im Garten sehr gut. Inverter ist auch nur 2 meter - eher weniger vom WLan entfernt. Die Chinesen können den Inverter ja auch neu starten und die Firmware aktualisieren.

          C Offline
          C Offline
          ChristianBlenk
          schrieb am zuletzt editiert von ChristianBlenk
          #177

          @cash ja das kann schon sein. Ich würde es halt so machen.

          Ich komme aus der Branche Prozessautomatiesierung und Bigdata. Da ist das Standard.

          Wenn eine Abfrage auf eine Maschine keine Daten liefert, dann bleiben die alten Daten erhalten und der Qualitycode geht auf Bad, uncertain oder halt Device not connected (0x42). Kommt immer auf den Hersteller an. 0x00 Good ist aber in jedem Fall falsch.

          Grüße
          Chris

          Host: Proxmox i7, Containerstation: Docker Node.js: 20.18.0, NPM: 10.8.2, JS-controller: 8.8.3, Admin: 7.1.5

          Rene55R 1 Antwort Letzte Antwort
          0
          • C ChristianBlenk

            @cash ja das kann schon sein. Ich würde es halt so machen.

            Ich komme aus der Branche Prozessautomatiesierung und Bigdata. Da ist das Standard.

            Wenn eine Abfrage auf eine Maschine keine Daten liefert, dann bleiben die alten Daten erhalten und der Qualitycode geht auf Bad, uncertain oder halt Device not connected (0x42). Kommt immer auf den Hersteller an. 0x00 Good ist aber in jedem Fall falsch.

            Grüße
            Chris

            Rene55R Offline
            Rene55R Offline
            Rene55
            schrieb am zuletzt editiert von
            #178

            @christianblenk sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:

            Good ist aber in jedem Fall falsch

            Das nehm ich mal als Auftrag. Wobei die meisten Adapter, die ich so in Gebrauch habe immer 0x00 in den State geben. Oder kennst du einen, der das so umgesetzt hat?

            Host: Fujitsu Intel(R) Pentium(R) CPU G4560T, 32 GB RAM, Proxmox 8.x + lxc Ubuntu 22.04
            ioBroker (8 GB RAM) Node.js: 20.19.1, NPM: 10.8.2, js-Controller: 7.0.6, Admin: 7.6.3
            Wetterstation: Froggit WH3000SE V1.6.6

            C 2 Antworten Letzte Antwort
            0
            • Rene55R Rene55

              @christianblenk sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:

              Good ist aber in jedem Fall falsch

              Das nehm ich mal als Auftrag. Wobei die meisten Adapter, die ich so in Gebrauch habe immer 0x00 in den State geben. Oder kennst du einen, der das so umgesetzt hat?

              C Offline
              C Offline
              ChristianBlenk
              schrieb am zuletzt editiert von
              #179

              @rene55 jetzt hast du mich.
              Nein, aktuell weiß ich das nicht. Soweit ich das aber in Erinnerung habe, gehen die Werte aber auf 0.

              Host: Proxmox i7, Containerstation: Docker Node.js: 20.18.0, NPM: 10.8.2, JS-controller: 8.8.3, Admin: 7.1.5

              1 Antwort Letzte Antwort
              0
              • A Offline
                A Offline
                ah179
                schrieb am zuletzt editiert von
                #180

                @Rene55

                Ich habe mir gestern den Adapter installiert/eingerichtet, bekomme ihn aber nicht zum Laufen wegen eines "offset"-Fehlers. Ich habe unter "Register" 2 einzelne (3, 86) ausgewählt:

                deyeidc.0 2023-05-05 09:16:04.568 error
                Exception-Code: ERR_OUT_OF_RANGE: The value of "offset" is out of range. It must be >= 0 and <= 1. Received 2

                deyeidc.0 2023-05-05 09:16:04.567 error
                RangeError [ERR_OUT_OF_RANGE]: The value of "offset" is out of range. It must be >= 0 and <= 1. Received 2 at new NodeError (node:internal/errors:399:5) at boundsError (node:internal/buffer:88:9) at Buffer.readUInt8 (node:internal/buffer:254:5) at idcCore.readCoils (/opt/iobroker/node_modules/iobroker.deyeidc/lib/idc-core.js:181:35) at Socket.<anonymous> (/opt/iobroker/node_modules/iobroker.deyeidc/main.js:161:31) at Socket.emit (node:events:513:28) at addChunk (node:internal/streams/readable:324:12) at readableAddChunk (node:internal/streams/readable:297:9) at Readable.push (node:internal/streams/readable:234:10) at TCP.onStreamRead (node:internal/stream_base_commons:190:23)

                deyeidc.0 2023-05-05 09:16:04.561 error
                uncaught exception: The value of "offset" is out of range. It must be >= 0 and <= 1. Received 2

                Wenn ich 2 Ranges mit je 3 Register (2 - 4, 85 - 87) auswähle lautet die Fehlermeldung:
                uncaught exception: The value of "offset" is out of range. It must be >= 0 and <= 5. Received 6

                Gibt hier der WR ein Register mehr zurück als angefragt wird?
                WR: Deye sun600g3-eu-230
                Firmware des WR: MW3_16U_5406_1.57

                Host: Igel M330C 2GB RAM, Debian 11, Node.js: v18.16.0, NPM: 9.5.1, JS-controller: 4.0.24, Admin: 6.3.5

                C 1 Antwort Letzte Antwort
                0
                • A ah179

                  @Rene55

                  Ich habe mir gestern den Adapter installiert/eingerichtet, bekomme ihn aber nicht zum Laufen wegen eines "offset"-Fehlers. Ich habe unter "Register" 2 einzelne (3, 86) ausgewählt:

                  deyeidc.0 2023-05-05 09:16:04.568 error
                  Exception-Code: ERR_OUT_OF_RANGE: The value of "offset" is out of range. It must be >= 0 and <= 1. Received 2

                  deyeidc.0 2023-05-05 09:16:04.567 error
                  RangeError [ERR_OUT_OF_RANGE]: The value of "offset" is out of range. It must be >= 0 and <= 1. Received 2 at new NodeError (node:internal/errors:399:5) at boundsError (node:internal/buffer:88:9) at Buffer.readUInt8 (node:internal/buffer:254:5) at idcCore.readCoils (/opt/iobroker/node_modules/iobroker.deyeidc/lib/idc-core.js:181:35) at Socket.<anonymous> (/opt/iobroker/node_modules/iobroker.deyeidc/main.js:161:31) at Socket.emit (node:events:513:28) at addChunk (node:internal/streams/readable:324:12) at readableAddChunk (node:internal/streams/readable:297:9) at Readable.push (node:internal/streams/readable:234:10) at TCP.onStreamRead (node:internal/stream_base_commons:190:23)

                  deyeidc.0 2023-05-05 09:16:04.561 error
                  uncaught exception: The value of "offset" is out of range. It must be >= 0 and <= 1. Received 2

                  Wenn ich 2 Ranges mit je 3 Register (2 - 4, 85 - 87) auswähle lautet die Fehlermeldung:
                  uncaught exception: The value of "offset" is out of range. It must be >= 0 and <= 5. Received 6

                  Gibt hier der WR ein Register mehr zurück als angefragt wird?
                  WR: Deye sun600g3-eu-230
                  Firmware des WR: MW3_16U_5406_1.57

                  C Offline
                  C Offline
                  ChristianBlenk
                  schrieb am zuletzt editiert von ChristianBlenk
                  #181

                  @ah179 die Abfrage enthält Register ausserhalb deiner Deklaration unter dem Reiter Register. Dort einfach so anpassen, dass die Abfrage hinein passt.Screenshot 2023-05-05 134652.png Screenshot 2023-05-05 134642.png

                  Host: Proxmox i7, Containerstation: Docker Node.js: 20.18.0, NPM: 10.8.2, JS-controller: 8.8.3, Admin: 7.1.5

                  A 1 Antwort Letzte Antwort
                  0
                  • Rene55R Rene55

                    @christianblenk sagte in [neuer Adapter] cloudfreie Auslesung von Deye-Invertern:

                    Good ist aber in jedem Fall falsch

                    Das nehm ich mal als Auftrag. Wobei die meisten Adapter, die ich so in Gebrauch habe immer 0x00 in den State geben. Oder kennst du einen, der das so umgesetzt hat?

                    C Offline
                    C Offline
                    ChristianBlenk
                    schrieb am zuletzt editiert von
                    #182

                    @rene55 ich hab das für mich jetzt erstmal so gelöst.

                    Screenshot 2023-05-05 140258.png

                    Host: Proxmox i7, Containerstation: Docker Node.js: 20.18.0, NPM: 10.8.2, JS-controller: 8.8.3, Admin: 7.1.5

                    M Rene55R 2 Antworten Letzte Antwort
                    0
                    • C ChristianBlenk

                      @ah179 die Abfrage enthält Register ausserhalb deiner Deklaration unter dem Reiter Register. Dort einfach so anpassen, dass die Abfrage hinein passt.Screenshot 2023-05-05 134652.png Screenshot 2023-05-05 134642.png

                      A Offline
                      A Offline
                      ah179
                      schrieb am zuletzt editiert von
                      #183

                      @christianblenk vielen Dank, ich konnte zwar keinen "Spulen"-Eintrag außerhalb der "Register"-Ranges entdecken, aber alles zu löschen und neu anlegen brachte dann den Erfolg. Der Adapter läuft und tut was er soll.

                      Da du den "Running Status" verwendest, wo gibt es hierzu eine Auflistung welcher Wert was bedeutet?

                      Host: Igel M330C 2GB RAM, Debian 11, Node.js: v18.16.0, NPM: 9.5.1, JS-controller: 4.0.24, Admin: 6.3.5

                      1 Antwort Letzte Antwort
                      0
                      • C ChristianBlenk

                        @rene55 ich hab das für mich jetzt erstmal so gelöst.

                        Screenshot 2023-05-05 140258.png

                        M Offline
                        M Offline
                        Medea
                        schrieb am zuletzt editiert von
                        #184

                        @christianblenk 2023-05-05 17_28_20-javascript - iobroker.png

                        Als Anregung, so habe ich es bei mir gelöst, damit nicht beim kleinsten Schluckauf die Werte genullt werden.

                        Rene55R 1 Antwort Letzte Antwort
                        0
                        • Rene55R Offline
                          Rene55R Offline
                          Rene55
                          schrieb am zuletzt editiert von
                          #185

                          @ah179 Kannst du noch nachvollziehen, was du eingetragen hattest? Selbst wenn eine "Spule" ausserhalb der "Register" liegt, darf der Adapter keinen Error werfen. Er beachtet diesen Wert einfach nicht.

                          Host: Fujitsu Intel(R) Pentium(R) CPU G4560T, 32 GB RAM, Proxmox 8.x + lxc Ubuntu 22.04
                          ioBroker (8 GB RAM) Node.js: 20.19.1, NPM: 10.8.2, js-Controller: 7.0.6, Admin: 7.6.3
                          Wetterstation: Froggit WH3000SE V1.6.6

                          1 Antwort Letzte Antwort
                          0
                          • C ChristianBlenk

                            @rene55 ich hab das für mich jetzt erstmal so gelöst.

                            Screenshot 2023-05-05 140258.png

                            Rene55R Offline
                            Rene55R Offline
                            Rene55
                            schrieb am zuletzt editiert von
                            #186

                            @christianblenk Ja, so kann man es machen. Für mich stellt sich die Frage, wann ich das machen soll? Und ist es dann sinnvoll, dem Anwender in den "Spulen" noch einen Haken setzen lassen, wo er eben das Nullen auswählen kann. Oder eine geschicktere Lösung?

                            Host: Fujitsu Intel(R) Pentium(R) CPU G4560T, 32 GB RAM, Proxmox 8.x + lxc Ubuntu 22.04
                            ioBroker (8 GB RAM) Node.js: 20.19.1, NPM: 10.8.2, js-Controller: 7.0.6, Admin: 7.6.3
                            Wetterstation: Froggit WH3000SE V1.6.6

                            C 1 Antwort Letzte Antwort
                            0
                            • M Medea

                              @christianblenk 2023-05-05 17_28_20-javascript - iobroker.png

                              Als Anregung, so habe ich es bei mir gelöst, damit nicht beim kleinsten Schluckauf die Werte genullt werden.

                              Rene55R Offline
                              Rene55R Offline
                              Rene55
                              schrieb am zuletzt editiert von
                              #187

                              @medea Solange sollte man mindestens Warten. Könnte ich als Parameter auch noch einbauen.

                              Host: Fujitsu Intel(R) Pentium(R) CPU G4560T, 32 GB RAM, Proxmox 8.x + lxc Ubuntu 22.04
                              ioBroker (8 GB RAM) Node.js: 20.19.1, NPM: 10.8.2, js-Controller: 7.0.6, Admin: 7.6.3
                              Wetterstation: Froggit WH3000SE V1.6.6

                              1 Antwort Letzte Antwort
                              0
                              • Rene55R Rene55

                                @christianblenk Ja, so kann man es machen. Für mich stellt sich die Frage, wann ich das machen soll? Und ist es dann sinnvoll, dem Anwender in den "Spulen" noch einen Haken setzen lassen, wo er eben das Nullen auswählen kann. Oder eine geschicktere Lösung?

                                C Offline
                                C Offline
                                ChristianBlenk
                                schrieb am zuletzt editiert von
                                #188

                                @rene55 du fragst doch alle x Sekunden ab. Wenn nach x Versuchen keine Verbindung zu stande kommt die Werte auf einen vorzugebenen Wert nehmen. In der Industrie nennt man das dann Ersatzwert bei Verbindungsfehler.

                                Für mich mich ist immer nur die tatsächlich generierte Arbeit interessant. Deshalb nulle ich auch sofort beim Verbindungsverlust. Die Summenzähler nulle ich nicht. Hier könnte man drüber nachdenken NULL in die DB zu schreiben. Da weiß ich aber nicht, ob das mit dem Adapter möglich ist.

                                Host: Proxmox i7, Containerstation: Docker Node.js: 20.18.0, NPM: 10.8.2, JS-controller: 8.8.3, Admin: 7.1.5

                                Rene55R 1 Antwort Letzte Antwort
                                0
                                • C ChristianBlenk

                                  @rene55 du fragst doch alle x Sekunden ab. Wenn nach x Versuchen keine Verbindung zu stande kommt die Werte auf einen vorzugebenen Wert nehmen. In der Industrie nennt man das dann Ersatzwert bei Verbindungsfehler.

                                  Für mich mich ist immer nur die tatsächlich generierte Arbeit interessant. Deshalb nulle ich auch sofort beim Verbindungsverlust. Die Summenzähler nulle ich nicht. Hier könnte man drüber nachdenken NULL in die DB zu schreiben. Da weiß ich aber nicht, ob das mit dem Adapter möglich ist.

                                  Rene55R Offline
                                  Rene55R Offline
                                  Rene55
                                  schrieb am zuletzt editiert von
                                  #189

                                  @christianblenk Einen Zähler hab ich schon ins Auge gefasst. Das Problem dabei ist, der eine fragt jede Minute, der andere nur alle 6 Minuten. Na gut, ich könnte den Zähler in Abhangigkeit der Abtastrate bringen. Also würde es dir helfen, in der Konfiguration die Werte zu markieren, die dann genullt werden sollen.
                                  Auch der Wunsch nach der Qualität ist noch ein Problem. Werte, die bestimmt richtig sind, werde ich bei Verbindungsabbruch nicht auf 0x42 setzen. Hier muss ich noch eine Lösung ausbrüten.

                                  Host: Fujitsu Intel(R) Pentium(R) CPU G4560T, 32 GB RAM, Proxmox 8.x + lxc Ubuntu 22.04
                                  ioBroker (8 GB RAM) Node.js: 20.19.1, NPM: 10.8.2, js-Controller: 7.0.6, Admin: 7.6.3
                                  Wetterstation: Froggit WH3000SE V1.6.6

                                  1 Antwort Letzte Antwort
                                  0
                                  • O Offline
                                    O Offline
                                    Oromis
                                    schrieb am zuletzt editiert von Oromis
                                    #190

                                    Hallo zusammen, vielen Dank für die bisherige Entwicklung des Adapters. Ich bin kurz davor mir einen Deye SUN Mikrowechselrichter mit 600 Watt zu kaufen. Die Installation des Adapters hat auf jeden Fall problemlos mit den Infos hier im Thread geklappt.

                                    Eine Sache zu den Registern: Halten sich die Deye-Wechselrichter ans Sunspec-Protokoll bei der Registerabfrage? Laut Sunspec-Website sind diese zumindest für das Protokoll zertifiziert, allerdings unterscheiden sich die Register, die ich hier lese vom Sunspec-Protokoll. Wobei man bei der Zählung der Modbus-Register immer sehr vorsichtig sein muss und evtl. einen Offset berücksichtigen muss. Bei Sunspec sind die Register für einphasige und dreiphasige Wechselrichter leicht unterschiedlich.


                                    Wen es interessiert: Das Prinzip mit dem Sunspec-Protokoll funktioniert so: Die Wechselrichter stellen Holding-Register als Modbus-Slave startend mit Adresse 40000 zur Verfügung. Andere Geräte (z.B: eine Wärmepumpe) rufen die Register der Reihe nach ab. Das ist hier sehr gut ab Seite 4 beschrieben: https://www.photovoltaikforum.com/core/attachment/18876-sunspec-implementation-technical-note-de-pdf/

                                    Bei Register 40069 wird der Typ (einphasig oder dreiphasig) festgelegt und damit entscheiden sich auch die weiteren Register. Der Eintrag 101 bedeutet einphasig (typische Mikrowechselrichter) und 103 dreiphasig (größere Wechselrichter). Hier könnt ihr jetzt die Register herausfinden: https://github.com/sunspec/models/tree/master/smdx

                                    smdx_00101.xml enthält die für die einphasigen und https://github.com/sunspec/models/blob/master/smdx/smdx_00103.xml dreiphasigen. Man muss jetzt quasi den "Offset", der angegeben ist immer auf das Register 40071 draufzählen. Die Einheiten geben Hinweise auf die physikalischen Größen. 40102 (Offset 31) ist z.B. die Gehäusetemperatur und 40106 deren Skalenfaktor (1 = Faktor 10, Offset 36). 40083 entspricht der Ausgangsleistung (Offset 12) und 40084 wieder deren Skalierung. 40098 ergibt Spannung VPV-1 und 40093 den insgesamt produzierten Strom in kWh.
                                    Ich zähle die Register übrigens so wie der Modbus-Adapter für iobroker und nicht wie in der oben verlinkten pdf.

                                    Rene55R 1 Antwort Letzte Antwort
                                    0
                                    • O Oromis

                                      Hallo zusammen, vielen Dank für die bisherige Entwicklung des Adapters. Ich bin kurz davor mir einen Deye SUN Mikrowechselrichter mit 600 Watt zu kaufen. Die Installation des Adapters hat auf jeden Fall problemlos mit den Infos hier im Thread geklappt.

                                      Eine Sache zu den Registern: Halten sich die Deye-Wechselrichter ans Sunspec-Protokoll bei der Registerabfrage? Laut Sunspec-Website sind diese zumindest für das Protokoll zertifiziert, allerdings unterscheiden sich die Register, die ich hier lese vom Sunspec-Protokoll. Wobei man bei der Zählung der Modbus-Register immer sehr vorsichtig sein muss und evtl. einen Offset berücksichtigen muss. Bei Sunspec sind die Register für einphasige und dreiphasige Wechselrichter leicht unterschiedlich.


                                      Wen es interessiert: Das Prinzip mit dem Sunspec-Protokoll funktioniert so: Die Wechselrichter stellen Holding-Register als Modbus-Slave startend mit Adresse 40000 zur Verfügung. Andere Geräte (z.B: eine Wärmepumpe) rufen die Register der Reihe nach ab. Das ist hier sehr gut ab Seite 4 beschrieben: https://www.photovoltaikforum.com/core/attachment/18876-sunspec-implementation-technical-note-de-pdf/

                                      Bei Register 40069 wird der Typ (einphasig oder dreiphasig) festgelegt und damit entscheiden sich auch die weiteren Register. Der Eintrag 101 bedeutet einphasig (typische Mikrowechselrichter) und 103 dreiphasig (größere Wechselrichter). Hier könnt ihr jetzt die Register herausfinden: https://github.com/sunspec/models/tree/master/smdx

                                      smdx_00101.xml enthält die für die einphasigen und https://github.com/sunspec/models/blob/master/smdx/smdx_00103.xml dreiphasigen. Man muss jetzt quasi den "Offset", der angegeben ist immer auf das Register 40071 draufzählen. Die Einheiten geben Hinweise auf die physikalischen Größen. 40102 (Offset 31) ist z.B. die Gehäusetemperatur und 40106 deren Skalenfaktor (1 = Faktor 10, Offset 36). 40083 entspricht der Ausgangsleistung (Offset 12) und 40084 wieder deren Skalierung. 40098 ergibt Spannung VPV-1 und 40093 den insgesamt produzierten Strom in kWh.
                                      Ich zähle die Register übrigens so wie der Modbus-Adapter für iobroker und nicht wie in der oben verlinkten pdf.

                                      Rene55R Offline
                                      Rene55R Offline
                                      Rene55
                                      schrieb am zuletzt editiert von
                                      #191

                                      @oromis Nach der ersten Durchsicht des Sunspec-Protokolls sehe ich doch starke Abweichungen zu Deye. Bisher kann ich nur sagen, dass die Deye 300 - 2000 mit den bekannten Registern auslesbar sind. Sicher haben die 3-phasigen und die Hybrid-Inverter mehr und andere Register - die mir aber(da ich keinen habe) nicht bekannt sind. Hier sind wir also auf Rückmeldungen anderer User angewiesen.

                                      Host: Fujitsu Intel(R) Pentium(R) CPU G4560T, 32 GB RAM, Proxmox 8.x + lxc Ubuntu 22.04
                                      ioBroker (8 GB RAM) Node.js: 20.19.1, NPM: 10.8.2, js-Controller: 7.0.6, Admin: 7.6.3
                                      Wetterstation: Froggit WH3000SE V1.6.6

                                      O 1 Antwort Letzte Antwort
                                      0
                                      • Rene55R Rene55

                                        @oromis Nach der ersten Durchsicht des Sunspec-Protokolls sehe ich doch starke Abweichungen zu Deye. Bisher kann ich nur sagen, dass die Deye 300 - 2000 mit den bekannten Registern auslesbar sind. Sicher haben die 3-phasigen und die Hybrid-Inverter mehr und andere Register - die mir aber(da ich keinen habe) nicht bekannt sind. Hier sind wir also auf Rückmeldungen anderer User angewiesen.

                                        O Offline
                                        O Offline
                                        Oromis
                                        schrieb am zuletzt editiert von
                                        #192

                                        @rene55 Danke dir! Dann ist es wohl kein Ansatzpunkt, um die Adressen weiter zu verfolgen. Hier übrigens das "Zertifikat", das ich auf der Sunspec-Seite dazu zu den Deye-Wechselrichtern gefunden habe. https://sunspec.org/wp-content/uploads/2020/08/SunSpec-Deye-certificate-SM-000007.pdf

                                        1 Antwort Letzte Antwort
                                        0
                                        • eDriveDeE Offline
                                          eDriveDeE Offline
                                          eDriveDe
                                          schrieb am zuletzt editiert von
                                          #193

                                          Hi,
                                          habe den Deye 800.
                                          Mir wird nur folgendes angezeigt:
                                          a59aef35-6fa7-43fc-b205-4294f8ef306d-image.png

                                          0a6b63b4-9bcc-4c10-86a2-d3130631c820-image.png

                                          Folgende Einstellungen habe ich gewählt:

                                          662aa0cd-6179-46c2-a78f-5098224cdee1-image.png

                                          11f05dbc-2585-4f47-a302-77a7924fd8db-image.png

                                          9beb2629-85ef-4e6d-b172-340908ed3964-image.png

                                          8afc2b42-4389-4f97-a38c-353ae128083d-image.png

                                          7dd0b811-a3a8-44fa-98f1-c5cf28b057cf-image.png

                                          e974aaf7-0e04-4a01-b552-fbfff8465ce5-image.png

                                          421f327b-64b7-4827-a1c8-761de12b149e-image.png

                                          Wo habe ich den Denkfehler, dass keine Werte generiert werden?
                                          Danke für Tipps :)

                                          Rene55R J 2 Antworten Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          367

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          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