Wir fahren gerade unser neues Aquarium ein. Dabei sollen Licht und CO2 jeweils zeitgleich An bzw. Aus sein, was bei unserem alten Aquarium eine simple Zeitschaltuhr übernimmt.
Für unser neues habe ich für die beiden Komponenten eine Nous A4T Tasmota Doppelsteckdose gekauft, mit der Idee, die Schaltzeiten direkt über die Timer Funktion von Tasmota zu steuern. So wäre das Ein-/Ausschalten alleinige Aufgabe der Steckdose, wenn man aber mal zwischdurch doch das Licht eingeschaltet haben möchte dann geht dies bequem über Home Assistant und Alexa.
Soweit so gut, bis meine Frau meinte, dass die Zeiträume am Wochenende doch etwas verschoben sein sollten . Ab da wurde es dann komplizierter…
Die Lösung für mich war eine Kombination aus Home Assistant und Tasmota als Fallback-Lösung:
- HA
- steuert über einen Zeitplan das Ein-/Ausschalten der Doppelsteckdose
- pingt die Steckdose alle 5min einmal an (Setzen von Var1 auf „1“)
- Tasmota
- Deaktiviert die Timer, wenn Var1=1 ist
- Startet einen Regel-Timer für 10min, wenn Var1 auf 1 gesetzt wird
- Setzt Var1 auf 0, wenn der Regel-Timer abläuft (was im Normalbetrieb durch das Neu-Setzen alle 5min durch HA unterbunden wird)
- Aktiviert alle Timer, wenn Var1=0 ist
Im Regelbetrieb wird daher das Aquariumlicht per Home Assistant gesteuert, wenn der Server mal abraucht/sich aufhängt (besonders doof im Urlaub), dann greift die einfache Timer-Programmierung in der Steckdose selber.
Für den Fall, dass jemand so etwas selber nachbauen möchte:
Die Ping-Automatisierung:
alias: Tasmota Aquarium Watchdog Ping
description: >-
Sendet alle 5 Minuten ein MQTT-Ping an die Tasmota-Steckdose
'tasmota_aquarium', um Fallback zu verhindern
triggers:
- minutes: /5
trigger: time_pattern
conditions: []
actions:
- data:
topic: cmnd/tasmota_aquarium/Var1
payload: "1"
action: mqtt.publish
mode: single
Das Tasmota-Regelwerk: (in der Tasmota Konsole einzugeben)
Rule1 ON Var1#State=1 DO Backlog Timers 0; RuleTimer1 600 ENDON ON
Rules#Timer=1 DO Backlog Var1 0; Timers 1 ENDON