传感器社区固件与软件
sensors-software
智能家居
⭐⭐⭐☆☆ (3/5)
🧩 软硬件结合
已发布
项目简介
sourcecode for reading sensor data
sensors-software 是一个面向 Sensor.Community 和 Luftdaten.Info 传感器网络的开源固件项目,旨在为空气质量监测硬件提供稳定、可远程升级的嵌入式软件支持。项目核心包含两大部分:主固件 airrohr-firmware 和过渡性更新加载器 airrohr-update-loader。主固件是传感器设备日常运行的基础,负责采集空气数据并上传至社区平台;而更新加载器则专门解决老旧硬件(采用 1M/3M 分区布局)在固件体积超过 512KB 时的空中升级(OTA)难题,通过 SPIFFS 存储新固件文件并在重启后自动替换自身,若失败则通过 LED 闪烁提示错误,确保升级过程安全可控。
标签
项目特点
**主固件 (airrohr-firmware)**:为 Sensor.Community 传感器提供稳定、维护中的主要固件。
**OTA 更新支持 (airrohr-update-loader)**:允许在具有 1M/3M 分区布局的 ESP8266 设备上通过无线方式更新大于 512k 的固件。
**多语言/平台支持**:包含 Arduino、NodeMCU (Lua) 等多种编程环境的代码。
**数据分析工具**:提供 R 语言脚本用于分析传感器数据。
**社区驱动**:项目由开源社区维护,开发主要在 beta 分支进行。
技术规格
| 目标硬件 | |
|---|---|
| 主要固件 | |
| 更新固件 | |
| 开发分支 | |
| 构建状态 | |
| 编程语言 | |
| 数据接口 |
项目资源
物料清单 (BOM)
| 物料名称 | 数量 | 参考价格 | 备注 |
|---|---|---|---|
| ESP8266 开发板 (如 NodeMCU, Wemos D1 mini) | 1 | — | 核心控制单元 |
| SDS011 或 PMS5003 颗粒物传感器 | 1 | — | 用于测量 PM2.5/PM10 |
| DHT22 或 BME280 温湿度传感器 | 1 | — | 可选,用于测量温湿度 |
| 5V 微USB电源 | 1 | — | 为 ESP8266 供电 |
| 杜邦线 | 若干 | — | 连接传感器和开发板 |
所需工具
| 工具 | 用途 | 是否必需 |
|---|---|---|
| 计算机 | 编写、编译和上传固件 | ✅ 是 |
| Arduino IDE 或 PlatformIO | 开发环境,用于编译和上传代码 | ✅ 是 |
| USB 数据线 | 连接 ESP8266 到计算机 | ✅ 是 |
| 焊台 | 焊接传感器和排针(如果使用裸板) | ▢ 推荐 |
能力画像
记忆与知识检索
1/5
逻辑推演
2/5
表达与交流
1/5
感知与观察
1/5
数理与计算
2/5
动手与操作
3/5
狂热与坚持
2/5
创造与创新
2/5
所需技能
🔧 **动手能力**:需要能够连接传感器和微控制器,可能涉及简单的焊接。
💻 **编程能力**:需要熟悉 Arduino IDE 或 PlatformIO,能够编译和上传固件到 ESP8266。
⚡ **电子电路**:需要了解基本的电路连接,如 I2C、UART 和电源连接。
适用场景
**空气质量监测**:搭建个人或社区空气质量监测站,监测 PM2.5、PM10、温湿度等数据。
**环境数据采集**:用于教育或科研项目,采集和分析环境数据。
**物联网入门**:作为学习 ESP8266 和传感器集成的实践项目。
**开源硬件学习**:研究开源固件和软件架构,参与社区开发。