RetroPie Arcade V4.0

Con tutti gli Arcade RetroPie/Raspberry Pi in costruzione, ho deciso di cimentarmi con uno da Raspberry Pi 3 - ma volevo qualcosa di leggermente diverso. Non mi è mai interessato veramente esporre le porte sul Pi per collegare alimentazione/video/USB, quindi ho usato porte pass-through. Non ho aggiunto neppure lo schermo, poiché il progetto prevede il collegamento a un televisore/monitor. Del resto, in casa, non ho spazio. C'è un eccitatore interno per il suono con un interruttore per cambiare tra HDMI e uscita audio interno/cuffie oltre a un potenziometro per controllare il volume dell'eccitatore. Dato che online abbondano i progetti che descrivono pulsanti e configurazione del sistema operativo, vi dirò semplicemente cosa ho fatto di diverso.

Il circuito di alimentazione è controllato dalla scheda a microcontroller Teensy LC di SparkFun. Quando si preme il pulsante di accensione, la Teensy LC che lo monitora attiva un relè che controlla l'alimentazione al Raspberry Pi, attivandolo. Il Raspberry Pi invia quindi un segnale alto al microcontroller per comunicargli che è stato attivato e il microcontroller Teensy attiva il pulsante e i LED dello stick. Quando il pulsante di alimentazione viene nuovamente premuto per spegnere il Pi, la scheda Teensy invia un segnale al Pi che inizia il processo di spegnimento. Una volta che il sistema operativo è completamente spento, Teensy disattiva il relé, spegnendo completamente Pi e luci. La scheda Teensy viene alimentata finché la macchina è accesa, ma la corrente assorbita è minima per cui la cosa non mi preoccupa molto. Sul coperchio della scatola vi è anche un piccolo LED rosso per segnalare quando è connessa all'alimentazione.

Sul retro della scatola vi sono invece un potenziometro per l'audio, il diffusore esterno/spinotto per la cuffia, un connettore cilindrico per l'alimentazione, uno slot per scheda microSD, la connessione HDMI e due porte USB. Una porta USB è passante e comunica con la porta USB del Raspberry Pi, per cui posso collegare una memoria flash, altri controller, e così via. L'altra porta USB è collegata al microcontroller Teensy, il che mi permette di riprogrammarlo se voglio cambiare l'illuminazione senza dover aprire la scatola. Due aperture laterali consentono il passaggio dell'aria e non sono affatto sgradevoli da vedere, quando le luci sono accese. Lo slot per la microSD esterna è collegato al Pi per mezzo di un apposito cavo di prolunga.

Le decalcomanie delle etichette sulle porte sono state realizzate utilizzando una taglierina-plotter Cricut. Nelle versioni precedenti della scatola, il coperchio e i lati presentavano una grafica stile gaming, ma per la versione finale ho preferito il look nero pulito su cui risalta il colore acceso dei pulsanti.

I pulsanti sono pulsanti arcade trasparenti di Adafruit. Li sentivo un po' spugnosi, quindi ho inserito una molla aggiuntiva a ciascuno di essi che conferisce loro una bella sensazione di solidità. Dato poi che sono trasparenti, ho installato una striscia di 6 Neopixel attorno a ciascun pulsante per aggiungere effetti luminosi. Poiché ogni LED è indirizzabile individualmente ed è RGB, posso creare diversi effetti di luce su ogni singolo pulsante, inclusi più colori sullo stesso pulsante. Attualmente i pulsanti si accendono in base al sistema emulato: solo due per NES, tutti e sei per SNES (a colori per abbinarli ai comandi originali), uno per Daphne, ecc. Ho ottenuto questo risultato scrivendo un breve script in python per leggere il sistema attivo e passare le informazioni al microcontroller Teensy usando un'interfaccia personalizzata a 3 canali a 1 bit (che, mi son detto, perché non chiamarla "DragonSpeech"?). Anche il joystick si illumina grazie a un mini Neopixel all'interno del piede e della sfera cava (disponibili da www.paradisearcadeshop.com). Mentre il sistema è acceso ma non si sta giocando si producono anche un paio di altri effetti di luce casuali.

I pulsanti sono fantastici per i giochi arcade, ma ho anche un controller per PlayStation 3 collegato tramite Bluetooth e un gamepad USB per i giochi per console. Un piccolo dongle collegato al Pi consente di usare tastiera e mouse wireless, il che mi permette di giocare ai giochi DOS e lavorare con il terminale senza aprire la scatola o occupare l'unica porta USB esterna. La porta USB è veramente utile per collegare un'unità flash e trasferire file o collegare un controller USB extra.

Ho usato un cavo a nastro e connettori rettangolari per connettere tutto sul coperchio in modo che sia facilmente rimovibile. Con il coperchio rimosso è molto più facile apportare modifiche e correzioni. Lo stick e tutti i pulsanti esterni arcade sono stati impostati direttamente attraverso l'interfaccia GPIO del Pi utilizzando l'eccellente tutorial Pocket PiGRRL di Adafruit. Da ogni pulsante escono anche fili aggiuntivi verso la scheda Teensy, che li monitora come interrupt e li fa lampeggiare con luce bianca quando vengono premuti.

Questa è la scatola con il coperchio rimosso. Il cablaggio è piuttosto disordinato, ma lo spazio è ridotto e al termine farò più ordine. ☺

In questa realizzazione ci sono molte cose eccessive ed è possibile realizzare macchine da gioco RetroPie molto meno costose, ma per me è stata anche un'esperienza di apprendimento. Mi sono divertito molto ad aggiungere componenti e capire come far funzionare il tutto.

Informazioni su questo autore

Image of Jerry Sturre

Jerry Sturre, Supervisor - Applications Engineering presso DigiKey, è a capo di un team che aiuta i clienti a trovare modi migliori per utilizzare nuove tecnologie e componenti innovativi per i loro progetti. È giunto in DigiKey nel 2001 e nel 2014 si è trasferito in Progettazione applicazioni. Jerry si è laureato in scienze applicate in tecnologia elettronica presso il Northland Community and Technical College. Un appassionato del fai da te e gamer, passa gran parte del tempo libero con un saldatore o un joystick in mano.

More posts by Jerry Sturre
 TechForum

Have questions or comments? Continue the conversation on TechForum, DigiKey's online community and technical resource.

Visit TechForum