Limit of Devices in Homekit?

Hello

i am adding all my sensors to Homekit as well and i am running into issues right now.
I do have exactly 149 devices by now and i cannot add any more.
Is this a coincidence or is there really a physical limit of 150?

Thank you!

I found this on the Apple Developer Forums.

There is a hard limit of 1000 accessories/home but your situation is more likely to be HomeKit hitting the CloudKit single record size limit (1MB). Currently there isn’t a way to workaround the problem since HomeKit syncs all of its data via a single CKRecord…

This was posted 4 years ago, so keep in mind things may have changed in that time. Although it appears to still be the accepted answer to this question.

1 Like

Hmm …
It is pretty strange from my side …
I have 148 devices and as soon as i add one more (just a temperature sensor configured as the previous ones) - no matter which one (i got plenty to embed still) it stops working immediately and everything goes offline until i comment the new item out.

i hope the developer can confirm or disprove this …
maybe there are only 148 things allowed per bridge?

EDIT: there must be some kind of limit. i commented out one working item and as soon as i did that i could adapt another one …

The docs tell you how to get extra logging from the openHAB add-on, which might offer a clue.

1 Like

Sounds like your running into the CloudKit single record size limit of (1MB). from what I’ve read on other posts, Other people experiencing this issue claim to have no more then 200 devices. and the issue seems to start around the 150ish devices. I would think that the way the Home app works all devices would need to be in the record for iCloud to be added, since the main device list most certainly lives in iCloud. Similar to the iCloud Photo Library, where the Main repository is stored in iCloud and all the other devices connect over the internet and sync up with it. unfortunately I am unsure of what data is actually stored in the record, but you might try to reduce the size of that record somehow. Possibly change long names to shorter ones, or maybe remove unused channels for devices.

Link to details about what is stored in this CKRecord appears to be located here

Some more details on limits are located here.

and if you can get ahold of a log file with an actual error code from HomeKit this link provides details on the error based on error Code.

One possible solution appears to be to use multiple hubs to connect to HomeKit. IE Run a second copy of OpenHab and add the additional devices to that “Hub” sounds like there may be a device max per hub of 100. Are all of your devices in OpenHab or are some connect to one of Apple’s Hub devices? so if you have 100 OpenHab devices and 48 connect to Apple’s Hub, then that would add up. I referenced this forum post for Home Assistant for this idea.

Hopefully this is helpful.

2 Likes

according to official homekit specification
https://developer.apple.com/homekit/specification/

a bridge/hub can have up to 150
“A bridge must not expose more than 150 HAP accessory objects.”

never tried myself. im over 100 but below 150.

the solution would be to expose several hub, 150 devices each. but this is not supported by homekit binding yet

1 Like

ok thank you - at least it’s clear now.
i will get rid of some sensors i guess.
it’s not worth the effort setting up a second system for me.