Intégration de HomeKit avec Home Assistant

Ce guide explique les différentes méthodes d'intégration de HomeKit avec Home Assistant. Que l'on soit ou non utilisateur Apple, HomeKit peut vous rendre bien des services, et permettra d'étendre les capacités de votre système.
Intégration de HomeKit avec Home Assistant

Sommaire

Introduction

Que vous soyez ou non un utilisateur de l'écosystème Apple, l'utilisation de Homekit peut vous ouvrir des portes.

HomeKit est une plateforme de domotique d'Apple qui permet de contrôler et gérer les objets connectés via des appareils Apple, en utilisant l'application "Maison". Elle permet de créer des scènes, des automatisations et de gérer des appareils comme les lumières, thermostats et serrures, souvent avec les commandes vocales de Siri.

Compatible avec le protocole Matter, HomeKit offre des fonctionnalités avancées et peut être intégré avec Home Assistant via des ponts et contrôleurs, permettant de gérer des appareils non compatibles directement.

Dans cet article, nous verrons 2 cas d'usage différents

Multipliez les possibilités
  1. Intégration de vos équipements Home Assistant dans l'application Maison d'Apple (HomeKit Bridge)

Cela vous concerne si vous êtes un utilisateur de l'écosystème Apple et de l'app Maison d'Apple, et que vous souhaitez connecter votre Home Assistant avec HomeKit : vous pourrez utiliser dans HomeKit, tous vos équipements domotiques présents dans Home Assistant, même ceux qui ne sont pas compatibles HomeKit nativement.

Imaginez pouvoir contrôler vos lumières Zigbee, vos thermostats Z-Wave, ou vos appareils Bluetooth directement depuis l'application Maison d'Apple et utiliser Siri pour les commander. Cela ouvre plus de possibilités d'équipements intégrables à HomeKit et surtout à un prix généralement bien inférieur à équipements compatibles HomeKit.

  1. Intégration des appareils compatibles HomeKit dans votre Home Assistant (Homekit Device)

Même si vous n'êtes pas utilisateur de l'écosystème Apple, vous pourriez avoir des équipements qui ne supportent pas vos protocoles domotiques habituels (Zigbee, Z-Wave, etc) mais qui supportent HomeKit. C'est donc votre porte d'entrée pour intégrer ces équipements dans votre Home Assistant.

C'est équipements, peuvent être des modules domotiques ou encore des hubs. C'est le cas de la Somfy Tahoma Connectivity Kit qui permet d'intégrer facilement vos équipements IO dans Home Assistant. Ce cas d'usage Somfy est décrit dans l'article.

HomeKit Bridge

Description et Objectif

L'intégration HomeKit Bridge permet de rendre les entités de votre Home Assistant disponibles dans Apple HomeKit, même si ces appareils ne supportent pas nativement HomeKit. Cela signifie que vous pouvez contrôler vos appareils directement depuis l'application Maison d'Apple et utiliser Siri pour les commander.

Méthodes de configuration

Il existe deux méthodes pour configurer Homekit Bridge :

  • via l'interface Web
  • via la configuration en YAML
Méthode de Configuration Avantages Inconvénients
Interface Web Facilité d'utilisation et guidage étape par étape. Pas besoin de connaissances en YAML. Limitations dans les personnalisations avancées.
YAML Personnalisation avancée et flexibilité. Utilisation du YAML pour les non initiés.

Installation

Il vous suffit de cliquer sur le badge ci-dessous pour installer HomeKit Bridge dans votre Home Assistant

Open your Home Assistant instance and start setting up a new integration.

Configuration via l'Interface Web de Home Assistant

Suivez les instructions à l'écran pour compléter la configuration. Sélectionnez les entités que vous souhaitez inclure et procédez au pairing avec l'application Maison d'Apple.

Configuration via le Fichier configuration.yaml

Ajoutez la ligne suivante dans le fichier configuration.yaml pour inclure le fichier homekit.yaml que nous allons créer ensuite :

homekit: !include homekit.yaml

A ajouter dans votre configuration.yaml

  1. Créez un fichier homekit.yaml au même niveau d'arborescence que le fichier configuration.yaml, avec les configurations nécessaires, par exemple :
- filter:
    include_domains:
      - alarm_control_panel
      - light
      - media_player
    include_entity_globs:
      - binary_sensor.*_occupancy
    include_entities:
      - binary_sensor.living_room_motion
  entity_config:
    alarm_control_panel.home:
      code: 1234
    binary_sensor.living_room_motion:
      linked_battery_sensor: sensor.living_room_motion_battery
      low_battery_threshold: 31
    light.kitchen_table:
      name: Kitchen Table Light
    lock.front_door:
      code: 1234
    media_player.living_room:
      feature_list:
        - feature: on_off
        - feature: play_pause
        - feature: play_stop
        - feature: toggle_mute
    switch.bedroom_outlet:
      type: outlet
    camera.back_porch:
      support_audio: True
    sensor.some_co_sensor:
      co_threshold: 1000
    sensor.some_co2_sensor:
      co2_threshold: 1000

Exemple de configuration HomeKit à adapter à votre besoin

  1. Redémarrez votre Home Assistant pour appliquer les modifications.

Explication de l'exemple

Dans cet exemple, on distingue 2 parties, filter et entity_config.

filter permet de configurer les filtres permettant de définir les entités qui seront envoyées dans HomeKit. Il existe 6 types de filtres (3 includes et 3 excludes). Ils sont décrits dans la documentation officielle de l'integration que je vous invite à lire pour personnaliser la configuration à vos besoins. Prenez aussi en compte l'ordre d'application des filtres, détaillé ici.

entity_config permet de configurer spécifiquement une entité avec des configurations optionnelle pour HomeKit. Il faut que l'entité soit incluse dans Homekit et donc doit correspondre aux filtres mis en place. Les configurations possibles sont dépendantes du type d'entité et sont décrites dans la documentation officielle de l'integration que je vous invite à lire pour personnaliser la configuration à vos besoins.

⚠️
Homekit Bridge supporte un grand nombre de domaines qui sont listés ici, mais pas tous.
Je vous invite aussi à prendre connaissance des considérations à connaitre.

Pairing avec l'Application Maison

  • Une fois la configuration effectuée, vous devriez avoir une notification dans l'interface web de Home Assistant qui affichera un code QR et le code PIN.
Notifications
HA - HomeKit QR Code d'appairage
  • Ouvrez l'application Maison d'Apple, cliquez sur Ajouter un accessoire, scannez le code QR ou sélectionnez Plus d'options et choisissez Home Assistant Bridge.
  • Confirmez que vous ajoutez un "Uncertified Accessory" en cliquant sur Add Anyway.
  • Entrez le code PIN (si vous n'avez pas scanné le code QR).
  • Suivez les instructions pour compléter la configuration et placer vos équipements dans les bonnes pièces

HomeKit Device

Description et Objectif

L'intégration HomeKit Device permet de connecter des accessoires compatibles HomeKit directement à votre Home Assistant. Cela vous permet de gérer ces appareils à partir de l'interface de votre Home Assistant.

Cela permet de centraliser l'ensemble de vos équipements dans Home Assistant, mais aussi de pouvoir profiter des automatisations Home Assistant qui permettent beaucoup plus de possibilités que les automatisations HomeKit.

Installation

Il vous suffit de cliquer sur le badge ci-dessous pour installer HomeKit Device dans votre Home Assistant

Open your Home Assistant instance and start setting up a new integration.

Considérations préalables

Il est essentiel pour réussir l'intégration de votre équipement HomeKit dans Home Assistant :

  • d'avoir le code d'appairage de l'équipement. Le code se trouve sur l'appareil lui-même ou sur l'emballage. Si votre appareil est équipé d'un écran, il peut s'afficher à l'écran.
  • que l'équipement est allumé
  • que l'équipement est sur votre réseau et n'est pas déjà appairé avec un autre contrôleur HomeKit.
    • Si votre appareil n'est pas déjà dans votre réseau : connectez l'appareil à votre réseau en suivant la documentation de votre équipement
      • Si l'appareil est uniquement compatible HomeKit, associez-le à l'application Apple Home, puis suivez l'étape suivante.
    • Si votre appareil est dans votre réseau, mais est associé à un appareil Apple via HomeKit : supprimez l’appareil de l’application Apple Home, sinon vous ne pourrez pas l'appairer à Home Assistant.
💡
Explication :
Ajouter l’appareil à l’application Home, puis le supprimer à nouveau, a deux effets :
- L’appareil est ajouté à votre réseau. Il reste dans le réseau même après l’avoir supprimé de l’application.
- Supprimer l’appareil de l’application permet de l’associer directement à l’intégration des appareils HomeKit de Home Assistant. Les appareils HomeKit ne peuvent être associés qu’à un seul contrôleur à la fois.

Configuration

ℹ️
Afin que votre équipement HomeKit soit détecté par Home Assistant, HA doit utiliser le Zero-configuration Networking (zeroconf). Si vous n'avez pas l'intégration default_config, ajoutez zeroconf à votre fichier configuration.yaml.
  1. Naviguez vers Paramètres > Appareils et services et ajoutez l'intégration HomeKit Device qui vous doit vous être proposé.
Découverte HomeKit
  1. Entrez le code d'appairage de l'appareil HomeKit et ajoutez-le à une pièce spécifique.
💡
Vous pouvez utiliser les deux intégrations ensemble (HomeKit Device et HomeKit Bridge) pour avoir des équipements supportant ou non HomeKit nativement disponibles à la fois dans votre Home Assistant et dans l'application Maison d'Apple.

Cela signifie que vous pouvez prendre des appareils HomeKit, les intégrer dans votre Home Assistant via HomeKit Device, et ensuite les exporter vers HomeKit via HomeKit Bridge.

Cette approche vous permet de profiter de la flexibilité et de la puissance de votre Home Assistant tout en conservant l'expérience utilisateur fluide d'Apple.

Cas pratique du Somfy Connectivity Kit

Les possesseurs d'équipements IO savent à quel point c'est compliqué ou impossible d'intégrer ces équipements dans Home Assistant, et encore plus sans utiliser du cloud.

Somfy vend pour une soixantaine d'euros, une box (Hub) domotique minimale (kit de connectivité) compatible IO et RTS pour des équipements Somfy et Velux.

Somfy Connectivity Kit

Une nouvelle box domotique alors que j'utilise Home Assistant ? Vraiment ?

En fait ce qui est intéressant avec cette box domotique, c'est que l'intégration IO qui est compliqué/impossible à faire avec Home Assistant, va être prise en charge par cette box (maximum 20 équipements). Et celle-ci va pouvoir ensuite communiquer avec Home Assistant via HomeKit puisque la Somfy Connectivity Kit est compatible HomeKit.

Donc en associant la Somfy Connectivity Kit avec Home Assistant au travers de l'intégration HomeKit Device, chacun des équipements ajoutés à la box Somfy, seront intégrés à Home Assistant. Aussi simple que cela !

Vous voyez donc que l'utilisation de HomeKit n'est pas nécessairement liée à l'environnement Apple et peut vous permettre des facilités d'intégration dans Home Assistant, dès lors que vous avez un équipement qui supporte le HomeKit.

Intégrez IO dans Home Assistant

L'accès à distance avec HomeKit, ce qu'il faut savoir

Pour accéder à distance à vos appareils publiés dans HomeKit, il est essentiel de configurer un concentrateur (ou Home Hub) qui servira de lien entre votre Home Assistant et internet.

ℹ️
La communication depuis l'extérieur de votre réseau, entre le concentrateur et votre équipement Apple utilisant Maison (ex. iPhone) transite par iCloud.
La communication n'est donc plus locale.

Qu'est-ce qu'un Concentrateur Home ?

Un concentrateur Home (ou Home Hub) est un appareil qui permet de contrôler vos appareils HomeKit à distance. Il doit être connecté au même réseau que votre Home Assistant et rester allumé pour fonctionner correctement.

Appareils compatibles

Les appareils suivants peuvent agir comme concentrateurs Home :

  • Apple TV 4K
  • HomePod et HomePod Mini
  • iPad (si vous n'avez pas les autres options)

Fonctionnement du concentrateur

  • Le concentrateur est connecté à votre réseau interne et à votre compte iCloud. Cela permet de relayer les informations entre vos accessoires HomeKit (Home Assistant compris) et vos appareils Apple (iPhone, HomePod, iPad, etc.) via internet.
  • Lorsque vous configurez un HomePod, un HomePod Mini, ou une Apple TV, ils deviennent automatiquement des concentrateurs une fois connectés à votre réseau interne et à votre compte iCloud.
  • Pour un iPad, il faut activer manuellement la fonction de concentrateur dans les réglages > votre nom > iCloud > Maison, puis dans les réglages > Maison > Utiliser cet iPad comme concentrateur

Que faire en cas de problèmes ?

La mise en place et l'utilisation des deux intégrations HomeKit sont très simples dans la majorité des cas.

Toutefois, sur des environnements un peu plus complexes que d'habitude, vous pourriez être confronté à quelques soucis.

Faites attention à votre réseau

Le protocole Bonjour (udp/5353), développé par Apple, joue un rôle crucial dans la découverte et la communication entre les appareils HomeKit.

Bonjour fonctionne principalement dans le même réseau local (LAN) et ne traverse pas les routeurs par défaut, ce qui signifie qu'il ne peut pas fonctionner correctement si les appareils sont sur des réseaux différents.

Dans cet article, nous allons permettre à Home Assistant d'être un Hub HomeKit. Il est donc nécessaire que votre Home Assistant soit dans le même réseau que vos équipements natifs HomeKit ainsi que de votre ou vos concentrateurs Home.

💡
Pour les utilisateurs avancés :
Il est possible au travers d'équipements spécifiques (routeurs, firewalls, etc...) de pouvoir relayer les trames Bonjour d'un réseau à un autre pour pouvoir utiliser des réseaux différents pour votre Home Assistant, vos concentrateurs Home ainsi que vos équipements natifs HomeKit.
Cette possibilité n'est pas abordé dans cet article et je pars du principe que tout est dans le même réseau (cas le plus courant).

Dans le cas d'utilisation de Home Assistant Container, pensez à exposer le port UDP/5353 ou passer en MacVLAN si votre serveur docker utilise déjà ce port (comme le NAS Synology par exemple).

Ressources

Chacune des intégrations propose des premières pistes d'analyses :

et la documentation est très complète et regorge d'informations utiles.

👋
Et le forum HACF est aussi là pour vous aider...

Confidentialité des échanges

Cette illustration représente les communications locales et externes du contenu de cet article. Comme vous pouvez le voir, les communications sont locales hormis si vous êtes à l'extérieur de votre réseau (car elles transites par iCloud pour ne pas exposer de services et rendre plus simple l'accès depuis l'extérieur).

Confidentialité des communications

Conclusion

L'intégration de HomeKit dans votre Home Assistant offre une flexibilité et une puissance considérables pour gérer vos appareils intelligents. En suivant les étapes de configuration pour les intégrations HomeKit Bridge et HomeKit Device, cela vous permet de combiner le meilleur des deux mondes : la simplicité et l'écosystème fluide d'Apple, avec la puissance et la flexibilité de votre Home Assistant.

N'hésitez pas à explorer davantage les possibilités offertes par ces intégrations et à partager vos expériences dans la communauté HACF.