本帖最后由 dianxin11 于 2023-8-18 22:38 编辑
今天关灯太用力,将开关的一个脚掰折了,眼看着这个开关用不成了,作为一个垃圾佬,怎么能容忍垃圾的产生呢,安排。
准备材料
- 报废的开关一个
- esp01s一个
- relay模块两个
- 淘汰的5v充电器一个
- 电池弹簧片若干
开整
-
esp01s烧写tasmota固件(如果不会烧写可以参考我上一篇文章HA穷折腾(一)净水器自动化)
如下图配置:
这里简单说明一下,gpio0控制主relay模块的继电器,gpio3控制从relay模块的继电器,gipo2是主继电器的开关,gpio1是从继电器的开关
-
relay模块飞线
作为一个垃圾佬,一直为这个1.0版本的relay模块头疼,这次终于排上用场了,舒服。
- 将主relay的gpio3飞线到从relay的gipo0
- 引出gpio1和gpio2接开关
- 连接好主从relay的供电
大家可能注意到我将开关打了一个孔引出了一根线,这是因为我只用了两个relay模块控制了两路开关,另一路开关还是原始的接法。
测试成功没问题后上墙。
哦,忘记交代了,必须是零火开关。
转esphome了,附上代码:
output:
- platform: gpio
pin: 0
inverted: true
id: relay_1
- platform: gpio
pin: 3
id: relay_2
light:
- platform: binary
name: "Bedroom Light 1"
restore_mode: ALWAYS_OFF
output: relay_1
id: light_1
- platform: binary
name: "Bedroom Light 2"
restore_mode: ALWAYS_OFF
output: relay_2
id: light_2
binary_sensor:
- platform: gpio
pin:
number: 2
mode:
input: true
pullup: true
name: "Bedroom Light Button 1"
internal: true
filters:
- invert:
on_release:
then:
- light.toggle: light_1
- platform: gpio
pin:
number: 1
mode:
input: true
pullup: true
name: "Bedroom Light Button 2"
internal: true
filters:
- invert:
on_release:
then:
- light.toggle: light_2
|