树莓派+Node-RED自制Nest风智能恒温器
基于树莓派、Node-RED与ESPurna固件,打造可随时随地控制的Nest风格智能恒温器。
项目缘起
多班次倒班导致无法手动调节老式恒温器。需要远程方案:下班前开暖气、外出时关暖气省能源。
复刻Nest极简设计,选用廉价ITEAD 1-CH Wi-Fi继电器+DHT22温湿度传感器。成品为全功能恒温器,任意联网设备可监控控制。
软件安装
- 树莓派3刷Raspbian Stretch。
- Pi装Mosquitto MQTT Broker。
- Pi装Node-RED。
- PC装Atom + PlatformIO做固件开发。
硬件改造
ITEAD 1-CH模块为5V/12V Wi-Fi继电器,出厂锁EWeLink专有固件。为避免厂商锁定,刷入ESPurna——ESP8266开源固件,支持自定义传感器,适配DHT22扩展。
PSA-01模块(ESP8266核心)焊接引脚:
- GND、3V3、GPIO14接DHT22
- TX、RX、GND用于刷固件
构建自定义固件
装好Atom+PlatformIO,下载最新ESPurna释放版解压。通过File → Add Project Folder添加code文件夹新建项目。
编辑/config/sensors.h启用DHT支持:#define DHT_SUPPORT 1 #define DHT_PIN 14
在platformio.ini设env_default = itead-1ch-inching。编译成功以SUCCESS结束。
刷机:USB转串口接板子,按住Micro-USB旁按钮上电,LED转红。PlatformIO点Upload,适配器闪烁写入闪存。
How to Upload ESPurna Custom Firmware with PlatformIO
刷机后拔适配器,接DHT22(3V3/GND/GPIO14),5V手机充电器供电。
设备启动软AP:DEVICE_XXXXXX(密码:fibonacci)。连接后访问https://192.168.4.1配置Wi-Fi与安全设置。
恒温器配置
接入家庭网络后,ESPurna Web界面暴露传感器读数、开关状态、MQTT/NTP/HTTP/家庭自动化集成。配置MQTT Broker指向Pi上Mosquitto实例。
Node-RED通过MQTT接收传感器数据,按温度阈值或时控逻辑执行开关暖气。流编辑器亦可构建自定义仪表盘远程监控。
系统就绪,您可从手机/平板/笔记本:设定目标温度、排程供暖、查实时湿度。
后续拓展
探索Alexa集成、Thingspeak数据记录、Node-RED自动排程等进阶功能。ESPurna与Node-RED开源特性,赋能无限延展。
详细阅读:DIY Virtual Alike NEST Thermostat with Node-RED
制造工艺
- 低成本传感器构建室内温度分布图谱
- 树莓派低成本婴儿啼哭检测器 DIY 指南:Prota OS + Philips Hue + Volumio
- IoT 与 MQTT 入门:免代码 ESP8266 教程
- 复古 Numitron 管时钟:Arduino Nano 驱动,低温可靠省电
- 基于模拟传感器的高精度压力与气流测量装置
- Arduino + Android 蓝牙控制 Roomba Create 2 扫地机器人完整指南
- DIY VR 滑板:用 Arduino、Google Cardboard 与蓝牙打造虚拟滑雪体验
- 低成本便携式红外测温计:Arduino Nano + MLX90614 + Android OTG
- Arduino DIY 电压表:Nokia 5110 屏幕显示,手把手教学
- 自制高精度测距轮:Arduino Nano + 旋转编码器 + 1602 LCD
- 精通E3.cable:连接器插件定位实现最优性能
- 在 PLCnext 上用 Docker 部署 Node-RED:分步实战指南