Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter Sprinkle Control 0.1.4 Latest

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Test Adapter Sprinkle Control 0.1.4 Latest

    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      babl last edited by babl

      So, nach nochmaligem nachsehen fande ich heraus, daß @dirk-peter das ja wunderbar gelöst hat, mit den verschiedenen states beim sprinkler state. Deshalb habe ich mir nun ein Blockly geschrieben, das das ganze umwandelt zum Gardena irrigation Control.

      Blockly als Bild:
      screen sprinkle control.jpg

      Als Code:

      <block xmlns="https://developers.google.com/blockly/xml" type="on_ext" id="BisjXqcU.ezUl42vT#nF" x="88" y="-335">
        <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
        <field name="CONDITION">ne</field>
        <field name="ACK_CONDITION"></field>
        <value name="OID0">
          <shadow type="field_oid" id="uy^cN7JTjAdiPxCwS1E]">
            <field name="oid">sprinklecontrol.0.sprinkle.Balkon.sprinklerState</field>
          </shadow>
        </value>
        <statement name="STATEMENT">
          <block type="controls_if" id="`O4@0c^c5a,j;#v0Sv5)">
            <mutation elseif="2"></mutation>
            <value name="IF0">
              <block type="logic_compare" id="ub(k6y+xeixNB/B{$50v">
                <field name="OP">EQ</field>
                <value name="A">
                  <block type="on_source" id="pw=oo1@s`qn!ylyPxQh*">
                    <field name="ATTR">state.val</field>
                  </block>
                </value>
                <value name="B">
                  <block type="math_number" id="V+%~fMn3EEGT(PLjKo_J">
                    <field name="NUM">2</field>
                  </block>
                </value>
              </block>
            </value>
            <statement name="DO0">
              <block type="variables_set" id="o5${0Sa3cW65U9,ROofY">
                <field name="VAR" id="jF|c=s]XBLV%X6ni9+z;">wert1</field>
                <value name="VALUE">
                  <block type="get_value" id="ATJN.=g^J}6#]uq$JwR;">
                    <field name="ATTR">val</field>
                    <field name="OID">sprinklecontrol.0.sprinkle.Balkon.runningTime</field>
                  </block>
                </value>
                <next>
                  <block type="variables_set" id="#Wj(;vYf0Y=j/;Zw3He6">
                    <field name="VAR" id="6($94.I?*`5*kG5!(68d">minuten1</field>
                    <value name="VALUE">
                      <block type="convert_tonumber" id="7opa@1;Vlg@UN`VML6Jm">
                        <value name="VALUE">
                          <block type="text_getSubstring" id="o7u_ctTn]]x}j5wNHwF4">
                            <mutation at1="true" at2="true"></mutation>
                            <field name="WHERE1">FROM_START</field>
                            <field name="WHERE2">FROM_START</field>
                            <value name="STRING">
                              <block type="variables_get" id="hgUloRdL47]b-mF~!l}5">
                                <field name="VAR" id="jF|c=s]XBLV%X6ni9+z;">wert1</field>
                              </block>
                            </value>
                            <value name="AT1">
                              <block type="math_number" id="ly!X~5Ied2?K1[n:?^KB">
                                <field name="NUM">1</field>
                              </block>
                            </value>
                            <value name="AT2">
                              <block type="math_number" id=")ZewR6E5EhsRY$swSpEG">
                                <field name="NUM">2</field>
                              </block>
                            </value>
                          </block>
                        </value>
                      </block>
                    </value>
                    <next>
                      <block type="variables_set" id="2_9@Bi,},~wQ9d#T_.k/">
                        <field name="VAR" id="jee7i18|WoYXQbzpQ6fC">sekunden1</field>
                        <value name="VALUE">
                          <block type="convert_tonumber" id="!IR]#1j@VSJ;3b;Oaf)R">
                            <value name="VALUE">
                              <block type="text_getSubstring" id="U]~axS[@Dl#~q|7T]8%x">
                                <mutation at1="true" at2="true"></mutation>
                                <field name="WHERE1">FROM_START</field>
                                <field name="WHERE2">FROM_START</field>
                                <value name="STRING">
                                  <block type="variables_get" id="lFyY6TLXXYyj#c@]tRi:">
                                    <field name="VAR" id="jF|c=s]XBLV%X6ni9+z;">wert1</field>
                                  </block>
                                </value>
                                <value name="AT1">
                                  <block type="math_number" id="fuA/1Gj{W$cvl[/)#W4$">
                                    <field name="NUM">4</field>
                                  </block>
                                </value>
                                <value name="AT2">
                                  <block type="math_number" id="=`nZ1t%XSf[q;gz%{{]v">
                                    <field name="NUM">5</field>
                                  </block>
                                </value>
                              </block>
                            </value>
                          </block>
                        </value>
                        <next>
                          <block type="variables_set" id="Vj^Lk;Up4=yCMU0ga@Ac">
                            <field name="VAR" id="~]Hm+BsU1@)YEAtzxMkc">ventil1_zeit</field>
                            <value name="VALUE">
                              <block type="text_join" id="fSofV{TDi^+@r$lV-gJg">
                                <mutation items="1"></mutation>
                                <value name="ADD0">
                                  <block type="math_arithmetic" id="9eTXPR#qGP;Op+~5KM?D">
                                    <field name="OP">ADD</field>
                                    <value name="A">
                                      <shadow type="math_number">
                                        <field name="NUM">1</field>
                                      </shadow>
                                      <block type="math_arithmetic" id="uFY@)Ea1d^Pf?2hJ%YOn">
                                        <field name="OP">MULTIPLY</field>
                                        <value name="A">
                                          <shadow type="math_number">
                                            <field name="NUM">1</field>
                                          </shadow>
                                          <block type="variables_get" id="D`yRSAw*l|hT$VbDfi?E">
                                            <field name="VAR" id="6($94.I?*`5*kG5!(68d">minuten1</field>
                                          </block>
                                        </value>
                                        <value name="B">
                                          <shadow type="math_number" id="X-7awoneuwDMBV$x*0*A">
                                            <field name="NUM">60</field>
                                          </shadow>
                                        </value>
                                      </block>
                                    </value>
                                    <value name="B">
                                      <shadow type="math_number">
                                        <field name="NUM">1</field>
                                      </shadow>
                                      <block type="variables_get" id="tadyZcS(!(1t59XcRGJn">
                                        <field name="VAR" id="jee7i18|WoYXQbzpQ6fC">sekunden1</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                              </block>
                            </value>
                            <next>
                              <block type="control" id="a}t:3h?46BT81;]at?^m">
                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                                <field name="OID">smartgarden.0.LOCATION_19bcd7f5-2D3b37-2D4d2a-2D86ff-2De71cdd35ac42.DEVICE_2cd797c9-2Da14d-2D4279-2D8b2e-2Da95d510f32dd.SERVICE_VALVE_2cd797c9-2Da14d-2D4279-2D8b2e-2Da95d510f32dd-3A1.duration_value</field>
                                <field name="WITH_DELAY">TRUE</field>
                                <field name="DELAY_MS">5</field>
                                <field name="UNIT">sec</field>
                                <field name="CLEAR_RUNNING">TRUE</field>
                                <value name="VALUE">
                                  <block type="text_join" id="p55Y0P!bOI4P}JW:Gq[*">
                                    <mutation items="1"></mutation>
                                    <value name="ADD0">
                                      <block type="variables_get" id="dnG:Pze_vdIyH4ym2T)9">
                                        <field name="VAR" id="~]Hm+BsU1@)YEAtzxMkc">ventil1_zeit</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                              </block>
                            </next>
                          </block>
                        </next>
                      </block>
                    </next>
                  </block>
                </next>
              </block>
            </statement>
            <value name="IF1">
              <block type="logic_compare" id="@aHUtvs|1Jn`(B*QE0tw">
                <field name="OP">EQ</field>
                <value name="A">
                  <block type="on_source" id="2~c.Z)^y#4Gg:Kg:.,DO">
                    <field name="ATTR">state.val</field>
                  </block>
                </value>
                <value name="B">
                  <block type="math_number" id="_[,,-rqUqSnnBmV#)y(C">
                    <field name="NUM">0</field>
                  </block>
                </value>
              </block>
            </value>
            <statement name="DO1">
              <block type="control" id="i6*6/eVw(pQo[,tOAW7l">
                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                <field name="OID">smartgarden.0.LOCATION_19bcd7f5-2D3b37-2D4d2a-2D86ff-2De71cdd35ac42.DEVICE_2cd797c9-2Da14d-2D4279-2D8b2e-2Da95d510f32dd.SERVICE_VALVE_2cd797c9-2Da14d-2D4279-2D8b2e-2Da95d510f32dd-3A1.duration_value</field>
                <field name="WITH_DELAY">FALSE</field>
                <value name="VALUE">
                  <block type="text" id="`i3yk%5gm4y$]h!cU)?p">
                    <field name="TEXT">STOP_UNTIL_NEXT_TASK</field>
                  </block>
                </value>
              </block>
            </statement>
            <value name="IF2">
              <block type="logic_compare" id="(T_Gj2NEJ|6ef*j!e5Ix">
                <field name="OP">EQ</field>
                <value name="A">
                  <block type="on_source" id="!=Nl@ETALBIu`$y~EN=J">
                    <field name="ATTR">state.val</field>
                  </block>
                </value>
                <value name="B">
                  <block type="math_number" id="@]cXov1oYs~Xy[iB)5C3">
                    <field name="NUM">3</field>
                  </block>
                </value>
              </block>
            </value>
            <statement name="DO2">
              <block type="control" id="5L2C#Fqw!-ooaft~@CL{">
                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                <field name="OID">smartgarden.0.LOCATION_19bcd7f5-2D3b37-2D4d2a-2D86ff-2De71cdd35ac42.DEVICE_2cd797c9-2Da14d-2D4279-2D8b2e-2Da95d510f32dd.SERVICE_VALVE_2cd797c9-2Da14d-2D4279-2D8b2e-2Da95d510f32dd-3A1.duration_value</field>
                <field name="WITH_DELAY">FALSE</field>
                <value name="VALUE">
                  <block type="text" id="QHUQk]tSO1s?`Jb?pX/7">
                    <field name="TEXT">STOP_UNTIL_NEXT_TASK</field>
                  </block>
                </value>
              </block>
            </statement>
          </block>
        </statement>
      </block>
      

      Natürlich muss dann für jedes Ventil extra ein Block geschrieben werden, ich denke mal wenn die Profis hier rüberschauen dass sie extreme Verbesserungen finden um das Blockly kleiner und vielleicht für alle Ventile machen können, aber Hauptsache es läuft jetzt.

      Abgebildet wird,

      State 0= Off Sprinkler aus
      State 1= wait Sprinkler wartet auf das Einschalten (wegen Pumpenleistung) Wieviel Ventile gleichzeitig bedient werden dürfen (bei Gardena sind es max 2)
      State 3= Break Bewässerungsintervall es wird dann einfach auf OFF gestellt und wenn die Beregnerzeit wieder aktiviert wird wird wieder eingeschaltet es steht dann allerdings die Original Zeit drin aber das wird ja aqm ende des Zykluses mit OFF beendet.

      Ich hoffe ich habe einigen Gardena Besitzern damit helfen können.

      1 Reply Last reply Reply Quote 0
      • G
        gyle last edited by

        ich bekomme folg. Fehler im log angezeigt:
        woran kann das liegen?

        sprinklecontrol.0
        2023-08-24 00:00:13.802	error	console.log.info is not a function
        
        sprinklecontrol.0
        2023-08-24 00:00:13.801	error	TypeError: console.log.info is not a function at AdapterClass.<anonymous> (/opt/iobroker/node_modules/iobroker.sprinklecontrol/main.js:339:37) at AdapterClass.emit (node:events:513:28) at Immediate.<anonymous> (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:8466:53) at process.processImmediate (node:internal/timers:476:21)
        
        sprinklecontrol.0
        2023-08-24 00:00:13.797	error	uncaught exception: console.log.info is not a function
        
        mcm1957 1 Reply Last reply Reply Quote 0
        • mcm1957
          mcm1957 @gyle last edited by

          @gyle
          sieht auf den ersten Blick nach einem Programmfehler aus.
          js kennt console.log und ioBroker stellt u.a. adapter.log.info zur Verfügung.

          Natürlich kann hier was spezielle implementiert sein - hab den code nicht analysiert.
          Mach ein Issue im adapter Repo auf

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

            kann das eventuell sein, daß der durchfluss und die zeit bei manuellem betrieb (5 min einschalten über die Vis von Sigi) nicht berechnet wird?

            1 Reply Last reply Reply Quote 0
            • F
              Flaterick last edited by

              Hallo
              Bin gerade Am Einstellen und Testen.
              Da ist mir aufgefallen das zwischen Aktueller Bodenfeuchte (Zigbee Sensor) und in sprinkle-control die Werte nicht übereinstimmen.
              werden die Werte nicht laufend aktualisiert?

              MFG
              Matthias

              1.jpg 2.jpg

              Dirk Peter 1 Reply Last reply Reply Quote 0
              • Dirk Peter
                Dirk Peter @Flaterick last edited by

                @flaterick
                Hallo, unter Bodenfeuchtesensor hast du ja deinen Sensor eingetragen. Von diesem werden die Werte abonniert und bei jeder Änderung unter sprinklecontrol.0.sprinkle.*.actualSoilMoisture eingetragen. Ich kann dies zwar nicht mit einem Sensor testen, aber die Werte werden definitiv bei Wertänderung übernommen.
                Meine Testkonfiguration:
                Screenshot 2024-05-02 212301.png
                analoger Sensor mit aktueller Version: sprinklecontrol 0.2.13
                MfG Dirk Peter

                F 1 Reply Last reply Reply Quote 0
                • F
                  Flaterick @Dirk Peter last edited by

                  So hab etwas Getestet, und festgestellt das Zigbee etwas braucht um korrekte werte zu liefern. Da sich das Netzwerk mit der Zeit aufbaut.
                  Noch dazu kommt das bei deinen Werten der Korrektur Faktor schon mit einberechnet ist, was ich nicht bedacht habe.

                  Danke für den Tollen Adapter
                  MFG Matthias

                  Dirk Peter 1 Reply Last reply Reply Quote 1
                  • Dirk Peter
                    Dirk Peter @Flaterick last edited by

                    @flaterick Danke für die Rückantwort und schön das er dir gefällt.
                    MfG Dirk Peter

                    1 Reply Last reply Reply Quote 0
                    • Fenriswolf
                      Fenriswolf last edited by

                      Guten Tag,
                      Ich habe mich jetzt auch endlich mal mit diesem Adapter beschäftigt und es sieht gar nicht so schlecht mit meiner Konfig aus.
                      Es sind soweit verfügbar alle Daten für die Berechnungen eingetragen und ich habe heute morgen auch schon meine erste Meldung erhalten.
                      Allerdings habe ich noch ein Problem.
                      Ich habe drei Kreise zur Bewässerung. in einem der Beete ist von GARDENA ein Sensor für Bodenfeuchte, und die Werte scheinen auch soweit korrekt zu sein.
                      Allerdings habe ich auch noch ein Gewächshaus, das bei Regen natürlich kein Wasser abbekommt. Allerdings habe ich nur noch einen Sensor für Temperatur und LUFTFEUCHTIGKEIT. Kann ich damit in irgendeiner Form die Bewässerung für das Zelt auslösen lassen?

                      Mit freundlichen Grüßen
                      Marc

                      Dirk Peter 1 Reply Last reply Reply Quote 0
                      • Dirk Peter
                        Dirk Peter @Fenriswolf last edited by

                        @fenriswolf
                        Hallo,
                        in der Konfiguration unter Bewässerungskreis gibt es den Punkt Sensor im Gewächshaus. Mit diesem werden die Regenvorhersagewerte und der Niederschlagswert deaktiviert, wenn vorhanden.
                        Ansonsten kannst du ja die Bewässerung an festen Tagen auswählen, wenn du keine Wetterstation bzw. einen 2. Bodenfeuchtesensor besitzt.
                        MfG Dirk Peter

                        1 Reply Last reply Reply Quote 0
                        • Bastian Rüggen
                          Bastian Rüggen last edited by

                          Guten Tag, ich bin gerade dabei, den Adapter zu konfigurieren und erhalte bereits Benachrichtigungen über Telegram.

                          Insgesamt besteht mein System aus 8 Kreisen, wobei der Kreis 1 eine Tropfbewässerung ist, die momentan alle 2 Tage für zwei Minuten eingeschaltet wird. Der Adapter bietet mir jedoch nicht die Möglichkeit, die Ventile für weniger als 5 Minuten einzuschalten. Gibt es dafür einen Grund bzw. könnte man das anpassen?

                          Dirk Peter 1 Reply Last reply Reply Quote 0
                          • Dirk Peter
                            Dirk Peter @Bastian Rüggen last edited by

                            @bastian-rüggen
                            Hallo Bastian,
                            gib einfach 2 für 2 Minuten in der Konfiguration des Adapters ein. Das Feld wird zwar rot, da alles unter 5 Minuten unüblich ist, aber es funktioniert.
                            MfG Dirk Peter

                            Bastian Rüggen 1 Reply Last reply Reply Quote 0
                            • Bastian Rüggen
                              Bastian Rüggen @Dirk Peter last edited by

                              @dirk-peter ah ok 🙂 ich bin davon ausgegangen das das es nicht funktioniert!

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              464
                              Online

                              31.7k
                              Users

                              79.8k
                              Topics

                              1.3m
                              Posts

                              gartenbewässerung wetterabhängig
                              33
                              232
                              29618
                              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