Avant de lancer la moindre impression et de commander quoi que ce soit, il y a une étape incontournable : choisir le matériel. Pas juste « prendre ce qui traîne dans le tiroir », mais vraiment réfléchir à ce que le projet demande — et ensuite choisir en conséquence. C’est ce qu’on a fait ici, et je vous explique chaque décision.

Le cerveau — ESP32 WROOM-32

Le projet demande trois choses en simultané : piloter des LEDs (243 au total), servir une interface web avec des animations en temps réel, et lire des sons synchronisés. Sur un microcontrôleur mono-cœur, c’est trop — l’interface rame dès que les LEDs bougent.

L’ESP32 WROOM-32 a deux cœurs. Un pour le serveur web et les WebSockets, l’autre pour les animations LED. Les deux tournent en parallèle sans se gêner. Il dispose aussi des GPIO 16, 17, 26 et 27 dont le projet a besoin pour les deux rubans LED et le module son.

Une conséquence directe de ce choix : l’ESP32 WROOM-32 est trop grand pour rentrer dans l’emplacement prévu dans le modèle 3D de la porte. Le fichier Printables prévoit un boîtier intégré à la base de la porte — mais pas pour un ESP32 de cette taille. C’est ce qui a amené l’idée du cartouche d’Abydos comme boîtier externe. Une contrainte qui est devenue une partie entière du projet (Partie 4).

Les LEDs — WS2812B 144 LED/m

Le ruban LED, c’est ce qui donne vie à la porte. J’ai choisi du WS2812B en 144 LED par mètre.

Pourquoi 144 et pas 60 ? Parce que l’effet de rotation — le point lumineux qui tourne pendant la composition d’une adresse — doit être fluide. À 60 LED/m, on voit les pixels sauter. À 144 LED/m, c’est continu. La porte fait presque 2 mètres de périmètre intérieur : la densité fait vraiment la différence visuellement.

Le ruban est découpé en deux circuits distincts :

Ruban chevrons (GPIO 16) — 27 LEDs en 9 groupes de 3, un par chevron. Les LEDs sont blanches ; les covers imprimés en PLA rouge transparent devant elles donnent le rouge de la série. C’est Lolonene qui a validé cette combinaison — ça fonctionne parfaitement.

Ruban anneau (GPIO 17) — 216 LEDs qui font le tour complet de l’anneau intérieur. Ce sont elles qui produisent le kawoosh, l’effet de surface ondulante de l’event horizon, et les reflets infinis dans le miroir.

Total : 243 LEDs.

Un détail qui n’apparaît pas dans les fichiers du modèle : l’électronique étant placée en bas de la porte, le ruban des chevrons démarre en bas et part en sens antihoraire. Résultat, les premières LEDs du ruban correspondent au chevron 4 en termes d’animation — pas au chevron 1. Le firmware intègre une table de correspondance pour corriger ça. C’est le genre de chose qu’on ne voit pas venir quand on travaille en simulation.

Pour relier les groupes de LEDs entre eux : des connecteurs JST 3 broches . J’ai pris des câbles de 15 cm — avec le recul, les 20 cm auraient été plus pratiques pour le routage dans la porte. Si vous répliquez le projet, prenez directement les 20 cm.

Le son — DFPlayer Mini et haut-parleur

Le son fait une énorme partie de l’immersion. Le DFPlayer Mini HW-247A est un petit module MP3 autonome : il lit des fichiers sur une carte micro-SD et pilote directement un haut-parleur. Deux fils série vers l’ESP32, et c’est tout. Pas de bibliothèque audio complexe, pas de codec externe.

8 sons sont stockés sur la carte SD — rotation de l’anneau, ouverture et verrouillage de chaque chevron, le son spécial du chevron 7 d’Abydos (extrait de la série), le kawoosh, l’ambiance de l’event horizon en boucle, la fermeture, et une alarme au démarrage. Chaque son est déclenché par le firmware au bon moment, synchronisé avec les LEDs.

Pour le haut-parleur, j’ai choisi un modèle 8Ω 1W en forme d’ellipse. Il sera logé dans la porte elle-même — la contrainte de place est donc la même. Il existe des modèles plus puissants, mais ils sont plus encombrants. Pour un effet sonore dans un salon, le 1W est amplement suffisant.

L’alimentation — 5V et le calcul

243 LEDs WS2812B en blanc pur à pleine puissance, c’est théoriquement 14,6 ampères. En pratique, on n’y arrive jamais — la luminosité est bridée dans le firmware, l’event horizon est principalement bleu (un seul canal sur trois), et le seul moment vraiment intense (le kawoosh) est limité dans le code pour protéger l’alimentation. En fonctionnement normal, on tourne autour de 4 à 5 ampères.

L’alimentation choisie est une 5V / 5A compacte. Le critère principal n’était pas uniquement la puissance — c’est la taille. Elle doit rentrer dans le cartouche d’Abydos avec tout le reste. Ce modèle spécifique a été choisi pour ses dimensions.

Les composants de protection

Quatre petits composants que beaucoup ignorent — et qui évitent bien des galères.

2 résistances 330Ω — une sur chaque ligne de données des rubans LED, placées au plus près du premier pixel. Elles protègent la première LED des réflexions du signal. Sans elles, le premier pixel peut clignoter ou claquer au bout de quelques semaines.

1 résistance 1kΩ — en série entre le GPIO 26 de l’ESP32 et le RX du DFPlayer. Recommandation du fabricant pour limiter le courant et réduire le bruit sur la communication.

2 condensateurs 1000µF 16V — un à l’entrée de chaque ruban LED. Ils absorbent les appels de courant brutaux quand les LEDs passent de l’état éteint à l’état allumé. Sans eux, l’alimentation décroche une fraction de seconde et les couleurs dérivent.

1 condensateur 100µF 16V — sur le VCC du DFPlayer. Il filtre le bruit haute fréquence sur l’alimentation de la puce audio, ce qui évite les bruits parasites pendant la lecture.

Et la règle d’or : toutes les masses GND reliées ensemble — ESP32, DFPlayer, rubans et alimentation partagent le même GND. Sans ça, rien ne fonctionne proprement.

Le bouton physique

Un bouton-poussoir 8mm sur le GPIO 0 de l’ESP32 permet de lancer une séquence sans passer par l’interface. Un appui court : séquence Abydos. Deux appuis : séquence Atlantis. Trois appuis : mode déco. Appui long : remise à zéro. Simple et pratique pour une démo rapide.

L’effet miroir infini

Le miroir infini, c’est ce qui donne l’impression que le vortex s’enfonce à l’infini dans la porte. Les LEDs de l’anneau sont prises en sandwich entre deux surfaces réfléchissantes — la lumière rebondit entre les deux et crée des reflets de plus en plus lointains.

Face arrière : un miroir rond de 50 cm (trouvé à l’Action, 8,95€) — c’est le vrai miroir, il renvoie presque toute la lumière.

Face avant : une plaque de plexiglas transparent GS 3mm découpée en cercle de 50 cm chez kunststofplaten.be (34,87€), avec un film miroir sans tain collé dessus — 11,95€. Ce film laisse passer une partie de la lumière (on voit l’effet à travers) tout en réfléchissant le reste vers l’arrière — c’est cette double réflexion qui crée la profondeur.


🚀 Chevron 2… enclenché.