rednblkx / HomeKey-ESP32

ESP32 HomeKit Lock with support for Apple Home Key
MIT License
182 stars 11 forks source link
apple apple-home-key arduino ecp enhanced-contactless-polling home-automation home-key homekit nfc

HomeKey-ESP32 Discord Badge

CI

ESP32 HomeKit Lock with support for the HomeKey

Credit to @kormax for reverse-engineering the Homekey NFC Protocol and publishing a POC and credit to @kupa22 for the research on the HAP side of things, this project was possible thanks to their work. Additionaly, thanks to the Arduino library HomeSpan for being a great library that eased my work on HAP and other things and allowed me to just focus on the homekey functionality.

Disclaimer

Use this at your own risk, i'm not a cryptographic expert, just a hobbyist. Keep in mind that the HomeKey was implemented through reverse-engineering as indicated above so it might be lacking stuff from Apple's specification to which us private individuals do not have access.

While functional, the project is still a work in progress so expect breaking changes as i'm figuring out how everything should fit together and the overrall structure of the code.

Overview

Right now only the PN532 is supported as the NFC module, however, beware of cheap clones espcially clones of Elechouse's as it will cause issues, i recommend the Elechouse PN532 NFC Module V3 just make sure to buy from a trusted vendor.

Goal of the project is to make it easy to add the homekey functionality to locks that don't support it or to anything for that matter :) .

Usage

Visit the wiki for documentation on the project