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

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Adapter Modbus und Marstek Venus E Batterie

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Adapter Modbus und Marstek Venus E Batterie

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
40 Beiträge 11 Kommentatoren 6.6k Aufrufe 10 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.
  • R Offline
    R Offline
    reini
    schrieb am zuletzt editiert von reini
    #31

    auf Wunsch von @Letzi poste ich mal meine Einstellungen im Zusammenhang mit Modbus und dem EW11A RS485/Wifi Converter - funktioniert top bei mir
    Das Register zum importieren ist ebenso im Anhang - beschrieben werden können nur die Werte ab 42000

    2025-09-23 18_22_33-Greenshot.png
    2025-09-23 18_23_22-Greenshot.png
    2025-09-23 18_23_31-Greenshot.png
    2025-09-23 18_23_43-Greenshot.png
    2025-09-23 18_24_18-Greenshot.png
    register.txt

    S 1 Antwort Letzte Antwort
    1
    • R reini

      auf Wunsch von @Letzi poste ich mal meine Einstellungen im Zusammenhang mit Modbus und dem EW11A RS485/Wifi Converter - funktioniert top bei mir
      Das Register zum importieren ist ebenso im Anhang - beschrieben werden können nur die Werte ab 42000

      2025-09-23 18_22_33-Greenshot.png
      2025-09-23 18_23_22-Greenshot.png
      2025-09-23 18_23_31-Greenshot.png
      2025-09-23 18_23_43-Greenshot.png
      2025-09-23 18_24_18-Greenshot.png
      register.txt

      S Offline
      S Offline
      Skarpain
      schrieb am zuletzt editiert von
      #32

      @reini hallo so wie du es eingestellt hast habe ich auch so ungefair
      daten kommen auch alle an
      so wie du das mit den blockly gelöst hast wollte ich es aber mit javascript machen
      das problem ist nur er stellt es beim nächsten poll wieder alles auf standard zurück
      koennstest du mir dein blockly mit code geben vielleicht hab ich nur ein fehler drinne danke

      R 1 Antwort Letzte Antwort
      0
      • S Skarpain

        @reini hallo so wie du es eingestellt hast habe ich auch so ungefair
        daten kommen auch alle an
        so wie du das mit den blockly gelöst hast wollte ich es aber mit javascript machen
        das problem ist nur er stellt es beim nächsten poll wieder alles auf standard zurück
        koennstest du mir dein blockly mit code geben vielleicht hab ich nur ein fehler drinne danke

        R Offline
        R Offline
        reini
        schrieb am zuletzt editiert von
        #33

        @skarpain

        PV_Speicher.test.xml

        1 Antwort Letzte Antwort
        0
        • B Offline
          B Offline
          burberry
          schrieb am zuletzt editiert von
          #34

          @reini
          Frage gehts hier um den Venus 2.0 oder um den 3.0 ?

          Habe den 3.0 geht es damit auch ?

          danke

          S 1 Antwort Letzte Antwort
          0
          • B burberry

            @reini
            Frage gehts hier um den Venus 2.0 oder um den 3.0 ?

            Habe den 3.0 geht es damit auch ?

            danke

            S Offline
            S Offline
            Skarpain
            schrieb am zuletzt editiert von
            #35

            @burberry bei mir um 2.0

            1 Antwort Letzte Antwort
            0
            • R reini

              bei mir funktioniert die Steuerung über Modbus top (mittels EW11A), brauch es aber genau 2x am Tag

              max wird sicherheitshalber auf 10W gesetzt um ein laden aus dem Netz zu verhindern
              2025-09-20 07_55_35-Einstellungen.png

              ich lade momentan ab 10:30 mit max 1500W (davor nix weil es ein Dauerspiel aus laden/entladen wäre)
              2025-09-20 07_55_20-Einstellungen.png

              44003 max discharge steht bei mir dauerhaft auf 1500W

              hab aber auch einen Adapter Request gestellt auf Github, bitte dort fleißig thumbs ups :+1: vergeben
              https://github.com/ioBroker/AdapterRequests/issues/1002

              T Offline
              T Offline
              triotec
              schrieb am zuletzt editiert von
              #36

              @reini sagte in Adapter Modbus und Marstek Venus E Batterie:

              bei mir funktioniert die Steuerung über Modbus top (mittels EW11A), brauch es aber genau 2x am Tag

              max wird sicherheitshalber auf 10W gesetzt um ein laden aus dem Netz zu verhindern
              2025-09-20 07_55_35-Einstellungen.png

              ich lade momentan ab 10:30 mit max 1500W (davor nix weil es ein Dauerspiel aus laden/entladen wäre)
              2025-09-20 07_55_20-Einstellungen.png

              44003 max discharge steht bei mir dauerhaft auf 1500W

              hab aber auch einen Adapter Request gestellt auf Github, bitte dort fleißig thumbs ups :+1: vergeben
              https://github.com/ioBroker/AdapterRequests/issues/1002

              Ich bin auch gerade dabei meine Venus per Modbus zusteuern.

              • warum stellst du max charge Nachts auf 10W und nicht auf 0 ? Bei 0 lädt er doch auf gar keinen fall.
              • mein Datenpunkt für die Modbus Steuerung 42000 steht immer auf 21947 und ich kann die Datenpunkte zum laden und entladen trotzdem ändern.
              R 1 Antwort Letzte Antwort
              0
              • T triotec

                @reini sagte in Adapter Modbus und Marstek Venus E Batterie:

                bei mir funktioniert die Steuerung über Modbus top (mittels EW11A), brauch es aber genau 2x am Tag

                max wird sicherheitshalber auf 10W gesetzt um ein laden aus dem Netz zu verhindern
                2025-09-20 07_55_35-Einstellungen.png

                ich lade momentan ab 10:30 mit max 1500W (davor nix weil es ein Dauerspiel aus laden/entladen wäre)
                2025-09-20 07_55_20-Einstellungen.png

                44003 max discharge steht bei mir dauerhaft auf 1500W

                hab aber auch einen Adapter Request gestellt auf Github, bitte dort fleißig thumbs ups :+1: vergeben
                https://github.com/ioBroker/AdapterRequests/issues/1002

                Ich bin auch gerade dabei meine Venus per Modbus zusteuern.

                • warum stellst du max charge Nachts auf 10W und nicht auf 0 ? Bei 0 lädt er doch auf gar keinen fall.
                • mein Datenpunkt für die Modbus Steuerung 42000 steht immer auf 21947 und ich kann die Datenpunkte zum laden und entladen trotzdem ändern.
                R Offline
                R Offline
                RaBe52
                schrieb am zuletzt editiert von
                #37

                @triotec Beide Punkte kann ich bestätigen.

                ioBroker unter Proxmox auf HP Z4 G4 (Terramaster unter Proxmox als Backup),
                backitpup, Drag-indicator, Ebus, Energiefluss erweitert, Enphase, Fritzdect, Ham, Kecontact, Midea, mqtt, Proxmox, REST API, Shelly, Signal-cmb, smoothed, Sonoff, Telegram, text2command, TR-064, Tuya, Vaillant, VW connect, Wamo, ...

                L 1 Antwort Letzte Antwort
                0
                • R RaBe52

                  @triotec Beide Punkte kann ich bestätigen.

                  L Offline
                  L Offline
                  Letzi
                  schrieb am zuletzt editiert von Letzi
                  #38

                  Darf man mal fragen, welche Firmwareversion Ihr nutzt. Ich habe die V153. Ich hatte von Anfang an saubere Lesezugriffe gehabt aber Problem mit den Schreibrechten. Natürlich schlecht für die 42000 bis 43000 Register.

                  Ich erweitere mal das Thema, weil es auch zum Steuern des Venus gehört:

                  1. Hat jemand mehr Infos über die API 30000 die man sich zwar freischalten lassen kann, aber auch da 0 Zugriffe hat?
                  2. Hat jemand die UNI-Meter Lösung zum Laufen bekommen? Immerhin ist das bis jetzt der Einzige, den ich in der Marstek App sichtbar bekommen habe. Leider weigert sich der UNI-METER die MQTT Daten umzusetzen. Spannend ist aber, das, wie schon mal geschrieben, es hier zu unkontrollierten Entladungen kommt.
                  3. und auch Version´s relevant, bis wann läuft die B2500 Lösung? Mit der Version V153 bekomme ich nicht einmal einen Emulator in der App angezeigt.
                  4. Damit es mal erwähnt wurde, eine UDP Direktverbindung vom ioBroker zum Marstek oder eine Steuerung über den EW11 auf Port 8899 funktionieren auch nicht.

                  Ich habe alle Versuche dem Support beschrieben, bis jetzt hab ich noch keine Antwort.

                  Anbei noch mein Java, durch das Eintragen eines positiven oder negativen Werts im Datenpunkt 0_userdata.0.Datenpunkte_ioBroker.AKKU.MARSTEK1.PowerControl wir der Marstek jeweil geladen oder entladen.

                  
                  // === KONFIGURATION ===
                  const POWER_CONTROL_DP = '0_userdata.0.Datenpunkte_ioBroker.AKKU.MARSTEK1.PowerControl';
                  
                  // Registerpfade:
                  const REG_RS485_CONTROL   = 'modbus.1.holdingRegisters.42000_42000_RS485_Control';
                  const REG_FORCE_MODE      = 'modbus.1.holdingRegisters.42010_42010_Force_Mode';
                  const REG_CHARGE_SOC      = 'modbus.1.holdingRegisters.42011_42011_Charge_to_SOC';
                  const REG_FORCE_CHARGE    = 'modbus.1.holdingRegisters.42020_42020_Force_Charge_Power_W';
                  const REG_FORCE_DISCHARGE = 'modbus.1.holdingRegisters.42021_42021_Force_Discharge_Power_W';
                  const REG_USER_MODE       = 'modbus.1.holdingRegisters.43000_43000_User_Work_Mode';
                  
                  // RS485-Kommandos
                  const CMD_ON  = 21930; // 0x55AA
                  const CMD_OFF = 21947; // 0x55BB
                  
                  // === INITIALISIERUNG ===
                  log('✅ Marstek Modbus-Steuerung aktiv (DP: ' + POWER_CONTROL_DP + ') – RS485 KeepAlive jede 25s', 'info');
                  
                  // === KEEPALIVE: RS485 aktiv halten ===
                  schedule('*/25 * * * * *', () => {
                      setState(REG_RS485_CONTROL, CMD_ON, false);
                      log('📝 KeepAlive RS485 (42000): ' + CMD_ON, 'info');
                  });
                  
                  // === FUNKTION: PowerControl-Handler ===
                  on({ id: POWER_CONTROL_DP, change: 'ne' }, (obj) => {
                      const val = parseFloat(obj.state.val);
                      if (isNaN(val)) return;
                  
                      if (val === 0) {
                          log('⏹️ Stop-Befehl empfangen (0 W) – Force-Mode aus.', 'info');
                          setState(REG_RS485_CONTROL, CMD_ON, false);
                          setState(REG_FORCE_MODE, 0, false);
                          return;
                      }
                  
                      // Ladebefehl
                      if (val > 0) {
                          const power = Math.round(val);
                          log('⚡ Ladebefehl: ' + power + ' W → FORCE_CHARGE', 'info');
                          setState(REG_RS485_CONTROL, CMD_ON, false);
                          setState(REG_USER_MODE, 0, false);      // Manual Mode
                          setState(REG_FORCE_CHARGE, power, false);
                          setState(REG_FORCE_MODE, 1, false);     // Charge Mode
                          return;
                      }
                  
                      // Entladebefehl
                      if (val < 0) {
                          const power = Math.abs(Math.round(val));
                          log('⚡ Entladebefehl: ' + power + ' W → FORCE_DISCHARGE', 'info');
                          setState(REG_RS485_CONTROL, CMD_ON, false);
                          setState(REG_USER_MODE, 0, false);      // Manual Mode
                          setState(REG_FORCE_DISCHARGE, power, false);
                          setState(REG_FORCE_MODE, 2, false);     // Discharge Mode
                      }
                  });
                  
                  
                  R 1 Antwort Letzte Antwort
                  0
                  • L Letzi

                    Darf man mal fragen, welche Firmwareversion Ihr nutzt. Ich habe die V153. Ich hatte von Anfang an saubere Lesezugriffe gehabt aber Problem mit den Schreibrechten. Natürlich schlecht für die 42000 bis 43000 Register.

                    Ich erweitere mal das Thema, weil es auch zum Steuern des Venus gehört:

                    1. Hat jemand mehr Infos über die API 30000 die man sich zwar freischalten lassen kann, aber auch da 0 Zugriffe hat?
                    2. Hat jemand die UNI-Meter Lösung zum Laufen bekommen? Immerhin ist das bis jetzt der Einzige, den ich in der Marstek App sichtbar bekommen habe. Leider weigert sich der UNI-METER die MQTT Daten umzusetzen. Spannend ist aber, das, wie schon mal geschrieben, es hier zu unkontrollierten Entladungen kommt.
                    3. und auch Version´s relevant, bis wann läuft die B2500 Lösung? Mit der Version V153 bekomme ich nicht einmal einen Emulator in der App angezeigt.
                    4. Damit es mal erwähnt wurde, eine UDP Direktverbindung vom ioBroker zum Marstek oder eine Steuerung über den EW11 auf Port 8899 funktionieren auch nicht.

                    Ich habe alle Versuche dem Support beschrieben, bis jetzt hab ich noch keine Antwort.

                    Anbei noch mein Java, durch das Eintragen eines positiven oder negativen Werts im Datenpunkt 0_userdata.0.Datenpunkte_ioBroker.AKKU.MARSTEK1.PowerControl wir der Marstek jeweil geladen oder entladen.

                    
                    // === KONFIGURATION ===
                    const POWER_CONTROL_DP = '0_userdata.0.Datenpunkte_ioBroker.AKKU.MARSTEK1.PowerControl';
                    
                    // Registerpfade:
                    const REG_RS485_CONTROL   = 'modbus.1.holdingRegisters.42000_42000_RS485_Control';
                    const REG_FORCE_MODE      = 'modbus.1.holdingRegisters.42010_42010_Force_Mode';
                    const REG_CHARGE_SOC      = 'modbus.1.holdingRegisters.42011_42011_Charge_to_SOC';
                    const REG_FORCE_CHARGE    = 'modbus.1.holdingRegisters.42020_42020_Force_Charge_Power_W';
                    const REG_FORCE_DISCHARGE = 'modbus.1.holdingRegisters.42021_42021_Force_Discharge_Power_W';
                    const REG_USER_MODE       = 'modbus.1.holdingRegisters.43000_43000_User_Work_Mode';
                    
                    // RS485-Kommandos
                    const CMD_ON  = 21930; // 0x55AA
                    const CMD_OFF = 21947; // 0x55BB
                    
                    // === INITIALISIERUNG ===
                    log('✅ Marstek Modbus-Steuerung aktiv (DP: ' + POWER_CONTROL_DP + ') – RS485 KeepAlive jede 25s', 'info');
                    
                    // === KEEPALIVE: RS485 aktiv halten ===
                    schedule('*/25 * * * * *', () => {
                        setState(REG_RS485_CONTROL, CMD_ON, false);
                        log('📝 KeepAlive RS485 (42000): ' + CMD_ON, 'info');
                    });
                    
                    // === FUNKTION: PowerControl-Handler ===
                    on({ id: POWER_CONTROL_DP, change: 'ne' }, (obj) => {
                        const val = parseFloat(obj.state.val);
                        if (isNaN(val)) return;
                    
                        if (val === 0) {
                            log('⏹️ Stop-Befehl empfangen (0 W) – Force-Mode aus.', 'info');
                            setState(REG_RS485_CONTROL, CMD_ON, false);
                            setState(REG_FORCE_MODE, 0, false);
                            return;
                        }
                    
                        // Ladebefehl
                        if (val > 0) {
                            const power = Math.round(val);
                            log('⚡ Ladebefehl: ' + power + ' W → FORCE_CHARGE', 'info');
                            setState(REG_RS485_CONTROL, CMD_ON, false);
                            setState(REG_USER_MODE, 0, false);      // Manual Mode
                            setState(REG_FORCE_CHARGE, power, false);
                            setState(REG_FORCE_MODE, 1, false);     // Charge Mode
                            return;
                        }
                    
                        // Entladebefehl
                        if (val < 0) {
                            const power = Math.abs(Math.round(val));
                            log('⚡ Entladebefehl: ' + power + ' W → FORCE_DISCHARGE', 'info');
                            setState(REG_RS485_CONTROL, CMD_ON, false);
                            setState(REG_USER_MODE, 0, false);      // Manual Mode
                            setState(REG_FORCE_DISCHARGE, power, false);
                            setState(REG_FORCE_MODE, 2, false);     // Discharge Mode
                        }
                    });
                    
                    
                    R Offline
                    R Offline
                    RaBe52
                    schrieb am zuletzt editiert von
                    #39

                    @letzi
                    Bei mir läuft seit ein paar Wochen die V155

                    zu 1: Habe ich mir mal freischalten lassen und kurz getestet, aber da geht (glaube ich) auch nicht mehr als über Modbus zu steuern. Man bekommt detaillierte Infos (auf Zellebene), aber da sehe ich keinen dauerhaften Mehrwert (ist was bei Fehlern oder Leistungseinbruch). Außerdem kein Support mehr.

                    zu 2. Ja, aber warum MQTT? Bei mir ist der inzwischen wieder raus, da mein HITCHI inzwischen auch den Shelly emuliert. Läuft stabil parallel zu MQTT an IoB (SONOFF-Adapter).

                    zu 3. ./.

                    zu 4: API könnte direkt funktionieren, wobei ich mich Frage, ob dass dann wirklich direkt oder über die Cloud ist.
                    Was meinst Du mit dem EW11? Meiner läuft mit dieser Einstellung:
                    f2a6e4f8-7bf0-4ce3-91e7-28e90d6f6479-grafik.png

                    ioBroker unter Proxmox auf HP Z4 G4 (Terramaster unter Proxmox als Backup),
                    backitpup, Drag-indicator, Ebus, Energiefluss erweitert, Enphase, Fritzdect, Ham, Kecontact, Midea, mqtt, Proxmox, REST API, Shelly, Signal-cmb, smoothed, Sonoff, Telegram, text2command, TR-064, Tuya, Vaillant, VW connect, Wamo, ...

                    1 Antwort Letzte Antwort
                    0
                    • J Offline
                      J Offline
                      JP65
                      schrieb am zuletzt editiert von JP65
                      #40

                      Ich habe die gleichen Einstellungen des ELFIN EW11A wie @reini 23.9.25. Für die Kontrolle der ELFIN-Venus Verbindung habe ich das Hercules Setup Utility verwendet bekomme aber keine "recieved data" , also keine Verbindung zum Venus. Um die RS485 Schnittstelle des Venus E 3.0 zu testen habe ich einen CH340 über USB angeschlossen und bekomme auf ein Read Holding (03) des Registers 30100 auch eine Antwort vom Venus über die RS485 Schnittstelle. Ich benutze den RJ45 Stecker des Venus und nehme als Pin belegung 1 RX, 2 TX, 5 Vcc, 8 GND verbunden mit ELFIN 5 RX, 6 TX, 7 Vcc und 8 GND.
                      Stimmt dies so ?

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


                      Support us

                      ioBroker
                      Community Adapters
                      Donate
                      FAQ Cloud / IOT
                      HowTo: Node.js-Update
                      HowTo: Backup/Restore
                      Downloads
                      BLOG

                      726

                      Online

                      32.7k

                      Benutzer

                      82.4k

                      Themen

                      1.3m

                      Beiträge
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2025
                      logo
                      • Anmelden

                      • Du hast noch kein Konto? Registrieren

                      • Anmelden oder registrieren, um zu suchen
                      • Erster Beitrag
                        Letzter Beitrag
                      0
                      • Home
                      • Aktuell
                      • Tags
                      • Ungelesen 0
                      • Kategorien
                      • Unreplied
                      • Beliebt
                      • GitHub
                      • Docu
                      • Hilfe