- Suite à l’arrêt du service cellulaire du système d’interphone Doorking existant, l’ouverture du portail ne fonctionnait plus, ce qui a conduit à un hack matériel pour rétablir le contrôle à distance
- Mise en place d’un client du protocole Matter interopérable avec Apple Home, en utilisant une carte relais Wi-Fi ESP32 pour piloter directement la ligne de commande du solénoïde
- Un firmware en Rust a été conçu pour n’ouvrir le portail que pendant une durée déterminée, puis le reverrouiller automatiquement afin de préserver la sécurité
- Pour résoudre les conflits mémoire entre le Wi-Fi et le Bluetooth, les deux piles ont été rendues mutuellement exclusives, avec un fonctionnement optimisé en Wi-Fi seul après le provisioning
- Au final, le projet aboutit à une extension IoT discrète permettant de piloter le portail depuis un smartphone sans endommager le système existant
Projet de boîte à secrets : intégrer l’interphone d’un immeuble à Apple Home
- Le projet a commencé lorsqu’un interphone d’immeuble d’un ami, basé sur le système Doorking 1834-080, a cessé de permettre l’ouverture du portail après l’interruption du service cellulaire due à un manque de maintenance
- Les visiteurs ne pouvant plus demander l’accès par téléphone, une solution de hack matériel basée sur un ESP32 a été mise en œuvre pour ouvrir le portail à distance depuis Apple Home
Enquête initiale et premières tentatives
- L’inspection sur site a montré que le boîtier supérieur de l’interphone n’était pas verrouillé, ce qui a permis d’examiner sa structure interne, et que le routeur Wi-Fi/cellulaire utilisait encore le mot de passe par défaut
- Un vulnérabilité permettant de réinitialiser le mot de passe root a été découverte en téléchargeant le fichier de configuration du routeur, mais l’idée a été abandonnée en raison de la complexité liée à l’analyse du protocole série personnalisé du système
- Lors d’une deuxième tentative, l’auteur a essayé d’imiter un signal DTMF via la borne de ligne téléphonique (
PH LINE), mais l’expérience a été arrêtée car le boîtier de contrôle risquait d’ignorer les commandes lorsqu’il n’était pas en attente de réception
Troisième approche : contrôle au milieu du circuit
- En ouvrant la boîte de jonction située entre le boîtier vocal et le contrôleur principal, il a constaté que la ligne de commande du solénoïde qui actionne le verrou du portail y passait
- Le solénoïde a une structure simple : il s’ouvre lorsqu’il est alimenté et se verrouille quand l’alimentation est coupée, d’où l’idée d’alimenter directement le circuit pour ouvrir le portail
- Le plan consistait à récupérer une alimentation auxiliaire 12V DC depuis le boîtier vocal pour faire fonctionner une carte relais Wi-Fi ESP32, puis à l’intégrer à Apple Home
- Dérivation de la ligne de commande du solénoïde vers le relais ESP32
- Écriture du firmware en Rust pour fonctionner comme client du protocole Matter
- Conception d’un circuit permettant un contrôle en parallèle tout en conservant le fonctionnement normal du système existant
Configuration logicielle
- Connexion de l’ESP32 à Apple Home à l’aide d’une bibliothèque Matter basée sur Rust
- Une fois connecté au réseau, l’appareil ouvre le portail pendant une durée définie (10 secondes par défaut) lorsqu’il reçoit une commande, puis le reverrouille automatiquement
- Cela évite de laisser le portail ouvert trop longtemps et préserve la sécurité
- Code publié : GitHub - ImTheSquid/doorbell2
Problèmes de mémoire et solution
- En raison du manque de RAM sur l’ESP32, l’exécution simultanée des piles Wi-Fi et Bluetooth provoquait des corruptions mémoire et des redémarrages
- L’implémentation Matter utilisée reposait sur la pile Bluedroid, ce qui aggravait encore le problème
- La solution a consisté à activer le Wi-Fi et le Bluetooth de manière mutuellement exclusive et à appliquer dans le fichier de configuration (
sdkconfig.defaults) des options d’économie de mémoire
- Le Bluetooth n’est activé brièvement qu’au moment du provisioning, puis seul le Wi-Fi est utilisé, ce qui a stabilisé l’ensemble
- Dans Apple Home, le verrou du portail s’affiche correctement, et les informations du fabricant peuvent même être définies librement
Installation et résolution des problèmes d’alimentation
- La carte ESP32 s’insère parfaitement dans le boîtier de câblage et reste invisible de l’extérieur
- L’alimentation a d’abord été tirée depuis le boîtier vocal, mais cela ne fonctionnait pas ; un test temporaire avec une batterie de perceuse sans fil 20V a alors permis de valider le montage
- Après consultation du manuel, il s’est avéré que la borne 12V du boîtier vocal était une entrée
- Le problème d’alimentation a été résolu en ajoutant un régulateur redresseur convertissant l’entrée 18V AC en 12V DC
- Tous les composants ont ensuite été rangés à l’intérieur de la boîte de jonction pour finaliser l’installation
Résultat et portée du projet
- Grâce à Apple Home, il est désormais possible de contrôler le portail à distance depuis un smartphone, et les visiteurs peuvent aussi ouvrir à la fois le portail et la porte de l’appartement depuis l’application
- L’installation repose sur une structure discrète composée uniquement d’une carte ESP32 et d’un petit module d’alimentation, sans interférer avec le système d’accès existant
- En combinant un simple hack de circuit et une intégration fondée sur des standards ouverts, le projet constitue un exemple concret d’IoT pratique étendant les capacités d’un matériel existant
- Le projet a également permis d’acquérir de l’expérience en hack de circuits, et il reste facile à reproduire dans des environnements similaires
1 commentaires
Commentaires Hacker News
Plusieurs soulignent qu’il s’agit d’un comportement très ambigu sur les plans légal et éthique
Ils comprennent le fait de se raccorder au boîtier à l’intérieur de son propre appartement, mais jugent problématique de se brancher au contrôleur de la porte commune et de partager l’accès avec des amis
Le fait d’avoir tenté à plusieurs reprises d’éviter de se faire repérer laisse penser que l’auteur sait lui-même que c’est discutable
Ce type d’action peut également élargir la surface d’attaque numérique et créer des opportunités pour des actes malveillants
Il pourrait donc y avoir une part de responsabilité, avec d’éventuelles conséquences pénales et civiles
Cela dit, s’il s’agit de son propre bien et que toutes les parties concernées ont donné leur accord, modifier le système en se branchant sur les fils du solénoïde peut être acceptable
À leurs yeux, alimenter comme l’OP un fil de solénoïde exposé à l’extérieur n’a rien de bien grave
J’ai moi aussi mis en place une intégration Apple HomeKit assez simple
L’interphone est relié à une ligne fixe dédiée à la maison, qui bascule automatiquement sur une messagerie vocale, et ce message joue ensuite la tonalité qui ouvre la porte
L’alimentation est pilotée par une prise connectée : activée, l’entrée est immédiatement possible ; désactivée, elle est bloquée
Quand l’interphone appelle mon numéro VoIP, le visiteur doit saisir un code ; s’il est correct, le système envoie un DTMF 9 pour ouvrir la porte
Je reçois aussi des alertes par e-mail et SMS, et je peux émettre plusieurs codes pour savoir qui est entré
Je configurerais donc probablement la prise pour qu’elle s’éteigne automatiquement après la lecture du message vocal
J’ai eu le même problème et, après avoir cherché pendant plus d’un an, j’ai trouvé en Roumanie quelqu’un qui vend une carte issue de rétro-ingénierie
On peut l’installer pour moins de 30 euros, et l’approche est bricolée mais séduisante
Lien
Comme tirer l’alimentation depuis la ligne 24 V pouvait être considéré comme du « vol d’électricité », j’ai abandonné
Je suis finalement passé à Nuki Opener, bien plus stable et plus adapté à un usage familial
Les montages expérimentaux bricolés sont amusants, mais peu adaptés à un usage réel
À noter que le dépôt de code est ici : lien GitHub
Certains se disent surpris de voir à quel point l’écosystème des interphones est en retard aujourd’hui
Ils se demandent pourquoi il n’existe pas simplement un produit semi-intelligent capable d’annoncer quelque chose comme « le dîner est prêt »
Les produits radio bon marché sans marque ne gèrent même pas correctement la communication entre pièces, et au final la seule solution reste Asterisk avec des téléphones VoIP bas de gamme
Il permet d’envoyer et de recevoir de l’audio, ou d’en lire à la demande
Après avoir essayé diverses combinaisons avec Sonos, Wiim, Acrylic et d’autres, certains disent s’être finalement contentés de la qualité moyenne de Sonos
Dans certains interphones européens, il existe une solution appelée Doorman
Le protocole Koch a été rétroconçu puis implémenté avec ESP32 + Home Assistant, et la fonction mode fête s’est révélée utile lors d’événements
Site Doorman / Guide Ring-to-open
Quelqu’un a fait encore plus simple en donnant un numéro Twilio au gestionnaire de l’immeuble, puis en configurant dans l’application des réponses par code
Un code valide ouvre la porte via le DTMF “9”, tandis que “1” transfère l’appel vers son téléphone portable
Une personne raconte avoir connu une gêne similaire avec le contrôle du chauffage dans une résidence secondaire
Un thermostat mural sur batterie pilote le chauffage au sol par signal radio, mais pour le contrôle à distance il faudrait acheter un nouvel équipement à plus de 2 000 dollars
Il devrait suffire d’imiter le signal existant, mais la technologie est inutilement fermée, ce qui est frustrant
Elle en vient à se dire qu’il vaudrait presque mieux faire tourner la molette avec un actionneur télécommandé
Quelqu’un dit avoir utilisé Home Assistant pour enregistrer et rejouer des signaux afin de piloter des ventilateurs de plafond ou des appareils infrarouges
La plupart des chaudières n’ont besoin que de trois signaux simples : ventilation, chauffage et refroidissement
La marque propose des appareils qui appuient sur des boutons ou font tourner des tiges de stores, ce qui peut être adapté à une molette
Un ESP32 branché en parallèle sur la ligne de commande du solénoïde 24 V pourrait résoudre le problème
Quelqu’un plaisante en disant que, pour les invités de Frank, une simple clé maître Doorking 16120 suffit
Il raconte ensuite une anecdote de l’université, où son club d’électronique avait résolu un problème de porte d’entrée
Avec un Raspberry Pi + relais, ils avaient mis le circuit du bouton d’ouverture en parallèle, de sorte qu’une connexion SSH en Wi-Fi ouvrait la porte
Ils ne se sont finalement jamais fait prendre, et les preuves ont disparu lors de la rénovation du bâtiment
Certains rappellent qu’un relais peut tomber en panne
S’il dépasse son courant nominal, le relais peut rester collé
Utiliser deux SPDT en parallèle au lieu d’un DPDT crée aussi le risque que, si un seul fonctionne, la porte reste verrouillée
Il n’y a ni fusible ni snubber
À la place, quelqu’un recommande la gamme Relay In A Box — certifiée UL et CE, durée de vie de 10 millions de cycles, et compatible avec les inspections de conformité
Fiche technique / Page produit
Quelqu’un d’autre a fabriqué quelque chose de similaire
Lien du projet
Il a acheté un BTicino BT 344232 sur eBay pour 32 euros, a soudé quatre fils et ajouté un microcontrôleur
L’ensemble fonctionne désormais comme un interphone intelligent relié à Nuki Opener + MQTT Pub/Sub