A low-power E-Paper weather display powered by an ESP32 microcontroller. Utilizes the OpenWeatherMap API.

esp32-weather-epd

ESP32 ⭐⭐⭐☆☆ (3/5) 已发布
lmarzen 6119 Stars GPL-3.0 BOM 完整度: /5 教程完整度: /5

项目简介

ESP32低功耗电子墨水屏天气显示器,使用OpenWeatherMap API。


ESP32 E-Paper Weather Display 是一个基于 ESP32 微控制器和 7.5 英寸电子墨水屏的低功耗天气显示项目。它通过 WiFi 连接互联网,从 OpenWeatherMap API 获取实时天气数据,并利用板载 BME280 传感器监测室内温湿度,将两者信息清晰呈现在屏幕上。

标签

项目特点

**超低功耗设计**:利用ESP32深度睡眠模式,结合电子墨水屏只在更新时耗电的特性,实现超长续航。
**丰富天气信息**:显示当前温度、湿度、风速、气压、天气图标,以及未来多天的天气预报。
**自动更新**:通过Wi-Fi定时从OpenWeatherMap API获取最新数据,无需手动操作。
**高对比度显示**:采用电子墨水屏,阳光下清晰可见,视角宽广,视觉体验接近纸质印刷。
**开源可定制**:硬件和软件完全开源,支持修改显示布局、更新频率、天气源等。
**多种供电方式**:支持USB供电或锂电池供电,内置电池管理电路。

技术规格

主控芯片 ESP32(双核240MHz,Wi-Fi + BLE)
显示屏 4.2英寸或7.5英寸电子墨水屏(E-Ink)
分辨率 4.2英寸:400×300;7.5英寸:800×480
显示颜色 黑白(部分版本支持三色:黑/白/红)
无线连接 802.11 b/g/n Wi-Fi
供电方式 USB-C 5V 或 3.7V锂电池
电池容量 推荐2000mAh以上(取决于屏幕尺寸)
待机功耗 约10μA(深度睡眠)
更新功耗 约100mA(屏幕刷新时)
工作温度 -10°C ~ 60°C
尺寸 根据屏幕尺寸不同,约120×90×15mm(4.2英寸版本)

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
ESP32开发板(如ESP32-DevKitC) 1 推荐使用低功耗版本
4.2英寸或7.5英寸电子墨水屏模块 1 支持SPI接口,可选三色屏
3.7V锂电池(18650或聚合物) 1 容量建议2000mAh以上
TP4056充电模块 1 用于锂电池充电
USB-C母座 1 用于供电和编程
100μF电容、10kΩ电阻 若干 用于电源滤波和上拉
3D打印外壳或亚克力面板 1 可选,根据屏幕尺寸定制
排针、排线、杜邦线 若干 用于连接各模块

所需工具

工具用途是否必需
Arduino IDE 或 PlatformIO 编写和上传固件 ✅ 是
USB数据线 连接ESP32到电脑 ✅ 是
烙铁和焊锡 焊接电路连接 ▢ 推荐
万用表 测试电压和连接 ▢ 推荐
3D打印机 制作外壳 ▢ 推荐
热风枪 焊接贴片元件 ▢ 推荐

能力画像

**记忆与知识检索**:2/5 — 项目本身不涉及大量知识记忆,但需要查阅API文档和硬件手册。
**动手与操作**:4/5 — 需要焊接、接线、组装外壳等手工操作,适合有一定动手经验的爱好者。
**编程与算法**:3/5 — 需要修改和上传Arduino代码,理解Wi-Fi连接、JSON解析和定时逻辑。
**设计与建模**:2/5 — 若需定制外壳,需要简单的3D建模能力,但也可使用现成设计。
**实验与调试**:3/5 — 调试Wi-Fi连接、API响应、功耗优化等需要一定的实验和排错能力。
**协作与分享**:1/5 — 主要是个人项目,但可通过GitHub提交Issue或PR参与改进。
**学习与研究**:3/5 — 适合学习ESP32低功耗设计、电子墨水屏驱动、物联网数据获取等知识。
**系统集成**:2/5 — 需要将硬件、软件、网络服务整合为一个完整系统,但复杂度适中。

所需技能

基础电子知识(电路连接、焊接) Arduino或C/C++编程基础 理解Wi-Fi和HTTP协议 会使用OpenWeatherMap API(获取API Key) 基本的调试和排错能力 可选:3D建模(用于制作外壳)

适用场景

桌面天气时钟,随时查看实时天气和预报
家庭或办公室信息看板,显示温度、湿度等环境数据
物联网学习项目,实践ESP32低功耗和传感器集成
创客作品展示,体现电子墨水屏的独特视觉效果
礼物或装饰品,兼具实用性和科技感