Heute Mal ein Grundsätzliches Tutorial wie man Tasmota auf einen Sonoff flasht, am Beispiel eines Sonoff Touch (T1 1-Gang), mit anschließender Integration in ioBroker und Treppenhaus Schaltung als Blockly Skript.
****************************************************************
✪ Sonoff Touch – 1-Gang
https://dealheros.de/produkt/s…alexa-iobroker-%E2%9C%AA/
✪ FTDI Adapter
https://dealheros.de/produkt/f…uer-33v-und-5v-%E2%9C%AA/
✪ Jumper Kabel
https://dealheros.de/produkt/j…le-male-female-%E2%9C%AA/
✪ USB-Kabel
https://dealheros.de/produkt/a…ecker-09-meter-%E2%9C%AA/
****************************************************************
Arduiono IDE
https://www.arduino.cc/en/Main/Software
Sonoff Tasmota
https://github.com/arendst/Sonoff-Tasmota
ESP8266 Boards
http://arduino.esp8266.com/sta…age_esp8266com_index.json
FTDI Treiber
https://www.ftdichip.com/Drivers/VCP.htm
****************************************************************
Mein Blockly Script...
<xml xmlns="http://www.w3.org/1999/xhtml">
<block type="on_ext" id="Ud^1gcgLWEmyoDo)Q?g_" x="-687" y="-662">
<mutation items="1"></mutation>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<value name="OID0">
<shadow type="field_oid" id="LClH;qm7[n.X~7Zn0Kpf">
<field name="oid">sonoff.0.Flur.POWER</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="controls_if" id=";J*WOuRF*:(ENc_Z-e@*">
<mutation elseif="1"></mutation>
<value name="IF0">
<block type="logic_compare" id="UraZo@mpGs`Fv?^Hm*/f">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="G/rOQ(SBV|,cHy%:D^5v">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Flur.POWER</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="IzOQF?F%=?FcQ;~|gPqk">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="control" id="=.jz)1X80X4z5mQ#_ah(">
<mutation delay_input="true"></mutation>
<field name="OID">sonoff.0.Sonoff-Flur-2.POWER</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">200</field>
<field name="UNIT">ms</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="vI;ugZ`@=]1,QjT6|gD2">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</statement>
<value name="IF1">
<block type="logic_compare" id="4+#+k[aG-dq3+B)-MRe=">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="]w@/-b/zJNxDlEjyvjE0">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Flur.POWER</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="ladl$=HqGb#~xAlEJq5S">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</value>
<statement name="DO1">
<block type="control" id=".[wR!0=6KWwB1)hbtUFS">
<mutation delay_input="true"></mutation>
<field name="OID">sonoff.0.Sonoff-Flur-2.POWER</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">200</field>
<field name="UNIT">ms</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="m6,O!1rLIMD!*ch)ydu@">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</statement>
</block>
</statement>
<next>
<block type="on_ext" id="j!=1j)*9]Ab*%TX;c$+9">
<mutation items="1"></mutation>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<value name="OID0">
<shadow type="field_oid" id="zZd~{j$KAN@(okXcXz{d">
<field name="oid">sonoff.0.Sonoff-Flur-2.POWER</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="controls_if" id=",9_Nr-P-{%Fd+Tc0-=Nu">
<mutation elseif="1"></mutation>
<value name="IF0">
<block type="logic_compare" id=";_i]cfZdrmL/qXWB6PuO">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="05hB:}da}@CQX_^vBlC@">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Sonoff-Flur-2.POWER</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="ZT5]2tgD5CM]Of-|;}#F">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="control" id="}6;6~]L4/!BY.JwxYt#d">
<mutation delay_input="true"></mutation>
<field name="OID">sonoff.0.Flur.POWER</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">200</field>
<field name="UNIT">ms</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="PDGjw4AYy[^(T_9;v]R|">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</statement>
<value name="IF1">
<block type="logic_compare" id="TZqdS6LWn1}NP}`?pS!a">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="dNyLII5UYUmuekoUYq)3">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Sonoff-Flur-2.POWER</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="MOnKZtq{sBc8g5#7$t/D">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</value>
<statement name="DO1">
<block type="control" id="uH=y!(uzpe!@XAo-?a[!">
<mutation delay_input="true"></mutation>
<field name="OID">sonoff.0.Flur.POWER</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">200</field>
<field name="UNIT">ms</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="Cv3*g6JYM@.+K?u|6L^!">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</statement>
</block>
</statement>
</block>
</next>
</block>
</xml>
Alles anzeigen