
用Adafruit Fruit Jam和BleuIO打造实时空气质量监测网关
来源标题:Turn Adafruit jam into a live air quality monitor
项目演示通过BleuIO SSD025蓝牙USB适配器为RP2350驱动的Adafruit Fruit Jam添加BLE通信,打造紧凑的嵌入式空气质量网关。Fruit Jam运行自研myRTOS系统,经USB接收HibouAir传感器的BLE广播并解码,实时显示检测到的空气质量数据。Fruit Jam自带两个USB主机接口,可直接连接SSD025。
以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。
在本项目中,我们将探讨如何利用 BleuIO SSD025 低功耗蓝牙 USB 适配器,为搭载 RP2350 的 Adafruit Fruit Jam 添加 BLE 通信功能。
该项目采用了一种不同寻常的软件方案。Fruit Jam 并未将 HibouAir 扫描器作为原生固件的一部分运行,而是运行一个名为 myRTOS 的自定义实时操作系统。
最终成果是一个运行在 RP2350 上的紧凑型嵌入式 BLE 空气质量网关。
Fruit Jam 特别适合本项目,因为它内置了一个 USB 集线器,并带有两个外露的 USB 主机端口。
- myRTOS 解码并显示测量数据
HibouAir 传感器通过 BLE 广播包定期广播其测量数据。SSD025 接收这些数据包,并通过 USB 将信息提供给 RP2350。
随后,myRTOS 应用程序扫描 HibouAir 设备,解析接收到的信息,并维护一个已检测传感器的实时列表。
终端提供了一种便捷的方式,可在空气质量信息到达时进行观察。
该项目围绕三个主要硬件组件构建。
Adafruit Fruit Jam,BleuIO SSD025 直接连接到 USB Type-A 主机端口。
Fruit Jam 是一台基于 RP2350B 微控制器的紧凑型计算机。Adafruit 通过板载 USB 集线器提供了两个 USB Type-A 主机端口,使得 USB 外设可以直接连接到板上。
该板提供的功能远超这个简单网关所需。除了 RP2350B 之外,它还包括闪存、PSRAM、USB 主机功能、microSD、DVI 输出、音频硬件以及用于无线连接的 ESP32-C6。
然而,对本项目而言,重要的特性是 USB 主机接口。
BleuIO SSD025 用作低功耗蓝牙接口。
这意味着 RP2350 应用程序无需自行实现低功耗蓝牙协议栈。
该适配器支持蓝牙 5.2 和 USB 全速,可在蓝牙中心角色或外设角色下工作,并通过其 USB 接口进行控制。
因此,应用程序可以通过 BleuIO 的 USB 接口访问 BLE 功能,而将蓝牙通信交给适配器处理。
HibouAir SSD002 是无线空气质量传感器。
HibouAir 的文档将 SSD002/2B 描述为一款使用 NDIR CO2 传感器的 CO2 空气质量监测器,具备无线蓝牙连接能力。根据型号不同,该传感器系列可提供包括 CO2、温度、湿度、颗粒物和 VOC 相关测量在内的环境参数。
BleuIO 充当 Fruit Jam 所实现的 USB 主机与周围环境中的低功耗蓝牙设备之间的桥梁。
应用处理器可以专注于:
而 BleuIO 则处理蓝牙侧的事务。
BleuIO 自身的 HibouAir 网关示例同样使用 BleuIO,通过 USB 为 RP2040/RP2350 开发板提供 BLE 通信。
本项目的软件基于 myRTOS,这是一个运行在 Fruit Jam 上的小型实时操作系统环境。
HibouAir 应用程序从 RTOS 命令接口启动:
myrtos:/> hibouair
启动后,应用程序进入扫描模式:
随后,应用程序持续处理传入的 BLE 数据。
从概念上讲,软件流水线如下所示:
关键在于,这不仅仅是一个原始 BLE 数据包监视器。
该应用程序将传入的无线数据转换为人类可读的传感器表格。
完整项目可在 GitHub 上获取:
https://github.com/smart-sensor-devices-ab/Adafruit-Fruit-Jam-with-BleuIO
要进入 UF2 引导加载程序模式,本项目使用 Fruit Jam 上的两个按钮:
下图显示了两个按钮的位置。
重新启动后,打开终端窗口并连接到开发板。
重新启动后,打开设备管理器并确定分配给 Fruit Jam 的 COM 端口。使用 PuTTY 等串行终端连接到此端口。
要查找 Fruit Jam 的串行端口,请打开终端并运行:
ls /dev/cu.usbmodem*
该命令应返回类似如下的设备:
/dev/cu.usbmodem2351xxxx
使用以下命令连接:
screen /dev/cu.usbmodem2351xxxx
实时 HibouAir 扫描
连接到 Fruit Jam 后,从 myRTOS 命令接口启动 HibouAir 应用程序:
myrtos:/> hibouair
scanning; ctrl-C to stop
随后,程序会打印一个包含已检测到的 HibouAir 设备的表格。
这使用户能够立即概览当前接收到的所有 HibouAir 传感器。
例如,下面的输出显示了扫描期间检测到的多个 HibouAir 设备。表格展示了每个检测到的设备的板标识符、蓝牙地址、传感器类型以及最新的环境测量数据。
将数据记录到 Fruit Jam 的 microSD 卡上,还可以创建长期空气质量数据集,而无需始终连接计算机。
Fruit Jam 的 USB 主机功能、microSD 存储和 RP2350B 处理器使这类扩展变得切实可行。
本项目展示了如何将 Adafruit Fruit Jam、BleuIO SSD025 和 HibouAir SSD002 相结合,创建一个基于 RP2350 的紧凑型低功耗蓝牙空气质量网关。
该项目展示了 BleuIO 如何为基于 RP2350 的嵌入式系统添加 BLE 通信,同时将蓝牙接口与主应用程序分离。
每订购 10 件,即可免费获得一个 BleuIO。
每订购 10 件,即可免费获得一个 BleuIO。
正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。