luar123 / esphome_zb_sensor

Example of a zigbee sensor in esphome
35 stars 5 forks source link

[SUGGESION/DISCUSSON] Port/repurpose YAML Schema from the “Zigbee Home”or "zyaml" projects for native ESPHome integration? #27

Open Hedda opened 2 months ago

Hedda commented 2 months ago

Originally posted by @luar123 in https://github.com/esphome/feature-requests/issues/1397#issuecomment-2019064013

The zigbee part is currently hard-coded and included as a custom component including a task. Changing this to an external component with more configuration possibilities would be the next step.

@luar123 Hope it is OK with me reply a post with this question/suggestion//request here as an issue (as this repository to not have a GitHub Discussions section and the ESPHome feature request for Zigbee support has too many posts so this post would drown there).

Have you considered potential or get ideas from "Zigbee_home"? See:

and/or "zyaml" project's approach of YAML config for Zigbee devices? See:

Those are two very different project and the coding as well as the Zigbee specifications in both are really way over my head but as I understand the general idea of both projects is that the Zigbee device configuration are not hard-coded and can instead be configured via YAML:

“Zigbee Home” = While that project is still in very early development and only has some very few basic functionalities so far, the project concept at a high-level is to eventually provide similar ease-of-use and customizability features via YAML configuration as ESPHome. That is to allow users to use its CLI application to create and generating custom firmware images for DIY Zigbee devices using just YAML configuration (as long as support for the sensors already available in the underlying firmware):

zyaml = "This repository contains a YAML representation of the set of Zigbee™ specifications for the purposes of generating a Zigbee protocol stack implementation."

PS: ffenix113's initial goal of his project is currently only to support Nordic Semiconductor's nRF52 and nRF53 series of microcontrollers (like nRF52840 and nRF5340)

Hedda commented 1 month ago

Might you also be able to use the Connectivity Standards Alliance's project-chip (Matter) project's "ZAP" to generate clusters and attributes or other entities?

https://github.com/project-chip/zap

ZAP (which stands for "ZCL Advanced Platform" ) is a generic generation engine and user interface for applications and libraries based on Zigbee Cluster Library, the specification developed by the Connectivity Standards Alliance to configure Matter and Zigbee Pro applications.