The HomeKit component allows you to forward entities from Home Assistant to Apple HomeKit, so they could be controlled from Apple Home app and Siri.

Configuration Variables


(map)(Required)HomeKit configuration.


(string)(Optional)Pin code required during setup of HomeKit Home Assistant accessory. The format needs to be ‘XXX-XX-XXX’ where X is a number between 0 and 9.

Default value: “123-45-678”


(int)(Optional)Port for the HomeKit extension.

Default value: 51826


To enable the HomeKit component in Home Assistant, add the following to your configuration file:

# Example for HomeKit setup
  pincode: '123-45-678'

It is not recommended to choose ‘123-45-678’ as your pin code!

After Home Assistant has started, all supported entities (see the list below which components are already integrated) will be exposed to HomeKit. To add them:

  1. Open the Home App.
  2. Choose Add Accessory and then Don't Have a Code or Can't Scan?.
  3. The Home Assistant Bridge should be listed there. Select it and follow the instructions to complete setup.

After the setup is completed you should be able to control your Home Assistant components through Home and Siri.

Supported Components

The following components are currently supported:

Component Type Name Description
alarm_control_panel SecuritySystem All security systems.
climate Thermostat All climate devices.
cover Window All covers that support set_cover_position.
sensor TemperatureSensor All sensors that have Celsius and Fahrenheit as their unit_of_measurement.
switch/remote Switch All switches or remotes (represented as switches).

Currently only devices that are setup when Home Assistant is starting can be exposed to HomeKit. This means that especially Z-Wave components are currently not supported, since they will be setup afterwards. We are working on a solution for this problem.