Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for old HomeKit v1 BLE accessories #389

Open
th-in-gs opened this issue Dec 12, 2024 · 1 comment
Open

Support for old HomeKit v1 BLE accessories #389

th-in-gs opened this issue Dec 12, 2024 · 1 comment

Comments

@th-in-gs
Copy link

I have some old Eve accessories - a couple of Eve Homes and Eve Weathers - that I have been unable to pair. I did some digging and found that they seem to use the old v1 HomeKit BLE protocol, as described lightly here: https://gist.github.com/KhaosT/6ff09ba71d306d4c1079

Am I right in thinking that this old protocol is not supported in the BLE code currently?

Some example advertisements:

D9:BF:60:58: Eve Weather AdvertisementData(local_name='Eve Weather', service_data={'0000fed4-0000-1000-8000-00805f9b34fb': b'\xb3Pt\xda\xb3@\x01\x00\x01'}, service_uuids=['0000fed4-0000-1000-8000-00805f9b34fb'], rssi=-45)

D9:90:EC:30:50:8E: Eve Room AdvertisementData(local_name='Eve Room', service_data={'0000fed4-0000-1000-8000-00805f9b34fb': b'\xe0aoZ\xc7h\x01\x00\x01'}, service_uuids=['0000fed4-0000-1000-8000-00805f9b34fb'], rssi=-62)

Note the use of service_data rather than manufacturer_data (and, I am sure, myriad other differences when you get into doing anything).

@Jc2k
Copy link
Owner

Jc2k commented Dec 13, 2024

We only support the version of HomeKit over BLE that Apple documents in their semi public spec. I think that is indeed version 2.

Supporting another version is going to be tricky, the research that your link references got taken offline by Apples lawyers quite some time ago. The information that you found is not sufficient to work out the differences.

I don't have any Eve devices old enough to do any of this work myself. I think my oldest device is from 2017 and that works fine.

We do know that older Eve devices struggle to work at all under non Mac Bluetooth stacks. For one thing, they have too many characteristics and enumerating them on Bluetooth stacks like BlueZ is just too damn slow, and it hits internal timeouts trying to do so.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants