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日 |
0.0.0 |
|
#435 在 硬件支持
每月292次下载
66KB
914 行
Pixy
Pixy是一个专为与物联网设备一起使用,以默认安全方式中继传感器数据而设计的Web服务器。它最初是为与Pimoroni Enviro Pico一起使用而构建的,因此可以说它是一个Raspberry Pi Pico proxy。
概述
Pixy是一个基于Rust的代理,用于将传感器消息中继到简单YAML配置文件中定义的多个目标。它作为物联网设备唯一的写入入口,减少了配置开销,并使其更容易将数据分发到许多独立的系统。
对Pixy有什么建议吗?打开一个 问题 以请求功能,或开始一个 讨论!
动机
在设置好Enviro Pico并将其通过MQTT连接到我的Home Assistant实例后,我开始考虑它的一些其他用途。我一直在思考如何将其连接到其他自动化平台(如IFTTT),如何将数据传输到公民科学项目,或者如何构建更强大的警报系统,提高容错性等,这在尽可能延长Pico电池寿命时似乎是不可能的。
在浏览一些论坛和GitHub仓库时,我发现使用此板的其他人也对上传到多个目标以及增加可用目标列表有类似的想法。然而,多个上传目标 = 花更多时间上传 = 消耗更多电量,因此似乎没有从Pico本身执行此操作的好主意。我决定编写某种类型的传感器代理来处理多目标上传,这样Pico就只需上传到一个目标。
我对这个代理的目标是
- 代理应该 快,因此HTTP服务器监听器应在完成传感器数据的重新导出之前返回。
- 代理应该 小,因此它最好能够在Raspberry Pi Zero上运行。
- 代理应该 简单,因此编写配置文件应该是直接的。
- 代理应该 灵活,因此应该有多种安装/运行它的方法。
- 代理应该 可扩展,因此它应该能够处理你扔给它的任何数量的板。
安装
根据您的喜好和平台,Pixy 可以以多种方式安装。有关更多信息,请参阅安装文档。
如果您希望将 Pixy 运行在 Raspberry Pi 或 Pi Zero 上,您应优先使用 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 FAQ 链接
- 包括用于创建现有脚本的原始脚本的链接
路线图
有关 Pixy 当前计划的快照,请参阅 GitHub 上的里程碑页面。
依赖项
~21–36MB
~595K SLoC