跳转到主要内容

zigpy的一个库,用于与TI ZNP无线电台通信

项目描述

zigpy-znp

Build Status Coverage Status

zigpy-znp 是一个Python库,它为Python Zigbee堆栈项目 zigpy 添加了对常见的 德州仪器 ZNP (Zigbee网络处理器) Zigbee 无线电模块的支持。

与zigpy和兼容的智能家居软件(特别是Home Assistant的ZHA (Zigbee智能家居) 集成组件)一起,您可以直接控制Philips Hue、GE、OSRAM LIGHTIFY、小米/Aqara、IKEA Tradfri、三星SmartThings等Zigbee设备。

安装

Python模块

在您的虚拟环境中安装Python模块

$ virtualenv -p python3.8 venv                                # if you don't already have one
$ source venv/bin/activate
(venv) $ pip install git+https://github.com/zigpy/zigpy-znp/  # latest commit from Git
(venv) $ pip install zigpy-znp                                # or, latest stable from PyPI

Home Assistant

当您安装ZHA组件时,zigpy-znp的稳定版本会自动安装。

使用Home Assistant Core测试 dev

在您的虚拟环境中升级软件包(需要 git

(venv) $ pip install git+https://github.com/zigpy/zigpy-znp/

使用命令行选项 --skip-pip 启动 Home Assistant,以防止 zigpy-znp 降级。使用此选项可能会阻止新添加的集成安装所需的软件包。

在 Home Assistant OS 上测试 dev

配置

以下是顶层 Home Assistant zha: 键的默认配置。 您不需要复制此配置,仅提供参考

zha:
  zigpy_config:
    znp_config:
      # Only if your stick has a built-in power amplifier (i.e. CC1352P and CC2592)
      # If set, must be between:
      #  * CC1352/2652:  -22 and 19
      #  * CC253x:       -22 and 22
      tx_power:  

      # Only if your stick has a controllable LED (the CC2531)
      # If set, must be one of: off, on, blink, flash, toggle
      led_mode: off


      ### Internal configuration, there's no reason to touch these values

      # Skips the 60s bootloader delay on CC2531 sticks
      skip_bootloader: True

      # Timeout for synchronous requests' responses
      sreq_timeout: 15

      # Timeout for asynchronous requests' callback responses
      arsp_timeout: 30

      # Delay between auto-reconnect attempts in case the device gets disconnected
      auto_reconnect_retry_delay: 5

      # Pin states for skipping the bootloader
      connect_rts_pin_states: [off, on, off]
      connect_dtr_pin_states: [off, off, off]

工具

各种 Zigbee 命令行实用程序是 zigpy-znp 包的一部分,可以通过 python -m zigpy_znp.tools.name_of_tool 运行。更详细的文档可以在 TOOLS.md 中找到,但以下是对每个工具的简要描述

  • energy_scan:执行持续的能量扫描以检查非 Zigbee 干扰。
  • flash_read:对于 CC2531s,从闪存中读取固件。
  • flash_write:对于 CC2531s,将固件 .bin 写入闪存。
  • form_network:在通道 15 上使用随机设置形成网络。
  • network_backup:将网络数据和设备信息备份到人类可读的 JSON 文档中。
  • network_restore:将 JSON 网络备份恢复到适配器。
  • network_scan:主动发送信标请求以进行网络跳转。
  • nvram_read:将所有可能的 NVRAM 条目读取到 JSON 文档中。
  • nvram_reset:删除所有可能的 NVRAM 条目。
  • nvram_write:从 JSON 文档中写入所有 NVRAM 条目。

硬件要求

带有 TI Z-Stack 闪存的 USB 适配器、GPIO 模块和开发板与 zigpy-znp 兼容。

  • CC2652P/CC2652R/CC2652RB USB 随身棒和开发板硬件
  • CC1352P/CC1352R USB 随身棒和开发板硬件
  • CC2538 + CC2592 USB 随身棒和开发板硬件(不推荐,旧硬件和已停产固件
  • CC2531 USB 随身棒硬件(不推荐用于拥有超过 20 个设备的 Zigbee 网络
  • CC2530 + CC2591/CC2592 USB 随身棒硬件(不推荐用于拥有超过 20 个设备的 Zigbee 网络

提示!列出为 "与 Zigbee2MQTT 兼容的 Texas Instruments 随身棒" 的适配器也适用于 zigpy-znp。

此项目的参考硬件

这些特定的适配器被 zigpy-znp 开发者用作开发和测试的参考硬件。

德州仪器芯片产品编号

德州仪器(TI)拥有许多不同的无线MCU芯片,它们在开源Zigbee世界中都被使用/提及,如果你是初学者,可能会感到有些令人畏惧。以下是部分编号和关键特性的快速总结。

支持的较新一代TI芯片

仅2.4GHz频率的芯片

  • CC2652R:仅2.4GHz的IEEE 802.15.4多协议(Zigbee、蓝牙、Thread、支持IPv6的IEEE 802.15.4g智能对象如6LoWPAN和专有系统)无线MCU。采用Cortex-M0核心用于射频栈和Cortex-M4F核心用于应用程序,拥有充足的RAM。提供来自TI的免费编译器选项。
  • CC2652RB:与CC2652R引脚兼容的“无晶振”CC2652R(如果您要构建自己的zzh并省略晶振,则可以使用它),但不兼容固件。
  • CC2652P:内置射频PA的CC2652R。与CC2652R/CC2652RB neither 引脚兼容也兼容固件。

多频率芯片

  • CC1352R:亚1 GHz & 2.4 GHz无线MCU。本质上与CC2652R相同,但额外包含一个亚1GHz射频。
  • CC1352P:内置射频PA的CC1352R。

支持的较旧一代TI芯片

  • CC2538:2.4GHz Zigbee、6LoWPAN和IEEE 802.15.4无线MCU。采用ARM Cortex-M3核心,配备512kB闪存和32kB RAM。
  • CC2531:内置UART/TTL到USB桥接器的CC2530。用于到处销售的廉价“Zigbee sticks”。采用Intel 8051核心,256闪存,只有8kB RAM。
  • CC2530:2.4GHz Zigbee和IEEE 802.15.4无线MCU。采用Intel 8051核心,256闪存,只有8kB RAM。

辅助TI芯片

  • CC2591和CC2592:2.4 GHz范围扩展器。这些不是无线MCU,只是同一封装中的辅助PA(功率放大器)和LNA(低噪声放大器),以改善任何2.4 GHz射频芯片的RF(射频)范围。

通过PyPI发布

标记版本也将通过PyPI发布

外部文档和参考

如何贡献

如果您想为此项目贡献代码或文档,我们建议您遵循以下指南中的步骤

相关项目

Zigpy

zigpy 是一个将 Zigbee协议栈 集成到Python库中以实现 Zigbee智能家居 标准的项目。使用 zigpy 进行Zigbee智能家居集成,您可以使用与 zigpy 兼容的Zigbee射频库模块之一连接许多现成的Zigbee适配器,以控制Zigbee设备。目前支持控制二进制传感器(例如运动和门传感器)、模拟传感器(例如温度传感器)、灯泡、开关和风扇等Zigbee设备类型。zigpy与 Home AssistantZHA组件 紧密集成,并为与Zigbee网络一起工作提供了一个用户友好的界面。

项目详情


下载文件

下载适合您平台文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

zigpy_znp-0.12.4.tar.gz (117.2 kB 查看哈希值)

上传时间

构建分布

zigpy_znp-0.12.4-py3-none-any.whl (120.2 kB 查看哈希值)

上传时间 Python 3

AWSAWS 云计算和安全赞助商 DatadogDatadog 监控 FastlyFastly CDN GoogleGoogle 下载分析 MicrosoftMicrosoft PSF赞助商 PingdomPingdom 监控 SentrySentry 错误记录 StatusPageStatusPage 状态页面