composants Home Assistant (Apple) "HomeKit"

8 minutes de lecture
Proconducteur: Home Assistant Communauté
Disponibilité: inclus dans leHUB personnel Home Assistant
catégorie: logiciel
typologie: composants Home Assistant
Difficultés de mise en œuvre: faible
Révision de la carte: 1.1

Le composant "HomeKit" (compris comme Apple HomeKit) de Home Assistant sert à exposer le entité présent en configuration Home Assistant vers leapp"Maison" indication de Appl'iOS /macOS.Apple logo

En pratique, les utilisateurs Apple que non vouloir utiliser leapp mobile de Home Assistant et voulez l'utiliser à la place (ou côte à côte, pourquoi pas) L 'app "Maison" de Apple pour vérifier le propremière domotique basée sur Home Assistant les autres ne doivent pas faire ça configurer ce composant.

Dans la pratique, c'est comme si Home Assistant devenir un BRIDGE/Gateway compatible avec Apples HomeKits.

Automatiquement - après une première, simple procedura - laapp "Maison" héritera de toutes les entités (lumières, interrupteurs, systèmes de climatisation, etc.) configurés à Home Assistant. Toute action effectuée par d'autres (ou par des automatismes en cours) sur les états de ces entités sera reflété sur les états à laapp "Home", et vice versa.
Si par exemple nous avons allumé une lumière moyens Home Assistant, cet élément appil s'allume immédiatement aussi surapp "Home", et vice versa.

Les entités exportables vers Appla "maison" ils sont différents: peuvent être des entiers domini (par exemple "toutes les lumières") ou des entités singole (par exemple "lumière de la cuisine"). Il est également possible de configurer sélectivement quoi exposer et quoi ne pas.

Questo componente c'est particulièrement utile à ceux qui possèdent un haut-parleur intelligent Apples HomePods et veulent vérifier le propremière domotique basée sur Home Assistant avec l'assistant vocal Siri (ou un appareil qui a toujours cet assistant, voir iPhone / iPad ou macOS dernières versions). Une fois que les entités ont été exposées Home Assistant à Apples kits d'accueil, en fait, Siri pourra automatiquement les "voir" et les gouverner.
Nous avons dédié ce thème spécifique un FOCUS spécifique.

ATTENTION. Ce composant il ne faut pas confondre avec le composant "iOS", Qui a un but complètement différent, à savoir faire en sorte que leapp "Home Assistant"Pour Appl'iOS réussir à se connecter correctement à notre Home Assistant et lui offrir le provotre fonctionnalité (définissez un "Device Tracker, notifications push etc.).

ATTENTION. Ce composant il ne faut pas confondre même pas avec le composant "Prise en charge du contrôleur HomeKit", Qui sert à assurer que Home Assistant reconnaître automatiquement tout appareil compatible Apples HomeKits et “les obtenir propri ”, leur permettant ainsi de s’enregistrer et de les vérifier.

INDEX

Exigences de base

Pour les utilisateurs de Home Assistant installé sur Raspberry en mode Raspbian +Home Assistant o HASSBIAN l'installation de la bibliothèque supplémentaire peut être nécessaire Avahi pour la compatibilité avec le service Apple Bonjour.

Pour l'installation, exécuter la commande:

sudo apt-get install libavahi-compat-libdnssd-dev

Utilisateurs de distribution HASSIO ils ne nécessitent aucune installation supplémentaire.

Configuration

Pour activer les fonctions du composant "HomeKit"Il suffit d'ajouter, dans le configuration di Home Assistant, le bloc minimal suivant:

homekit:

Après le redémarrage Home Assistant, sur le web frontend appune boîte contenant le code PIN dédié à Apples HomeKits:

Home Assistant - Code HomeKit

Maintenant, ouvrez leapp"Accueil" iOS et appuyez sur "Ajouter un accessoire».
Puis appuyez sur “Je n'ai pas de code"Et ensuite"Entrez le code».

Vous serez invité à entrer le code ci-dessus; insérez-le, puis attendez: à la fin du procedura, le entité (au moins, les personnes éligibles) de Home Assistant appils seront listés et contrôlés à “maison».

Personnalisation des composants

Le composant fournit divers champs pour personnaliser l'exposition (ainsi que le filtrage) des entités dans HomeKit.

homekit:
Autostart(Boolean, facultatif) Configurez l'intégration avec HomeKit comme automatique lors du démarrage Home Assistant (par défaut: true)
port(entier, optionnel) Définit le port tcp/ip sur lequel opérer le BRIDGE vers HomeKit (par défaut: 51827)
name(chaîne, facultatif) Définit le nom du BRIDGE presso l 'app Appla "Maison" (par défaut: "Home Assistant Bridge« ). Le nombre minimal de caractères est 3, le maximum 25.
ip_address(chaîne, facultatif) Spécifie l'adresse IP à utiliser (dans le cas où le périphérique qu'il héberge Home Assistant avoir plusieurs interfaces / IP) pour l'intégration
safe_mode(booléen, facultatif) Défini sur "true" en cas de proproblèmes lors de l'appariement avec leapp Appla "Maison" (par défaut: false)
filter(mappa, facultatif) Définit les entités et / ou domaines à inclure / exclure de l'exposition à HomeKit. En l'absence de ce bloc, Home Assistant expose tout ce qui est éligible.

include_domains(liste, facultatif) Répertorie les domaines à inclure
include_entities(list, facultatif) Répertorie les entités à inclure
exclude_domains(list, optionnel) Répertorie les domaines à exclure
excude_entites(list, optionnel) Répertorie les entités à exclure
entity_config(mappa, facultatif) Définit les personnalisations d’entités individuelles pour HomeKit. chaque nome_entità permet un propersonnalisation pria (par exemple light.cucina)

nome_entità
name(chaîne, facultatif) Le nom de l'entité à laapp Appla "maison"
code(chaîne, facultatif) Le code pour armer / désarmer un alarme ou ouvrir / fermer un verrou. Appéligible uniquement pour les entités de type "Alarm Control Panel" et "Lock" (par défaut: pas de code)
feature_list(liste, facultatif) Valable uniquement pour les entités de type "Media Player». La liste ne peut contenir que des éléments fournis dans la plate-forme utilisée (par exemple. "Broalink IR Media Player"Utilisé pour dominer la télévision, les systèmes hi-fi, etc.)

caractéristique(chaîne, demande) Nom de la fonctionnalité disponible pour l'entité en cours de personnalisation. Des exemples valides sont "on_off","play_pause"Etc.
type(chaîne, facultatif) Spécifie le type d'accessoire à soumettre. Appla "Casa" si l'entité de départ est de type "Switch». Les types valides sont "robinet", "sortie", "douche", "arroseur", "interrupteur" et "vanne".

HomeKit cache cette propropriété, donc si cette configuration est modifiée, de sorte qu'elle prend effet à Apples "Maisons" il est nécessaire de supprimer l'intégration (la BRIDGE) et le remettre.

Considérations diverses

ID ACCESSOIRE

Le composant utilise l'ID entité à Home Assistant générer un identifiant d’accessoire correspondant sur HomeKit auquel toutes les personnalisations peuvent être associées. Il va sans dire que un changement d'ID d'entité vous fera perdre à Home Assistant les personnalisations précédemment assignées par apppour aller à HomeKit.

LIMITE ACCESSOIRES

HomeKit accepte jusqu’à accessoires 100 pour BRIDGE. Ce qui est important à garder à l’esprit lorsque vous le faites provoir pour configurer les inclusions et les exclusions des domaines / entités en configuration.

STOCKAGE PERSISTANT

Malheureusement, HomeKit ne présente pas de stockage persistant, ce qui signifie que si au démarrage Home Assistant certaines entités ne sont pas encore proà utiliser (peut-être une intégration donnée commence-t-elle / fait-elle le point sur les composants), les entités Appla "maison" disparaître.

Pour éviter cela, il est conseillé de désactiver le démarrage automatique et de configurer les automatisations de manière à ce que le composant "HomeKit" ne démarre que lorsqu'il est réellement à l'heure.

Désactiver le démarrage automatique

Comme expliqué, il pourrait être utile de désactiver le démarrage automatique de ce composant:

homekit:
  auto_start: False

Pour démarrer le composant plus tard, vous pouvez utiliser le service "homekit.start».

Prenons l'exemple d'avoir entité basé sur l'intégration Z-Wave ce qui, tant que l'intégration ne fonctionne pas réellement, nous oblige à ne pas démarrer "HomeKit".

Une automatisation utile à cet effet pourrait être la suivante:

automation:
  - alias: 'Avvio HomeKit al momento giusto'
    trigger:
      - platform: event
        event_type: zwave.network_ready
      - platform: event
        event_type: zwave.network_complete
      - platform: event
        event_type: zwave.network_complete_some_dead
    action:
      - service: homekit.start

Comme on peut le constater, tous les événements liés au lancement de Z-Ware devraient être terminés. Par la suite, «HomeKit».

Il pourrait également être simplement utile de le démarrer après un temps donné:

automation:
  - alias: 'Avvio temporizzato di HomeKit'
    trigger:
      - platform: homeassistant
        event: start
    action:
      - delay: 00:05  # Attende cinque minuti
      - service: homekit.start

Filtrer la configuration

Comme prévu, en l'absence de filtres Home Assistant (en cas d'activation de ce composant) il ne fixe aucune limite et expose toute entité vers HomeKit.

Un exemple de type de configuration:

homekit:
  filter:
    include_domains:
      - alarm_control_panel
      - light
    exclude_entities:
      - light.cucina

Dans ce cas, sont inclus tout le "panneau de commande d'alarme" possible (alarme) et toutes les lumières; c'est exclu au lieu d'une seule lumière, celle de la cuisine.

Domaines / entités pris en charge sont les suivants:

composantstypologiedescription
alarm_control_panelSystèmes de sécuritéTous les systèmes de sécurité.
automation / input_boolean / remote / scene / scriptCommutateursTous les composants rappfait comme interrupteurs on / off.
binary_sensorSensoriPrend en charge les périphériques de type "co2","door","garage_door","gas","moisture","motion","occupancy","opening","smoke"Et"window». Tout le reste tombe dans le type "occupancy».
climatethermostatsToutes les entités de type climat.
coverOuverture de la porte de garageToutes les fermetures qui supportent "open"Et"close"Et ont"garage"Ça"device_class"Associé.
Darks finestraTous les axes qui supportent "set_cover_position».
Tous les axes qui supportent "open_cover"Et"close_cover«À travers mappdes valeurs (ouvert> = 50, fermé <50).
Tous les axes qui supportent "open_cover","stop_cover"Et"close_cover«À travers mappdes valeurs (ouvert> 70, fermé <30, arrêtez les valeurs de l’intervalle).
device_trackerSensoriSoutien pour i device de type "occupancy».
fanVentilateurs / ventilateursSupport pour "on/off","direction"Et"oscillating».
lightLuciSupport pour "on/off","brightness"Et"rgb_color».
lockserruresSupport pour "lock"Et"unlock».
media_playerLecteur multimédiaRappmontré comme une série de commutateurs qui supportent "on/off","play/pause","play/stop","mute"Basé sur"supported_features"Et les listes"mode”Fourni pour l'entité spécifique.
sensorSensorje de températureTous les capteurs thermiques qu'ils ont Celsius et / ou Fahrenheit comme unité de mesure.
Sensori d'humiditéTous les capteurs d'humidité dont le pourcentage est l'unité de mesure.
Sensori de la qualité de l'airTous les capteurs qui ont "pm25"Quel élément du procaractéristiques.
Sensori de monoxyde de carboneTous les capteurs qui ont "co"Quel élément du procaractéristiques.
Sensori de dioxyde de carboneTous les capteurs qui ont "co2"Quel élément du procaractéristiques.
Sensorje lumide brillanceTous les capteurs qui ont "lm"Ou"lx”Quels éléments du procaractéristiques.
switchCommutateursRappfait comme des interrupteurs. Ils peuvent être modifiés en tant que type en utilisant le champ de personnalisation "type».
water_heaterChauffe-eauTous les chauffe-eau.

Résolution de proproblèmes

Suppression du fichier .HOMEKIT.STATE

Dans le cas d' proproblèmes d'intégration, il est possible de revenir au point zéro simplement:

  1. puis l'arrêt Home Assistant
  2. supprimer le fichier .HOMEKIT.STATE
  3. redémarrage Home Assistant

Erreurs lors de l'appariement

Dans le cas d' proproblèmes lors de l'appariement entre Home Assistant et l 'applished ici Appla "maison", provoir comme suit:

  1. arrêt Home Assistant
  2. supprimer le fichier .HOMEKIT.STATE
  3. changer la configuration de Home Assistant (voir ci-dessous)
  4. recommencer Home Assistant

Proêtre modifié la configuration comme suit:

logger:
  default: warning
  logs:
    homeassistant.components.homekit: debug
    pyhap: debug

homekit:
  filter:
    include_entities:
      - demo.demo
NIP pour le jumelage non appsont

Vous avez peut-être déjà utilisé le couplage. Supprimer le fichier .homekit.state.

Home Assistant non appsont comme BRIDGE su Apple casa

C'est généralement un proproblème de réseau. Vérifiez que vous êtes sur le même réseau local que Home Assistant.
Provare aussi changer la default_port.

Home Assistant (sur Docker) pas appsont comme BRIDGE su Apple casa

Configurer network_mode: host

Home Assistant (sur VirtualBox) pas appsont comme BRIDGE su Apple casa

Configurez le mode réseau comme réseaubridge. Sinon, le BRIDGE ne sera pas exposé au réseau (et ne fonctionnera donc pas).

Le jumelage a échoué - erreur zeroconf

Si le jumelage échoue, il devrait appfaire une erreur NonUniqueNameException. Définir le mode "safe_mode».

L'appariement échoue - il ne fonctionne qu'avec la configuration de débogage

Cela ne fonctionne que si vous incluez l'entité demo.demo, mais échouez dans les conditions de configuration réelles.
Malheureusement, certaines entités (rares) ne fonctionnent tout simplement pas. Pour résoudre, il est nécessaire de discriminer les entités une par une jusqu'à ce que vous compreniez laquelle elle crée. proproblèmes, peut-être en utilisant des domaines pour simplifier la tâche.

L'appariement échoue mais sans erreur

Vérifiez que vous n’avez pas dépassé la limite des accessoires 100.

ID en double trouvés lors de l'ajout d'un accessoire

Deux entités partagent le même identifiant. Résoudre le proproblème ou d’exclure l’un des deux.

Erreurs d'usage ordinaire

Certains accessoires non appaiono, par exemple i Z-Wave

Voir ci-dessus sous "désactiver le démarrage automatique».

Une nouvelle entité Home Assistant non appsont en place Appla "maison"

Vérifiez que vous n’avez pas exclu de la configuration le domaine auquel appartiene. Vérifiez que, s'il est explicitement inclus, il est bien écrit.

Une entité est présente mais ne fonctionne pas

Malheureusement, certaines entités (rares) ne fonctionnent tout simplement pas. Pour résoudre, il est nécessaire de discriminer les entités une par une jusqu'à ce que vous compreniez laquelle elle crée. proproblèmes, peut-être en utilisant des domaines pour simplifier la tâche.

Tous les accessoires à Apples "Maisons" ne "répondent pas"

Vérifiez que vous n’avez pas dépassé la limite des accessoires 100.

L'accessoire ne répond pas - après le redémarrage ou update

Vérifiez que vous n’avez pas dépassé la limite des accessoires 100.

Certains accessoires ne fonctionnent pas de temps en temps

Malheureusement cela arrive. Il y a peu à faire. Habituellement, ils commencent à travailler seuls.


Home Assistant Logo officielATTENZIONE: rappelez-vous qu'il y a sur notre communauté FORUM une section ad hoc dédiée à Home Assistantpour tout doute, question, information sur le mérite spécifique de ces composants.


Veuillez commenter ci-dessous