NEWS
[gelöst] MQTT Befehl publishen per Button in Jarvis
-
@mcu Das stimmt zwar, aber bringt dann ein anderes Problem mit sich. Beim ersten "toggle" fährt das Garagentor hoch. Sollte es nicht vollständig hochgefahren sein, stoppt es mit dem nächsten "on" auf (möglichweise) teilweise offener Position. Bei einem Taster mit 500ms wird das erste Signal aber faktisch unmittelbar negiert.
Ich merke also gerade, dass die Einstellung "Taster" auch nicht wirklich clever ist für meine Situation.
-
@kraxelhuber Das Relais des Shelly muss dazu gebracht werden, dass es nach einer Zeit, die dem Garagentorantrieb zur Detektion reicht wieder abfällt.
Das ist auch wichtig, damit parallel auf den Eingang des Torantriebs geschaltete normale Taster oder Schlüsselschalter weiter funktionieren.Eventuell mit einem dazwischen geschalteten Blockly Script zu machen.
Button aus Jarvis triggert einen Blockly Ablauf -> Setzen Shelly, und danach Löschen Shelly mit Verzögerung ...
-
@martinp Meine ursprüngliche Idee war ja, einen MQTT Befehl per Blockly zu erzeugen und dass dann per Jarvis Button ausführen zu lassen (siehe Überschrift ). Dann sollten alle anderen Einstellungen am Shelly eigentlich unverändert bleiben. So die Theorie...
-
Mit diesem kleinen Blockly Script lässt sich das Garagentor wie gewünscht steuern.
Jetzt noch mal die Frage an die Jarvis Experten: Wie kann ich mir einen Button erstellen, der dieses Script ausführt?
-
@kraxelhuber Leg einen boolean DP an und setzt den als Trigger für den sendto.
-
@mcu Genau, habe ich gemacht. Es läuft
Vielen Dank!!!
-
@kraxelhuber Stellst du bitte alle notwendigen Bilder(jarvis) und auch das Blockly als Export rein, ich nehme es dann mit in die Doku auf. Danke.
-
@kraxelhuber said in MQTT Befehl publishen per Button in Jarvis:
Mit diesem kleinen Blockly Script lässt sich das Garagentor wie gewünscht steuern.
Jetzt noch mal die Frage an die Jarvis Experten: Wie kann ich mir einen Button erstellen, der dieses Script ausführt?
Das Relais des Shelly ist ja wahrscheinlich am Taster-Eingang des Garagentorantriebs angeschlossen. Deshalb darf es ja eigentlich nur für vielleicht eine Sekunde angezogen bleiben.
Wie wird es wieder zurückgesetzt?
Es könnte sein, dass das ein Seiteneffekt des nicht gesetzten Hakens bei "with results" ist....Ich hatte etwas ähnliches mit einem ESP-01 Relais-Board gebastelt. Da mit etwas Javascript und explizitem Zurücksetzen ...
https://forum.iobroker.net/topic/64248/edited-javascript-esp01-mit-orig-firmware
-
@martinp said in MQTT Befehl publishen per Button in Jarvis:
Das Relais des Shelly ist ja wahrscheinlich am Taster-Eingang des Garagentorantriebs angeschlossen. Deshalb darf es ja eigentlich nur für vielleicht eine Sekunde angezogen bleiben.
Wie wird es wieder zurückgesetzt?Der Shelly ist als "Momentary Switch" definiert, mit einem Auto-Off nach 1 Sekunde (siehe Screenshots weiter oben).
Was genau bewirkt die
with results
Tickbox? -
@mcu said in MQTT Befehl publishen per Button in Jarvis:
@kraxelhuber Stellst du bitte alle notwendigen Bilder(jarvis) und auch das Blockly als Export rein, ich nehme es dann mit in die Doku auf. Danke.
User-defined button:
Blockly script, welches eine MQTT message versendet, um das Garagentor zu öffnen/schließen.
<xml xmlns="https://developers.google.com/blockly/xml"> <block type="on_ext" id="v3k}0IJYeg%f#Q_X{$7j" x="-87" y="-62"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="frWa5)|+yq0%F[zz^aSY"> <field name="oid">0_userdata.0.garage</field> </shadow> </value> <statement name="STATEMENT"> <block type="sendto_custom" id="Jk@yEg*?oRGz[ovksWQM"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="topic,message" with_statement="false"></mutation> <field name="INSTANCE">mqtt.0</field> <field name="COMMAND">sendMessage2Client</field> <field name="LOG"></field> <field name="WITH_STATEMENT">FALSE</field> <value name="ARG0"> <shadow type="text" id="o2pI)aO9s-J7dm,Vt)$N"> <field name="TEXT">shellies/eg_garage_tor/relay/0/command</field> </shadow> </value> <value name="ARG1"> <shadow type="text" id="81sL8f/h7MmvC?9-0p;X"> <field name="TEXT">on</field> </shadow> </value> </block> </statement> </block> </xml>
Gerät in Jarvis:
-
-
@mcu DONE