HomeKit & Thread : une sorte de standard… à la Apple

Avec la sortie du HomePod mini, Apple a ajouté une fonction à HomeKit : la prise en charge de Thread. Et quelques objets connectés en profitent.

Je vais essayer de résumer. Thread est un protocole réseau maillé qui se base sur IPv6. L’idée est que chaque périphérique dispose de son adresse et communique avec les autres appareils du réseau. C’est un réseau maillé dans le sens ou les commandes passent par différentes routes pour arriver à la cible, comme les ampoules ZigBee par exemple. Ce point implique deux choses. D’abord, chaque périphérique étend le réseau : si un nouvel objet ne capte pas le pont mais capte un autre objet, il peut faire passer le message par celui-ci. Donc ajouter des objets augmente mécaniquement la portée du réseau dans son ensemble. Le second point, lié, c’est que si un appareil est en panne, ne réagit plus, etc., le message peut passer par les autres, ce qui améliore un peu la fiabilité. Bon, il reste toujours un point faible actuellement dans les implémentations : il faut un point d’entrée sur le réseau classique et s’il tombe, ça ne marche plus. Ceci dit, il est possible d’avoir plusieurs ponts pour régler le souci. Thread fait partie d’une initiative plus large, CHIP (Connected Home over IP) qui est une association entre Google, Amazon et Apple (notamment). Il manque un F(acebook) et ça fait GAFA… (je déconne, je trouve ce nom ridicule).

De ce que j’ai pu comprendre, on peut utiliser Thread à travers différentes technologies (Wi-Fi, Bluetooth, ZigBee, etc.) mais l’implémentation actuelle est très limitée. En fait, les rares produits actuels utilisent des commandes HomeKit, Thread comme protocole pour le réseau et le Bluetooth LE comme technologie pour le transport lui-même. Et le seul point d’accès possible est le HomePod mini, en attendant un HomePod (2021). Les routeurs d’Amazon, les Eero Pro, sont par exemple compatibles Thread… mais pas avec les appareils actuels. Oui, pour une technologie qui unifie, c’est un peu bête.

Actuellement, il y a donc peu d’appareils compatibles Thread, et il faut un HomePod mini. Nanoleaf a sorti quelques objets, une ampoule et un bandeau, et Eve (ex-Elgato) propose quelques objets qui peuvent recevoir une mise à jour. Ce n’est pas encore déployé au moment d’écrire ces lignes, mais Eve Aqua, Eve Door, Eve Energy et Eve Thermo sont annoncés comme compatibles avec une mise à jour de firmware. Attention, il faut la dernière version matérielle des produits, la page explique comment le vérifier. En gros, les appareils achetés en 2020 devraient êtres compatibles, mais pas les vieux modèles.

Le HomePod mini

En pratique ?

Bon, c’est… compliqué. J’ai testé deux produits Nanoleaf, et j’aime bien la marque mais l’application est perfectible, pour être gentil. Dans les deux cas, j’ai tenté la mise à jour de firmware et j’ai eu les mêmes symptômes : une mise à jour lente, puis l’application qui indique que ça n’a pas fonctionné, me permet de réessayer… avec évidemment une erreur. Après passage dans Maison, j’ai pu vérifier dans les deux cas que la mise à jour était passée sans soucis.

Le bandeau


L’ampoule


L’app dit « C’est pas à jour »


Maison dit… « Si »

J’ai testé une ampoule Essential (E27) et un bandeau de LED. Dans les deux cas, impossible de savoir si on est en Bluetooth (classique) ou en Thread. Enfin, il y a une technique (dans la suite) mais par défaut, Maison n’affiche rien. Empiriquement, ça se remarque directement : en Bluetooth, on a une latence énorme à la première connexion, et une latence visible une fois que l’iPhone a réussi à se connecter au produit. Ma vidéo rapide le montre bien, c’est peu utilisable en l’état. Mon HomePod (standard) qui sert de hub était dans la pièce à côté, et du coup on a une solution qui réagit mal, comme souvent en Bluetooth.

Sans HomePod mini : pas de Thread

Pour activer Thread, il n’y a rien à faire de précis… à part mettre un HomePod mini. Visiblement, les appareils Nanoleaf se connectent directement en Thread ensuite. Bon, si vous me lisez régulièrement, vous vous doutez bien que je ne me suis pas arrêté là. Je l’ai dit, on peut voir facilement que ça fonctionne : pas de coupure, pas de latence, les appareils réagissent. Mais j’ai cherché un peu et grâce à un article de Nicolas Furno, je suis tombé sur une application qui permet d’afficher pas mal d’infos sur HomeKit : Home+ 4. C’est un peu cher (17 €) mais c’est complet. Et dans les options, on peut voir si les ampoules se connectent en Thread (ou pas).

Thread fonctionne


Avec HomePod mini (et la bonne app’) : Thread

Le principal défaut, une fois passé en Thread, c’est que si le HomePod mini est coupé, ça ne marche plus. Je n’ai pas trouvé comment repasser en Bluetooth classique quand il est coupé.

Si le HomePod mini est coupé, rien ne répond

Pour la portée, Thread doit améliorer la latence et la portée, car c’est un réseau maillé (mesh), donc si un périphérique est loin du pont, il peut passer par différents chemins. Et du coup, chaque appareil sert de répéteur, comme en ZigBee avec les ampoules Hue. Mais en pratique, je ne peux pas tester : avec deux lampes et un appartement trop petit pour arriver aux limites du protocole, je ne peux pas le montrer efficacement. Et j’ai bien un troisième appareil compatible, mais Eve n’a pas encore mis en ligne le firmware nécessaire.

Dans tous les cas, même si Apple fait du Apple (Thread est un standard, mais ça ne fonctionne qu’avec la domotique Apple et un pont Apple), Thread amène clairement un avantage évident par rapport au Bluetooth LE. Par contre, le ZigBee des ampoules Hue marche aussi bien avec à peu près les mêmes performances et les mêmes défauts (en gros, si le pont tombe, rien ne marche) et les périphériques Wi-Fi offrent en théorie la même chose, même si en pratique les performances dépendent énormément du réseau. Mais au moins Thread peut être déployé sur des appareils mobiles sur batterie, ce qui n’est pas réellement le cas en Wi-Fi.