USB Midi Controller for SDR Console (versione italiana)
- Aniello Di Nardo - IU8NQI
- 13 lug 2020
- Tempo di lettura: 4 min
Aggiornamento: 14 lug 2020

NOTE: If you looking for english version, click here for an automatic translation of this post
Scrivo velocemente questo post per iniziare a condividere il progetto (come da titolo) di un controller MIDI per SDR Console (il software per gestire le ormai famose chiavette USB per ricevere frequenze Ham, broadcast, ecc... con tecnologia SDR).
Spesso la difficoltà nell'utilizzo di queste chiavette (oltre ai soliti problemi di installazione) sta anche nel controllo, che può essere fatto solo attraverso il mouse. Da qui l'idea di realizzare un dispositivo USB esterno per controllare almeno le funzioni principali.
Con questo controller sarà possibile:
Utilizzare un Encoder rotativo (con annesso pulsante incorporato) per spostarsi in frequenza in modalità "ultra fine" e "fine", cioè a piccoli step
Utilizzare un ulteriore Encoder per spostarsi in frequenza in modalità "normale" e "large", ovvero, a step più larghi
Utilizzare 2 pulsanti per Mhz- e Mhz+
Utilizzare 2 pulsanti per Mode- e Mode +
Utilizzare 1 pulsante per Audio Mute
Utilizzare 1 potenziometro per il controllo del Volume
Infine avrete altre 2 potenziometri per utilizzi futuri (SDR Console al momento non dispone di altre caratteristiche attivabili via MIDI, ma in futuro potrebbero tornare utili! In ogni caso, si possono anche omettere).
Ovviamente l'assegnazione delle funzioni andrà fatta in SDR Console a lavoro terminato, associando ad ogni elemento la caratteristica desiderata.
Quello che segue è un progetto realizzato con l'utilizzo di una board Arduino UNO R3 (o compatibile a patto che utilizzi almeno il chip ATMega16u2, che consente di attivare la modalità DFU) e pochi componenti passivi. E' importante che la scheda Arduino, sia "USB capable", perchè dopo aver caricato lo sketch, si dovrà flashare con un bootloader il firmware per inserire "Arduino MIDI", un particolare firmware che permette ad Arduino di diventare una periferica MIDI a tutti gli effetti.
Mi limiterò alla parte elettronica e a fornirvi lo sketch, per tutto il resto: case, manopole, ecc... lascio alla vostra creatività il compito di completare il tutto in modo soddisfacente.
NOTA: Se non ve la sentite di cimentarvi nella realizzazione di questo progetto, posso valutare di realizzarlo io per voi... contattatemi e chiedete pure!
ELENCO COMPONENTI
Nr. 1 Scheda Arduino UNO R3 (o compatibile con modalità DFU attivabile)
Nr. 2 Encoder Rotativi a 5 pin (con push button built in) modello EC11
Nr. 2 Led (scegliete voi il colore)
Nr. 2 Resistenze da 390 ohm
Nr. 5 Pulsanti (normalmente aperti)
Nr. 3 Potenziometri da 50 K
SCHEMA ELETTRICO
Nel file che potete scaricare di seguito troverete lo schema elettrico in formato PDF. Si tratta solo di collegare i componenti passivi ai vari pin di Arduino, collegare le masse e, per i potenziometri, anche il pin 5V. Se seguite la sequenza di pin indicata nello schema, non dovrete nemmeno modificare il codice sorgente.
LO SKETCH
Nel file di seguito, invece, troverete il codice sorgente del programma che dovrete caricare sulla vostra Arduino UNO R3. Si tratta della prima release, quindi consideratela una beta!
NOTA: Dopo aver caricato lo sketch è necessario "trasformare" la vostra board Arduino UNO R3 in una periferica USB MIDI!
Per farlo dovete seguire questi passaggi:
Caricare lo sketch con Arduino Studio
Passare alla modalità DFU cortocircuitando i 2 pin (del blocco di 6 pin) più vicini al pulsante di reset
La board verrà automaticamente disinstallata e reinstallata come dispositivo DFU
Caricare il firmware "Arduino_Midi.hex" che troverete di seguito
Io ho utilizzato il bootloader Flip 3.4.7. che è molto facile da utilizzare (cercate in rete come utilizzarlo)
al termine scollegate la USB dalla vostra board Arduino e ricollegatela
Ecco fatto! La vostra board adesso è una periferica midi a tutti gli effetti (arduino midi).
Vi lascio anche il firmware originale della Arduino UNO R3 così che possiate ripristinarlo in caso di necessità.
REALIZZAZIONE PRATICA
Io ho iniziato col realizzare un box per contenere il tutto, utilizzando il fondo nero di un armadio ormai non più in uso, fatto di MDF da 3 millimetri. Misure del box:
larghezza 22 cm
altezza 7 cm.
profondità 10 cm.
Ho forato il lato anteriore per contenere tutti i componenti lasciando lo spazio omogeneamente sia in orizzontale che in verticale.
Ho montato tutti i componenti (come da foto) e ho effettuato i collegamenti seguendo lo schema elettrico, facendo attenzione ad effettuare saldature stabili, per non dover riaprire il box a causa di un filo staccato!
Infine ho forato il pannello posteriore per far uscire leggermente il connettore USB della scheda Arduino che ho fissato con della colla a caldo.
Ho fissato il pannello anteriore con 4 viti negli angoli e ho collegato il nuovo Controller USB MIDI al computer.
Ho lanciato SDR Console e ho configurato i comandi.
NOTA: I due encoder sono anche dei pulsanti. Quando viene premuto il pulsante dell'encoder si accende o si spegne il led corrispondete, modificando il cosiddetto "Control Change MIDI" della relativa manopola. In pratica a LED spento, il controllo invia un CC diverso da quando il LED è acceso, così facendo, SDR Console "ne vede due di manopole... al posto di una".
ELENCO DEI CONTROL CHANGE MIDI
Di seguito l'elenco dei CC MIDI che il controller invia a SDR Console (fate riferimento all'immagine fissata in alto, nel post, per identificare i controlli):
CC 80 - Manopola grande Encoder con LED spento
CC 81 - Manopola grande Encoder con LED acceso
CC 82 - Manopola media Encoder con LED spento
CC 83 - Manopola media Encoder con LED acceso
CC 84 - Pulsante rosso a sinistra
CC 85 - Pulsante rosso a destra
CC 86 - Pulsante blu a sinistra
CC 87 - Pulsante blu a destra
CC 88 - Pulsante giallo
CC 89 - Potenziometro con manopola rossa a sinistra
CC 90 - Potenziomentro con manopola rossa a destra
CC 91 - Potenziomentro con manopola bianca
CONFIGURAZIONE
Avviate SDR Console
Fate click sulla voice di menù TOOLS
Scegliete il bottone OPTIONS
Cliccate su CONTROLLERS e poi su MIDI
a questo punto si apre la maschera che vedete di seguito, non dovrete fare altro che associare ad ogni azione gli encoder, i pulsanti e i potenziometri:

Spero che il progetto sia stato di vostro interesse.
Cordiali saluti a tutti.
IU8NQI
Grazie per aver pubblicato il tuo lavoro. Io sto provando ad effettuare il tuo progetto naturlamente con arduino e python . Usando arduino in modo seriale. Un caro saluto da IS0DVM
Carlo in Alghero
is0dvm@algheroweb.it