一个与zigpy的ZiGate无线电进行通信的库
项目描述
zigpy-zigate
zigpy-zigate 是一个用于实现基于 Zigpy 的 ZiGate 的 Zigbee 无线电设备的 Python 3 实现。
ZiGate 是一个开源的 ZigBee 适配器硬件,最初由 @fairecasoimeme 在 Kickstarter 上推出。
- https://www.zigate.fr
- https://www.kickstarter.com/projects/1361563794/zigate-universal-zigbee-gateway-for-smarthome
硬件和固件兼容性
The ZiGate USB 适配器通过 Prolific 的 PL-2303HX USB 到串行桥接控制器模块进行通信。还有一个 Wi-Fi 适配器,用于通过网络与 ZiGate 进行通信。
注意!ZiGate 开源 ZigBee USB 和 GPIO 适配器硬件需要 ZiGate 3.1a 固件或更高版本才能与该 zigpy-zigate 模块一起工作,但建议使用 ZiGate 3.1d 固件或更高版本,因为它包含针对 zigpy 的特定错误修复。请参阅所有可用的官方 ZiGate 固件版本 这里 (链接)。
已知兼容的 ZiGate Zigbee 无线电模块
- ZiGate + USB / ZiGate USB-TTL
- ZiGate + USB-DIN / ZiGate USB-DIN
- PiZiGate + / PiZiGate (ZiGate HAT/Shield 模块,适用于 Raspberry Pi 兼容的 GPIO 引脚)
- 提示!PiZiGate 不限于 Raspberry Pi 系列,因为它适用于所有具有 Raspberry Pi 兼容 GPIO 引脚的计算机。
- ZiGate Ethernet (ZiGate Ethernet串行转IP服务器) (注意!需要PiZiGate + 无线模块)
- 提示!ZiGate Ethernet也可以通过ESPHome串行桥接固件作为选项使用。
- ZiGate + WiFi Pack / ZiGate WiFi Pack (ZiGate WiFi串行转IP服务器)
- 提示!与ZiGate兼容的WiFi模块也可以用于将无线电板从ZiGate USB-TTL转换为“ZiGate WiFi Pack”。
实验性ZiGate兼容Zigbee无线电模块
端口配置
- 要配置usb ZiGate (USB TTL或DIN)端口,只需指定端口,例如:
/dev/ttyUSB0
- 或者您可以手动将端口设置为
auto
以启用自动USB端口发现
- 或者您可以手动将端口设置为
- 要配置pizigate端口,指定端口,例如:
/dev/serial0
或/dev/ttyAMA0
- 要配置wifi ZiGate,手动指定IP地址和端口,例如:
socket://192.168.1.10:9999
pizigate在Raspberry Pi 3/Zero和4上需要一些额外的调整
闪存器(ZiGate固件工具)
zigpy-zigate集成了用于在您的ZiGate(NXP Jennic JN5168)上刷写固件更新的Python "闪存器"工具。
感谢Sander Hoentjen (tjikkun),zigpy-zigate现在集成了固件闪存器工具!
查看所有可用的官方ZiGate固件发布版本这里(链接)。
闪存器使用
usage: python3 -m zigpy_zigate.tools.flasher [-h] -p {/dev/ttyUSB0} [-w WRITE] [-s SAVE] [-u] [-d] [--gpio] [--din]
optional arguments:
-h, --help show this help message and exit
-p {/dev/ttyUSB0}, --serialport {/dev/ttyUSB0}
Serial port, e.g. /dev/ttyUSB0
-w WRITE, --write WRITE
Firmware bin to flash onto the chip
-s SAVE, --save SAVE File to save the currently loaded firmware to
-u, --upgrade Download and flash the lastest available firmware
-d, --debug Set log level to DEBUG
--gpio Configure GPIO for PiZiGate flash
--din Configure USB for ZiGate DIN flash
测试新版本
在Home Assistant发布之前,测试zigpy-zigate库的新版本。
如果您正在使用Supervised Home Assistant(以前称为Hassio/Hass.io发行版)
- 将https://github.com/home-assistant/hassio-addons-development作为“附加组件”仓库添加
- 安装“自定义依赖部署”附加组件
- 更新配置如下
其中0.5.1是新版本pypi: - zigpy-zigate==0.5.1 apk: []
- 启动附加组件
如果您正在使用Home Assistant的自定义Python安装,则执行以下操作
- 激活您的Python虚拟环境
- 使用
pip
更新包pip install zigpy-zigate==0.5.1
通过PyPI发布
标记版本也通过PyPI发布
- https://pypi.ac.cn/project/zigpy-zigate/
- https://pypi.ac.cn/project/zigpy-zigate/#history
- https://pypi.ac.cn/project/zigpy-zigate/#files
开发者参考
描述ZiGate串行接口通信所使用的串行协议的文档可以在这里找到
- https://github.com/fairecasoimeme/ZiGate/tree/master/Protocol
- https://github.com/doudz/zigate
- https://github.com/Neonox31/zigate
- https://github.com/nouknouk/node-zigate
如何贡献
如果您想为该项目做出贡献,我们建议您遵循以下指南中的步骤
- https://github.com/firstcontributions/first-contributions/blob/master/README.md
- https://github.com/firstcontributions/first-contributions/blob/master/github-desktop-tutorial.md
一些开发者可能还可能对以硬件形式(例如Zigbee模块或设备)接收捐赠感兴趣,即使这样的捐赠通常是无条件的,但在许多情况下,它可以帮助开发者提高积极性,并间接改善该项目的开发。
相关项目
Zigpy
Zigpy 是一个将 Zigbee 协议栈 集成到 Python 3 库中以实现 Zigbee 家庭自动化 标准的项目。使用 zigpy 进行 Zigbee 家庭自动化集成,您可以使用兼容 zigpy 的 Zigbee 无线电库模块之一连接众多现成的 Zigbee 适配器,以控制基于 Zigbee 的设备。目前支持控制二进制传感器(例如,运动和门传感器)、传感器(例如,温度传感器)、灯泡、开关和风扇等 Zigbee 设备类型。Zigbee 集成在 Home Assistant(基于 Python 的开源家庭自动化软件)中作为其 ZHA 组件 的一部分。
ZHA 设备处理器
Home Assistant 中的 ZHA 偏差处理依赖于第三方 ZHA 设备处理器 项目。偏离或未完全符合由 Zigbee 联盟 设定的标准规范指定的 Zigbee 设备可能需要开发定制的 ZHA 设备处理器(ZHA 定制quirks处理器实现),以便所有功能都能在 Home Assistant 的 ZHA 组件中正常工作。因此,这些 Home Assistant 的 ZHA 设备处理器可用于解析与不符合规范的 Zigbee 设备之间的自定义消息。作为 Home Assistant 的 ZHA 设备处理器实现的 zigpy 的自定义 quirks 实现类似于 SmartThings 平台的 Hub 连接设备处理器 以及 Zigbee2mqtt 中使用的 zigbee-herdsman 转换器 的概念,这意味着它们都是物理设备的虚拟表示,提供了这些平台现有集成之外的功能。
Home Assistant 的 ZHA 集成组件
Home Assistant 的 ZHA 集成组件 是 zigpy 库的参考实现,已集成到 Home Assistant(基于 Python 的开源家庭自动化软件)的核心中。还有一些基于 ZHA 组件功能的功能增强或改进用户体验的 GUI 和非 GUI 项目,其中一些在下面列出并链接。
ZHA 自定义无线电
zha-custom-radios 为 zigpy 添加了对自定义无线电模块的支持,并将其集成到 [Home Assistant 的 ZHA (Zigbee 家庭自动化) 集成组件] 中。这个 Home Assistant 的自定义组件允许用户在它们集成到 zigpy ZHA 之前在 Home Assistant 的 ZHA 集成组件中测试 zigpy 的新模块,同时也帮助开发者在不修改 Home Assistant 源代码的情况下开发新的 zigpy 无线电模块。
ZHA 自定义
zha_custom 是一个 Home Assistant 的自定义组件包(包括其 zigpy 集成的 ZHA 组件),它作为 zigpy 命令服务包装器,当安装后,您可以通过 zigy 输入自定义命令,例如更改 UI 中不可用的高级配置和设置。
ZHA 地图
zha-map 为 Home Assistant 的 ZHA 组件可以构建 Zigbee 网络拓扑图。
ZHA 网络可视化卡片
zha-network-visualization-card 是一个用于 Home Assistant 的自定义 Lovelace 元素,用于可视化 ZHA 组件的 Zigbee 网络。
ZHA 网络卡片
zha-network-card 是一个用于 Home Assistant 的自定义 Lovelace 卡,用于显示 ZHA 组件的 Zigbee 网络和设备信息。
Zigzag
Zigzag 是一个针对 Home Assistant 的自定义卡片/面板,用于显示 Zigbee 设备的图形布局及其之间的连接。Zigzag 可以作为面板或自定义卡片安装,并依赖于 zha-map 集成组件提供的数据。
ZHA 设备导出器
zha-device-exporter 是 Home Assistant 的一个自定义组件,允许 ZHA 组件导出 Zigbee 设备列表。
项目详情
下载文件
下载您平台对应的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。
源代码分发
构建分发
zigpy_zigate-0.13.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ba267bd933eaa8167a1c0ead69ec31236d3bd3d968229aa426cfcfa2b09b41ce |
|
MD5 | 1538f26fbf13fcdbb56b93ae660757c9 |
|
BLAKE2b-256 | 37502cb8f2eb76b4a93353b8bc76974a0d1b476453845897a50f7d731cf6a796 |
zigpy_zigate-0.13.1-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | c0746d6533da1c7cfa7110a07cbf81378b0ff8fd670ce9c8bcf110f5f6d0b796 |
|
MD5 | e874f9b7774b8219ec1bea99da0ea6fb |
|
BLAKE2b-256 | 36d30c234b7111052c258f289fbf887127e5ee096103e03c2d922fc9105f77cc |