Skip to content

A Python 3 project to implement ZigBee support for EmberZNet devices using the EZSP protocol.

License

GPL-3.0, Unknown licenses found

Licenses found

GPL-3.0
LICENSE
Unknown
COPYING
Notifications You must be signed in to change notification settings

kylehendricks/bellows

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

71 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bellows

Build Status Coverage

bellows is a Python 3 project to implement ZigBee support for EmberZNet devices using the EZSP protocol.

The goal is to use this project to add support for the ZigBee Network Coprocessor (NCP) in devices like the Linear/Nortek/GoControl HubZ/QuickStick Combo (HUSBZB-1) device to Home Assistant.

Status

This project is in early stages, so it is likely that APIs will change.

Currently implemented features are:

  • EZSP UART Gateway Protocol
  • EZSP application protocol
  • CLI wrapping basic ZigBee network operations (eg, scanning and forming a network)
  • Incomplete ZDO functionality (with CLI)
  • Incomplete ZCL functionality (with CLI)

The ZDO and ZCL functionality is currently very brittle -- errors and unexpected conditions are not well handled. The application framework is also not well set up for applications to build against it. For example, there's no way to register for callbacks on network or device events.

An example use of the CLI:

$ bellows devices
Device:
  NWK: 0x1ee4
  IEEE: 00:0d:6f:00:05:7d:2d:34
  Endpoints:
    1: profile=0x104, device_type=None, clusters=[0, 1, 3, 32, 1026, 1280, 2821]
    2: profile=0xc2df, device_type=None, clusters=[0, 1, 3, 2821]
Device:
  NWK: 0x64a6
  IEEE: d0:52:a8:00:e0:be:00:05
  Endpoints:
    1: profile=0x104, device_type=None, clusters=[0]
    2: profile=0xfc01, device_type=None, clusters=[]
$ bellows zdo 00:0d:6f:00:05:7d:2d:34 get_endpoint 1
<SimpleDescriptor endpoint=1 profile=260 device_type=1026 device_version=0 input_clusters=[0, 1, 3, 32, 1026, 1280, 2821] output_clusters=[25]>
$ bellows zcl 00:0d:6f:00:05:7d:2d:34 1 1026 read_attribute 0
0=1806

Reference documentation

About

A Python 3 project to implement ZigBee support for EmberZNet devices using the EZSP protocol.

Resources

License

GPL-3.0, Unknown licenses found

Licenses found

GPL-3.0
LICENSE
Unknown
COPYING

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%