Nel mio articolo precedente ti raccontavo come avevo costruito il mio primo prototipo. Oggi ti presento la sua evoluzione.
Passano qualche mese. Sviluppo il software e un'interfaccia di controllo con un obiettivo: rendere l'esperienza più piacevole. In parallelo, esploro delle piste per il prototipo successivo.
Salire di livello
Il primo prototipo funziona, mio figlio lo adora, mia sorella ne vuole uno per i suoi bambini. Ma una scatola di legno incollata a mano, con un Raspberry Pi piazzato dentro, non è proprio il massimo della praticità.
Buttarsi sulla modellazione 3D
Avevo bazzicato un po' Blender anni fa. È il momento di rispolverare le conoscenze. In quel momento non ho la minima idea di dove mi sto cacciando, né alcuna vera strategia, e inizia un ciclo che vivrò più volte: imparare, provare, perdermi, riallineare.
Per questa prima modellazione vado lontano. Immagino supporti stampati in 3D per tenere tutti i sensori e i componenti che voglio usare, con delle placche di legno fissate sopra a formare la scocca esterna. Voluminoso.
Tanti componenti: LED, sensori e un piatto rotante sulla parte alta. L'idea: fare come un giradischi, con dei dischi di legno dotati di uno sticker NFC sotto e di magneti incassati per allineare il disco, poi farlo girare con un piccolo motore quando il lettore NFC lo rileva. Il vantaggio è poter semplicemente poggiare una figurina (ho qualche figurina Faba sottomano), una carta NFC tipo Yoto, o anche delle semplici carte comprate su Amazon.
Compro dei dischi di legno online e li foro dopo aver stampato un dima per distribuire i magneti. I magneti tengono il disco al suo posto e lo fanno girare tramite una placca rotante interna, anch'essa magnetizzata, azionata da un motore.
Sulla carta è seducente. Il progetto è ancora un semplice passatempo e, a essere onesti, sto andando un po' in tutte le direzioni, seguendo l'umore, senza una rotta chiara.
Blender è un ottimo software per l'animazione e il rendering, ma per modellare oggetti tecnici con quote precise e vincoli meccanici, è una rogna.
Mettere insieme i componenti
In parallelo alla modellazione, mi attacco a un'altra sfida: radunare tutti i componenti elettronici che voglio integrare nella Music Box. Lettore NFC, amplificatore audio, altoparlanti, sensori... il tutto cablato su una breadboard per testare l'insieme.

Un bel casino di fili e flat cable, ma permette di validare che tutti i componenti possono funzionare insieme prima di passare a qualcosa di più pulito.
Mi butto allora sulla realizzazione di una scheda elettronica per sostituire la breadboard e collegare più pulitamente tutti i componenti. Per farlo, progetto la mia prima scheda su EasyEDA.

Sono piuttosto contento del risultato. Aggiungo persino un ring LED per fare delle animazioni intorno al disco.

Rogne tecniche
Nel frattempo, qualcosa s'inceppa in più punti. L'HAT audio Adafruit non ha sempre driver compatibili con la versione di Raspberry Pi OS del momento. A ogni aggiornamento devo riverificare tutto, smanettare, a volte tornare a una versione precedente perché ricominci a funzionare.
Anche il PN532 mi fa penare. La sua portata varia a seconda dell'antenna, della distanza e delle interferenze degli altri componenti lì accanto. Passo delle serate a regolare l'orientamento del lettore e la distanza tra la carta NFC e l'antenna per ottenere letture affidabili.
Ci vuole tempo, ma m'insegna a fare debug di problemi hardware a basso livello.
Fermarsi a riflettere
La PCB custom funziona, più o meno. Ma a un certo punto, mi chiedo se non stia sbagliando strada. Tutta questa complessità nella modellazione, i componenti che si accumulano, una scocca che rischia di essere pesante e difficile da assemblare... Prendo un'altra direzione: la semplificazione.
Ho appena scoperto Shapr3D, un software di modellazione 3D molto più adatto a questo tipo di lavoro. Decido di riprendere la modellazione da zero: una struttura stampata in 3D, pensata come gli spigoli di un cubo, destinata ad accogliere placche tagliate al laser.


Arrivo così a una scocca funzionante, con dei pulsanti per navigare tra le musiche. Anche il software è un po' evoluto: posso ora gestire una playlist per tag NFC e non più solo un brano.
Cosa mi porto a casa
Il piatto rotante, la PCB custom, i dischi di legno: niente di tutto questo finisce in questo prototipo. Ma ognuna di queste esplorazioni mi porta qualcosa. Blender mi inizia al 3D. EasyEDA mi fa scoprire la progettazione di circuiti. I magneti e il motore mi mettono di fronte ai vincoli del mondo fisico.
Queste deviazioni mi permettono di esplorare ambiti diversi e di capire meglio ognuno di essi.
Ora ho un prototipo funzionante, una migliore comprensione della modellazione e dell'elettronica, e la voglia di continuare. È il momento di far evolvere ancora il prototipo per correggere i problemi incontrati.