Il y a cinq ans, j’ai écrit une série sur la mise en route de votre propre réseau d’information / domotique basé sur MQTT. Cinq ans, c’est long à l’époque de Hackaday. À l’époque, l’ESP8266 était beaucoup plus récent, et le port Arduino 8266 n’était pas encore entièrement en forme, et le cadre logiciel le plus simple pour mettre MQTT en marche était NodeMCU; c’est donc ce que j’ai utilisé pour la série d’articles, et par conséquent, une poignée d’appareils dans ma maison exécutent des modifications mineures de ce «bonjour monde» de base, mais en faisant des choses utiles.

Depuis lors, NodeMCU a changé un tas de ses bibliothèques et l’ESP32 a remplacé l’ESP8266 dans mon tiroir de pièces. Si vous essayez d’exécuter mon code, vous constaterez qu’il ne fonctionnera pas sur un ESP8266 sans porter ou compiler une ancienne version de NodeMCU de toute façon, et il ne fonctionnera pas du tout sur un ESP32. Lorsque [Chris Lott] a essayé de suivre mon guide, il a découvert que Micropython était probablement un meilleur choix de langage en 2021. Pour minimiser les lignes de code, je suis d’accord, bien que l’IDF natif d’Arduino et d’Espressif soit devenu le travail à peu près aussi. En bref, tout sauf NodeMCU.

Construit en une heure, a survécu pendant cinq ans.

Mais mon système domotique s’en moque. Ces petits gars fonctionnent 24 heures sur 24, 7 jours sur 7, retournant des bits comme si c’était encore 2016. Les thermomètres, les capteurs de lumière et les wattmètres n’ont pas beaucoup changé en cinq ans, et même si j’ai réorganisé la base de données, l’affichage et le contrôle par l’utilisateur d’un certain nombre Depuis lors, l’utilisation d’un protocole de transport de communication fixe signifie qu’ils parlent toujours la même langue. En effet, même si NodeMCU est mort pour moi, le contenu MQTT de ma série originale est toujours valide, et l’installation d’un courtier sur un Raspberry Pi n’est devenue plus facile qu’au cours des cinq années qui ont suivi.

J’ai donc un tas de code hérité en cours d’exécution dans les murs de ma propre maison, et cela me rend nerveux. Si les appareils échouent, ou peut-être lorsque ils finissent par échouer, ce ne sera pas «juste flasher un autre ESP8266 et le remplacer», car même si j’ai quelques anciens binaires NodeMCU assis, je sais quand jeter l’éponge. Mais il n’y a aucune bonne raison de les abaisser et de commencer à reflasher non plus. Sauf que cela me démange un peu, sachant simplement qu’il y a du code orphelin et sans issue qui tourne tout autour de moi. M’entourer. Regardant profondément dans le cœur de mon hacker.

Je sais mieux que de démolir un système en cours d’exécution, même si je pourrais le faire un appareil à la fois, et chaque module serait sûrement une solution simple et indépendante; même si j’aimerais avoir l’excuse de jouer avec Micropython et son implémentation MQTT sur l’ESP8266, ou peut-être même d’échanger certains d’entre eux contre des ESP32; même s’il s’agissait de hacks rapides temporaires qui ont duré cinq (5!) ans. Je sais certainement mieux, non? (Droit?)

LAISSER UN COMMENTAIRE

Rédigez votre commentaire !
Entrez votre nom ici