NEWS
Test Adapter shuttercontrol v1.7.x
-
@thomas-gitzl sagte in Test Adapter shuttercontrol v1.4.x:
Habe das gleiche Problem, wenn ein Rollladen manuell gefahren wird. Dann steht der Status auf Manuell und die Sonnenautomatik funktioniert nicht mehr.
das ist kein Problem!
Das ist gewollt. -
(Sorry, vermutlich gibt es die Frage schon 150x aber knapp 6000 Beiträge zu lesen ist nicht realistisch und ich habe keinen guten Suchbegriffe eingefallen.)
Ich habe gestern einen Schalter für unsere Markise eingebaut. Für diesen gibt es aber kaum Datenpunkte. Insbesondere zeigt die Position immer nur 0% oder 100% und er lässt sich auch nicht über den Datenpunkt steuern (sondern nur über OPEN/STOP/CLOSE).
Praktisch ist das kein Problem, weil ich die Markise eigentlich nur offen oder zu brauche (nichts dazwischen).Kann Shuttercontrol auch damit umgehen?
Oder muss ich einen Workaround über ein Blockly machen, welche dann so tut als ob es ein (funktionierendes) Attribut für die Position gäbe? -
@homeuser sagte in Test Adapter shuttercontrol v1.4.x:
Praktisch ist das kein Problem, weil ich die Markise eigentlich nur offen oder zu brauche (nichts dazwischen).
Kann Shuttercontrol auch damit umgehen?das kannste auch über smartcontrol befummeln...
-
Hallo,
könnt Ihr mir erklären, was die Einstellung „Sonnenhöhe“ in den Geräte Einstellungen bewirkt?
Liebe Grüße
Manuel -
@mws wenn es der Punkt ist, den ich vermute dass du ihn meinen könntest, dann legtcder fest, dass die Beschattungsautomatik enden soll, wenn die Sonne tiefer steht als...x
-
... ich habe diesen Beitrag zwar durchsucht, bin aber nicht wirklich fündig geworden ...:
Bei uns steht der Fernseher Wohnungs-bedingt etwas ungünstig und es gibt unerwünschte Spiegelungen im Display ...
Daher benötigt man den "Sonnenschutz" auch ab und an wenn die Automatik nicht greift.
Wenn man diese zusätzliche Abschattung mit Blockly lösen möchte (Bedingung: wenn TV an dann ...) kommt man in den Manu Mode der ja, wie vom Adapter Entwickler so vorgesehen, so lang besteht bis man ihn mit OpenAll zurücksetzt oder auf den nächsten Tag wartet ...
Kann man diese (zusätzliche) Abschattung im Adapter irgendwie erreichen ohne in den Manu Mode zu kommen ?! -
@raspiuser eigentlich müsste es reichen wenn Du den einen Rollo wieder komplett öffnest, auch per Blockly und dann Auto All triggerst.
-
@firebowl said in Test Adapter shuttercontrol v1.4.x:
... und dann Auto All triggerst.
... probiere ich gleich morgen aus, Danke !!
-
@homoran sagte in Test Adapter shuttercontrol v1.4.x:
@mws wenn es der Punkt ist, den ich vermute dass du ihn meinen könntest, dann legtcder fest, dass die Beschattungsautomatik enden soll, wenn die Sonne tiefer steht als...x
ich meine den Punkt in den Einstellungen welche ich für jedes Rollo separat definieren kann. Also die Einstellung hier direkt im Gerät:
Liebe Grüße
Manuel -
Moin zusammen,
ich versuche meine Frage vom letzten Jahr noch mal, vielleicht stell ich mich nur zu doof an (oder es geht by design nicht, dann ist das halt so).
Prinzipiell funktioniert shuttercontrol sehr gut bei mir.
Ich hätte nur eine Sache die ich gerne realisieren möchte und ich bis jetzt nicht geschafft habe.Szenario:
Ich steuere die Rollos über "Bereich" (Automatik) mit der Bedingung "Objekt-ID zum aktivieren/deaktivieren des Auto-xxxbereichs (z.B. Anwesenheitserkennung)".
Heißt ich möchte die Automatik nur wenn ich nicht zu Hause bin.
Das ganze klappt auch einwandfrei.
Aktuell lasse ich die Rollos am Abend wenn wir ins Bett gehen mit einer Automation auf den gleichen Wert fahren wie es auch shuttercontrol tun würde. Ich habe eine weitere Automation, die die Rollos mit geöffneten Fenstern berücksichtigt.Ich würde das ganze gerne über shuttercontrol lösen.
Mit shuttercontrol könnte ich natürlich über beispielsweise closeAll oder closeLiving die Rollos auf die definierten geschlossen Positionen fahren.
Aber ist es möglich Rollos mit geöffnetem Fenster offen stehen zu lassen und sie dann zu schließen wenn man das Fenster dann doch schließt? -
@firebowl sagte in Test Adapter shuttercontrol v1.4.x:
Aber ist es möglich Rollos mit geöffnetem Fenster offen stehen zu lassen und sie dann zu schließen wenn man das Fenster dann doch schließt?
Dies ist möglich...
-
@rtwl
Nein, ihr versteht mich falsch. Wie gesagt habe ich den Adapter schon einige Jahre im Einsatz.
Die letzten Jahre hat er die Beschattung auch brav beendet wenn der "Bereich der Sonnenposition" (50) abgelaufen war.
Jetzt beendet er die Beschattung scheinbar erst wenn die Temperatur Bedingungen nicht mehr gültig sind. Wenn ich die Doku richtig verstanden habe reicht eines der beiden um die Beschattung zu beenden.
Zum test habe ich die Aussentemperatursensor = Innen (22 Grad) gesetzt und der Rollo fährt brav runter wenn die Temp erreicht ist. Aber er bleibt auch unten, wenn die Sonne weiter gezogen ist. -
Ab sofort steht die Version 1.5.0 auf Github und in Kürze auch im latest zur Verfügung.
Changelog
1.5.0 (2023-06-05)
- (simatec) new Manu-Mode Check added
- (simatec) suncalc added
- (simatec) Dependencies updated
Ab dieser Version testen wir ein leicht modifiziertes Konzept für den Manu-Mode.
Wenn ihr den Rollladen manuell fahrt, wird nun geschaut, in welcher Höhe befindet sich der Rollladen nach der manuellen Fahrt.
Befindet er sich in der konfigurierten Höhe für das Öffnen, Schließen oder Sonnenschutz, wird kein Manu-Mode mehr gesetzt.
Stattdessen werden dann jeweils die States für up, down oder sunProtect gesetzt.Befindet sich der Rollladen in einer Höhe, die nicht mit den konfigurierten Höhen übereinstimmt, wird der Manu-Mode aktiviert.
Bitte testet dies mal und prüft auch die Auswirkungen auf andere Funktionen
-
@simatec Wird getestet und wenn das mit dem Manu-Mode Check klappt dann hab ich mich verliebt.
-
@simatec sagte in Test Adapter shuttercontrol v1.5.x:
@firebowl sagte in Test Adapter shuttercontrol v1.4.x:
Aber ist es möglich Rollos mit geöffnetem Fenster offen stehen zu lassen und sie dann zu schließen wenn man das Fenster dann doch schließt?
Dies ist möglich...
Ok, cool aber wie?
Aktuell sieht die Einstellung für beispielsweise das Kinderzimmer so aus:
Wenn ich closeChildren anklicke dann fährt der Rollo runter, egal ob das Fenster offen oder geschlossen ist.
Hier hab ich auch schon mit "Aus" getestet, gleicher effekt.
Mach ich was falsch?
Ist übrigens die 1.5 -
Liegt es an mir oder an dem Adapter. Wenn bei uns Gäste im Wohnzimmer schlafen, aktiviere ich abends einen Datenpunkt "Gäste schlafen im Wohnzimmer". Per Blockly schreibe ich dann im Adapter Shuttercontrol die Datenpunkte für "AutoUp" auf false. Das klappt auch zuverlässig. Am nächsten Morgen will ich dann per Cronjob zu einer bestimmten Zeit diese Datenpunkte wieder auf false schreiben. Während des testens (Cron Ausführung z.B. in 5 Minuten) klappt es komischerweise - aber wenn ich den Cron auf irgendeine andere Zeit einstelle (z.B zur nächsten vollen Stunde) dann löst mein Baustein zwar aus, und die Datenpunkte werden auf true gesetzt - aber ein paar Millisekunden danach werden die wieder auf false gesetzt. Egal ob ich "aktualisieren" oder "steuern" in Blockly verwende.
Kann mir jemand sagen was ich hier übersehe?
-
@heimweh Man sieht deinen Blockly nicht vollständig
-
@simatec ok ich splitte es in 2 Screenshots - oder lieber als Export?
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable type="cron" id="schedule1">schedule1</variable> </variables> <block type="create" id="Q]HFL.lw@lJKC:+sXsen" x="-537" y="-38"> <field name="NAME">javascript.0.Variablen.EG_Wohnzimmer.Gäste_schlafen_im_Wohnzimmer</field> <value name="VALUE"> <block type="logic_boolean" id="aZfwS``Mjw:hn0LYc^Aa"> <field name="BOOL">FALSE</field> </block> </value> <value name="COMMON"> <block type="text" id="S=7H%`CYm:Tz}:6k[*n3"> <field name="TEXT">{"type":"boolean","name":"Gäste_schlafen_im_Wohnzimmer","role":"switch"}</field> </block> </value> <next> <block type="on" id="~koD*~4NlO#0T%X{7Rtk"> <field name="OID">javascript.0.Variablen.EG_Wohnzimmer.Gäste_schlafen_im_Wohnzimmer</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="controls_if" id="hTQOHhAnPSNM%u0MT)@c"> <value name="IF0"> <block type="logic_boolean" id=";@YC)!+$C5cVFc.7JYR$"> <field name="BOOL">TRUE</field> </block> </value> <statement name="DO0"> <block type="control" id="/SyLAh29X-Oj,xhxKvk@"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">shuttercontrol.0.shutters.autoUp.Rollladen_Esszimmer_EG</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">1000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="X+gmT0~]8Fap4fI6:=7c"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="z(CzQT8Q=$3EU|7Z-4Uj"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">shuttercontrol.0.shutters.autoUp.Rollladen_Küche_EG</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">2000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="R4@T?$u==w!G2+w0l7V0"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="F6G~d2),a4/-JAoU`2]I"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">shuttercontrol.0.shutters.autoUp.Rollladen_Terasse_EG</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">3000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="y$9wA#nMm_4XR2hpc9Od"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="mp4@8wH0H{co!#Q6:nJ@"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">shuttercontrol.0.shutters.autoUp.Rolladen_Wohnzimmer_EG</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">4000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="sxd-MB!/~nc%^N;0[S9F"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="pushover" id="1Gh!nnKS?$$BVNKZqQ!V"> <field name="INSTANCE">.0</field> <field name="SOUND"></field> <field name="PRIORITY">0</field> <field name="LOG"></field> <value name="MESSAGE"> <shadow type="text" id="+TEYh88%)G@iVUNE9M3c"> <field name="TEXT">Gäste Wohnzimmer aktiviert</field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> <next> <block type="schedule_create" id="E8qjgBH@wz[tFVR!4@,U"> <field name="NAME">schedule1</field> <value name="SCHEDULE"> <shadow type="field_cron" id="!zq42SU7f1*j152[_.,%"> <field name="CRON">{"time":{"exactTime":true,"start":"11:20"},"period":{"days":1}}</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="j21g0aMzmKuw)BBP^ov4"> <value name="IF0"> <block type="logic_compare" id="*dGsu2g@N_;r!6]mWYZ0"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="/lK`zFw70`pND0c/dUrk"> <field name="ATTR">val</field> <field name="OID">javascript.0.Variablen.EG_Wohnzimmer.Gäste_schlafen_im_Wohnzimmer</field> </block> </value> <value name="B"> <block type="logic_boolean" id="SMtgpwOt?#QQ1(ie[KcJ"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="update" id="QMAZS1hzU3aX(HK7L5:6"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">shuttercontrol.0.shutters.autoUp.Rolladen_Wohnzimmer_EG</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="Tt,SMY[AUDmoXA00%tbh"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="MySt@@E:XK.8N[gI;i(h"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">shuttercontrol.0.shutters.autoUp.Rollladen_Esszimmer_EG</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">1000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="doJJW$:]j~#j%(AzY};!"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="C=0U;,Uz*.yGyAQL0y+O"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">shuttercontrol.0.shutters.autoUp.Rollladen_Küche_EG</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">2000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="L]p|-$K{i%_whhmDIb(X"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="BD=_va==FTt/R}h5nnQ3"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">shuttercontrol.0.shutters.autoUp.Rollladen_Terasse_EG</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">3000</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="+Qvz[?80so^0}jo:CRv|"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="debug" id="MGp2d(.V2ys.fgs%gvw#"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="~u`.L$e0`wIlnVt=|/bO"> <field name="TEXT">Ausgelöst</field> </shadow> </value> <next> <block type="pushover" id="T5gY@/[5g;uiqOnG.API"> <field name="INSTANCE">.0</field> <field name="SOUND"></field> <field name="PRIORITY">0</field> <field name="LOG"></field> <value name="MESSAGE"> <shadow type="text" id="ZySIb#GS)c)`|JvFlRY]"> <field name="TEXT">Gäste Wohnzimmer zurückgesetzt</field> </shadow> </value> <next> <block type="control" id="v7|QlLi9_h.-OQ1=%2`y"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Variablen.EG_Wohnzimmer.Gäste_schlafen_im_Wohnzimmer</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="m=g_ULhWbX_{vV@2GVi]"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> </next> </block> </xml>
-
let schedule1; const shutter = ["Rollladen_Esszimmer_EG", "Rollladen_Küche_EG", "Rollladen_Terasse_EG", "Rolladen_Wohnzimmer_EG"]; createState('Variablen.EG_Wohnzimmer.Gäste_schlafen_im_Wohnzimmer', false, { name: 'Gäste_schlafen_im_Wohnzimmer', role: 'switch', type: 'boolean', read: true, write: true, }); on({ id: 'javascript.0.Variablen.EG_Wohnzimmer.Gäste_schlafen_im_Wohnzimmer', change: 'ne' }, async function (obj) { const value = obj.state.val; if (value) { for (const i in shutter) { await setStateAsync(`shuttercontrol.0.shutters.autoUp.${shutter[i]}`, false, true); } sendTo('pushover.0', 'send', { message: 'Gäste Wohnzimmer aktiviert', sound: '' }); } else { for (const i in shutter) { await setStateAsync(`shuttercontrol.0.shutters.autoUp.${shutter[i]}`, true, true); } console.log('Ausgelöst'); sendTo('pushover.0', 'send', { message: 'Gäste Wohnzimmer zurückgesetzt', sound: '' }); } }); schedule1 = schedule('20 11 * * *', async function () { const _state = await getStateAsync('javascript.0.Variablen.EG_Wohnzimmer.Gäste_schlafen_im_Wohnzimmer'); if (_state && _state.val) { await setStateAsync('javascript.0.Variablen.EG_Wohnzimmer.Gäste_schlafen_im_Wohnzimmer', false, true); } });
-
@simatec Danke! Funktioniert. Leider verstehe ich Javascript Scripte nicht - was ist da jetzt anders? Bzw. hätte es in Blockly nicht funktionieren können?