Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. OpenDTU-onBattery Blockly DPL Ein/Aus

    NEWS

    • Amazon Alexa - ioBroker Skill läuft aus ?

    • Monatsrückblick – September 2025

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    OpenDTU-onBattery Blockly DPL Ein/Aus

    This topic has been deleted. Only users with topic management privileges can see it.
    • maxclaudi
      maxclaudi @Beowolf last edited by maxclaudi

      @beowolf sagte in OpenDTU-onBattery Blockly DPL Ein/Aus:

      @maxclaudi

      Vielen Dank für die tolle Arbeit. 👍 👍 👍 👍

      Habe da aber noch mal ein paar Fragen.

      1. Du schreibst das der Datenpunkt dplCmd manuell angelegt werden muß. Bei mir (ioBroker) erschien der Datenpunkt unter mqtt zusammen mit dplState automatisch. Ist das richtig?

      2. Ich hatte bis jetzt den OpenDTU Adapter installiert. Dort erscheinen ja alle Werte die wichtig sind.
        Um nun DPL schalten zu können muß ich in OpenDTUBatterie ja mqtt aktivieren. Hatte ich bis jetzt nicht. Werte waren ja alle verfügbar. Jetzt sind alle Werte "nochmal" vorhanden und auf dem "mqtt-Kanal" ist noch mehr los. Das die Datenpunkte über den OpenDTU Adpater kommen ist nicht möglich?

      3. Wenn das nicht über den Adapter geht. Kann der dann komplett deinstalliert werden weil alles über mqtt geht?

      Grüße
      Manfred

      PS:
      Bei mir schaltet DPL leider nicht um wenn ich dplCmd von 0 auf 1 oder von 1 auf 0 ändere. Wenn ich in der WEBui von OpenDTU den Zustand ändere, wechselt dplState so wie es soll von 0 auf 1 usw.

      cmd.jpg
      state.jpg
      beide.jpg

      Hallo Manfred,

      mach bitte Folgendes Schritt für Schritt:

      1️⃣ Zuerst einmal einen Neustart der OpenDTU-OnBattery durchführen (über WebUI → Neustart).
      Damit wird alles sauber initialisiert.

      2️⃣ Dann in ioBroker den Datenpunkt dplCmd prüfen.
      Wenn er auf 0 steht, dann in der WebUI den Dynamic Power Limiter einschalten und auf „Speichern“ klicken.
      (Der Speichern-Button ist wichtig – erst dadurch wird der Zustand wirklich aktiv übernommen.)

      Wenn dplCmd auf 1 steht, kannst du zur Sicherheit einmal den umgekehrten Weg gehen:
      → In der WebUI einschalten + speichern, kurz warten,
      → danach ausschalten + speichern, wieder kurz warten.

      3️⃣ Ab jetzt kannst du über ioBroker den Datenpunkt dplCmd (0/1) verwenden, um den DPL zu schalten.
      Der aktuelle Zustand wird über dplState zurückgemeldet.

      4️⃣ Wenn du in der WebUI nichts siehst:
      Nach dem Schalten einfach in der WebUI auf „Live-Ansicht“ wechseln und dann wieder zurück zu
      „Einstellungen → Dynamic Power Limiter Einstellungen“.
      Die Seite aktualisiert sich nicht automatisch, wenn extern geschaltet wird.
      Das liegt daran, dass:

      • die WebUI-Werte nur bei Aufruf der Seite oder beim Speichern neu aus der Config gelesen werden,
      • aber keine WebSocket-Verbindung oder „Live-Update“-Funktion besteht, die auf MQTT-Ereignisse reagiert.

      Hinweis:
      Der OpenDTU-Adapter wird für diese Steuerung nicht benötigt.
      Alles läuft direkt über MQTT – der Adapter kann also weg, wenn du nur MQTT nutzt.

      1 Reply Last reply Reply Quote 0
      • B
        Beowolf last edited by

        Ok.

        zu 1. Habe ich gemacht.

        zu 2. Datenpunkt dplCmd. Der kam automatisch nach dem Aufspilen der Firmware und nachdem ich den DPL einaml an und wieder aus geschaltet hatte. Ist das Richtig?

        Wenn ich in der WebUI den DPL schalte ändert sich der Datenpunkt dplState. Nicht dplCmd.

        Nochmal. Ich habe das doch richtig verstanden?

        dplCmd schaltet DPL an oder aus.

        dplState gibt mir zurück ob DPL an oder aus ist.

        maxclaudi 1 Reply Last reply Reply Quote 0
        • maxclaudi
          maxclaudi @Beowolf last edited by maxclaudi

          @beowolf sagte in OpenDTU-onBattery Blockly DPL Ein/Aus:

          Ok.

          zu 1. Habe ich gemacht.

          zu 2. Datenpunkt dplCmd. Der kam automatisch nach dem Aufspilen der Firmware und nachdem ich den DPL einaml an und wieder aus geschaltet hatte. Ist das Richtig?

          edit 07.10.2025 20:19h
          Der automatisch angelegte Datenpunkt löschen!
          Er muss manuell angelegt werden!

          Siehe Anleitung und auch Bestätigung von Beowolf


          Wenn ich in der WebUI den DPL schalte ändert sich der Datenpunkt dplState. Nicht dplCmd.

          Richtig.


          Nochmal. Ich habe das doch richtig verstanden?
          dplCmd schaltet DPL an oder aus.

          dplState gibt mir zurück ob DPL an oder aus ist.

          ja, richtig.

          dplState:

          • Liefert aktuellen Status des Dynamic Power Limiters (nur lesbar)
          • Werte: 0 = aus, 1 = ein

          dplCmd:

          • dplCmd ändert sich nie von selbst – auch nicht nach einem Neustart.
          • Dieser Datenpunkt dient nur zum Schalten:
            • Wert 1 → Dynamic Power Limiter einschalten
            • Wert 0 → Dynamic Power Limiter ausschalten
          • Er zeigt also nicht den aktuellen Zustand, sondern sendet nur einen Schaltbefehl an die Firmware.

          Der tatsächliche Zustand wird immer NUR über dplState angezeigt.

          Kurz gesagt:
          dplCmd ist der Schalter,
          dplState ist die Anzeige, ob wirklich geschaltet wurde.

          1 Reply Last reply Reply Quote 0
          • B
            Beowolf last edited by

            Ok. Dann habe ich ja alles richtig gemacht.

            Nur, warum wird der DPL dann nicht geschaltet?

            maxclaudi 1 Reply Last reply Reply Quote 0
            • maxclaudi
              maxclaudi @Beowolf last edited by maxclaudi

              @beowolf
              Das klingt, als wäre bei dir grundsätzlich alles richtig eingerichtet 👍
              Wenn sich der DPL trotzdem nicht schalten lässt, prüf bitte einmal Folgendes:

              Neustart der OpenDTU-onBattery durchführen (über die WebUI).

              Nach dem Neustart in der WebUI den Dynamic Power Limiter manuell umschalten auf den entgegengesetzten Zustand (z. B. einschalten) und auf „Speichern“ klicken – das ist wichtig, weil erst beim Speichern der Wert wirklich übernommen wird.

              Danach in der Live-Ansicht kontrollieren, ob DPL aktiv ist.

              Jetzt kannst du in ioBroker über den Datenpunkt
              dplCmd (0 = aus, 1 = ein) schalten.
              Wenn du schaltest, sollte sich der Datenpunkt dplState anschließend ebenfalls ändern.

              Wenn das klappt, ist alles in Ordnung.
              Wenn nicht, schreib bitte kurz, ob sich dplState überhaupt ändert oder gar nichts passiert – dann schauen wir gezielt weiter.

              Manchmal hilft es auch, MQTT kurz zu deaktivieren und wieder zu aktivieren oder den MQTT-Adapter einmal neu zu starten, damit sich alles sauber neu verbindet.

              Wenn das Schalten über ioBroker weiterhin nicht reagiert, kannst du testweise mit dem MQTT Explorer prüfen, ob die MQTT-Verbindung grundsätzlich funktioniert:

              Öffne den MQTT Explorer und suche nach deinem Topic
              <baseTopic>/dpl/dplCmd.
              wenn es nicht existiert einfach direkt eingeben, Beispiel:

              41e605d9-4fa9-4f06-9004-c39fd589f393-image.png
              Dort kannst du einmal probeweise eine 1 oder 0 (als „raw“) senden.
              Wird der Wert sofort übernommen, ist alles korrekt – dann liegt das Problem höchstens an der ioBroker-Seite (Adapter oder Datenpunkt).

              Wenn sich im MQTT-Explorer erfolgreich schalten lässt, dann sollte daraufhin auch der Datenpunkt dplCmd mit 1 oder 0 schalten lassen.

              Wenn sich im MQTT-Explorer auch nichts tut, liegt es eher an den MQTT- oder OpenDTU-Einstellungen.

              B 1 Reply Last reply Reply Quote 0
              • B
                Beowolf @maxclaudi last edited by

                @maxclaudi

                Also, im mqtt-explorer kann ich den 1 oder 0 senden. Kommt alles direkt in ioBrooker an.

                Wenn ich in der webUI von OpendtuonBatterie den DPL an und aus schalte kommte es ja auch in ioBroker an. Dort wechselt ja der dplState entsprechend auf 0 oder 1.

                Ich habe den Eindruck, das OpenDTUonBatterie den dplCmd-Befehl nicht mitbekommt.

                Wie müssen die Einstellung in dem mqtt-Bereich bei opendtu denn aussehen?

                maxclaudi 1 Reply Last reply Reply Quote 0
                • maxclaudi
                  maxclaudi @Beowolf last edited by maxclaudi

                  @beowolf
                  Das klingt alles absolut korrekt bei dir 👍
                  Wenn dplState im ioBroker auf 0/1 reagiert, dann funktioniert die Kommunikation perfekt.
                  Der dplCmd-Befehl kommt also an – nur siehst du das in der WebUI nicht sofort, weil sich die Seite nicht automatisch aktualisiert, wenn von außen (über MQTT) geschaltet wird.

                  So kannst du es sicher nachvollziehen:

                  1. Schau zuerst, was aktuell im ioBroker steht:
                    Wenn dplState = 0, ist DPL aus.

                  2. Setze jetzt manuell dplCmd = 1.
                    → DPL wird eingeschaltet.
                    → Kurz danach sollte dplState auch auf 1 springen.

                  3. Jetzt in der WebUI oben auf „Live-Ansicht“ klicken.
                    Danach zurück zu „Einstellungen → Dynamic Power Limiter“.
                    Erst jetzt siehst du dort den neuen Zustand korrekt (Schieberegler auf „ein“).

                  4. Wenn du wieder ausschalten willst:
                    → dplCmd = 0 setzen
                    → dplState geht auf 0
                    → Danach wieder den gleichen WebUI-Wechsel machen (Live-Ansicht → DPL-Seite),
                    dann zeigt’s auch dort wieder richtig „aus“.

                  Wichtig:
                  Die Seite „Dynamic Power Limiter Einstellungen“ lädt sich nicht neu, wenn über MQTT geschaltet wird –
                  das ist also nur eine nicht richtige Anzeige, wenn die Seite nicht über Wechsel zu einer anderen Seite der Frimwar zwischendrin sattgefunden hat.

                  1 Reply Last reply Reply Quote 0
                  • B
                    Beowolf last edited by

                    @maxclaudi sagte in OpenDTU-onBattery Blockly DPL Ein/Aus:

                    Setze jetzt manuell dplCmd = 1.
                    → DPL wird eingeschaltet.
                    → Kurz danach sollte dplState auch auf 1 springen.

                    Genau das passiert nicht.

                    Das sich die Seite nicht automatisch aktualisier ist schon klar.

                    maxclaudi 1 Reply Last reply Reply Quote 0
                    • maxclaudi
                      maxclaudi @Beowolf last edited by maxclaudi

                      @beowolf
                      Bitte Mqtt Teil- Screenshot oder Beschreibung, wie mqtt-Einstellung unter MQTT bei OpenDtu eingestellt ist z.B.:
                      03b5e555-6055-497a-b443-fe3b12b23c7a-image.png


                      Wenn über WebUI geschaltet wird, dann zeigt auch dplState:1 oder dplState:0 richtig an?

                      ja?:
                      Dann als Nächstes:

                      1. OpenDTU-onBattery Neustart über die WebUI neu starten.

                      1. Dynamic Power Limiter einmal manuell in der WebUI umschalten und auf „Speichern“ klicken:
                      • Wenn dplCmd zu Beginn 0 ist: in WebUi DPL ausschalten + speichern.
                      • Wenn dplCmd zu Beginn 1 ist: in WebUi DPL einschalten + speichern.
                      • Dies ist wichtig, weil erst beim Speichern das ESP-Device das dplCmd-Topic abonniert und auf Steuerbefehle reagiert.

                      1. In ioBroker prüfen und ggf. gegensteuern:
                      • Kontrolliere über den Datenpunkt dplState, ob der Status korrekt übernommen wurde (0 = aus, 1 = ein).
                      • Jetzt kannst du den Datenpunkt dplCmd setzen (0 = aus, 1 = ein), um den DPL ein- oder auszuschalten.
                      • Normalerweise ändert sich dadurch nichts, wenn der Zustand schon korrekt ist, aber so stellst du sicher, dass das System sauber synchronisiert ist.

                      1. WebUI-Zustand aktualisieren:
                      • Auf „Live-Ansicht“ klicken, dann zurück zu Einstellungen → Dynamic Power Limiter, um den aktuellen Zustand korrekt in der WebUI angezeigt zu bekommen.
                      B 1 Reply Last reply Reply Quote 0
                      • B
                        Beowolf @maxclaudi last edited by

                        @maxclaudi

                        Habe ich jetzt alles schon zig mal gemacht.

                        Bist du ganz sicher, das du die richtige Firmware eingstellt hast?

                        maxclaudi 1 Reply Last reply Reply Quote 0
                        • maxclaudi
                          maxclaudi @Beowolf last edited by maxclaudi

                          Hey @beowolf,

                          die Firmware, die du nutzt, ist korrekt – das können wir also ausschließen. 👍
                          Was jetzt noch wichtig ist, damit das Schalten über dplCmd zuverlässig funktioniert:

                          1. OpenDTU neu starten (über WebUI), damit MQTT sauber verbunden ist.

                          2. Dynamic Power Limiter einmal manuell über WebUI schalten und speichern – das Speichern ist entscheidend, damit das ESP-Device das dplCmd-Topic abonniert.

                          • Wenn dplCmd am Anfang 0 zeigt → in WebUI ausschalten + speichern
                          • Wenn dplCmd am Anfang 1 zeigt → in WebUI einschalten + speichern
                          1. Live-Ansicht aufrufen, kurz warten, und in ioBroker kontrollieren, dass dplState den aktuellen Wert anzeigt.

                          2. Danach kannst du über dplCmd in ioBroker schalten. Kurz darauf sollte dplState den neuen Zustand übernehmen.

                          3. WebUI-Anzeige: die Seite aktualisiert sich nicht automatisch. Einfach auf „Live-Ansicht“ klicken und dann zurück in die DPL-Einstellungen, um den korrekten Zustand zu sehen.

                          Wenn all das passiert, funktioniert MQTT sauber – und du kannst alles über den Datenpunkt dplCmd steuern.


                          Optionaler Test über MQTT-Explorer (funktioniert das?):

                          • Öffne den MQTT-Explorer und finde Topic <baseTopic>/dpl/dplCmd.
                            oder gib es direkt ein.

                          • Sende probeweise eine 1 oder 0 (entgegengesetzt schalten).

                          • Wenn das ESP-Device reagiert, sollte dplState kurz danach den neuen Wert anzeigen.

                          Wenn das klappt, ist die MQTT-Seite der OpenDTU korrekt eingerichtet, und anschließend kannst du in ioBroker mit dplCmd schalten.

                          Damit iobroker-Adapter ausgeschlossen werden kann.

                          B 1 Reply Last reply Reply Quote 0
                          • B
                            Beowolf @maxclaudi last edited by

                            @maxclaudi

                            Das was du da schreibst, habe ich alles schon gemacht. Es funktioniert einfach nicht.

                            Schade.

                            maxclaudi 1 Reply Last reply Reply Quote 0
                            • maxclaudi
                              maxclaudi @Beowolf last edited by maxclaudi

                              @beowolf
                              Hast du das Script mit den curl-Requests deaktiviert?
                              Es darf nicht gleichzeitig laufen, sonst können die Befehle durcheinanderkommen.

                              Wenn das Script deaktiviert ist, könntest du zur Sicherheit einmal über den MQTT-Explorer direkt auf dplCmd schalten (0 oder 1).
                              So lässt sich prüfen, ob die MQTT-Verbindung und das Abonnieren des Topics korrekt funktionieren.

                              B 1 Reply Last reply Reply Quote 0
                              • B
                                Beowolf @maxclaudi last edited by

                                @maxclaudi

                                Skript was das erste was ich gelöscht hatte.

                                Könntest du mal von dem dplCmd Datenpunkt Bildchen von den Einstellungen bei "Objekt bearbeiten" machen?
                                Also von dem Tab "Allgemein", "Objektdaten" und " Zustand"?

                                all.jpg
                                ob.jpg
                                zu.jpg

                                maxclaudi 1 Reply Last reply Reply Quote 0
                                • maxclaudi
                                  maxclaudi @Beowolf last edited by maxclaudi

                                  edit: Bilder entfernt.

                                  B 1 Reply Last reply Reply Quote 0
                                  • B
                                    Beowolf @maxclaudi last edited by

                                    @maxclaudi

                                    👍 👍 👍 👍 😳 😳 😳 😳 👍 👍 👍 👍

                                    Habe die Lösung gefunden.

                                    Der Datenpunkt "dplCmd" MUSS manuell angelegt werden. Wird er automatisch erzeugt, funktioniert es nicht.

                                    Warum auch immer.

                                    Vielen Danke für die Hilfe und Geduld.

                                    Grüße

                                    maxclaudi 1 Reply Last reply Reply Quote 1
                                    • maxclaudi
                                      maxclaudi @Beowolf last edited by

                                      @beowolf sagte in OpenDTU-onBattery Blockly DPL Ein/Aus:

                                      @maxclaudi

                                      👍 👍 👍 👍 😳 😳 😳 😳 👍 👍 👍 👍

                                      Habe die Lösung gefunden.

                                      Der Datenpunkt "dplCmd" MUSS manuell angelegt werden. Wird er automatisch erzeugt, funktioniert es nicht.

                                      Warum auch immer.

                                      Vielen Danke für die Hilfe und Geduld.

                                      Grüße

                                      Freut mich riesig, dass es jetzt läuft! 😄🎉
                                      Super, dass du drangeblieben bist und nicht aufgegeben hast – echt stark! 👍👍👍

                                      Bitte denk nur dran:
                                      ➡️ Das alte curl-Script ab jetzt nicht mehr gleichzeitig verwenden, sonst kommen die Befehle durcheinander.

                                      Der Code hat mich über zwei Wochen Arbeit gekostet (weil mir da niemand helfen konnte 😅),
                                      deshalb freut’s mich umso mehr, wenn er bei dir jetzt sauber funktioniert!

                                      Tipp zum Schluss: nicht zu schnell oder zu oft hin- und herschalten 😉
                                      Ab jetzt lässt sich der DPL ganz bequem über den Datenpunkt steuern.

                                      Viel Spaß damit! ☀

                                      B 1 Reply Last reply Reply Quote 0
                                      • B
                                        Beowolf @maxclaudi last edited by Beowolf

                                        @maxclaudi

                                        Ich habe das in erster Linie für meine Frau benötigt.

                                        https://forum.iobroker.net/topic/82305/einfache-solarleistungsanzeige/2?_=1759855900680

                                        Ich hatte ihr ein kleines Display in die Küche gestellt um einfach zu entscheiden das alles was von den Solarpanels kommt direkt zu den Herdplatten fließt. Denn wenn der DPL angeschaltet bleibt, regelt der sich halb zu tode.

                                        Der WAF ist sehr wichtig bei unserem Hobby. 😳

                                        maxclaudi 1 Reply Last reply Reply Quote 0
                                        • maxclaudi
                                          maxclaudi @Beowolf last edited by

                                          @beowolf sagte in OpenDTU-onBattery Blockly DPL Ein/Aus:

                                          Der WAF ist sehr wichtig bei unserem Hobby. 😳

                                          💯 👍 🙂

                                          1 Reply Last reply Reply Quote 0
                                          • B
                                            Beowolf last edited by

                                            Ob deine Funktion wohl in die "offizielle" Version übernommen wird?

                                            maxclaudi 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            645
                                            Online

                                            32.3k
                                            Users

                                            80.9k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            54
                                            2256
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo