Realizziamo delle luci per l’albero di Natale controllabili via smartphone o PC e integrabili in sistemi di domotica come Home Assistant, tutto grazie alla scheda ESP32 e al firmware WLED.
Il Natale รจ sicuramente la festa piรน amata da tutti.
Come tanti in questo periodo, anche noi stavamo pensando a come addobbare le nostre case, con alberi pieni di luci e festoni ai balconi.
Ci sono venute in mente quelle case americane che si vedono spesso sui social, piene di luci che lampeggiano e cambiano colore seguendo una musica.
Ottenere un effetto simile per il nostro albero di Natale sembra complicato, ma con i progressi della tecnologia รจ diventata una cosa alla portata di tutti. In questo articolo costruiremo delle luci per lโalbero di Natale che sono in grado di cambiare colore e di creare giochi di luce molto suggestivi.
Queste luci possono essere controllate dal nostro smartphone o PC, con cui possiamo accenderle, cambiare il colore e scegliere gli effetti tra una lunga lista, oltre che impostare degli orari per lโaccensione e lo spegnimento automatici e farle illuminare seguendo la musica.
I LED indirizzabili
Per controllare un diodo LED con Arduino, dobbiamo utilizzare un pin della scheda.
Di conseguenza, se volessimo decorare un albero di Natale, ci ritroveremmo con un elevato numero di cavi.
Un’alternativa รจ utilizzare le strisce LED RGB che, sfruttando la combinazione di tre LED, rosso, verde e blu, generano luce di qualsiasi colore.
Tuttavia, esse mostrano un unico colore lungo tutta la striscia, poichรฉ tutti i LED sono collegati in parallelo.
Fortunatamente, negli ultimi anni, si sono diffusi sempre di piรน i LED individualmente indirizzabili.
I LED di questo tipo, montati su strisce (Fig. 1), catene o pannelli, sono in grado di riprodurre ciascuno un colore diverso, pur essendo collegati da soltanto tre cavi: due per lโalimentazione e uno per i dati.

Fig. 1 Striscia a LED indirizzabili.
In particolare, come si vede in Fig. 2, ognuno dei LED ha allโinterno un chip, che controlla tre diodi LED โ uno rosso, uno verde e uno blu โ grazie ai quali si possono produrre tutti i colori dellโarcobaleno.

Fig. 2 Il LED utilizzato nelle strisce.
Il chip ha due pin a cui portare lโalimentazione, solitamente a 5V, e due pin chiamati Din e Dout, rispettivamente lโingresso e lโuscita dei dati.
Lโingresso dei dati del primo LED รจ collegato a un microcontrollore che puรฒ essere Arduino, Raspberry Pi, un ESP8266 o un ESP32, che รจ quello che useremo per questo progetto.
Lโuscita dei dati del primo LED รจ collegata allโingresso dei dati del secondo LED, e procedendo in questo modo si possono collegare centinaia di LED a un unico cavo per i dati.
Questo costituisce uno dei punti di forza dei LED individualmente indirizzabili, rendendo il cablaggio estremamente semplice.
Quando una striscia di LED individualmente indirizzabili รจ collegata, ad esempio, a una scheda Arduino, il codice caricato su di essa รจ in grado di controllare il colore e lโintensitร luminosa di ciascuno dei LED attraverso una apposita libreria (le piรน comuni sono โAdafruit Neopixelโ e โFastLEDโ).
Ciรฒ รจ possibile perchรฉ, partendo dal primo LED collegato al microcontrollore, i LED si danno automaticamente un indirizzo, che parte da zero con il primo LED e va avanti man mano che si aggiungono altri LED.
Questa caratteristica dร grande flessibilitร nellโutilizzo di queste strisce LED, rendendo possibile creare installazioni luminose di grandi dimensioni.
I piรน comuni tra i LED individualmente indirizzabili sono i WS2812B, dal nome del chip che utilizzano, che funzionano a 5V, ma ne esistono anche altri tipi, ognuno con caratteristiche diverse.
Ad esempio, i WS2811 funzionano a 12V, mentre gli SK6812 contengono anche un LED bianco, per riprodurre meglio questo colore, diventando piรน adatti per lโilluminazione.
Per il nostro albero di Natale useremo una striscia di LED individualmente indirizzabili lunga 5 metri, acquistabile da Futura Elettronica con il codice STRIP300LED.
Questa striscia ha 60 LED WS2812B per metro che ne garantiscono un’ottima luminositร .
La striscia LED ha allโesterno una guaina in silicone, che la rende adatta per essere usata allโesterno, ad esempio per decorare un balcone, a patto di proteggere adeguatamente dalla pioggia e dagli agenti atmosferici anche i collegamenti, lโelettronica che la controlla, lโalimentatore e la connessione alla rete elettrica.
Questa striscia LED si puรฒ anche tagliare a misura per installazioni piรน particolari.
Ci basterร seguire la linea che divide ogni LED e tagliare la PCB con delle forbici.
Si possono poi saldare tre cavi ai pin che troviamo alla fine di un segmento di striscia LED, per collegarli ai pin allโinizio di un altro segmento.
Facendo ciรฒ, perรฒ, rischiamo di perdere lโisolamento dallโacqua garantito dalla guaina di silicone.
Dobbiamo quindi trovare una soluzione per sigillare nuovamente il punto in cui abbiamo tagliato la striscia LED, se intendiamo usarla a contatto con gli agenti atmosferici.
Controllare i LED neopixel dallo smartphone
Come abbiamo detto prima, i LED individualmente indirizzabili hanno bisogno di un controller.
Ci troviamo di fronte a un bivio: possiamo acquistare un controller con degli effetti preimpostati selezionabili da un telecomando, oppure realizzarne uno noi. Abbiamo scelto la seconda strada, perchรฉ รจ piรน divertente, piรน economica e soprattutto ci permette di avere un controller che si adatta perfettamente alle nostre esigenze.
Come scheda possiamo usare una scheda Arduino con caricato un codice scritto da noi che fa illuminare i LED con gli effetti che desideriamo, oppure una scheda ESP32 (acquistabile da Futura Elettronica con codice YB555) (Fig. 3), che oltre ad essere abbastanza potente e molto economica ha una connessione Bluetooth e WiFi.

Fig. 3 La scheda YB555 con il modulo ESP32.
ร proprio la connessione WiFi che ha reso lโESP32, con le sue varianti, molto usato per tutti i prodotti che riguardano la domotica, sia fai da te che commerciali, che vanno dai relรจ connessi alle lampadine smart. Grazie ad essa potremo anche noi connettere lโESP32 a una rete WiFi e controllare i LED da un PC o uno smartphone.
Per fare ciรฒ installeremo sullโESP32 il firmware open-source WLED, che permette di controllare una o piรน catene di LED individualmente indirizzabili da una pagina Web (Fig. 4), con la possibilitร di scegliere gli effetti da una lunga lista e di far accendere le luci a un preciso orario.

Fig. 4 La pagina web di WLED.
WLED ha un altro grande vantaggio: dalla configurazione allโutilizzo non dobbiamo scrivere una singola riga di codice, e quindi non abbiamo da preoccuparci se non abbiamo mai programmato prima.
Inoltre, se colleghiamo allโESP32 un modulo con un microfono possiamo far sรฌ che gli effetti delle luci del nostro albero di Natale seguano una musica.
A rendere tutto ancora piรน interessante cโรจ il fatto che WLED รจ compatibile con il sistema di domotica open-source Home Assistant, con cui si possono integrare le strisce LED agli altri dispositivi della nostra casa intelligente.
Installare WLED
Lโinstallazione del firmware WLED sulla scheda ESP32 รจ molto semplice e richiede pochi minuti.
Per prima cosa prepariamo la scheda ESP32 e un cavo Micro USB di buona qualitร per collegarla al nostro computer, ma aspettiamo a collegare la scheda.
Poi ci spostiamo sul PC, apriamo un browser (meglio Google Chrome) e digitiamo nella barra di ricerca install.wled.me
.
Sopra al pulsante โInstallโ abbiamo tre pulsanti per scegliere la versione di WLED che vogliamo installare.
Se vogliamo collegare allโESP32 un modulo con un microfono per far illuminare le luci seguendo la musica selezioniamo la versione indicata con la scritta Sound Reactive.
Se invece desideriamo semplicemente controllare i LED dallโinterfaccia Web senza collegare il microfono possiamo scegliere la versione Plain.
Una volta scelta la versione da installare clicchiamo su โInstallโ:
- Si aprirร una finestra in cui si vedono i dispositivi seriali connessi al PC e la porta usata da ciascuno.
- Solo adesso colleghiamo la scheda ESP32 alla porta USB del computer.
- Non appena vediamo un nuovo dispositivo comparire nella finestra, che รจ quasi sicuramente lโESP32, lo selezioniamo e clicchiamo โConnettiโ.
Il nome con cui la scheda ESP32 apparirร generalmente non rende evidente di cosa si tratta.
Per questo suggeriamo di collegarla al PC solo dopo che la finestra per selezionare il dispositivo si รจ aperta, cosรฌ da identificare il nuovo dispositivo connesso.
Ora che la scheda รจ stata rilevata possiamo cliccare su โINSTALL WLEDโ nella finestra al centro.
Una volta fatto ciรฒ:
- Confermiamo lโinstallazione di WLED, consapevoli che lโeventuale codice giร presente sulla scheda ESP32 verrร cancellato.
- Lโinstallazione di WLED richiede circa due minuti.
- Terminata lโinstallazione clicchiamo su โNEXTโ e inseriamo il nome e la password della rete WiFi a cui vogliamo che lโESP32 si connetta.
Una volta che il dispositivo รจ connesso, possiamo accedere allโinterfaccia Web generata, cliccando su โVISIT DEVICEโ.
Vedremo la pagina che useremo per controllare i LED del nostro albero di Natale.
Prima di collegare i LED rimangono alcuni parametri da modificare:
- Entriamo nel menu delle impostazioni cliccando sullโicona della ruota dentata.
- Nella sezione relativa alla connessione WiFi possiamo dare un indirizzo IP statico alla scheda ESP32.
Questo รจ consigliato, poichรฉ lโindirizzo statico impostato sarร quello utilizzato per accedere allโinterfaccia di WLED. - Possiamo anche configurare un link per accedere a WLED dalla rete locale al posto dellโindirizzo IP.
Una volta salvate le impostazioni, collegandoci al nuovo indirizzo IP dovremmo vedere la pagina di WLED.
ร importante ricordare questo indirizzo IP, perchรฉ servirร ogni volta che dovremo controllare i LED dal computer o dallo smartphone.
Ora che la configurazione iniziale di WLED รจ stata completata, possiamo concentrarci sul collegamento dei LED alla scheda ESP32 e allโalimentatore.
Collegare i LED neopixel
La striscia LED che abbiamo scelto per questo progetto ha alle due estremitร due connettori a tre poli, che portano:
- lโalimentazione a 5V sui cavi rosso (positivo) e bianco (negativo);
- i dati per i LED sul cavo di colore verde.
Il connettore femmina รจ lโingresso dei dati, mentre il connettore maschio รจ lโuscita, che puรฒ essere collegata ad altre strisce LED.
Oltre ai connettori, a ciascuna delle estremitร troviamo due fili per unโalimentazione aggiuntiva.
Ecco come collegare i fili alla scheda ESP32:
- Cavo bianco (negativo): va saldato al pin segnato come GND della scheda ESP32.
- Cavo rosso (positivo): va saldato al pin VIN.
- Cavo verde (dati):
- Questo cavo, che trasporta i dati per i LED, si puรฒ saldare al pin D13.
- In seguito, dovremo selezionare questo pin nelle impostazioni di WLED, poichรฉ il pin preimpostato D2 non รจ disponibile su questa scheda.
- Abbiamo scelto il pin D13 perchรฉ si trova vicino al pin GND, rendendo i collegamenti piรน ordinati.
Dopo aver completato le saldature, proteggiamole con un pezzo di guaina termoretraibile.
Questo serve a evitare cortocircuiti tra i pin, come mostrato in Fig. 5.

Fig. 5 La striscia a LED collegata a modulo con ESP32.
Una cosa importante da ricordare รจ che non possiamo alimentare la scheda ESP32 dalla porta USB quando รจ collegata alla striscia LED: ciรฒ sovraccaricherebbe la porta USB del nostro computer.
Se dobbiamo ancora collegare la scheda al PC, รจ necessario scollegare prima il connettore della striscia LED.
Come alimentare i LED?
La striscia LED utilizzata puรฒ arrivare a un consumo di corrente superiore agli 8A (con luce bianca), valore decisamente superiore a quello fornito da un normale alimentatore USB.
Per questo utilizzeremo un alimentatore da 5V in corrente continua da 10A (50W), acquistabile su Futura Elettronica con il codice MW05005.
Caratteristiche dell’alimentatore
- Scatola metallica al posto di un piccolo alimentatore con spina.
- Morsetti sul davanti:
- Tre morsetti per lโingresso della corrente alternata a 230V (neutro, fase e messa a terra).
- Due morsetti per lโuscita della corrente continua a 5V (positivo e negativo).
Collegare l’alimentatore alla rete elettrica
- Procurarsi un cavo tripolare di adeguata sezione con una spina provvista di messa a terra.
- Collegare i tre fili del cavo ai morsetti di ingresso dellโalimentatore:
- Filo marrone o nero: fase.
- Filo azzurro: neutro.
- Filo giallo/verde: messa a terra.
- Proteggere adeguatamente i morsetti per evitare contatti accidentali con le parti in tensione.
- Nota di sicurezza: lavorare con la tensione di rete puรฒ essere molto pericoloso.
Se non ci sentiamo sicuri, consultare un elettricista.
Collegare i LED allโalimentatore
- Saldare due spezzoni di cavo di sezione adeguata ai cavi per lโalimentazione aggiuntiva dei LED:
- Cavo rosso: positivo.
- Cavo bianco: negativo.
- Proteggere le saldature con guaina termoretraibile e riscaldarla con una pistola termica.
- Collegare questi cavi ai morsetti dellโuscita a 5V dellโalimentatore:
- Rosso al morsetto positivo (+).
- Bianco al morsetto negativo (-).
- Stringere adeguatamente le viti dei morsetti per garantire un buon contatto.
- Per migliorare la tenuta dei collegamenti, crimpare terminali isolati sui cavi (acquistabili con il codice BOX2120TP) usando una pinza adeguata.
Lunghezza dei cavi
La lunghezza dei cavi tra i LED e lโalimentatore dipenderร dalla posizione dellโalimentatore rispetto allโalbero di Natale.
Nel nostro caso, un metro รจ stato sufficiente.
Alimentazione condivisa
Seguendo lo schema illustrato in Fig. 6 e Fig. 7:
- Possiamo alimentare sia i LED che la scheda ESP32 dallo stesso alimentatore a 5V.
- Questo semplifica il cablaggio e garantisce unโalimentazione stabile per entrambi.

Fig. 6 Il nostro circuito cablato.

Fig. 7 Schema di collegamento del progetto.
Accendiamo i nostri LED
Ora che abbiamo fatto i collegamenti, possiamo attaccare la spina dellโalimentatore a una presa elettrica, prestando attenzione.
Sul computer apriamo un browser e digitiamo lโindirizzo IP assegnato a WLED.
Configurazione iniziale dei LED in WLED
Accediamo alla pagina di WLED e:
- Andiamo nelle impostazioni e apriamo la sezione LED preferences.
Qui possiamo configurare numerosi parametri relativi ai LED collegati. - Impostare la corrente massima:
- Inseriamo il valore massimo di corrente che lโalimentatore puรฒ erogare.
- Per proteggere lโalimentatore da surriscaldamenti e prolungarne la durata, impostiamo un limite di 8A (nonostante lโalimentatore supporti 10A).
- WLED regolerร automaticamente la luminositร dei LED se il consumo di corrente supera questo valore.
- Tipo di LED:
- Se stiamo usando LED WS2812B, selezioniamo โWS281xโ.
- Numero di LED:
- Inseriamo il numero totale di LED della striscia.
- Se la striscia รจ lunga 5 metri con 60 LED per metro, inseriamo 300.
- Se la striscia รจ stata tagliata, modifichiamo il valore di conseguenza.
- Pin dei dati:
- Inseriamo il numero del pin dellโESP32 a cui รจ collegato il cavo dei dati della striscia LED, nel nostro caso 13.
- Pulsante BOOT:
- Di default, il pulsante BOOT della scheda ESP32 controlla lโaccensione e lo spegnimento dellโintera striscia LED.
Una volta configurati i parametri, salviamo le impostazioni e torniamo alla pagina iniziale.
Accensione dei LED
Prima di accendere i LED, srotoliamo la striscia dalla bobina su cui รจ venduta, per evitare surriscaldamenti.
Dallโinterfaccia di WLED:
- Attivare la modalitร โPC modeโ per migliorare lโesperienza dโuso su computer.
- Usare il pulsante โPowerโ in alto a sinistra per accendere o spegnere la striscia.
- Regolare la luminositร con il cursore dedicato.
Personalizzazione dei LED
Nella sezione sinistra della pagina WLED possiamo:
- Selezionare i colori per i LED utilizzando la ruota dei colori.
- Scegliere effetti luminosi:
- Lโeffetto โSolidโ accende tutti i LED di un colore fisso senza animazioni.
- Altri effetti, come โGlitterโ o โWipeโ, offrono animazioni piรน dinamiche.
- Alcuni effetti utilizzano palette di colori preimpostate, mentre altri permettono di scegliere i colori personalizzati.
- Regolare i parametri degli effetti, come velocitร e intensitร , tramite gli slider sotto la lista degli effetti.
Playlist e Preset
Creare un Preset:
- Configuriamo i LED con lโeffetto desiderato.
- Clicchiamo su โCreate presetโ, diamo un nome e scegliamo se memorizzare la luminositร (consigliato deselezionare per mantenere un controllo indipendente sulla luminositร ).
Creare una Playlist:
- Clicchiamo su โCreate playlistโ.
- Aggiungiamo i preset, specificando il tempo di durata di ciascuno.
- Salviamo la playlist con un nome.
Riproduzione automatica allโavvio:
- Individuiamo il numero ID del preset o della playlist.
- Andiamo nelle impostazioni dei LED, nella sezione Defaults.
- Inseriamo il numero ID in โApply preset โฆ at bootโ per eseguirlo automaticamente allโaccensione di WLED.
Nota per la versione Sound Reactive
Se abbiamo installato la versione Sound Reactive di WLED, gli effetti con il simbolo della nota musicale funzionano solo se colleghiamo un microfono alla scheda ESP32.
Questo sarร un argomento che approfondiremo in seguito.
Grazie ai preset, playlist e una vasta gamma di effetti, possiamo creare unโesperienza luminosa personalizzata per il nostro albero di Natale!
Accendere i LED neopixel a ritmo di musica
Avere un albero di Natale che sincronizza gli effetti luminosi con la musica รจ un’aggiunta fantastica! Questo รจ possibile installando la versione โSound reactiveโ del firmware WLED e collegando un microfono per rilevare i suoni dellโambiente circostante.
Il microfono elabora i dati audio per modificare il comportamento di alcuni effetti luminosi, permettendo ai LED di “seguire” la musica.
Scelta del microfono
Ci sono due principali opzioni per il microfono:
- Microfono analogico:
- Utilizza il convertitore analogico-digitale (ADC) integrato nellโESP32.
- ร una soluzione semplice ma meno precisa.
- Microfono digitale (Consigliato):
- ร piรน preciso nella rilevazione dei suoni.
- Comunica con lโESP32 tramite il protocollo I2S (Inter-IC Sound).
Il modulo INMP441
Per questo progetto abbiamo scelto un modulo microfono digitale con codice HR3632, acquistabile qui a lato..
Il modulo include:
- Una piccola PCB circolare con il microfono INMP441.
- Sei pin per la connessione allโESP32, attraverso cui avviene la comunicazione digitale.
Connessione del microfono allโESP32
Il protocollo I2S consente una comunicazione digitale affidabile tra il microfono e lโESP32, rendendo questo modulo ideale per rilevare suoni con precisione e sincronizzare gli effetti luminosi.
Proseguendo, vedremo come collegare il microfono e configurarlo per sincronizzare i LED alla musica, rendendo il nostro albero di Natale ancora piรน spettacolare!

Fig. 8 Il microfono HR3632.
Prima di collegare il microfono alla scheda, dobbiamo ancora una volta aprire lโinterfaccia di WLED ed entrare nelle impostazioni.
Accediamo alla sezione โUsermodsโ, dove si trovano tutte le funzioni aggiuntive di WLED.
Qui, nella sezione โAudioReactiveโ, dobbiamo per prima cosa verificare che la spunta โEnabledโ sia attivata e che il pin per lโeventuale microfono analogico sia impostato su โunusedโ.
Possiamo quindi concentrarci sulla sezione relativa al microfono digitale, che รจ quello per cui abbiamo optato.
Il tipo di microfono รจ โGeneric I2Sโ.
Per i pin manteniamo quelli preimpostati:
- Pin 32 per SD.
- Pin 15 per WS.
- Pin 14 per SCK.
- โUnusedโ per MCLK.
Piรน in basso nella pagina abbiamo anche alcuni parametri per impostare come lโaudio rilevato dal microfono deve essere processato.
Nel nostro caso quelli di default hanno funzionato bene.
Una volta salvate le impostazioni, possiamo saldare i connettori forniti insieme al microfono ai sei pin presenti sulla scheda, per rendere i collegamenti piรน agevoli.
Per collegare il modulo con il microfono alla scheda ESP32 possiamo usare dei cavi jumper oppure, per una soluzione piรน permanente e stabile, saldare degli spezzoni di cavo direttamente ai pin.
In ogni caso, per prima cosa colleghiamo il pin GND e il pin L/R, usato per la selezione del canale su cui inviare lโaudio, a uno dei due pin GND della scheda ESP32 (allโaltro abbiamo collegato il negativo della striscia LED).
Colleghiamo il pin VDD, il positivo, al pin di alimentazione a 3,3V fornito dalla scheda ESP32, che รจ marchiato con 3V3.
Per quanto riguarda i pin per la comunicazione I2S:
- Il pin SD del microfono va al pin 32 dellโESP32.
- Il pin WS va al pin 15.
- Il pin SCK va al pin 14.
ร importante tenere questi cavi corti, per ridurre le interferenze.
Per lo stesso motivo consigliamo di saldarli piuttosto che usare dei cavetti jumper.
Anche questi collegamenti sono riportati nello schema elettrico in Fig. 7 e in Fig. 9.

Fig. 9 Il microfono collegato alla scheda YB555.
Ora che i collegamenti tra la scheda ESP32 e il microfono sono completati, possiamo verificare il corretto funzionamento di questo.
Nella lista degli effetti a cui accediamo dalla pagina Web di WLED vediamo tanti effetti che hanno a fianco il simbolo di una nota musicale.
Questi effetti funzionano in modo simile agli altri, ma si basano sui suoni rilevati dal microfono per far illuminare i LED seguendo la musica.
Dopo averne selezionato uno, se mettiamo della musica (a volume abbastanza alto) su un altoparlante posto non troppo lontano dal microfono, vedremo la striscia LED eseguire a tempo di musica i giochi di luce previsti dallโeffetto.
Anche per questi effetti permangono gli slider, posti sotto alla lista degli effetti, per regolare diversi parametri di questi ultimi.
Per vedere a cosa si riferisce ciascuno degli slider รจ sufficiente portare il cursore del mouse su di essi.
Per questo progetto ci siamo soffermati sullโutilizzo di un microfono per rilevare i suoni, ma รจ importante ricordare che esistono anche soluzioni per prendere lโaudio che WLED usa per gli effetti direttamente da un segnale di linea, come quello che esce dalla scheda audio del nostro computer o da un mixer.
Questa soluzione รจ perรฒ piรน laboriosa e complessa, ed รจ forse piรน adatta a grandi installazioni.
Lโalbero di Natale รจ pronto
Abbiamo collegato i LED e abbiamo esplorato ogni funzione del software che li controlla.
ร finalmente venuto il momento di metterli sullโalbero di Natale.
Questo passaggio non รจ piรน difficile di mettere una qualunque catena di luci.
Consigliamo di posizionare lโalimentatore e la scheda ESP32 sotto allโalbero.
Arrotoliamo poi la striscia LED attorno ad esso fino ad arrivare in cima.
Aggiungendo allโalbero addobbi e palline colorate, lโeffetto dei LED รจ magnifico e rende il nostro albero diverso da qualunque altro.
Grazie ai loro vivaci effetti controllabili dallo smartphone o dal computer, stupiranno tutti, ancor di piรน quando sono mossi da una musica natalizia.