基于Tasmota 12.0.x的Sonoff Basic浇水定时器循环规则配置求助
Tasmota 12.0.x Sonoff Basic 浇水定时器解决方案
一、修正基础定时器配置
你当前的定时器配置存在逻辑问题:Mode 1是指定时间单次触发,无法实现循环;Mode 2的Time字段是循环间隔,而非起始时间。重新配置两组循环定时器如下:
白天循环组(开20分钟,关30分钟,总周期50分钟)
- Timer1(触发开输出):
{"Enable":0,"Mode":2,"Time":"00:00","Window":0,"Days":"1111111","Repeat":1,"Output":1,"Action":1}
- Timer2(触发关输出):
{"Enable":0,"Mode":2,"Time":"00:20","Window":0,"Days":"1111111","Repeat":1,"Output":1,"Action":0}
说明:Mode 2模式下,Timer1会在启动后立即打开输出,之后每50分钟重复触发;Timer2在启动后20分钟关闭输出,之后每50分钟重复触发,形成开20→关30的循环。
夜间循环组(开20分钟,关60分钟,总周期80分钟)
- Timer3(触发开输出):
{"Enable":0,"Mode":2,"Time":"00:00","Window":0,"Days":"1111111","Repeat":1,"Output":1,"Action":1}
- Timer4(触发关输出):
{"Enable":0,"Mode":2,"Time":"00:20","Window":0,"Days":"1111111","Repeat":1,"Output":1,"Action":0}
说明:Timer3启动后立即打开输出,每80分钟重复;Timer4启动后20分钟关闭输出,每80分钟重复,形成开20→关60的循环。
二、添加时段切换规则
在Tasmota控制台输入以下规则,实现白天/夜间自动切换定时器组:
Rule1 ON Time#Minute=0 DO IF Time#Hour>=6 AND Time#Hour<22 THEN Backlog Timer1 1;Timer2 1;Timer3 0;Timer4 0 ELSE Backlog Timer1 0;Timer2 0;Timer3 1;Timer4 1 ENDIF ENDON Rule1 1
规则细节:
- 每分钟0秒触发一次时段检查(若想降低触发频率,可改为
ON Time#Hour DO每小时检查) - 示例中白天时段设为6:00-22:00,可根据需求修改
Time#Hour>=6 AND Time#Hour<22的数值 Backlog用于批量执行命令,确保开启目标定时器组的同时关闭另一组,避免冲突Rule1 1用于启用该规则
三、添加开机初始化规则
确保设备重启后自动进入当前时段的循环,添加开机触发规则:
Rule2 ON System#Boot DO IF Time#Hour>=6 AND Time#Hour<22 THEN Backlog Timer1 1;Timer2 1;Timer3 0;Timer4 0 ELSE Backlog Timer1 0;Timer2 0;Timer3 1;Timer4 1 ENDIF ENDON Rule2 1
四、验证与调整
- 保存所有配置后重启设备
- 白天时段观察输出是否按「开20分钟→关30分钟」循环
- 夜间时段观察输出是否按「开20分钟→关60分钟」循环
- 若需调整时段边界,直接修改规则中的小时参数即可
内容的提问来源于stack exchange,提问作者IoT_Noob
相关产品推荐
相关产品推荐

