50 元 1 小时:ESPHome 漏水检测器零代码配置教程
2026/9/14 4:56:47 网站建设 项目流程

50 元 1 小时:ESPHome 漏水检测器零代码配置教程

【免费下载链接】esphomeESPHome is a system to control your ESP32, ESP8266, BK72xx, RP2040 by simple yet powerful configuration files and control them remotely through Home Automation systems.项目地址: https://gitcode.com/GitHub_Trending/es/esphome

凌晨三点,洗衣机的排水软管松了。等你第二天早上发现,地板已经被泡了半小时,楼下邻居的微信也发了过来。漏水这事,坏就坏在没人盯着。其实一块 ESP8266 开发板加一个几块钱的水浸传感器,用 ESPHome 写几十行 YAML 配置就能变成 24 小时在线的漏水检测器,不用写代码,花不到 50 元、大约 1 小时就能上线。

方案全景:一块开发板、一个探头、一个喇叭

说白了,整套系统就是三样东西。开发板跑 ESPHome,负责判断和指挥,是大脑;水浸传感器插在水里就能感知,是耳朵;蜂鸣器接到 GPIO 上,一有状况就响,是喇叭。最关键的优点是:告警逻辑全部在设备本地执行,就算家里网络断了,探头报警、蜂鸣器照样响。涉及到的核心模块就是 GPIO 二进制传感器(esphome/components/gpio/binary_sensor/)和开关组件(esphome/components/gpio/switch/)。

动手前:备齐这三样东西

名称干什么用的大概多少钱
ESP8266 NodeMCU 开发板大脑,跑 ESPHome 和 Wi-Fi约 20 元
数字水浸传感器(带 3 针接线板那种)耳朵,探到水就改变电平约 5 元
5V 有源蜂鸣器喇叭,本地声音告警约 5 元
杜邦线若干连接各个模块几元
ESPHome 软件把配置编译成固件并烧录进去免费,开源项目(仓库地址 https://gitcode.com/GitHub_Trending/es/esphome )

软件不用克隆仓库,一行命令装好 CLI 就能用:

# 在电脑上用 Docker 跑 esphome,装好后不用再管环境 docker run -it --rm -v "$PWD:/config" esphome/esphome

跟着做:四步把漏水检测器装好

步骤 1:把探头和蜂鸣器接上开发板

接线其实只有 4 根,接错也不怕,最多是报警不响。

  • 水浸传感器:VCC 接开发板的 3V3,GND 接 GND,信号脚(OUT)接 D2(也就是 GPIO4)。
  • 蜂鸣器:正极接 D1(GPIO5),负极接 GND。
  • 最后给开发板插上 USB 供电。

步骤 2:写第一份配置文件并保存

这段配置定义了设备、Wi-Fi,以及耳朵和喇叭接在哪个引脚上。INPUT_PULLUP表示用芯片内部上拉电阻,探头一入水就把引脚拉低,状态翻转为 on。

esphome: name: leak-detector platform: ESP8266 board: nodemcuv2 wifi: ssid: "你的Wi-Fi名" password: "你的Wi-Fi密码" ap: # Wi-Fi 断了自动变热点,方便你救回设备 ssid: "LeakDetector-Fallback" ap_timeout: 120s binary_sensor: - platform: gpio pin: number: GPIO4 mode: INPUT_PULLUP name: "Leak Sensor" device_class: moisture filters: - delayed_on: 1s # 水要连续 1 秒才算数,挡掉水珠毛刺 switch: - platform: gpio pin: GPIO5 name: "Alarm Buzzer" id: alarm_buzzer

保存成leak.yaml。写对了吗?先验一下:esphome config leak.yaml,输出 ok 就能进行下一步。

步骤 3:让它在漏水时自己喊

这段自动化只干一件事:探头一变 on,先响 5 秒,再短促地叫 6 下,提醒你去看一眼。

on_state: # 接在上面的 Leak Sensor 下面 then: - switch.turn_on: alarm_buzzer - delay: 5s - switch.turn_off: alarm_buzzer - repeat: count: 6 then: - switch.turn_on: alarm_buzzer - delay: 300ms - switch.turn_off: alarm_buzzer - delay: 500ms

步骤 4:编译上传,通电测试

一条命令完成校验、编译、烧录。

esphome run leak.yaml

第一遍固件走 USB 写入;从第二版开始,它就能走 Wi-Fi 在线更新了。看到日志出现Leak Detector is ready,拿牙签蘸一滴水滴到探头金属片上:蜂鸣器先长鸣 5 秒、再急促地叫 6 下。稳了,检测器正式上岗。

踩坑实录:新手最常翻的三处车

蜂鸣器一直长响,没水也响。多半是探头两个金属片被什么东西连起来了(垫着的纸吸水、旁边有冷凝水),或者 OUT 线松脱后悬空。断电,擦干、理线,再上电。

电脑找不到开发板。症状是run一直卡在连接。八成是 Wi-Fi 密码抄错,或者路由器换了频段。ESP8266 只支持 2.4G Wi-Fi,别接 5G 频段。

状态翻来覆去、误报频繁。delayed_on从 1 秒加到 2 秒;供电虚标的话,换一根能稳定输出的充电头试试。

不止于此

  • 同一套配置改个名字、换个引脚,多复制几份,就是全屋多点监测
  • 接入 Home Assistant 后,漏水能直接推送到你手机
  • 加一路继电器接进水电磁阀,漏水时自动断水
  • 配合深睡和电池,把它做成无线低功耗节点
  • 用 ESP-NOW 让多个探头组网回传

【免费下载链接】esphomeESPHome is a system to control your ESP32, ESP8266, BK72xx, RP2040 by simple yet powerful configuration files and control them remotely through Home Automation systems.项目地址: https://gitcode.com/GitHub_Trending/es/esphome

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询