Su questo blog

L’hardware non è mai stato il mio forte. Da un po’ di tempo ho iniziato a interessarmi ai “sistemi embedded”. In realtà è iniziata dall’interesse per il design by contract e la verificabilità formale della correttezza di un programma, temi sfiorati grazie alla mia curiosità per diversi linguaggi di programmazione: avevo rincontrato l’Ada — guardicchiato anni e anni fa e poi accantonato, come moltissimi altri — e dall’Ada ero giunto a Spark, e da qui ai problemi che si affrontano quando il software fa parte di sistemi che interagiscono con il mondo fisico e un loro errore può costare caro (soldi o peggio: vite)1 — siamo cioè nell’ambito dei safety-critical systems.2

L’elettronica era invece il forte di mio padre (per decenni nell’industria della progettazione e realizzazione di circuiti stampati) e la sua passione al servizio ora del suo lavoro, ora di altri suoi interessi e “fissazioni”, tra i quali quello della musica. Negli anni ottanta sognava di realizzare un organo elettronico e di questo progetto, oltre agli appunti3, è restata solo una tastiera stoccata, a detta di mia madre, a casa su una sorta di soppalco seminaccessibile, dietro una miriade di altre cianfrusaglie.

Ma in tempi più recenti, diciamo un paio di anni fa (ma sui tempi d’inizio non sono sicurissimo), aveva utilizzato un moderno microcontrollore (Atmega 328P) per un progetto di un multimetro4. Credo che questa famiglia di µC sia diventata popolarmente famosa nel revival del fai-da-te elettronico grazie ad Arduino. Comunque il progetto del multimetro era più o meno naufragato, a quanto ne sappia o abbia avuto modo di dedurre finora5; perciò il 328P (ed eventualmente altri componenti) era stato riciclato per qualcosa che di sicuro gli interessava di più: un sintetizzatore.

I primi vagiti di questo progetto risalgono a poco prima di luglio del 2019. Non c’era una tastiera degna di questo nome: c’era qualche bottone (SPST) quadrato e colorato6 che nel prototipo faceva le veci dei tasti che ci si aspetterebbe per una pianola. Ce ne erano sicuramente meno di 12. Forse erano sette. Non ricordo. Insomma, un’ottava diatonica e forse anche meno. Erano sistemati sulla breadboard, ma non ricordo i dettagli: ricordo che, aggeggio poggiato sulle gambe, provava a fare qualche passaggio e qualche accordo.

Il 6 luglio 2019 gli regalammo una tastierina MIDI. Parlando del progetto avevo capito che era quello che gli serviva per sostituire quei bottoni chiaramente provvisori — pensavo, erroneamente, che ci fosse un’interfaccia MIDI in cantiere. In realtà gli serviva una specifica tastierina MIDI che aveva visto usare in un progetto trovato online7 e perciò sapeva di poterla smontare e usare secondo necessità. Feci il reso e ordinai subito la tastiera giusta.

Ora la tastiera è attaccata tramite 5+8 fili alla breadboard, cioè al sintetizzatore; da quel luglio immagino che sia cambiato l’hardware e sono sicuro che è cambiato il software (sperimentava l’aggiunta di vari effetti e altre cose). Circa a fine gennaio mi aveva accennato di aver raggiunto un punto in cui non vedeva ulteriori spunti di evoluzione (non si espresse così, ma il senso era questo) e quindi era passato a pensare di aggiungere una drum machine8.

C’era comunque ancora da fare sul sintetizzatore. Mio padre magari non aveva intenzione di perdere molto tempo per le rifiniture, ma sicuramente nemmeno voleva lasciarlo così su breadboard: quasi certamente aveva intenzione di metterlo su piastra (o forse addirittura fare il circuito stampato, chissà) e sicuramente voleva sostituire gli scomodissimi trimmer con opportuni potenziometri.9

Comunque immagino che sarebbe stato un processo a priorità più bassa rispetto alla realizzazione di una drum machine: molto più stimolante che “imbellettare” qualcosa la cui fase di prototipo era in pratica terminata.

Purtroppo non è riuscito a mettere un punto al progetto sintetizzatore, né a iniziare la drum machine: è morto l’11 aprile.

Passato un po’ di tempo mi sono messo a guardare tra i suoi appunti e il suo disordine (che per lui era ordine…) e i suoi file. Ho guardato gli schemi del sintetizzatore e cercato di trascrivere quello che sta sulla breadboard. Non ho trovato una corrispondenza esatta con nessuno degli schemi trovati sul computer: l’ultimo è molto più “evoluto”, e quelli più vecchi comunque non corrispondono… E non so nemmeno qual è l’ultima versione del software/dati caricata sul µC.

In effetti mi sono accorto di non sapere nemmeno come lo alimentava e dove attaccava l’uscita audio. Ho realizzato di essere stato molto distratto e di non aver mai fatto caso a questi semplici dettagli. Nemmeno gli ho mai chiesto di spiegarmi come funzionava e come farlo funzionare in pratica. Mi aveva spiegato di sua sponte diverse cose10, grazie alle quali alla fine credo di aver capito perché la breadboard differisce dagli schemi sul computer, ma non ci sono state lunghe conversazioni (o, più probabilmente, monologhi) per spiegarmi i perché e per come dell’hardware. Un paio di volte mi sono fermato davanti allo schermo mentre scriveva del codice e gli ho fatto qualche domanda e penso anche di avergli fatto delle osservazioni utili.11

Per tagliare, in questo blog butterò dentro un po’ di nostalgia e ricordi e non so che altro mentre racconto come meglio credo l’analisi del progetto del sintetizzatore, per iniziare. Poi proseguirò, o intervallerò con altre cose hardware a volte prendendo ispirazione dagli appunti “elettronici” e dai conti che disseminava anche sulle buste delle lettere delle bollette da pagare… E poi, ancora, magari ci metterò qualcosa fatto da me, scarabocchierò delle idee, se il tempo e la vita e le circostanze della vita mi permetteranno di fare e scrivere con costanza, o senza — come al solito.

P.S.

Spero che sia chiaro perché il blog si chiama panferraglia.


  1. A proposito di errori mortali del software, mi è venuto in mente che nel mio secondo esperimento di scrittura su LinkedIn, Unintentional “design limitation” in algorithms in safety-critical systems, citavo un altro libro che avevo comprato: Less often recorded are the times where, hardware having failed, the software prevented a disaster.↩︎

  2. Tra gli altri, trovate degli indizi nell’esistenza degli articoletti Just another Schiaparelli e Due disastri aerei e due articoli; quest’ultimo è solo una sorta di analisi della copertura mediatica di quei disastri, ma l’interesse per i casi nasceva proprio dal fatto che fosse coinvolto il software e in generale perché l’industria aeronautica è un concentrato di applicazione di quei temi a cui mi stavo interessando; perciò avevo pure comprato qualche libro per farmi un’idea.↩︎

  3. Li ho sfogliati e mi sembra che ci siano riferimenti a libri o, più probabilmente, riviste. Forse il progetto si basava su degli articoli di riviste d’elettronica dell’epoca.↩︎

  4. Ho trovato diversi appunti relativi al multimetro digitale: tecniche di misurazione, conti per decidere i valori di alcuni componenti, et c. Poi ci sono gli schemi e, mi pare, anche il progetto del circuito stampato. Era previsto un display LCD, se non ho capito male, e forse è per questo che ho trovato anche degli strumenti per disegnare caratteri per display LCD.↩︎

  5. Credo che lo stesse facendo per il lavoro, per avere uno strumento con certe caratteristiche. Da anni non lavorava più nell’industria dei circuiti stampati ma era sempre “immerso in affari d’elettronica”, per così dire, proprio per lavoro (anche se magari collateralmente) e spesso anche perché era il riparatore di fiducia di famiglia e amici). Forse non aveva ricevuto particolari stimoli a terminare il progetto e quindi aveva deciso di dedicarsi a qualcosa che fosse solo per il suo diletto.↩︎

  6. Ricordo benissimo questi bottoni: erano usati in un lettore di cassette fatto da mio padre. Era il “mangianastri” usato con lo Spectrum ZX per caricare e salvare programmi e giochi. Era un parallelepipedo i cui lati erano piastre millefori su cui erano montati i componenti necessari (più che altro verso l’interno) e i fili per connetterli (quelli esterni, visibili, erano stesi piatti e ordinati sulla piastra), tranne il piano in alto, che era quasi per intero occupato dal porta-cassetta e poi a fianco di questo i bottoni di cui sopra e un display a otto segmenti. Sotto forse non era chiuso… ma non ricordo di averlo mai guardato sotto! I bottoni erano colorati ma non riportavano nessuna dicitura… bisogna procedere a memoria, e inoltre bisognava usare delle combinazioni per alcune funzioni. Purtroppo, anche in questo caso, non ricordo i dettagli. Avrò avuto meno di 10 anni all’epoca del suo uso regolare. Di recente (parliamo comunque di venti anni fa o giù di lì, ma sicuramente dopo il 1997) l’aveva usato per riversare le cassette dello Spectrum su file, ad uso e consumo di qualche emulatore. Dopodiché questo mangianastri scomparve dai miei radar: sicuramente i suoi pezzi sono stati tutti rimessi in cassettini per componenti e tutte le altre parti (per esempio quelle della meccanica) saranno in qualche scatola di scarpe o qualcosa del genere. Comunque quei bottoni, più altri simili che evidentemente aveva di riserva pronti all’uso, sono stati riutilizzati come accennato.↩︎

  7. Non partire da zero, se possibile, e non reinventare la ruota! Prendi qualcosa che funziona, modificalo secondo le tue esigenze e i tuoi scopi e migliora ciò che può, secondo te, essere migliorato. Niente, o molto poco, nasce dal niente. Farò accenno, quando le ho trovate, a possibili e probabili fonti usate da mio padre per questo progetto. Usando la tastiera come traccia e aggiungendo delle parole chiave (Arduino, synthesizer) è facile risalire all’articolo DIY Arduino String Synth with Analogue Filter.↩︎

  8. Ricordo il gesto delle mani che disegnavano un rettangolo immaginario davanti alla tastiera. Mi immaginai un’altra breadboard piazzata lì, con le lucine (LED) dei pattern ritmici e quanto altro.↩︎

  9. Sul desktop del computer aveva un file link amazon.txt in cui aveva messo da parte alcuni link per acquistare dei potenziometri.↩︎

  10. Di solito mi spiegava certe cose dando per scontate delle conoscenze tecniche molto superiori a quelle che ho. Gli ripetevo spesso che «io di hardware ci capisco poco» e che mi sarebbe piaciuto saperne di più… Comunque questo poco era abbastanza per seguire a grandi linee le cose che mi raccontava e fare domande od osservazioni pertinenti — o almeno così mi ha fatto sempre credere!↩︎

  11. Sulla parte software me la cavo decentemente e ho più dimestichezza di lui con il C (questa era la primissima volta che lo vedevo usare il C!)↩︎

Nessun commento:

Posta un commento

Commenta solo per dare un contributo utile, una critica costruttiva o fare un'osservazione acuta. Non commentare solo per dire che esisti anche tu o che ti piace o dispiace quello che hai letto e visto su questo blog.