本帖最后由 cheny95 于 2023-4-10 21:59 编辑
hey,大家好。今天的主题是手摸手教你给普通马桶装上智能泡沫盾,并接入HomeAssistant
提示:本帖实际上我自己在 B 站做的视频教程分享,原视频:【手摸手】C佬手摸手教你给普通马桶装上智能泡沫盾,并接入HomeAssistant (先发的贴子,视频还在审核)
我给转成文字[url=]B[/url]教程,只是想让各位坛友更多的去有 DIY 的乐趣。
秉承开源精神,无门槛分享,请为up主一键三连~ 有兴趣可以加入交流群,详见下面的github 地址,互相交流!
背景:主要男士们站着如厕的时候,发射的时候会四处溅射不明液体,有时候还要去擦干净边缘,但是换马桶的成本又很高,所以自己购买了这个泡沫盾机器并改造成可以接入 HA 的。
材料:
你至少需要有杜邦线(硅胶线),一块 ESP32开发板,有可以焊接的东西,如电烙铁,语音视情况自己想加就加,如果加语音需要 ASR-LINK,语音开发板,麦克风。
改造之后,你需要至少5V3A 的USB 适配器,5V2A 的可能会频繁重启!
教程开始:
首先看下效果图:(非广告)
然后到货后主机是这个样子
打开3颗螺丝,可以看到内部构造,取出电路板,进行焊接
我改造后里面比较凌乱,所有的看到的乱的线子,都是我焊接的。。没理线。。
然后加装了 ESP32和语音开发板以及一个小麦克风
原生电路板改造解析
ESP32用到的针脚
语音开发板针脚图
准备刷机,正常连 USB 刷机,
先刷语音版,打开天问,先从 github 上下载代码,asr.hd,用 asr-link接入Windows 电脑,然后刷机。必须用他的下载器。
然后先生成语音模型,再写入到语音开发板
ASR-LINK 如图:
按照上面说的接线接好之后,进行刷机,你可以选择 esphome web刷机,也可以选择命令行刷机,总之随便你,刷机过程略。。。
ESP32固件代码:(其他文件查看 github)
substitutions:
# devicename: esp32_daikin
upper_devicename: 智能泡沫盾
esphome:
name: "foam"
includes:
- "read_uart.h" # 在上面的 github 里有
esp32:
board: nodemcu-32s
framework:
type: arduino
# Enable Home Assistant API
api:
ota:
password: "12345678"
wifi:
ssid: undefined #改成你的 WIFI 名
password: chan1234 #改成你的 WIFI 密码
ap:
ssid: "Foam Machine Host"
web_server:
port: 80
logger:
#level: NONE #makes uart stream available in esphome logstream
#baud_rate: 9600 #disable logging over uart
# bluetooth_proxy: #需要蓝牙代理功能可以打开
# active: true
uart:
- id: asr_uart
rx_pin: GPIO16
tx_pin: GPIO17
baud_rate: 9600
sensor:
- platform: wifi_signal
name: ${upper_devicename} WiFi信号
update_interval: 300s
id: wifi_id
- platform: uptime
name: ${upper_devicename} 在线时长
update_interval: 10s
unit_of_measurement: "秒"
text_sensor:
- platform: wifi_info
ssid:
name: ${upper_devicename} 无线信号
icon: mdi:signal-variant
id: wifi_ssid
ip_address:
name: ${upper_devicename} IP
icon: mdi:ip-network
mac_address:
name: ${upper_devicename} MAC
icon: mdi:wifi-marker
- platform: custom
lambda: |-
auto my_asrpro = new UartReadLineSensor(id(asr_uart));
App.register_component(my_asrpro);
return {my_asrpro};
text_sensors:
name: "${upper_devicename} 语音命令"
icon: mdi:microphone
button:
- platform: restart
name: ${upper_devicename} 重启
globals:
- id: count
type: int
initial_value: '30'
restore_value: yes
number:
- platform: template
name: Bubble Number
min_value: 0
max_value: 1000
step: 1
restore_value: true
optimistic: true
mode: box
id: bubblenumber
icon: "mdi:chart-bubble"
on_value_range:
above: !lambda 'return id(count);'
then:
- delay: 60s
- switch.turn_on: relay2
- platform: template
name: "Add Water Number"
min_value: 0
max_value: 1000
step: 1
restore_value: true
optimistic: true
initial_value: 30
mode: box
id: mixnumber
icon: "mdi:counter"
on_value:
then:
- globals.set:
id: count
value: !lambda "return x;"
switch:
- platform: gpio
pin:
number: 13
inverted: true
name: Bubble Action
id: relay1
icon: "mdi:chart-bubble"
restore_mode: ALWAYS_OFF
interlock: [relay2]
on_turn_on:
then:
- delay: 500ms
- switch.turn_off: relay1
- number.increment: bubblenumber
- platform: gpio
pin:
number: 12
inverted: true
name: Add Mix Water
id: relay2
icon: "mdi:cup-water"
restore_mode: ALWAYS_OFF
interlock: [relay1]
on_turn_on:
then:
- delay: 500ms
- switch.turn_off: relay2
- number.set:
id: bubblenumber
value: 0
binary_sensor:
- platform: gpio
pin:
number: 14
mode:
input: true
pullup: true
inverted: True
name: Bubble Status
id: button1
icon: mdi:gesture-tap-button
device_class: opening
filters:
- delayed_on_off: 100ms
on_press:
if:
condition:
for:
time: 5s
condition:
switch.is_off: relay1
then:
- number.increment: bubblenumber
- platform: gpio
pin:
number: 27
mode:
input: true
pullup: true
inverted: True
name: Mix Water Status
id: button2
icon: mdi:gesture-tap-button
device_class: opening
filters:
- delayed_on_off: 100ms
on_press:
if:
condition:
for:
time: 5s
condition:
switch.is_off: relay2
then:
- number.set:
id: bubblenumber
value: 0
刷完之后正常安装回去就好了,给 esphome 配网,刷机的时候没改也行,连不上 WIFI 会自动发出热点的,手机连热点也可以配网。
配网之后,HA 一般会自动发现,如果没有自动发现就添加集成,ESPHOME,输入设备 IP。
接入 HA 之后,就可以看到如下界面,就可以愉快的玩耍了~
多说一句,无利益相关,我也不卖货,我从自身角度的需求,所以我自费买的这个,方案是交流群的大佬给的,
大家需要可以自己去网上搜或者找这位大佬买成品小黄鱼地址:请参阅 github 链接中的最下面,或者在黄鱼的APP 中搜索用户:Maze
我不带货,我也不卖货,交流群里的大佬很多,很多方案都有,有兴趣可以加群一起攀比…哈哈
喜欢折腾的,可以考虑一起交流,是 xiaomi miot auto作者的交流群
|