Open lucaci32u4 opened 9 months ago
Could sensor components be ported from ESPHome?
https://github.com/esphome/esphome
Also check out the code for the projects linked in this discussion:
https://github.com/ffenix113/zigbee_home/discussions/15
These DIY device projects use other custom Zigbee firmware with different sensors:
https://github.com/rbaron/b-parasite
https://www.tindie.com/stores/diyberk/
https://github.com/mattlokes/zwallremote
https://github.com/MattWestb/DIY-ZigBee-smoke-dektor
https://github.com/pvvx/ZigbeeTLc
https://www.zigbee2mqtt.io/supported-devices/#v=Custom%20devices%20(DiY)
Hello, Thank you for the question and interest in this project!
For now adding new sensors could fall into one of two categories based on the fact if the sensor is supported(or otherwise has drivers) for Zephyr:
In both cases the sensor should also have Zigbee cluster(s) defined, and that could also be something that should be implemented, if necessary cluster is not yet available.
I will add a section on support for new sensors and will update this issue to add a link to it.
Could sensor components be ported from ESPHome?
Not directly, at least. ESPHome uses C++, while currently this project is C. I also have plans to switch to C++ for zigbee_home, but have higher priorities for now. I think that with some compatibility layer from ESPHome it should be doable otherwise.
For near future this will be the doc on supporting new sensors: https://ffenix113.github.io/zigbee_home/sensors/supporting_new_sensors/
It is not complete, as I want to try and describe as much as possible related to supporting sensors, so keep an eye on updates.
Hi, I find your project really useful for building custom home automation on zigbee.
I'd like to contribute by implementing more sensor/actuator support. I'm especially interested in rotary encoders as sensors and light outputs. I suppose interrupt support for encoders would be useful, but will this break any other parts of the application?
Any pointers where I should start to look to implement these?