Awesome Open Source
Awesome Open Source

ESP32 HomeKit Accessory Protocol SDK for Arduino

This library provides the official ESP-IDF HomeKit SDK (#040b0f3) for ESP32 devices running the Arduino framework.

Note: This wrapper uses a version of the SDK which can't be used in commercial products due to it not being MFi certified, feel free to use it in your hobby projects though!


If you're using PlatformIO, update your platformio.ini file's dependancies or use the pio command in the directory containing your platformio.ini file:

pio lib install 'ESP32 HomeKit SDK for Arduino'

The packages uploaded to PlatformIO's repository and used by the Arduino IDE will contain the complete library, as the build script will be run before packaging. You can use the Arduino IDE to install the library by downloading the prebuilt ZIP file in the Releases section.


An example of implementing a basic fan accessory can be found in the examples folder. It's based off of the fan example from the origin ESP-IDF SDK.

As the Arduino style API wrappers haven't been implemented yet, if you have any questions or issues it's best that you visit the ESP-IDF HomeKit SDK repository for additional help.

Building From Source

Building outside of PlatformIO requires Python 3. Running the script will clone the ESP-IDF HomeKit SDK repository, place the required files in the correct directory structure and modify them to work with Arduino's build chain. The modified files aren't commited as I don't think I need to host copies of the SDK's source in this repository, or in a fork, since the changes for the port are minimal.

To Do

  • [ ] Add Arduino API wrappers to make it easier to use.



Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Python (1,147,256
Arduino (21,691
Iot (5,841
Esp32 (2,779
Arduino Library (1,471
Homekit (489
Esp32 Arduino (421
Esp Idf (412
Homekit Accessory (68
Homekit Accessory Protocol (51
Related Projects