Apple Opens HomeKit Accessory Protocol Specification to Non-Commercial Projects

HomeKit is a software framework that allows Apple users to control smart devices with their iPhone or iPad. But so far, you had to become an MFI licensee to design a HomeKit compatible device, you product had to be tested by Apple, and – according to a story on Hackster.io – also required a special cryptographic chip for authentication. Developers creating commercial devices still need to become an MFI license, but Apple has now opened HomeKit Accessory Protocol Specification for non-commercial projects, meaning you can now use the Framework on Arduino, ESP8266 boards,  Raspberry Pi, and other development boards using software authentication.

You could already use HomeKit on Raspberry Pi board previously using HomeBridge, but the advantage now is that you don’t need to breach Apple’s terms and conditions, and you can talk directly to your phone without the need for a bridge.

If you want the specifications got to HomeKit’s developer page, click on “HomeKit Accessory Protocol Specification”, login with your Apple ID, and download the specs after the following disclaimer and agreeing with a license agreement:

HomeKit Accessory Protocol Specification

(Non-Commercial Version)

This document describes how to create HomeKit accessories that communicate with Apple products using the HomeKit Accessory Protocol for non-commercial purposes.

Companies that intend to develop or manufacture a HomeKit-enabled accessory that will be distributed or sold must be enrolled in the MFi Program.

Continue to License agreement.

Thanks to Harley for the tip.

11
Leave a Reply

avatar
11 Comment threads
0 Thread replies
4 Followers
 
Most reacted comment
Hottest comment thread
6 Comment authors
easmemekaDeetscrashoverridetkaiser Recent comment authors
  Subscribe  
newest oldest most voted
Notify of
Paul M
Guest
Paul M

if you look at the more successful ecosystems, its those which make it easy for third party systems to connect.

if you became part of the Apple ecosystem, you’d be in danger of being “sherlocked”
http://www.economist.com/blogs/babbage/2012/07/operating-systems-0

tkaiser
Guest
tkaiser

@Paul M
Interesting reaction to Apple opening a protocol to 3rd parties answering with an article from 2012 mentioning problems dating back to 2002 that describe quite the opposite of what’s happening now 😉

crashoverride
Guest
crashoverride

This is one area where I really wish the industry and/or open standards would step up: a royalty free, non patent encumbered, secure, standardized protocol for IoT. While MQTT is commonly used as a transport, it has too many deficiencies for any “serious” applications outside hobby/experimentation.

You should not have to “throw your house away” if you wish to use products from Microsoft, Google, FutureCompanyHere. Furthermore, you should not have to pay royalties to Apple to make a light turn on and off in your home.

Deets
Guest
Deets

Not impressed. They should make it completely open and license/royalty free, everything except the trademark. You should be able to run homekit (call it something else) clients on android, etc…

I don’t think you can’t even get the lists of services and characteristics and push them into an open source bridge project without violating the license agreement.

memeka
Guest
memeka

Who would run a home automation device on android? And why? You’re asking to be hacked 🙂

Deets
Guest
Deets

@memeka
No, to control homekit devices from android devices using the homekit protocol. (Which is really just srp, jpake, and some schema).

memeka
Guest
memeka

Oh I see 🙂
Why would apple do that,
They opened up the protocol so you can connect to more HomeKit accessories but control from iOS. What would apple gain from you being able to control 3rd party non apple devices from non apple android devices?
It’s like complaining about Sony that they don’t make their TVs work with Panasonic remotes 🙂

Deets
Guest
Deets

memeka :
What would apple gain

That way of thinking is the problem, what is good for everyone is also good for them. They have other open source initiatives.

tkaiser
Guest
tkaiser

Deets :

That way of thinking is the problem, what is good for everyone is also good for them.

I think you totally miss the security aspect and that Apple tries to avoid bad press coverage. The average Android user hates security and secure devices (to ‘root my device’), the majority of Android devices never receives upgrades, only a really small percentage runs latest Android version and the ancient Linux kernels used on these devices contain maybe more security flaws than features.

You really do not want to run a ‘smart home’ controller on such a device if you care about such questions like who should be able to unlock the doors…

BTW: few days ago at Apple’s WWDC they told the smartphone I use will transform into an average Android device by the end of the year (the iPhone 5 I bought in Oct 2012 then will get no more iOS updates –> no security fixes any more after being fully supported for 5 years) so from then on I’m only able to use it internally (IP cam maybe) but not as a smartphone connected to the Internet any more.

eas
Guest

@Deets

I’ve been using Linux for over twenty years, and I’ve been running it on on “hacked” ARM devices for over a decade. I also use a Mac as my desktop/laptop and an iPhone as my mobile phone.

I think Apple did pretty much exactly what they should have done.

I use the iPhone and Mac because the hardware and software is well integrated and refined. Could it be better? Yes, but from what I’ve seen, pretty much everything sucks more. Some of the limitations on iOS and accessories rub me the wrong way, and I’ve considered getting a used Android phone for those limited and non-essential scenarios (like a portable USB borescope), but over all, I’ll take confidence in my phone and official 3rd party accessories over lower prices and more flexibility — my time is worth something, and it is also worth something to reducing the risk that I’ll end up wasting time because something I depend on doesn’t work right.

On the other hand, I do wish it was easier to integrate little IoT hacks with HomeKit. By releasing the protocol specs, Apple has made HomeKit hacking easier and easier to make it robust. By limiting to non-commercial use, they’ve helped ensure that their customers don’t buy a poorly designed and implemented HomeKit hack masquerading as a commercial product.

If I have to load a HomeKit enabled firmware onto a non-MeFi certified 3rd party device to get functionality I want at a price I want, I’m fine with that, especially if it means I don’t have to support my in-laws because they unknowingly bought a sub-par, uncertified commercial 3rd party device.

crashoverride
Guest
crashoverride

Homekit is dead!
https://www.bluetooth.com/what-is-bluetooth-technology/how-it-works/le-mesh

After reading the “Mesh Technology Overview”, this is exactly what is needed. It also obsoletes MQTT, Z-WAVE, and several other technologies.