main
ClearMCU-Wind
项目简介
ClearMCU-Wind 是基于 ESP32-C3 的 RS485 风速风向传感器采集网关固件,面向现场部署、批量站号配置、Web 运维和 MQTT 上报场景。
当前固件版本:RC2.0
主要功能
- 单个传感器逐个引导配置站号
- 多传感器共线轮询
- AP 本地维护入口常驻
- 外部 STA WiFi 接入与自动重连
- 只读 HTTP API
- MQTT 实时数据上报
- OTA 在线检查更新与固件升级
- 掉电配置保存
硬件目标
esp32-c3-devkitm-1
通信参数
RS485 / Modbus
- 协议:
Modbus RTU - 波特率:
9600 - 数据位:
8 - 校验位:
None - 停止位:
1
当前接线
- 串口:
UART1 - TX:
GPIO0 - RX:
GPIO1
默认假设使用带自动收发方向控制的 TTL 转 RS485 模块。
寄存器说明
当前使用以下保持寄存器:
0x0000:风速m/s0x0001:风级0x0002:风速km/h0x0003:风向角度0x0004:风向方位码0x0030:设备地址
功能说明
1. 引导配置
系统按 1..N 顺序为传感器分配站号。
现场操作规则:
- 每次配置时,总线上只保留
1个待配置传感器 - 已配置好的设备先断开,避免误改地址
- 配置成功后,再接入下一个传感器
推荐流程:
- 连接设备 AP。
- 打开网页中的“引导配置”。
- 只接入 1 个待配置传感器。
- 点击“配置下一个传感器”。
- 等待系统自动读地址、写地址和验证。
- 成功后拔掉当前传感器。
- 接入下一个传感器继续配置。
- 全部完成后点击“结束配置并进入运行”。
说明:
- 部分传感器改址后不会返回标准写应答。
- 固件会在写入后自动读回验证。
- 只要新站号验证通过,界面会按“站号已生效,不影响使用”处理。
2. 实时轮询
运行模式下系统会循环读取全部已配置传感器,并显示:
- 风速
m/s - 风级
- 风速
km/h - 风向角度
- 风向方位
- 在线 / 离线状态
3. 网络模式
设备工作在 AP + STA 模式:
- AP 始终保留,便于现场维护
- STA 用于接入现场网络
- STA 断线后自动重连
- STA 异常不影响 AP 本地访问
AP 名称格式:
ClearMCU-Wind-<MAC>
4. Web 页面
网页包含以下页面:
- 实时数据
- 引导配置
- STA 设置
- API
- 云服务
- 系统状态
系统状态页包含:
- AP / STA 信息
- MQTT 状态
- 固件版本
- 已配置传感器数量
- 恢复出厂
- 系统重启
5. MQTT 上报
配置 MQTT 后,系统会自动连接并周期发布实时数据。
默认主题前缀:
clearesp/wind
完整主题:
<topicPrefix>/<MAC>/realtime
说明:
/realtime已包含传感器 ID、在线状态和实时风速风向数据- 不再单独发布
/sensors
6. OTA
云服务页提供 OTA 卡片,面向现场人员只展示:
- 当前固件版本
- 最新版本
- 检查更新按钮
- 下载并升级按钮
说明:
- OTA 需要设备先连接外部 WiFi
- 检测到新版本后才允许执行升级
- 升级完成后设备会自动重启
7. 恢复出厂
“恢复出厂”会清空全部持久化配置,包括:
- 传感器配置
- WiFi 配置
- MQTT 配置
执行后系统会自动重启。
HTTP API
所有接口均返回 JSON。
状态接口
GET /api/state
返回整机完整状态,包括:
- AP / STA 状态
- MQTT 状态
- OTA 状态
- 引导配置状态
- 传感器列表
- 固件版本
传感器接口
GET /api/ro/sensors
网络接口
GET /api/ro/network
系统接口
GET /api/ro/system
MQTT 数据示例
实时数据
主题:
<topicPrefix>/<MAC>/realtime
示例:
{
"mac": "B43A455471D4",
"firmware_version": "RC2.0",
"uptime_ms": 123456,
"sensors": [
{
"id": 1,
"online": true,
"wind_speed_ms": 3.8,
"wind_level": 3,
"wind_speed_kmh": 13.68,
"angle_deg": 45.0,
"direction_code": 2,
"direction_name": "NE",
"age_ms": 180
}
]
}
编译与烧录
编译
platformio run
烧录
platformio run -t upload
RC2.0 变更
- 品牌字样统一更新为
ClearMCU-Wind - 固件版本升级为
RC2.0 - 保留既有 OTA、MQTT、Web 管理与现场配置能力
Description
ClearESP Wind Gateway commercial firmware for ESP32-C3
1.2 MiB
0 Stars
1 Watchers
0 Forks