Expand description
Zigbee transceiver API.
This library provides a fully abstracted interface to expose an interface to communicate with a Zigbee transceiver regardless of the underlying hardware.
The application supplies a tokio::sync::mpsc::Sender<Event> at startup to receive coordinator
Event values. Discovery, binding, address resolution, and persistence are application-owned
workflows built from traits such as Node, Endpoints, Binding,
AddressTranslation, Zcl, and Zdp.
The hardware NCP is responsible for providing its complete local endpoint descriptors through
zb_hw::Ncp::get_endpoints. The coordinator queries those descriptors when serving ZDP match
requests and exposes them through LocalNode::get_endpoints; they are no longer passed to
Coordinator::start.
Driver is re-exported from zb_hw, allowing hardware integrations to implement the driver
contract through this crate’s public API.
ZCL and ZDP sends use deferred response futures. The first await queues an operation and returns
either TransmissionResponse or a protocol-specific ZclResponse or ZdpResponse. Await
that returned future to observe hardware completion and, for communication requests, receive the
converted protocol response. All of these futures report failures through the coordinator’s
Error type.
Structs§
- Clusters
- Input and output cluster set advertised by one local application endpoint.
- Communication
Response - A deferred, typed response to a ZCL or ZDP request.
- Coordinator
- External Zigbee API struct.
- Found
Network - A found network with additional link quality information.
- Scanned
Channel - A structure representing the result of a channel scan operation.
- Simple
Descriptor - ZDP Simple Descriptor payload.
- Transmission
Response - A deferred hardware-transmission result using the coordinator error type.
Enums§
- Device
- Device lifecycle or activity event.
- Error
- Errors that can occur in the coordinator-API.
- Event
- Event emitted by the coordinator runtime.
- Network
- Network state event.
- Network
Error - Network-level error event.
Traits§
- Address
Translation - Trait for resolving between NWK short addresses and IEEE addresses.
- Attributes
- Trait for ZCL global attribute operations.
- Binding
- Trait for sending ZDP bind requests.
- Color
Control - Trait for Color Control cluster operations.
- Driver
- A common Zigbee NCP driver interface.
- Endpoints
- Trait for discovering active endpoints and simple descriptors.
- Groups
- Trait for Groups cluster operations.
- Joining
- Trait to manage joining the network.
- Level
- Trait for the Level cluster.
- Local
Node - Trait for reading local coordinator node information.
- Node
- Trait for reading ZDP node descriptor information.
- OnOff
- Trait for On/Off cluster operations.
- Optional
- Converts Zigbee “not found” responses into optional values.
- Routing
- Trait for requesting route discovery through the hardware/NCP.
- Scanning
- Trait for active Zigbee network and channel scanning.
- Status
Ext - Converts Zigbee status values into coordinator results.
- Zcl
- Trait for sending ZCL commands.
- Zdp
- Trait for sending ZDP requests.
Type Aliases§
- Read
Attribute Result - Result of reading an attribute.
- Write
Attribute Result - Result of writing an attribute.
- ZclResponse
- A deferred typed ZCL response.
- ZdpResponse
- A deferred typed ZDP response.