Shelly 2.5 Rollladen- /Jalousiesteuerung mit Tasmota
Anleitung zum flashen eines Shellys mit der Tasmota Firmware.
Nach dem ich bereits den Shelly 2 und Sonoff T1 als Rollladenaktor getestet habe, bin ich mit dem Shelly 2.5 bisher am zufriedensten. Nachfolgend eine Übersicht meiner Vorgehensweise zur Inbetriebnahme des Shelly 2.5 mit der Tasmota Firmware.
Tools
Editor: Visual Studio Code mit PlatformIO IDE
Tasmota Version: 8.1.0.3
Flashing Programm: Tasmotizer
Flashing Tool: USB zu TTL-Konverter-Modul
Kleinkram: Jumperkabel
Firmware kompilieren
Da die Default Tasmota Firmware keine Rollladen-/Jalousiesteuerung unterstützt, muss der Quelltext angepasst werden und eine eigene Firmware kompiliert werden.
In der Datei Tasmota/tasmota/my_user_config.h folgendes auskommentieren:
1
2
// — Optional modules ——————————————
define USE_SHUTTER
PlatformIO Build starten und die Firmware wird kompiliert.
Speicherort: Tasmota/build_output/firmware/tasmota.bin
Shelly 2.5 flashen
Achtung: Niemals die 230V Versorgung nutzen um den Shelly zu flashen! Immer die 3.3V USB-TTL Konverter Versorgung nutzen.
Den Shelly 2.5 mit dem USB-TTL Konverter verbinden. Ich empfehle die Stiftleisten aus der Tasmota Documentation 
- Port auswählen
- Open Image:
Tasmota/build_output/firmware/tasmota.bin - Enable: Backup original firmware
- Enable: Erase before flashing
- Send config - hier deine WLAN/MQTT Einstellungen hinterlegen

Tasmota Config
Den Shelly Neustarten und per Webinterface verbinden. Im Menü unter Configuration/Configure Other/Template folgendes Template hinterlegen:
1
{"NAME":"Shelly 2.5","GPIO":[56,0,17,0,21,83,0,0,6,82,5,22,156],"FLAG":2,"BASE":18}
In der Console folgende Befehle ausführen und bei Bedarf anpassen:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#MQTT Broker merkt sich die Position des Rollladens auch nach einem Reboot
PowerRetain 1
#Schalter funktion (switch - no toggle)
SwitchMode1 1
SwitchMode2 1
#Aktviert die Shutterfunktion
ShutterRelay1 1
#OFF/UP OFF/DOWN Betrieb
ShutterMode 0
#No Pulsetime
Backlog PulseTime1 0; PulseTime2 0
#Softwareveriegelung der logischen Schalter
Backlog Interlock 1,2; Interlock ON
Restart 1
Kalibrierung
Ich empfehle die Laufzeit des Rollladens vor Einbau des Shellys zu messen.
- Shelly von einem Elektroniker einbauen lassen
- Laufzeit konfigurieren
- Rollladen schließen
- Rollladen halb öffnen
- Positionswert notieren
- 20:38:23 MQT: stat/w_rollladen_01/SHUTTER1 = 4 (retained) 20:38:23 MQT: tele/w_rollladen_01/RESULT = {“Shutter1”:{“Position”:54,”Direction”:0}}
- Position korrigieren Command:
ShutterSetHalfway1 54 - Leistung des Motors notieren
- Sicherheitsfunktionen konfigurieren
Befehle:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#Laufzeit des Rollladens
ShutterOpenDuration1 29
ShutterCloseDuration1 29
ShutterClose1
#Tatsächliche 50% Position des Rollladens
ShutterSetHalfway1 54
Restart 1
#Sicherheitsfunktion: Leistung über 160W = alle Relais aus
rule1 on energy#power[1]>160 do backlog power1 0; power2 0 endon
rule1 1
rule1 5
rule2 on energy#power[2]>160 do backlog power1 0; power2 0 endon
rule2 1
rule2 5
#Sicherheitsfunktion: Temperatur über 73°C = alle Relais aus
SetOption42 73
Homeassistant Config
w_rollladen_01 ist mein MQTT Topic und muss an deines angepasst werden.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
- platform: mqtt
name: "Rollladen Wohnzimmer 1"
availability_topic: "tele/w_rollladen_01/LWT"
payload_available: "Online"
payload_not_available: "Offline"
position_topic: stat/w_rollladen_01/SHUTTER1
position_open: 100
position_closed: 0
set_position_topic: "cmnd/w_rollladen_01/shutterposition1"
value_template: ""
command_topic: "cmnd/w_rollladen_01/backlog"
payload_open: "ShutterOpen1"
payload_close: "ShutterClose1"
payload_stop: "ShutterStop1"
retain: false
optimistic: false
qos: 1
Das Ergebnis:

