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. Skripten / Logik
  4. Blockly
  5. [Vorlage] Gartenbewässerung mit 6 Ventilen

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    337

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

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

[Vorlage] Gartenbewässerung mit 6 Ventilen

Geplant Angeheftet Gesperrt Verschoben Blockly
1.2k Beiträge 76 Kommentatoren 378.5k Aufrufe 88 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.
  • Q Qlink

    @kuddel said in [Vorlage] Gartenbewässerung mit 6 Ventilen:

    @qlink aktuell fehler mit der Ansatz, wie ich per Blockly prüfen kann, ob die ON_TIME DPs vorhanden sind.

    Man könnte es natürlich am Anfang mit angeben.

    HM-Tp = Wired

    Aber eine automatische Erkennung wäre natürlich schöner. Ich muss da nochmal bisschen testen

    Hi Kuddel, wegen dem Thema Homematic Wired und keine ON_TIME DPs hätte ich folgenden Beitrag gefunden:

    https://forum.iobroker.net/topic/27985/prüfen-ob-datenpunkt-existiert/13

    Mit existState kann man anscheinend prüfen, ob ein Datenpunkt vorhanden ist oder nicht und dann entsprechend weitere Schritte setzen...

    Wäre das nicht ein Ansatz, wie man automatisch in deinem Script checken kann ob Homematic Funk oder Homematic Wired im Einsatz ist ?

    Also, falls ON_TIME DP nicht existiert, dann ...

    Bete Grüße

    K Offline
    K Offline
    Kuddel
    schrieb am zuletzt editiert von Kuddel
    #767

    @qlink habe mal eben kurz mit einem HomeMatic Heizkörper Aktor geprüft.

    Ergenis: "DP nicht vorhanden"

    Funzt also.

    D.h. ich würde jetzt für jeden Ventil-Aktor prüfen, ob der DP vorhanden ist.
    Falls nicht, wird der Typ von "HM" auf "HM-Wired" geändert.


    37308e60-5b2b-4e04-b8a6-2129d29c1c48-grafik.png

    Somit wird der Aktor aktiviert und bekommt keine OnTime.

    Somit müssten die Fehlermeldungen im Log verschwinden.

    Wäre das dann eine Lösung für dein Problem ?

    Q 1 Antwort Letzte Antwort
    0
    • K Kuddel

      @qlink habe mal eben kurz mit einem HomeMatic Heizkörper Aktor geprüft.

      Ergenis: "DP nicht vorhanden"

      Funzt also.

      D.h. ich würde jetzt für jeden Ventil-Aktor prüfen, ob der DP vorhanden ist.
      Falls nicht, wird der Typ von "HM" auf "HM-Wired" geändert.


      37308e60-5b2b-4e04-b8a6-2129d29c1c48-grafik.png

      Somit wird der Aktor aktiviert und bekommt keine OnTime.

      Somit müssten die Fehlermeldungen im Log verschwinden.

      Wäre das dann eine Lösung für dein Problem ?

      Q Offline
      Q Offline
      Qlink
      schrieb am zuletzt editiert von
      #768

      @kuddel

      Das wäre super und würde mir schonmal gut helfen :)

      Das Thema mit der fehlenden Sicherheitsschicht ohne OnTime beschäftigt mich allerdings noch ...

      Die einzige Möglichkeit bei den 12/7er HM Wired Modulen eine ähnliche Sicherheit wie deine OnTime Variante bei der Funk-Version einzubauen wäre die Nutzung von Direktverknüpfungen mit einer fix eingestellten Ausschaltverzögerung.

      Dazu könnte ich auf der CCU eine Direktverknüpfung zwischen einem virtuellen Taster (z.B. mit dem Namen "Ventil1_10min") und dem Ausgang an dem das Ventil angeschlossen ist erstellen. Bei dieser DV stelle ich in der CCU eine fixe Ausschaltverzögerung von 10min ein.

      Wäre es möglich dein Skript so zu erweitern, dass man, falls die Prüfung HM-Wired ergibt, die Möglichkeit hat, alternativ zu den normalen Ventil Aktoren States, die States dieser virtuellen Taster angibt ?

      In der VIS müsste man natürlich die gleichwertige Dauer der Bewässerung trotzdem angeben, damit die % Anzeigen, die Bewässerungsmengen etc. stimmen ...

      Damit wäre dein Script bei HM-Wired zwar nicht mehr ganz so komfortabel, aber zumindest genauso sicher wie bei Einsatz von HM-Funk... sprich die Ventile würde fix nach 10min schließen, auch wenn in der Zwischenzeit iobroker aus irgendeinem Grund nicht mehr erreichbar wäre.

      Beste Grüße

      K 1 Antwort Letzte Antwort
      0
      • Q Qlink

        @kuddel

        Das wäre super und würde mir schonmal gut helfen :)

        Das Thema mit der fehlenden Sicherheitsschicht ohne OnTime beschäftigt mich allerdings noch ...

        Die einzige Möglichkeit bei den 12/7er HM Wired Modulen eine ähnliche Sicherheit wie deine OnTime Variante bei der Funk-Version einzubauen wäre die Nutzung von Direktverknüpfungen mit einer fix eingestellten Ausschaltverzögerung.

        Dazu könnte ich auf der CCU eine Direktverknüpfung zwischen einem virtuellen Taster (z.B. mit dem Namen "Ventil1_10min") und dem Ausgang an dem das Ventil angeschlossen ist erstellen. Bei dieser DV stelle ich in der CCU eine fixe Ausschaltverzögerung von 10min ein.

        Wäre es möglich dein Skript so zu erweitern, dass man, falls die Prüfung HM-Wired ergibt, die Möglichkeit hat, alternativ zu den normalen Ventil Aktoren States, die States dieser virtuellen Taster angibt ?

        In der VIS müsste man natürlich die gleichwertige Dauer der Bewässerung trotzdem angeben, damit die % Anzeigen, die Bewässerungsmengen etc. stimmen ...

        Damit wäre dein Script bei HM-Wired zwar nicht mehr ganz so komfortabel, aber zumindest genauso sicher wie bei Einsatz von HM-Funk... sprich die Ventile würde fix nach 10min schließen, auch wenn in der Zwischenzeit iobroker aus irgendeinem Grund nicht mehr erreichbar wäre.

        Beste Grüße

        K Offline
        K Offline
        Kuddel
        schrieb am zuletzt editiert von
        #769

        @qlink sollte es nicht funktionieren, wenn du als Aktor nich den HM-Wired Aktor, sondern direkt den virtuellen Taster hinterlegst ?

        Dann schaltet das Skript den virtuellen Taster ein, und der Taster über die CCU den Aktor

        Q 1 Antwort Letzte Antwort
        0
        • K Kuddel

          @qlink sollte es nicht funktionieren, wenn du als Aktor nich den HM-Wired Aktor, sondern direkt den virtuellen Taster hinterlegst ?

          Dann schaltet das Skript den virtuellen Taster ein, und der Taster über die CCU den Aktor

          Q Offline
          Q Offline
          Qlink
          schrieb am zuletzt editiert von
          #770

          @kuddel

          Würde das Skript nicht nach Ablauf der 10min wieder eine Aktion bei dem Taster setzen ?

          K 1 Antwort Letzte Antwort
          0
          • Q Qlink

            @kuddel

            Würde das Skript nicht nach Ablauf der 10min wieder eine Aktion bei dem Taster setzen ?

            K Offline
            K Offline
            Kuddel
            schrieb am zuletzt editiert von
            #771

            @qlink

            Beispiel Laufzeit Ventil 1 = 10 Min

            HM-Wired:
            Start Bewässerung: Ventil 1 anschalten -> set Aktor true
            Ende Laufzeit Ventil 1: Ventil 1 ausschalten -> set Aktor false

            Was für ein Typ ist der virtuelle Taster ?
            Hat der true / false oder steht der immer auf false und ist nur beim Betätigten true ?

            Ich bräuchte mal einen Screenshot vom virtuellen Taster

            Q 1 Antwort Letzte Antwort
            0
            • K Kuddel

              @qlink

              Beispiel Laufzeit Ventil 1 = 10 Min

              HM-Wired:
              Start Bewässerung: Ventil 1 anschalten -> set Aktor true
              Ende Laufzeit Ventil 1: Ventil 1 ausschalten -> set Aktor false

              Was für ein Typ ist der virtuelle Taster ?
              Hat der true / false oder steht der immer auf false und ist nur beim Betätigten true ?

              Ich bräuchte mal einen Screenshot vom virtuellen Taster

              Q Offline
              Q Offline
              Qlink
              schrieb am zuletzt editiert von
              #772

              @kuddel

              in iobroker schaut das so aus
              e844e65f-0b38-4473-872b-9b390499e607-image.png

              e2ab4907-5d56-4501-80d1-8e28e7d2ab68-image.png

              K 1 Antwort Letzte Antwort
              0
              • Q Qlink

                @kuddel

                in iobroker schaut das so aus
                e844e65f-0b38-4473-872b-9b390499e607-image.png

                e2ab4907-5d56-4501-80d1-8e28e7d2ab68-image.png

                K Offline
                K Offline
                Kuddel
                schrieb am zuletzt editiert von
                #773

                @qlink das habe ich befürchtet.

                Mein Skript würde aktuell den Aktor starten und beim stoppen den virtuellen Taster noch einmal auslösen.

                Ich könnte jetzt natürlich noch eine Falls-Abfrage beim Ausschalten einbauen, dass das Ausschalten nur bei Aktoren ausgeführt wird, die ungleich HM-Wired sind, aber das wäre dann eine absolute Sonderlocke.

                Für jeden weiteren User, der HM-Wired Aktoren verwenden will, würde das Skript dann die Aktore nicht mehr abschalten.

                Das mit den Virtuellen Tastern funzt also nicht sauber.

                1 Antwort Letzte Antwort
                0
                • K Kuddel

                  @stratos-gkrekidis ich habe jetzt PulseTime für Tasmota bis PulseTime8 berücksichtig für alle Ventil-Aktoren sowie Pumpen-Aktor und Netzteil-Aktor.


                  0124c041-792c-47a2-aa3d-5d06ff618a95-grafik.png

                  Des Weiteren habe ich jetzt die Credentials für Tasmota berücksichtigt


                  Eingabe von User und PW
                  2f702f39-617d-4ff4-94d9-b5bb078ba4a6-grafik.png
                  Verwendung im Skript
                  5af7f2c4-5e35-4d1d-adbb-60420c72a71d-grafik.png

                  Da ich weder einen Tasmota Aktor mit 8 Kanälen haben, noch eine Anmeldung an meinen Tasmota-Aktoren, wäre es klassen, wenn du die neue Version 3.1.0 einmal testen könntest:

                  bewaesserung_v310.zip

                  Stratos GkrekidisS Offline
                  Stratos GkrekidisS Offline
                  Stratos Gkrekidis
                  schrieb am zuletzt editiert von
                  #774

                  @kuddel said in [Vorlage] Gartenbewässerung mit 6 Ventilen:

                  @stratos-gkrekidis ich habe jetzt PulseTime für Tasmota bis PulseTime8 berücksichtig für alle Ventil-Aktoren sowie Pumpen-Aktor und Netzteil-Aktor.


                  0124c041-792c-47a2-aa3d-5d06ff618a95-grafik.png

                  Des Weiteren habe ich jetzt die Credentials für Tasmota berücksichtigt


                  Eingabe von User und PW
                  2f702f39-617d-4ff4-94d9-b5bb078ba4a6-grafik.png
                  Verwendung im Skript
                  5af7f2c4-5e35-4d1d-adbb-60420c72a71d-grafik.png

                  Da ich weder einen Tasmota Aktor mit 8 Kanälen haben, noch eine Anmeldung an meinen Tasmota-Aktoren, wäre es klassen, wenn du die neue Version 3.1.0 einmal testen könntest:

                  bewaesserung_v310.zip

                  Hallo @kuddel dein letztes update funktioniert prima.Vielen Dank

                  1 Antwort Letzte Antwort
                  1
                  • K Kuddel

                    @estegemann wenn du ohne eine VIS arbeitest, dann ist ein wenig Aufwand.

                    Um die Automatik zu aktivieren, muss folgender DP auf true:

                    javascript.0.bewaesserung.bewaesserung_automatik
                    

                    Damit die Bewässerung zu einer festen Zeit startet, muss dieser DP aktiviert werden:

                    javascript.0.bewaesserung.zeitplan.feste_startzeit_1.feste_startzeit_1_aktiv
                    

                    Dort dann die gewünschte Startzeit eintragen:

                    javascript.0.bewaesserung.zeitplan.feste_startzeit_1.feste_startzeit_1_uhrzeit_start
                    

                    Und dann musst du noch die Laugzeoit pro Ventil in Minuten einstellen:

                    javascript.0.bewaesserung.ventile.ventil_1.ventil_1_dauer_in_min
                    

                    Mit einer VIS ist das natürlich alles einfacher. Den Export von meinen VIS-Seiten zur Bewässerung gibt es hier.

                    cb2ee574-d176-45df-85dd-0b6ee3498d07-grafik.png

                    S Offline
                    S Offline
                    SiKo
                    schrieb am zuletzt editiert von
                    #775

                    @kuddel
                    Hey Kuddel, gibt es auch die Möglichkeit alle 2 oder 3 Tagen automatisch die Bewässerung zu starten?

                    Gruß SiKo

                    K 1 Antwort Letzte Antwort
                    0
                    • S SiKo

                      @kuddel
                      Hey Kuddel, gibt es auch die Möglichkeit alle 2 oder 3 Tagen automatisch die Bewässerung zu starten?

                      Gruß SiKo

                      K Offline
                      K Offline
                      Kuddel
                      schrieb am zuletzt editiert von
                      #776

                      @siko du meinst unabhängig von den Wochentagen ?

                      Ist aktuell nicht berücksichtigt.

                      Müsste mir Gedanken machen, wie ich den CRON Job bauen, dann könnte ich das implementieren

                      1 Antwort Letzte Antwort
                      1
                      • S Offline
                        S Offline
                        SiKo
                        schrieb am zuletzt editiert von SiKo
                        #777

                        @kuddel
                        Ja genau. Wenn man feste Tage wählt, egal ob alle 2 oder 3, geht es ja nie auf. Aktuell bewässere ich alle 3 Tage. Ich möchte noch einen Regensensor involvieren. Dann soll z.B. wenn dieser auslöst erst wieder 3 Tage danach bewässert werden. Bin selbst noch am testen, da mein CRON nicht zuverlässig läuft.

                        K 1 Antwort Letzte Antwort
                        0
                        • S SiKo

                          @kuddel
                          Ja genau. Wenn man feste Tage wählt, egal ob alle 2 oder 3, geht es ja nie auf. Aktuell bewässere ich alle 3 Tage. Ich möchte noch einen Regensensor involvieren. Dann soll z.B. wenn dieser auslöst erst wieder 3 Tage danach bewässert werden. Bin selbst noch am testen, da mein CRON nicht zuverlässig läuft.

                          K Offline
                          K Offline
                          Kuddel
                          schrieb am zuletzt editiert von
                          #778

                          @siko die Tage könnte man in einem DP eintragen und daraus den CRON Job bauen.

                          Beispiel: alle 3 Tage -> Tage = 3

                          Der Cron sieht dann so aus:

                          4698bf68-d09a-4e9d-97fc-b5a756cefbf8-grafik.png

                          Er ist dann abhängig vom Kalendertag.

                          S 1 Antwort Letzte Antwort
                          0
                          • K Kuddel

                            @siko die Tage könnte man in einem DP eintragen und daraus den CRON Job bauen.

                            Beispiel: alle 3 Tage -> Tage = 3

                            Der Cron sieht dann so aus:

                            4698bf68-d09a-4e9d-97fc-b5a756cefbf8-grafik.png

                            Er ist dann abhängig vom Kalendertag.

                            S Offline
                            S Offline
                            SiKo
                            schrieb am zuletzt editiert von
                            #779

                            @kuddel
                            hab es aktuell so: Allerdings tut sich nichts 🙈

                            f068029f-846e-4167-85f9-d5ffcc7138fc-image.png

                            1 Antwort Letzte Antwort
                            0
                            • K Kuddel

                              @estegemann wenn du Jarvis nutzt, musst du natürlich nur die DPs bei dir einbauen.

                              Wenn du Fragen hast, kannst du natürlich gern auf mich zu kommen

                              E Offline
                              E Offline
                              EStegemann
                              schrieb am zuletzt editiert von
                              #780

                              @kuddel Irgendwie habe ich Probleme beim Script import.
                              Ist es normal, dass alle Blöcke überlagert sind und ich jetzt versuchen muss diese wieder auseinander zu pflücken? Hast du eine Idee warum die Darstellung ist wie auf dem untenstehenden Bild. Das macht es ungemein schwierig, das Skript auf meine Situation anzupassen.
                              blockly.PNG
                              Vielen Dank und besten Gruß,
                              Eric

                              K 2 Antworten Letzte Antwort
                              0
                              • E EStegemann

                                @kuddel Irgendwie habe ich Probleme beim Script import.
                                Ist es normal, dass alle Blöcke überlagert sind und ich jetzt versuchen muss diese wieder auseinander zu pflücken? Hast du eine Idee warum die Darstellung ist wie auf dem untenstehenden Bild. Das macht es ungemein schwierig, das Skript auf meine Situation anzupassen.
                                blockly.PNG
                                Vielen Dank und besten Gruß,
                                Eric

                                K Offline
                                K Offline
                                Kuddel
                                schrieb am zuletzt editiert von
                                #781

                                @estegemann schaue ich mir morgen mal an

                                lobomauL 1 Antwort Letzte Antwort
                                0
                                • K Kuddel

                                  @estegemann schaue ich mir morgen mal an

                                  lobomauL Offline
                                  lobomauL Offline
                                  lobomau
                                  schrieb am zuletzt editiert von
                                  #782

                                  @kuddel ich habe dein Script Version 3.1.0. das erste Mal getestet
                                  Bevor ich tief ins Detail gehe muss ich erstmal klären ob es überhaupt bei mir funktionieren kann/wird. Du schreibst ja explizit dass es für HM, tasmota und shellys ist.
                                  Deswegen erste Frage: können Aliases benutzt werden? Ich nutze linkeddevices:
                                  68a9adbd-9f45-49ff-ba11-b8d76da33e24-image.png
                                  Ich könnte auch umstellen, und die direkten DPs von tasmota nehmen, die die Ventile steuern und bei der Gartenpumpe ist ein shelly im Einsatz. Wohingegen das 24V-Netzteil durch eine zigbee Steckdose gesteuert wird (STATE true/false).
                                  Was sind die genauen Anforderungen an die DPs? Ich hätte vermutet ".Power" mit true/false bei den tasmota und "Switch" bei shelly und "STATE" bei HM!?
                                  Vielleicht läuft das Script ja auch schon, nur ich weiß nicht wie ich es testen kann.
                                  Sorry, habe die ersten 12 Seiten nur gelesen... bin dann auf S. 25 gesprungen und paar Seiten gelesen... ist wahrscheinlich schon alles irgendwo beantwortet worden.
                                  3.1.0. ist zwar noch beta, aber paar Tage vorher sah es ähnlich aus mit 2.7.x

                                  Fehlerlog:

                                  javascript.1	2021-07-07 22:34:06.742	error	(24868) script.js.common.Garten.Bewaesserung-Ventile: schedule(cron=32 22 * * ): cannot create schedule
                                  javascript.1	2021-07-07 22:34:06.740	error	(24868) script.js.common.Garten.Bewaesserung-Ventile: schedule(cron=26 05 * * ): cannot create schedule
                                  javascript.1	2021-07-07 22:34:05.679	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.restlaufzeit_in_sek" has been written without ack-flag with value "1"
                                  javascript.1	2021-07-07 22:34:05.676	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit_in_sek" has been written without ack-flag with value "0"
                                  javascript.1	2021-07-07 22:34:05.675	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit" has been written without ack-flag with value "0:00"
                                  javascript.1	2021-07-07 22:33:41.274	error	(24868) script.js.common.Garten.Bewaesserung-Ventile: schedule(cron=32 22 * * ): cannot create schedule
                                  javascript.1	2021-07-07 22:33:41.273	error	(24868) script.js.common.Garten.Bewaesserung-Ventile: schedule(cron=25 05 * * ): cannot create schedule
                                  javascript.1	2021-07-07 22:33:40.176	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.restlaufzeit_in_sek" has been written without ack-flag with value "0"
                                  javascript.1	2021-07-07 22:33:40.175	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit_in_sek" has been written without ack-flag with value "0"
                                  javascript.1	2021-07-07 22:33:40.174	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit" has been written without ack-flag with value "0:00"
                                  javascript.1	2021-07-07 22:31:02.068	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.restlaufzeit_in_sek" has been written without ack-flag with value "0"
                                  javascript.1	2021-07-07 22:31:02.066	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit_in_sek" has been written without ack-flag with value "0"
                                  javascript.1	2021-07-07 22:31:02.065	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit" has been written without ack-flag with value "0:00"
                                  javascript.1	2021-07-07 22:30:58.195	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.restlaufzeit_in_sek" has been written without ack-flag with value "0"
                                  javascript.1	2021-07-07 22:30:58.189	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit_in_sek" has been written without ack-flag with value "0"
                                  javascript.1	2021-07-07 22:30:58.188	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit" has been written without ack-flag with value "0:00"
                                  javascript.1	2021-07-07 22:30:56.695	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.restlaufzeit_in_sek" has been written without ack-flag with value "0"
                                  javascript.1	2021-07-07 22:30:56.692	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit_in_sek" has been written without ack-flag with value "0"
                                  javascript.1	2021-07-07 22:30:56.691	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit" has been written without ack-flag with value "0:00"
                                  javascript.1	2021-07-07 22:30:55.507	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.restlaufzeit_in_sek" has been written without ack-flag with value "0"
                                  javascript.1	2021-07-07 22:30:55.504	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit_in_sek" has been written without ack-flag with value "0"
                                  javascript.1	2021-07-07 22:30:55.502	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit" has been written without ack-flag with value "0:00"
                                  javascript.1	2021-07-07 22:30:48.957	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.restlaufzeit_in_sek" has been written without ack-flag with value "0"
                                  javascript.1	2021-07-07 22:30:48.956	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit_in_sek" has been written without ack-flag with value "0"
                                  javascript.1	2021-07-07 22:30:48.955	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit" has been written without ack-flag with value "0:00"
                                  javascript.1	2021-07-07 22:30:20.185	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.restlaufzeit_in_sek" has been written without ack-flag with value "0"
                                  javascript.1	2021-07-07 22:30:20.183	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit_in_sek" has been written without ack-flag with value "0"
                                  javascript.1	2021-07-07 22:30:20.182	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit" has been written without ack-flag with value "0:00"
                                  javascript.1	2021-07-07 22:25:58.362	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.vis.aktuelle_skript_version" has been written without ack-flag with value "v3.1.0"
                                  javascript.1	2021-07-07 22:25:53.196	info	(24868) script.js.common.Garten.Bewaesserung-Ventile: registered 0 subscriptions and 0 schedules
                                  javascript.1	2021-07-07 22:25:52.708	info	(24868) Start javascript script.js.common.Garten.Bewaesserung-Ventile
                                  javascript.1	2021-07-07 22:16:13.276	info	(24868) Stop script script.js.common.Garten.Bewaesserung-Ventile
                                  

                                  Host: NUC8i3 mit Proxmox:

                                  • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
                                  • Slave: Pi4
                                  K 1 Antwort Letzte Antwort
                                  0
                                  • lobomauL lobomau

                                    @kuddel ich habe dein Script Version 3.1.0. das erste Mal getestet
                                    Bevor ich tief ins Detail gehe muss ich erstmal klären ob es überhaupt bei mir funktionieren kann/wird. Du schreibst ja explizit dass es für HM, tasmota und shellys ist.
                                    Deswegen erste Frage: können Aliases benutzt werden? Ich nutze linkeddevices:
                                    68a9adbd-9f45-49ff-ba11-b8d76da33e24-image.png
                                    Ich könnte auch umstellen, und die direkten DPs von tasmota nehmen, die die Ventile steuern und bei der Gartenpumpe ist ein shelly im Einsatz. Wohingegen das 24V-Netzteil durch eine zigbee Steckdose gesteuert wird (STATE true/false).
                                    Was sind die genauen Anforderungen an die DPs? Ich hätte vermutet ".Power" mit true/false bei den tasmota und "Switch" bei shelly und "STATE" bei HM!?
                                    Vielleicht läuft das Script ja auch schon, nur ich weiß nicht wie ich es testen kann.
                                    Sorry, habe die ersten 12 Seiten nur gelesen... bin dann auf S. 25 gesprungen und paar Seiten gelesen... ist wahrscheinlich schon alles irgendwo beantwortet worden.
                                    3.1.0. ist zwar noch beta, aber paar Tage vorher sah es ähnlich aus mit 2.7.x

                                    Fehlerlog:

                                    javascript.1	2021-07-07 22:34:06.742	error	(24868) script.js.common.Garten.Bewaesserung-Ventile: schedule(cron=32 22 * * ): cannot create schedule
                                    javascript.1	2021-07-07 22:34:06.740	error	(24868) script.js.common.Garten.Bewaesserung-Ventile: schedule(cron=26 05 * * ): cannot create schedule
                                    javascript.1	2021-07-07 22:34:05.679	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.restlaufzeit_in_sek" has been written without ack-flag with value "1"
                                    javascript.1	2021-07-07 22:34:05.676	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit_in_sek" has been written without ack-flag with value "0"
                                    javascript.1	2021-07-07 22:34:05.675	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit" has been written without ack-flag with value "0:00"
                                    javascript.1	2021-07-07 22:33:41.274	error	(24868) script.js.common.Garten.Bewaesserung-Ventile: schedule(cron=32 22 * * ): cannot create schedule
                                    javascript.1	2021-07-07 22:33:41.273	error	(24868) script.js.common.Garten.Bewaesserung-Ventile: schedule(cron=25 05 * * ): cannot create schedule
                                    javascript.1	2021-07-07 22:33:40.176	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.restlaufzeit_in_sek" has been written without ack-flag with value "0"
                                    javascript.1	2021-07-07 22:33:40.175	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit_in_sek" has been written without ack-flag with value "0"
                                    javascript.1	2021-07-07 22:33:40.174	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit" has been written without ack-flag with value "0:00"
                                    javascript.1	2021-07-07 22:31:02.068	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.restlaufzeit_in_sek" has been written without ack-flag with value "0"
                                    javascript.1	2021-07-07 22:31:02.066	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit_in_sek" has been written without ack-flag with value "0"
                                    javascript.1	2021-07-07 22:31:02.065	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit" has been written without ack-flag with value "0:00"
                                    javascript.1	2021-07-07 22:30:58.195	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.restlaufzeit_in_sek" has been written without ack-flag with value "0"
                                    javascript.1	2021-07-07 22:30:58.189	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit_in_sek" has been written without ack-flag with value "0"
                                    javascript.1	2021-07-07 22:30:58.188	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit" has been written without ack-flag with value "0:00"
                                    javascript.1	2021-07-07 22:30:56.695	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.restlaufzeit_in_sek" has been written without ack-flag with value "0"
                                    javascript.1	2021-07-07 22:30:56.692	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit_in_sek" has been written without ack-flag with value "0"
                                    javascript.1	2021-07-07 22:30:56.691	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit" has been written without ack-flag with value "0:00"
                                    javascript.1	2021-07-07 22:30:55.507	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.restlaufzeit_in_sek" has been written without ack-flag with value "0"
                                    javascript.1	2021-07-07 22:30:55.504	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit_in_sek" has been written without ack-flag with value "0"
                                    javascript.1	2021-07-07 22:30:55.502	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit" has been written without ack-flag with value "0:00"
                                    javascript.1	2021-07-07 22:30:48.957	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.restlaufzeit_in_sek" has been written without ack-flag with value "0"
                                    javascript.1	2021-07-07 22:30:48.956	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit_in_sek" has been written without ack-flag with value "0"
                                    javascript.1	2021-07-07 22:30:48.955	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit" has been written without ack-flag with value "0:00"
                                    javascript.1	2021-07-07 22:30:20.185	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.restlaufzeit_in_sek" has been written without ack-flag with value "0"
                                    javascript.1	2021-07-07 22:30:20.183	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit_in_sek" has been written without ack-flag with value "0"
                                    javascript.1	2021-07-07 22:30:20.182	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.ventile.ventil_1.ventil_1_restzeit" has been written without ack-flag with value "0:00"
                                    javascript.1	2021-07-07 22:25:58.362	warn	(24868) Read-only state "0_userdata.0.Bewaesserung.vis.aktuelle_skript_version" has been written without ack-flag with value "v3.1.0"
                                    javascript.1	2021-07-07 22:25:53.196	info	(24868) script.js.common.Garten.Bewaesserung-Ventile: registered 0 subscriptions and 0 schedules
                                    javascript.1	2021-07-07 22:25:52.708	info	(24868) Start javascript script.js.common.Garten.Bewaesserung-Ventile
                                    javascript.1	2021-07-07 22:16:13.276	info	(24868) Stop script script.js.common.Garten.Bewaesserung-Ventile
                                    
                                    K Offline
                                    K Offline
                                    Kuddel
                                    schrieb am zuletzt editiert von
                                    #783

                                    @lobomau mit einem Alias funktioniert das Skript nicht komplett.

                                    Bei HM z.B. generiert das Skript automatisch den Pfad zum Objekt OnTime des jeweiligen Aktors. Der wird für die Einschaltdauer benötigt

                                    Bei shelly und sonoff / tasmota läuft das ähnlich ab.

                                    Mit einem Alias werden die Aktoren zwar aktiviert, bekommen aber keine Laufzeit.

                                    Somit hat man dann keine Ausfallsicherheit. Fällt der iobroker während der Bewässerung aus, schaltet der Aktor nicht aus und das Ventil bleibt geöffnet.

                                    Ich mache morgen mal einen komplett neuen Import von Version 3.1.0 in meiner Testumgebung und schaue mal, wie es mit den Fehlern aussieht

                                    1 Antwort Letzte Antwort
                                    0
                                    • E EStegemann

                                      @kuddel Irgendwie habe ich Probleme beim Script import.
                                      Ist es normal, dass alle Blöcke überlagert sind und ich jetzt versuchen muss diese wieder auseinander zu pflücken? Hast du eine Idee warum die Darstellung ist wie auf dem untenstehenden Bild. Das macht es ungemein schwierig, das Skript auf meine Situation anzupassen.
                                      blockly.PNG
                                      Vielen Dank und besten Gruß,
                                      Eric

                                      K Offline
                                      K Offline
                                      Kuddel
                                      schrieb am zuletzt editiert von
                                      #784

                                      @estegemann ich habe gerade das Skript von Seite geladen und in meine Testumgebung importiert.
                                      Ich kann dein Problem leider nicht nachstellen. Der Import funktioniert ohne Probleme.

                                      @lobomau
                                      ich alle DPs in meiner testumgebung gelöscht und das Skript neu importiert und gestartet.
                                      Deine Fehler kommen warscheinlich von einer neueren Javascript Adapter Version.

                                      Ich verwende aktuell Version 5.0.14 in der Prdoduktion und im test 5.1.3

                                      lobomauL E 2 Antworten Letzte Antwort
                                      0
                                      • K Kuddel

                                        @estegemann ich habe gerade das Skript von Seite geladen und in meine Testumgebung importiert.
                                        Ich kann dein Problem leider nicht nachstellen. Der Import funktioniert ohne Probleme.

                                        @lobomau
                                        ich alle DPs in meiner testumgebung gelöscht und das Skript neu importiert und gestartet.
                                        Deine Fehler kommen warscheinlich von einer neueren Javascript Adapter Version.

                                        Ich verwende aktuell Version 5.0.14 in der Prdoduktion und im test 5.1.3

                                        lobomauL Offline
                                        lobomauL Offline
                                        lobomau
                                        schrieb am zuletzt editiert von
                                        #785

                                        @kuddel ok, stimmt... diese Meldungen kommen mit den neuen Versionen. Ich bin mit javascript beta 5.2.2. unterwegs.
                                        Ich werde dann die originalen DPs nehmen. :+1:
                                        Nur beim Zigbee habe ich dann ein Problem. Gab es den Wunsch schon das auch zu integrieren? Ist das sehr aufwändig? Der DP vom Zigbee, der das 24V-Netzschaltet sieht folgendermaßen aus:

                                        {
                                          "type": "state",
                                          "common": {
                                            "name": "On",
                                            "type": "boolean",
                                            "role": "switch",
                                            "def": false,
                                            "read": true,
                                            "write": true,
                                            "custom": {
                                              "linkeddevices.0": {
                                                "enabled": true,
                                                "number_unit": "",
                                                "linkedId": "Steckdose.EG.24V.STATE",
                                                "name": "Steckdose EG 24V STATE",
                                                "role": "",
                                                "mergeSettingsOnRestart": false,
                                                "expertSettings": false,
                                                "number_convertTo": "",
                                                "number_maxDecimal": "",
                                                "number_min": "",
                                                "number_max": "",
                                                "number_calculation": "",
                                                "number_calculation_readOnly": "",
                                                "number_to_boolean_condition": "",
                                                "number_to_boolean_value_true": "",
                                                "number_to_boolean_value_false": "",
                                                "number_to_string_condition": "",
                                                "number_to_duration_convert_seconds": "",
                                                "number_to_duration_format": "",
                                                "number_to_datetime_convert_seconds": "",
                                                "number_to_datetime_format": "",
                                                "number_to_multi_condition": "",
                                                "boolean_convertTo": "",
                                                "boolean_to_string_value_true": "",
                                                "boolean_to_string_value_false": "",
                                                "string_convertTo": "",
                                                "string_prefix": "",
                                                "string_suffix": "",
                                                "string_to_boolean_value_true": "",
                                                "string_to_boolean_value_false": "",
                                                "string_to_number_unit": "",
                                                "string_to_number_maxDecimal": "",
                                                "string_to_number_calculation": "",
                                                "string_to_number_calculation_readOnly": "",
                                                "string_to_duration_format": "",
                                                "string_to_datetime_parser": "",
                                                "string_to_datetime_format": "",
                                                "boolean_invert": false
                                              },
                                              "iqontrol.0": {
                                                "enabled": true,
                                                "readonly": false,
                                                "invert": false,
                                                "confirm": false,
                                                "pincode": "",
                                                "unit": "",
                                                "unit_zero": "",
                                                "unit_one": "",
                                                "min": "",
                                                "max": "",
                                                "step": "",
                                                "roundDigits": 2,
                                                "timeFormat": "x",
                                                "timeDisplayFormat": "dddd, DD.MM.YYYY HH:mm:ss",
                                                "type": "boolean",
                                                "role": "switch",
                                                "targetValueId": "",
                                                "statesAddInput": false,
                                                "statesAddInputCaption": "Enter other value...",
                                                "showOnlyTargetValues": false
                                              }
                                            }
                                          },
                                          "native": {},
                                          "from": "system.adapter.deconz.0",
                                          "user": "system.user.admin",
                                          "ts": 1607362619428,
                                          "_id": "deconz.0.lights.842e14fffee39293.on",
                                          "acl": {
                                            "object": 1636,
                                            "state": 1636,
                                            "owner": "system.user.admin",
                                            "ownerGroup": "system.group.administrator"
                                          }
                                        }
                                        

                                        Host: NUC8i3 mit Proxmox:

                                        • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
                                        • Slave: Pi4
                                        K 1 Antwort Letzte Antwort
                                        0
                                        • lobomauL lobomau

                                          @kuddel ok, stimmt... diese Meldungen kommen mit den neuen Versionen. Ich bin mit javascript beta 5.2.2. unterwegs.
                                          Ich werde dann die originalen DPs nehmen. :+1:
                                          Nur beim Zigbee habe ich dann ein Problem. Gab es den Wunsch schon das auch zu integrieren? Ist das sehr aufwändig? Der DP vom Zigbee, der das 24V-Netzschaltet sieht folgendermaßen aus:

                                          {
                                            "type": "state",
                                            "common": {
                                              "name": "On",
                                              "type": "boolean",
                                              "role": "switch",
                                              "def": false,
                                              "read": true,
                                              "write": true,
                                              "custom": {
                                                "linkeddevices.0": {
                                                  "enabled": true,
                                                  "number_unit": "",
                                                  "linkedId": "Steckdose.EG.24V.STATE",
                                                  "name": "Steckdose EG 24V STATE",
                                                  "role": "",
                                                  "mergeSettingsOnRestart": false,
                                                  "expertSettings": false,
                                                  "number_convertTo": "",
                                                  "number_maxDecimal": "",
                                                  "number_min": "",
                                                  "number_max": "",
                                                  "number_calculation": "",
                                                  "number_calculation_readOnly": "",
                                                  "number_to_boolean_condition": "",
                                                  "number_to_boolean_value_true": "",
                                                  "number_to_boolean_value_false": "",
                                                  "number_to_string_condition": "",
                                                  "number_to_duration_convert_seconds": "",
                                                  "number_to_duration_format": "",
                                                  "number_to_datetime_convert_seconds": "",
                                                  "number_to_datetime_format": "",
                                                  "number_to_multi_condition": "",
                                                  "boolean_convertTo": "",
                                                  "boolean_to_string_value_true": "",
                                                  "boolean_to_string_value_false": "",
                                                  "string_convertTo": "",
                                                  "string_prefix": "",
                                                  "string_suffix": "",
                                                  "string_to_boolean_value_true": "",
                                                  "string_to_boolean_value_false": "",
                                                  "string_to_number_unit": "",
                                                  "string_to_number_maxDecimal": "",
                                                  "string_to_number_calculation": "",
                                                  "string_to_number_calculation_readOnly": "",
                                                  "string_to_duration_format": "",
                                                  "string_to_datetime_parser": "",
                                                  "string_to_datetime_format": "",
                                                  "boolean_invert": false
                                                },
                                                "iqontrol.0": {
                                                  "enabled": true,
                                                  "readonly": false,
                                                  "invert": false,
                                                  "confirm": false,
                                                  "pincode": "",
                                                  "unit": "",
                                                  "unit_zero": "",
                                                  "unit_one": "",
                                                  "min": "",
                                                  "max": "",
                                                  "step": "",
                                                  "roundDigits": 2,
                                                  "timeFormat": "x",
                                                  "timeDisplayFormat": "dddd, DD.MM.YYYY HH:mm:ss",
                                                  "type": "boolean",
                                                  "role": "switch",
                                                  "targetValueId": "",
                                                  "statesAddInput": false,
                                                  "statesAddInputCaption": "Enter other value...",
                                                  "showOnlyTargetValues": false
                                                }
                                              }
                                            },
                                            "native": {},
                                            "from": "system.adapter.deconz.0",
                                            "user": "system.user.admin",
                                            "ts": 1607362619428,
                                            "_id": "deconz.0.lights.842e14fffee39293.on",
                                            "acl": {
                                              "object": 1636,
                                              "state": 1636,
                                              "owner": "system.user.admin",
                                              "ownerGroup": "system.group.administrator"
                                            }
                                          }
                                          
                                          K Offline
                                          K Offline
                                          Kuddel
                                          schrieb am zuletzt editiert von
                                          #786

                                          @lobomau Zigbee könnte ich denke ich ohne große Probleme integrieren.

                                          Kann Zigbee eine Einschaltdauer umsetzen?

                                          Falls nicht, kann man mein Skript natürlich verwenden, aber keine Ausfall-Sicherheit ist dann nicht gegeben, wenn der ioBroker abstürzt

                                          lobomauL 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

                                          688

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          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