Intégation Netatmo via HomeKit

Bonjour,

J’ai des problèmes de latence trop importantes avec mes intégrations Netatmo.
Actuellement, j’utilise l’intégration Netatmo « webhook ». J’accède ainsi à mes 2 thermostats et à ma Prise Control Legrand.

Je voudrais passer ces 3 ponts en local, sur mon réseau wifi. J’ai lu que l’intégration « HomeKit » le permettait.
Mais je n’arrive pas du tout à intégrer ces ponts dans HA ! J’ai toujours le message :

J’ai regardé la doc de cette intégration et j’ai bien default_config dans mon fichier configuration.yaml.

Les 3 ponts sont bien sur le même réseau que mon NAS sur lequel tourne HA : mon NAS est branché sur le LAN de mon Google Wifi et mes 3 ponts sont sur le wifi du Google.

J’ai récupéré un vieil iPhone et j’ai appairé les 3 ponts avec leurs codes HomeKit sans problème.

J’ai ensuite supprimé les ponts pour tenter de les intégrer dans HA.

ET TOUJOURS RIEN !

Donc je sèche…
Un copain a fait une intégration HomeKit en 5’ avec une Prise Control Legrand sans aucun souci…

Comme je ne suis pas du tout familier avec Apple, je loupe peut être quelque chose d’évident.

Quelqu’un aurait une idée ??

Ma configuration


System Information

version core-2025.1.2
installation_type Home Assistant Container
dev false
hassio false
docker true
user root
virtualenv false
python_version 3.13.1
os_name Linux
os_version 5.10.55+
arch aarch64
timezone Europe/Paris
config_dir /config
Home Assistant Community Store
GitHub API ok
GitHub Content ok
GitHub Web ok
HACS Data ok
GitHub API Calls Remaining 5000
Installed Version 2.0.3
Stage running
Available Repositories 1499
Downloaded Repositories 10
Home Assistant Cloud
logged_in true
subscription_expiration 6 février 2025 à 01:00
relayer_connected true
relayer_region ap-southeast-1
remote_enabled true
remote_connected true
alexa_enabled false
google_enabled true
cloud_ice_servers_enabled false
remote_server ap-southeast-1-2.ui.nabu.casa
certificate_status ready
instance_id 3e94be1290c14ff4b3b9df3857eb1848
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Dashboards
dashboards 7
resources 3
views 1
mode storage
Recorder
oldest_recorder_run 3 janvier 2025 à 18:25
current_recorder_run 15 janvier 2025 à 01:23
estimated_db_size 74.06 MiB
database_engine sqlite
database_version 3.47.1
___

Hello,
Patience, nous allons sortir un article sur HomeKit ce vendredi….

1 « J'aime »

Merci @Argonaute !

Mais j’ai quand même pas mal potassé la doc « officielle », et je ne vois pas trop ce que je loupe…

En y réfléchissant cette nuit, le seul truc que je vois, c’est que HA ne trouve peut être pas les ponts sur le même réseau…

Mon installation est la suivante :

  • Box internet => Google Wifi (en ethernet)
  • Google Wifi => Switch => NAS Synology (en ethernet)
  • Google Wifi => 3 ponts Netatmo (en wifi, sur le réseau principal)

Et quand je regarde dans l’interface du Google Wifi, j’ai bien tout ce petit monde dans la liste.
J’ai aussi installé « All My LAN » sur mon PC (lui aussi branché en ethernet sur le switch), et je retrouve tout aussi…

Il faudrait que j’essaie de mettre du wifi sur mon NAS ?
(J’ai bien une clé wifi, mais je sens que ça ne va pas encore être une sinécure de faire ça… :grimacing:)

Bonne journée !

Il faut savoir que HomeKit utilise Bonjour de Apple pour la découverte des devices. Vérifie que ton NAS a le protocole bonjour activé. Ensuite si tu a des VLAN, il faut bien entendu un routage inter-VLan. Bonjour est basé sur mDNS (port UDP 5353, à vérifier) qu’il faut ouvrir. Ensuite il faut les ports https et enfin les ports spécifiques HomeKit (sauf erreur TCP 3689 et UDP 5350, à vérifier).
@mguyard, auteur de l’article Homekit, pourra peut-être t’apporter des précisions et autres pistes…

Bonjour,

Il y a plusieurs conditions à respecter dépendant des modules.
Je connais pas celui-ci spécifiquement mais certaines modules doivent avoir était associés une première fois à Homekit puis désassocié (pas reseté). Ensuite HA le voit.
A tester

Oui, j’avais déjà fait ça : appairer dans HomeKit puis supprimer le pont. Ca ne fonctionnait pas…

As tu essayé de voir si HA pouvait détecter les devices en Bonjour ?

Check that your device is visible with an mDNS tool. If you are comfortable with the command line you can run netdisco from your Home Assistant installation:

python3 -m netdisco
Discovered devices:
homekit:
[ {'host': '192.168.17.5',
  'hostname': 'Philips-hue.local.',
  'name': 'Philips hue - xxxx',
  'port': 8080,
  'properties': {'c#': '21',
                 'ci': '2',
                 'ff': '1',
                 'id': 'AA:BB:CC:DD:EE:FF',
                 'md': 'BSB002',
                 'pv': '1.1',
                 's#': '1',
                 'sf': '0'}},

netdisco is not used by Home Assistant to discover HomeKit devices, so if it can’t see your device the problem is more likely to be environmental than with Home Assistant itself.

De plus je vois que ton HA est en mode container. D’un point de vue réseau tu l’a déployé dans quel mode ? Car le problème peut venir de là

Bonjour @mguyard et merci pour tes réponses !

Je ne suis pas trop familier avec le Python et ne connais pas du tout netdisco… Je vais essayer de regarder ça…

Mais effectivement, mon HA est dans Container Manager. C’est aussi une découverte assez récente pour moi. Dans quoi peut-on regarder les paramètres réseau ?

Bonne journée,

Bonjour,

Il te suffit de lancer cette commande :
python3 -m netdisco
Et nous partager le retour.

Même chose pour cette commande : netstat -ulpna toujours depuis HA

Côté docker, si tu es dans le mode de réseau par défaut (bridge), il est possible que tu doivent exposer le port udp/5353 au même titre que tu as exposé le tcp/8123.
Je peux malheureusement pas te guide, ne connaissant pas docker dans syno
HA recommande d’utiliser le mode Host qui correspond mieux pour les containers et l’usage HA (et ne nécessite pas d’exposer les ports unitairement)

Vérifie aussi que ton wifi et ton switch ne fait pas d’IGMP snooping

Question supplémentaire, ton HA est connecté à plusieurs réseaux docker ?

Bon… C’est pas gagné… Je n’ai aucune idée de la façon dont on peut lancer une commande dans HA !
De ce que j’ai trouvé, il faut un add-on SSH. Mais comme mon HA est en Docker, je ne peux pas installer d’add-on.

J’ai également essayé d’ouvrir le port 5353 de mon conteneur HA. Mais ça ne fonctionne pas non plus :

J’ai un peu cherché, et je ne vois pas du tout ce qui peut utiliser le port 5353 !

Je vais attendre le tuto « HomeKit » qui doit sortir aujourd’hui. Mais je crains d’être toujours dans la soupe !

Le tuto t’apportera rien (je l’ai écrit donc connais le contenu) pour ton souci.
Je pense qu’il est dû à la façon dont ton docker est déployé. Vu que tu as déjà le port 8123 dans ta config docker je suis pas certain que tu sois en réseau host.

Tu as moyen de le voir dans ton syno ?
Vérifie que tu as bien la configuration tels que dans la doc officielle : Alternative - Home Assistant

Éventuellement si tu as un doute essaye de déployer un nouvel HA en suivant scrupuleusement la doc et voit si dans l’intégration HomeKit ça apparaît. Ca permettrait de cibler le probleme.

Et je me demande si c’est pas directement le syno qui écoute sur le port 5353 car il me semble qu’il supporte le protocole bonjour.
Dans ce cas, il faudra peut être faire le container en Macvlan pour que le container puisse avoir sa propre adresse IP dans le même réseau que le NAS et ainsi éviter les problèmes de port forwarding

Bonjour @mguyard

  1. Effectivement, mon HA est en bridge dans Container Manager :

J’avais essayé de changer ça il y a quelques temps, mais n’avais pas trouvé comment. Il faut faire une réinstallation complète ?

  1. Et effectivement encore, le NAS a le « service AFP » activé par défaut :

J’ai décoché cette case, mais j’ai toujours la même erreur de conflit…

Je vais essayer de faire une sauvegarde et de tout réinstaller proprement !

Avant de tout réinstaller, essaye d’en déployer un nouveau en Macvlan pour confirmer que les modules HomeKit apparaissent. Si ça marche, restore une config dessus

Et bien, un grand merci @mguyard !

Après avoir (péniblement) installé un nouvel Home Assistant en macvlan (merci ChatGPT…), j’ai mes « ponts » HomeKit qui apparaissent dès la 1ère connexion !

Je pense que je ne vais même pas faire une restauration… Je vais tout refaire proprement !

Merci beaucoup !

1 « J'aime »

Bon…
J’ai fais une grosse C… :grimacing:

J’ai voulu récupérer ce que j’avais fait dans mon ancien HA en restaurant sa sauvegarde sur le nouvel HA en macvlan que je venais de faire.
Toutes mes intégrations HomeKit sont perdues. Et elles sont liées à une version de HA qui n’existe plus.
J’ai bien une sauvegarde de mon « HA macvlan », mais je n’en ai pas copié la clé, donc je ne peux pas le réinstaller.
Je peux récupérer les clés HomeKit des thermostats Netatmo. Mais pas de ma Prise Control…

Donc j’ai bien l’impression que l’aventure HA s’arrête ici pour moi ! :expressionless:

J’ai pu refaire l’apparaige HomeKit de mes thermostats et de ma Prise Control Legrand.
Contre toute attente, les codes HomeKit de la Prise Control et d’un thermostat Netatmo ont fonctionné à nouveau, après de nombreuses tentatives.
Il a fallu que je réinitialise le 2ème thermostat.

Pour la Prise Control, j’ai contacté les hotlines de Legrand et d’Apple qui se sont gentiment renvoyer la balle. Je n’ai jamais eu un interlocuteur qui maitrisait la question… :upside_down_face:

Donc note pour plus tard :

  • TOUJOURS télécharger le fichier txt de sécurité pour les sauvegardes avant de faire une manipulation scabreuse (et faire une sauvegarde avant, évidemment)
  • c’est pas parce qu’un device est associé en HomeKit quelque part qui ne sera pas possible de faire un réemploi du code pour une nouvelle association

Mais j’avoue que j’ai un peu transpiré quand même ! :face_with_thermometer:

Sinon conclusion : l’intégration HomeKit pour Netatmo est un vrai bonheur !

  1. C’est du « local »
  2. C’est infiniment plus réactif que les associations cloud ou WebHook
  3. On récupère TOUT, y compris les remotes comme les commandes Home/Away, Jour/Nuit, Color…