Rievochiamo le affascinanti valvole Nixie attraverso dei display basati su pacchetti di lastrine in plexiglass incise a laser, illuminate mediante LED Neopixel.
Per chi è cresciuto nell’era dei display allo stato solido – che siano a LED, a 7 segmenti, a matrice di punti o a cristalli liquidi – è difficile immaginare come venivano visualizzati testi e numeri prima del loro avvento. Chi ha superato la soglia dei cinquant’anni, tuttavia, ricorderà sicuramente i primi display elettronici: i tubi nixie.
Si trattava di dispositivi elettronici spesso chiamati impropriamente “valvole termoioniche” – termine più adatto ai tubi a vuoto utilizzati per modulare il flusso di corrente – mentre i nixie erano tubi contenenti elettrodi a forma di cifre o caratteri. Questi elettrodi, disposti in profondità uno dietro l’altro all’interno del tubo di vetro, si illuminavano grazie all’effetto di scarica elettrica in un gas a bassa pressione, visibile grazie a un campo elettrico sufficientemente intenso.
Con il progetto presentato in queste pagine vogliamo riscoprire il fascino delle nixie, combinando il principio di visualizzazione di quei componenti dal sapore retro con la tecnologia più moderna. Utilizzeremo LED Neopixel e piastrine in plexiglass incise per guidare la luce, simulando l’aspetto dei caratteri delle nixie in una chiave attuale, visibili frontalmente grazie ai percorsi luminosi creati con incisioni mirate.
Schema elettrico della scheda con ESP8266

Il progetto NIXIEL
Vediamo ora nel dettaglio il progetto presentato in queste pagine: si tratta di un sistema modulare composto da un certo numero di cifre, o digit, ciascuno dei quali costituisce un modulo base. Ogni modulo è formato da 10 lastrine in plexiglass incise al laser con la sagoma di una cifra numerica. Le lastrine sono montate una dietro l’altra su un telaio – potremmo dire “impacchettate” – alla base del quale si trova un circuito stampato. Su questo sono disposti alcuni LED Neopixel in miniatura, orientati lungo l’asse delle lastrine, in modo da proiettare la luce verso l’alto e illuminare la figura incisa nel plexiglass.
Ogni lastrina è illuminata dal basso, precisamente da uno dei lati stretti, mediante due LED. Questa scelta non è casuale: in fase di test, un solo LED risultava sufficiente per illuminare cifre snelle come l’1, ma non garantiva una buona visibilità per numeri più ampi come l’8. Inoltre, le cifre di dimensioni maggiori – come il 6, l’8 e il 9 – sono posizionate nella parte posteriore della pila di lastrine. Questo comporta una perdita di visibilità a causa dell’assorbimento ottico da parte delle lastrine anteriori, rendendo indispensabile una maggiore intensità luminosa.
Il sistema proposto in questo articolo è composto da sei digit, che vengono utilizzati per costruire un visualizzatore destinato a un orologio digitale. I moduli LED sono collegati in cascata e progettati per essere facilmente affiancati e connessi tramite ponticelli in filo di rame. Il controllo dell’intero sistema è affidato a una scheda elettronica che integra un modulo WiFi. Questo si collega, in presenza di una rete wireless, a Internet e in particolare a un server NTP (Network Time Protocol), dal quale ottiene l’ora esatta in tempo reale, che viene poi visualizzata sul display.
Il cuore del sistema è un modulo ESP8266 montato su una basetta che include anche il circuito di alimentazione. Questo converte la tensione di ingresso di 5V (necessaria per i LED Neopixel) nei 3,3V richiesti dal modulo di controllo. Il modulo WiFi si connette via UDP al server us.pool.ntp.org per ricevere l’ora esatta, che viene poi mostrata sul nostro display “Nixie a LED”.
Il sistema elettronico si compone quindi di due tipi di schede: una scheda di controllo, unica, e sei schede base, ciascuna dotata di LED Neopixel e associata a un digit del display. Ogni modulo appare come illustrato nel rendering della Fig. 1: un circuito stampato con LED SMD Neopixel montati sul lato componenti, disposti in modo da proiettare la luce alla base delle rispettive lastrine. Queste ultime presentano in fondo delle tacche, progettate per ottimizzare l’accoppiamento ottico con i LED, migliorando l’efficacia della trasmissione luminosa.

Fig. 1 Rendering del modulo digit.
Scheda base con ESP8266
Anche detta scheda di controllo, è quella che genera i dati da inviare alla cascata di schede Neopixel ed è in generale un circuito dotato di un bus di comunicazione compatibile con quello dello standard Neopixel e perciò composto da un filo di dati, uno di massa comune all’alimentazione ed un terzo che porta l’alimentazione positiva.
Lo stesso circuito dev’essere dotato di un microprocessore (o meglio, un microcontrollore) in grado di generare dati in forma seriale secondo il protocollo Neopixel.
Nel nostro caso si tratta di una scheda (la vedete nella Fig. 2) a bordo della quale si trova un modulo WiFi basato sull’ESP8266 e dotato quindi di microcontrollore embedded programmabile affinché si connetta a Internet mediante un access-point WiFi puntando a un sito che fornisce il segnale orario aggiornato, ne estragga le informazioni e prepari i dati corrispondenti sotto forma di pacchetti da inviare serialmente lungo il canale dati.

Fig. 2 Scheda base con ESP8266.
La scheda di controllo che gestisce i moduli display non genera autonomamente i dati da visualizzare: essa li preleva da Internet, sfruttando la connessione WiFi, e successivamente elabora le informazioni utili per creare i pacchetti di dati da trasmettere in sequenza ai moduli display attraverso un canale seriale.
Lo schema elettrico della scheda, riportato in queste pagine, mostra chiaramente il modulo WiFi identificato con la sigla U2. Questo dispositivo è interfacciato esternamente tramite la propria porta seriale, accessibile dal connettore CN1, che espone anche tutti gli altri pin di rilievo.
Come evidenziato dallo schema, il connettore che gestisce la cascata di moduli display è costituito da due morsettiere. Oltre ai terminali di alimentazione (+5V e massa), esse includono le linee IO0 e IO2 – due GPIO del modulo U2 – utilizzate per il trasferimento dei dati. Nella configurazione descritta, i dati vengono inviati ai display attraverso la linea IO2, mentre IO0 può essere riservata per un secondo canale Neopixel o per il collegamento di un pulsante, ad esempio, per modificare gli effetti luminosi.
Gli stessi segnali presenti sulle morsettiere sono replicati sul connettore CN1, insieme ai terminali TX e RX dell’interfaccia UART, al segnale di reset e ad altri segnali di controllo.
L’intero circuito è alimentato con una tensione continua di 5V stabilizzata, fornita da un alimentatore esterno – switching o lineare – purché adeguatamente filtrato e con uscita costante. I condensatori C1 e C3, collegati in parallelo alla linea di alimentazione, si occupano di filtrare le eventuali interferenze. I 5V alimentano direttamente le schede LED Neopixel e, tramite il regolatore U1 (un LD1117S33TR), vengono convertiti in 3,3V stabilizzati, necessari al funzionamento del modulo ESP8266. Anche questa tensione è filtrata, attraverso i condensatori C2 e C4.
È importante sottolineare che i 3,3V sono impiegati esclusivamente per alimentare il modulo WiFi, mentre i LED Neopixel richiedono necessariamente i 5V. Pertanto, è fondamentale utilizzare un alimentatore da 5V ben stabilizzato, per garantire il corretto funzionamento dell’intero sistema.
Schema elettrico del modulo Display

Per quanto riguarda il firmware del modulo ESP8266, adotta la libreria è di Connor Nishijima modificata per i nostri moduli Neopixel; inoltre comprende tutta la porzione di codice che serve per instaurare la connessione in UDP (User Datagram Protocol) con il sito web desiderato, ossia quello da cui attingere i dati sull’orario, che nello specifico è us.pool.ntp.org.
È il caso di farvi notare che la libreria da noi “elaborata” permette di visualizzare i numeri con diversi effetti: ad esempio è possibile accendere una cifra di un colore e le altre con un altro colore molto più tenue. Quando la cifra su cascun digit cambia si può scegliere come ciò deve avvenire: ad esempio si può avere l’effetto dissolvenza, oppure il flip (vengono accese in sequenza tutte le cifre e poi si accende solo quella desiderata).
Il piano di montaggio del modulo Display

Elenco Componenti: LD1 ÷ LD20: LED neopixel WS2812B-2427 C1 ÷ C19: 100 nF ceramic0 (0603) R1: 470 ohm (0603) Varie: - Pin strip maschio 3 vie dritto/90° - Pin strip femmina 3 vie dritto/90°
E ovviamente non può mancare l’effetto nixie, che consiste nell’accendere il numero da visualizzare di un bel colore arancione tipico delle nixie e le altre cifre (ossia le rimnenti lastrine in plexiglass) del digit in un colore azzurrino ma a luce molto tenue, ottenendo così un aspetto come quello che ha un tubo di vetro contenente un filamento illuminato, attorno al quale si crea una sorta di aurea azzurrina simulante i riflessi nell’involucro di vetro.
Il piano di montaggio della scheda con EP8266

Elenco Componenti: C1: 100 nF ceramico (0603) C2: 100 nF ceramico (0603) C3, C4: 10 µF 6,3 VL tantalio (B) U1: LD1117S33TR U2: ESP8266 Varie: - Strip maschio 2x6 vie - Strip femmina 2x4 vie - Morsetto 2 vie passo 5.08mm (3 pz.) - Circuito stampato S1456 (60x26 mm)
I moduli display
Ciascun display elementare, ossia un digit, è composto da 10 pannelli incisi a laser impacchettati e opportunamente vincolati, come vedete nella Fig. 4, che mostra il rendering del digit visto lateralmente, con in evidenza le lastrine accostate.

Fig. 3 La scheda display vista dal lato dei LED.
Ogni pannello è illuminato alla base da due LED Neopixel in miniatura (codice Futura Elettronica LED Neopixel WS2812B-2427) e gestiti da una scheda Arduino o compatibile, mediante un’apposita libreria.
In questo post trovate lo schema elettrico della scheda, il quale è composto sostanzialmente da due file di tre contatti ciascuna in parallelo per gli ingressi, riportati sul lato lungo che su quello corto ed altrettante per le uscite, analogamente disposte; il bus di ingresso consta del filo dati proveniente da IO2 della scheda di controllo e dell’alimentazione comprendente la massa, in comune con quella dei dati.
Il canale dati entra nel contatto DI del primo LED Neopixel tramite un resistore da 470 ohm e dal piedino DO si preleva la stringa dei dati ripetuta, perché una caratteristica dei LED Neopixel è che internamente dispongono di un chip controller in grado di leggere la stringa di dati seriali ricevuta e ripeterla in modo da farla giungere agli altri elementi collegati in cascata, eseguendo solo la parte di dati, ossia il comando, identificata dall’indirizzo corrispondente al suo.
Quindi i 20 LED di ciascuna scheda digit sono tutti collegati in parallelo per quel che riguarda l’alimentazione e in cascata per quanto concerne i dati; l’ultimo LED della scheda ha l’uscita DO connessa alle file di pin di uscita, in modo che i dati possano giungere alla scheda succesiva, dove sortiranno effetto analogo, ossia verranno eseguiti da ciascun LED i soli comandi pertinenti.

Fig. 3 La scheda display vista dal lato dei LED.
Realizzazione pratica
Bene, passiamo adesso alla costruzione del nostro visualizzatore simil-nixie, che è modulare e quindi prevede l’assemblaggio di tanti moduli digit quante sono le cifre del nostro orologio: sei, in questo caso.
Sistemata la scheda base passate a montare le board con i LED Neopixel, prestando attenzione sia al verso indicato nel piano di montaggio per i LED stessi, sia a non surriscaldare tali componenti durante la saldatura: appena la lega saldante si scioglie completamente, togliete il filo e la punta del saldatore e passate a un altro contatto. Chiaramente tutti i LED vanno montati sul circuito stampato tenendoli con la faccia emittente la luce verso l’alto.
Per le connessioni tra circuiti dei digit suggeriamo di utilizzare dei pin-strip da saldare sulle piazzole relative ai lati corti (che sono quelli su cui affiancheremo i singoli display) e far sporgere come mostrano le foto del prototipo visibili in queste pagine e come appare nella vista in esploso proposta nella Fig. 5. Per utilizzare jumper maschio/femmina conviene adottare strip maschio da un lato e femmina dall’altro.

Fig. 3 La scheda display vista dal lato dei LED.
Una volta saldati tutti i componenti sulle sei schede, potete iniziare ad assemblare i digit, il cui aspetto finale sarà quello mostrato nella Fig. 6.

Fig. 6 ll digit completato visto dal vivo,con in evidenza il pin-strip a tre poli per la connessione in cascata.
Come vedete, ciascuno è formato da 10 lastrine di plexiglass incise a laser, impacchettate mediante delle cornici, che sono una superiore (chiusa poi da un coperchio che serve a bloccare la propagazione della luce verso l’alto, inutile e che disturberebbe la visione in ambienti poco illuminati o se il sistema viene posto in prossimità di superfici specchiate) ed una inferiore.
Inferiormente c’è anche una seconda cornice, che si trova posizionata fra il PCB e il pacchetto di lastrine e che sotto è chiusa e forata in modo da far incastrare il fondo delle lastrine stesse, le quali sono lavorate in modo da avere un certo numero di tacche che si affacciano sui LED Neopixel, in maniera tale da riceverne meglio la luce prodotta.
Avete un’idea più chiara di quanto spiegato, guardando le immagini nelle pagine precedenti.
Come appare sempre nella Fig. 6, la scheda display è vincolata tra la cornice inferiore e la cornice di base, le quali sono strette tra loro a sandwich mediante viti 3MA più dado.
Quindi, riepilogando, il pacchetto di lamine è fermato superiormente da una cornice e da un coperchio, mentre inferiormente è assemblato e mantenuto in posizione grazie a una cornice (zoccolo, Fig. 7) e a una piastra di base, fra le quali è fissata la scheda display contenente i LED.

Fig. 7 La cornice inferiore del digit, è più che altro uno zoccolo dove entrano le tacche delle lastrine.
La disposizione dei pin-strip JIN/JOUT (per portare limentazione e dati tra i moduli digit) appositamente scelti del tipo con pin ad angolo retto, consente di accedere ai tre contatti per lato con cui realizzare le connessioni della catena di digit.
Bene, una volta assemblati i singoli digit e interconnessi mediante dei jumper tipo quelli per Arduino, è possibile fare una prova prima di cercare un telaio o un contenitore cui fissare l’intero display; ma prima di utilizzare il tutto occorre caricare il firmware nel modulo WiFi con ESP8266, operazione che si esegue connettendolo tramite un converter TTL/USB a un Personal Computer utilizzando i pin RX e TX del connettore CN1 della scheda di controllo.
Programmazione del sistema
Il modulo basato su ESP8266 può essere programmato utilizzando l’IDE Arduino, trattandolo come una scheda di terze parti. Tuttavia, per effettuare correttamente la programmazione sono necessari alcuni accorgimenti. Oltre al collegamento tramite un convertitore USB-TTL capace di fornire un’alimentazione a 3,3Vcc, è indispensabile porre a massa il pin IO0 (GPIO0) per portare il modulo in modalità di programmazione.
Per semplificare questa procedura, consigliamo l’uso di un circuito progettato specificamente per questo scopo: il debugger dedicato all’ESP8266, disponibile online sul sito di Futura Elettronica (https://futuranet.it/prodotto/esp8266-debugger/). Questo dispositivo è dotato di jumper in parallelo ai pin dello strip, facilmente configurabili tramite cavallotti standard a passo 2,54 mm. Il modulo ESP8266 può essere montato direttamente sul debugger, senza necessità di cablaggi volanti, minimizzando il rischio di errori di collegamento e danni al dispositivo.
Il debugger è basato sul chip CH340G, che funge da convertitore USB-TTL, e consente il caricamento del firmware o del codice sviluppato nell’IDE Arduino. Include un connettore femmina 2×4 per il modulo ESP8266, un pulsante di reset, un regolatore di tensione a 3,3V, e un’uscita maschio 2×4 pin che espone i seguenti segnali: 3V3, GND, RST, IO0, IO1, EN, TXD e RXD.
Per avviare la programmazione, una volta collegato il modulo al debugger, è necessario installare i driver del dispositivo. I driver richiesti sono quelli del transceiver USB della Silicon Labs, disponibili al seguente indirizzo: https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers.
Successivamente, occorre aprire l’IDE Arduino e installare il supporto per l’ESP8266 tramite il menu Strumenti > Scheda > Boards Manager. Tuttavia, per visualizzare correttamente le schede ESP8266 nel Boards Manager, è necessario specificare l’URL del pacchetto nella sezione File > Impostazioni, inserendolo nella casella “Additional Board Manager URLs”. Dopo aver confermato con il pulsante “OK”, sarà possibile procedere con l’installazione della piattaforma ESP8266 e iniziare la programmazione del modulo.

Fig. 8 Per trovare il debugger tra le schede di terze parti occorre definire il percorso di ricerca indicando la cartella dove si trovano i driver.
Installata la scheda, potete selezionarla e poi scegliere la COM port ESP8266 Flasher and Programmer + ESP8266 WiFi Serial Transceiver module; connettetevi ad essa impostando il baud-rate al valore di 115200.
Orologio LED effetto Nixie
Ora andate ad aprire (File/Apri) lo sketch scaricabile qui sopra insieme agli altri file del progetto e cliccate sul pulsante di invio per caricarlo nella memoria del modulo; resta inteso che per potervi connettere con successo alla rete WiFi dovrete aver modificato lo sketch inserendo, al posto dei valori predefiniti di SSID, network name e via di seguito, i parametri della rete wireless cui il modulo con ESP8266 si aggancerà. Per poter visualizzare l’ora italiana dovrete impostare il fuso orario tramite questa istruzione TIME_OFFSET = 2.
A questo punto staccate il cavo USB, sconnettete il modulo dal Flasher (programmatore) e montatelo sulla sua scheda, che dovrete aver già cablato con tre fili alla prima scheda display, la quale poi la replicherà alla seconda, alla terza ecc.
Verificati i collegamenti dell’insieme, alimentate la scheda base e se tutto andrà bene, giusto il tempo di instaurare la connessione Internet e vedrete l’ora esatta apparire sul visualizzatore.
Se tutto funziona come previsto, potete ritenere pronto il vostro orologio per essere montato in contenitore adatto, che potrete scegliere a piacimento e posizionare come meglio credete; ricordate solo che il modulo WiFi deve poter ricevere e trasmettere le onde radio, quindi se scegliete un contenitore di metallo dovrete realizzare su una sua parete un’apertura tale da consentire al modulo basato su ESP8266 di affacciarsi all’esterno.
Conclusioni
Bene, con questo è tutto. Vi abbiamo proposto un progetto che ci ha permesso di rispolverare la teoria di funzionamento dei visualizzatori elettronici utilizzati all’epoca dei tubi a vuoto, ossia le Nixie, simulando tali display con una struttura ottica dove dei LED Neopixel illuminano un pacchetto di lastrine colorate dove la luce viene propagata trasversalmente attraverso scanalature incise a laser.
Il display è modulare e può essere composto da molti più digit e pilotato anche con dati diversi da quelli relativi all’ora: dipende da come impostate il firmware, che costituisce una base modificabile per generare dati localmente, invece di attingerli dal web, oppure riceverli da Personal Computer via USB, tramite un opportuno convertitore.


