Se ti dicessi che con Arduino potresti tranquillamente costruirti un Arcade Stick per giocare ai tuoi titoli preferiti sul MISTer FPGA? Beh, dopo tutto, si tratta solo di costruire un encoder. Un encoder non è altro che un dispositivo elettronico che ha un numero x di ingressi e un numero n di uscite con x ≤ 2^n. In altre parole, si tratta di un componente elettronico che presenta in Output un valore dipendente dal suo ingresso Input. Ovviamente, nel caso in cui più ingressi vengano attivati contemporaneamente (immaginate i tasti combo dei picchiaduro – NDR), l’encoder adotta una serie di “priorità” in maniera tale da attivare l’output evitando valori indesiderati.
In commercio esiste una varietà incredibile di questi dispositivi e, una delle strade più seguite, è quella del cosiddetto “Joypad hack”, ovvero procurarsi il controller di una determinata console, espiantarne il PCB e saldare sulle piste dei relativi comandi, i fili da mandare a leva e pulsanti.
Quello nella foto sottostante, è un classico esempio di joypad hack.
In genere si tratta di gamepad di poco valore o con la scocca rovinata, ai quali si cerca di dare una seconda vita con questo tipo di pratiche. Questa è una pratica perfettamente funzionante, ma che generalmente si utilizza per realizzare arcade stick da utilizzare con quella determinata console. Ad esempio, se avete un Super Famicom e volete realizzare un Arcade Stick senza comprare l’originale, è sufficiente recuperare il PCB di un joypad del Super Famicom e utilizzarlo come “cuore pulsante”.
Noi però siamo maker e ci piace Arduino. Ma più che altro, vogliamo realizzare un dispositivo che abbia una buona compatibilità con diverse piattaforme. Quello che realizzeremo oggi si chiama DaemonBite-Arcade-Encoder, ed è compatibile anche con il MISTer FPGA, una piattaforma che consente di simulare l’architettura hardware di un enorme numero di piattaforme gioco. Se non sai cosa sia un FPGA, ti consiglio di leggere l’articolo dedicato scritto da Simone.
Ecco cosa ti occorre per realizzare l’Arcade Stick
- Una scatola di legno che misuri almeno 40×30 (cm.). Se non ne hai una, vai in un Brico e fai tagliare delle tavolette. L’altezza dovrebbe essere di almeno 5 cm.
- Joystick
- Pulsanti
- Fili
- Board Arduino Pro Micro
- Arduino IDE
- Cavetto USB
I consigli per iniziare sono sempre quelli: due misure, un taglio solo.
La tavoletta superiore dove andrai a innestare i pulsanti e la leva, dovrà essere non troppo spessa. Non andare oltre i 3 mm, altrimenti dovrai cambiare tipologia di bottoni e aggiungere una prolunga all’albero della leva. I kit “sanwa style” hanno i pulsanti con le due alette di aggancio che richiedono pannelli di appoggio che abbiano un certo spessore. Altrimenti, occorre andare su pulsanti con fissaggio “a vite”. Mi raccomando, scegli bene cosa adottare, perché tutti i pezzi del puzzle dovranno necessariamente andare al loro posto. Non preoccuparti, metterò tutto ciò che ti serve nei link utili in fondo all’articolo.
La prima cosa da tracciare sul pannello superiore, è la dima dalla quale andranno poi ricavati i fori per leva e pulsanti. È sufficiente stamparla senza alcun ridimensionamento per averla delle dimensioni corrette. Le misure dei fori per leva e bottoni da 30 mm sono, rispettivamente, 21 mm 29,5 mm. Aiutati con delle frese a tazza, se non le hai puoi praticare tanti piccoli fori lungo la circonferenza per poi rifinire il tutto con una lima. Fatto questo, hai fatto oltre il 50% del lavoro.
A questo punto, ti mancano almeno altri quattro fori per i cosiddetti “pulsanti di servizio”. Ovvero, START, STOP, SERVICE1 e SERVICE2. A seconda della console utilizzata, infatti, avere 4 pulsanti di servizio ti consente di mappare quattro funzioni in più senza dover rinunciare a qualcuno degli 8 pulsanti della plancia che hai tracciato prima. Non essendo bottoni fondamentali per le prestazioni di gioco, puoi usare anche quattro pulsanti qualsiasi. Misurali col calibro e pratica i quattro fori. Dai che ci sei quasi!
Se tutto sarà andato come previsto, alla fine del montaggio delle tavolette dovresti avere un risultato simile a questo:
Adesso che abbiamo la struttura, dobbiamo montare leva e pulsanti, preparandoci poi al cablaggio. Non dimenticarti di praticare il foro per far uscire il cavetto. Se sei un patito dell’estetica, puoi adottare un ingresso USB da pannello. Valuta tu, non è essenziale, ma in quanto a bellezza non c’è assolutamente paragone.
Prima di montare l’Arduino Pro Micro all’interno della struttura dell’Arcade Stick, dobbiamo prima programmarlo. Segui questo link e, dopo aver premuto il bottone verde, clicca su “Download Zip”. A questo punto, hai tutti i file necessari per procedere alla configurazione. Apri Arduino Ide e, dopo aver collegato Arduino Pro MIcro, richiama il listato DaemonBiteArcadeEncoder.ino e fai l’upload dello sketch all’interno della board. Adesso abbiamo il sistema di controllo, ma dobbiamo fare i collegamenti all’interno dell’Arcade Stick.
A questo proposito, puoi decidere se saldare le intestazioni alla board per connettere i fili singoli mediante cavetti dupont oppure procedere a saldare filo per filo. Io generalmente adotto entrambe le soluzioni, a seconda della tipologia di stick che vado a costruire. Nella foto sottostante hai entrambe le soluzioni:
Lo schema dei collegamenti è questo:
Il consiglio che ti do, è quello di portarti un filo di massa che parte dalla leva del joystick e passa per tutti i pulsanti che hai inserito sul corpo dell’arcade. In questo modo, potrai andare direttamente con un filo soltanto alla board, collegando ogni massa al pin GND della board. Questo è lo schema di assegnazione dei tasti nel caso tu voglia utilizzarlo per la PlayStation 3. Volendo, sul pin +5V, potrai collegare qualche LED. Nei link utili ti ho messo il cavetto USB corto che va dall’Arduino Pro Micro al porto USB sul pannello. Se invece vuoi far passare il filo direttamente dalla board al MISTer FPGA (o a qualsiasi altro dispositivo compatibile – NDR) ricordati di scegliere la versione da almeno un metro. Se invece vuoi “esagerare” e farti realizzare un cavetto USB che riprenda i colori che hai scelto per il tuo Arcade Stick, dai uno sguardo al sito di KHOR. È un nostro amico e realizza cavi su misura compatibili con Arduino!
Chiaramente, potrai utilizzarlo per giocare con tutti i vari core delle console presenti sul tuo MISTer FPGA, ti basterà effettuare di volta in volta una differente assegnazione dei tasti.
Chiaramente, come detto in apertura di articolo, ci possono essere infinite possibilità per creare un Arcade Stick. Con questo progetto, volevamo esplorare -ancora una volta- le infinite possibilità date da Arduino.
Link utili:
- Joystick
- Prolunga staffa joystick
- Pulsanti a vite (per pannelli di spessore superiore a 3mm)
- Pulsanti snap on (per pannelli di spessore fino a 3mm)
- Arduino Pro Micro
- Arduino IDE
- Cavetto USB
- Porta USB da pannello
Iscriviti ai nostri gruppi Telegram