4 个版本
0.2.2 | 2024年4月29日 |
---|---|
0.2.1 | 2023年8月24日 |
0.2.0 | 2023年8月4日 |
0.1.8 | 2023年7月28日 |
#1273 在 硬件支持
每月 251 次下载
被 2 个 包使用
28KB
521 行
Pixy
Pixy 是一个用于与物联网设备配合使用的 Web 服务器,旨在通过默认安全的方式中继传感器数据。最初是为与 Pimoroni Enviro Pico 配合使用而构建的,因此可以说它是一个 Raspberry Pi Pico proxy。
概述
Pixy 是一个基于 Rust 的代理,用于将传感器消息中继到简单 YAML 配置文件中定义的多个目标。它作为 IoT 设备的单个写入只入口,减少了配置开销,并使得将数据分发到多个独立系统变得更加容易。
对 Pixy 有建议吗?请为功能请求打开一个 问题,或开始一个 讨论!
动机
在设置好 Enviro Pico 并将其通过 MQTT 连接到我的 Home Assistant 实例后,我开始考虑它的一些其他用途。我一直在思考如何将其连接到其他自动化平台(如 IFTTT),如何将数据传输到公民科学项目,或者如何构建更强大的警报系统,提高容错性等,这些在尽可能延长 Pico 电池寿命的情况下似乎是不可能实现的。
在浏览了一些论坛和 GitHub 仓库后,我发现使用这块板的其他人也有类似的想法,即上传到多个目标,以及增加可用的目标列表。然而,多个上传目标 = 花更多时间上传 = 使用更多电池,所以从 Pico 本身进行此操作似乎不是一个好主意。我决定编写某种类型的传感器代理来处理多目标上传,这样 Pico 就只需要上传到一个目标。
我对这个代理的目标是
- 代理应该 快速,所以 HTTP 服务器监听器应在完成传感器数据的重新导出之前返回。
- 代理应该 小巧,所以它理想上应该能在 Raspberry Pi Zero 上运行。
- 代理应该 简单,所以编写配置文件应该是直截了当的。
- 代理应该 灵活,所以应该有多种安装/运行它的方法。
- 代理应该可扩展,因此它应该能够处理你扔给它的尽可能多或尽可能少的板。
安装
根据您的偏好和平台,Pixy可以以多种方式进行安装。有关更多信息,请参阅安装文档。
如果您希望在Raspberry Pi或Pi Zero上运行Pixy,您应该首选使用Debian/Ubuntu/Raspian说明,这些说明设置systemd服务在后台运行。
目前,Windows和Mac OS支持仅通过Docker安装提供。
配置Pixy
在运行相关安装步骤之后,请阅读配置
许可证
本项目的许可证主要是MIT许可证。有关所有条款,请参阅LICENSE文件。
pkg/debian
目录中的一些脚本基于MPL 2.0许可的代码,因此这些脚本也根据MPL 2.0许可。任何此类脚本都将
- 包含说明脚本是根据MPL 2.0许可的,其全文可在LICENSE-MPL文件中找到
- 包含MPL 2.0常见问题解答的链接
- 包含指向创建现有脚本的原始脚本的链接
路线图
有关Pixy当前计划的快照,请参阅GitHub上的里程碑页面。
依赖项
~17–31MB
~490K SLoC