I have been playing with HE for about 3 weeks now and i am making some progress. My ultimate goal is Homekit integration of my zigbee devices. For the most part i have found drivers that do the trick, i have also written some drivers for specific devices and they do seem to work fine.
Now here is where i am getting lost: why are some devices listed as incompatible? What are the requirements for a driver in order to make a device compatible?
For example i have written a driver for a zigbee outlet - which has the following capabilities: Actuator, Configuration, Initialize, Refresh, Switch
this works great, and shows up as homekit compatible and i am able to control my device like a charm.
I am using community driver for my Aqara wall switches, which creates child devices for each button on the switch. These devices user a driver called "Generic child switch driver" (provided by the same person, who made the Aqara wall switch driver) - which is basically only a generic switch and it also incorporates the same capabilities (Actuator, Configuration, Initialize, Refresh, Switch) but the device is shown as incompatible?
If i switch the child device driver to something else (even a virtual switch) - then it shows as Homekit compatible, but of course my device is not working with that driver.
I searched through the documentation but i cant find anything that is a requirement that should be met, in order to make the device compatible. This really ties my hands now
@korgoth can you confirm (again) your driver works? and then post the code? That is the first time hearing you can write your own. My understanding is the same as:
Hm, but the parent device is an actual zigbee device! Then it seems i do need a better driver for it - that exposes it properly to homekit - and not via virtual devices :-/
And the devices i would like to get working are exactly QBKG03LM and QBKG04LM (single and double rocker wall switches). Can any of you guys recommend anything?
Community drivers for z-devices are supported for HomeKit integration (for now). In contrast, community devices for virtual devices (and child devices) are not. LAN devices would fall in the virtual/child category. Z-devices are the exception, not the rule.
But AFAIK, Hubitat doesn't have an Apple-certified HomeKit integration yet. So until that happens, I think a wait-and-see approach toward community drivers is prudent.