Sommario:

Trasforma la batteria X-box Rock Band in una batteria elettronica Midi Stand Alone.: 4 passaggi (con immagini)
Trasforma la batteria X-box Rock Band in una batteria elettronica Midi Stand Alone.: 4 passaggi (con immagini)

Video: Trasforma la batteria X-box Rock Band in una batteria elettronica Midi Stand Alone.: 4 passaggi (con immagini)

Video: Trasforma la batteria X-box Rock Band in una batteria elettronica Midi Stand Alone.: 4 passaggi (con immagini)
Video: Stava cantando i Maneskin e guardate cosa è successo! 2024, Dicembre
Anonim

Sono stato fortunato ad avere una batteria x-box usata, è in una forma un po 'ruvida e senza paddle, ma niente che non possa essere riparato. La trasformo in una batteria elettrica autonoma. Leggere il valore analogico dal sensore piezo e trasformarlo in comandi MIDI.

L'hardware attuale è costituito da RPI-Zero, mcp3008 che è collegato ai sensori piezoelettrici originali sulla batteria impostata.

Forniture

MCP3008 + IC socket x-box drum kit, o 5 piezo montati su una superficie. rpi zerousb sound card per rpsemplici altoparlanti amplificati alcuni fili e pcb.6 resistori da 10M ohm e alcuni connettori maschio per la scheda del connettore piez

Passaggio 1: prepara il sensore piezoelettrico

Image
Image

Per prima cosa ne ho preso una parte e ho trovato tutti i sensori piezoelettrici, il cablaggio e ho creato una scheda con un resistore da 1 M tra i 2 fili di ciascun piezoelettrico.

Il piatto aveva un interessante circuito extra in loro. Ne ho preso una parte lasciando solo il sensore. Voglio un giorno capire qual è l'output di quel circuito, Questa parte del test e del lavoro è stata eseguita su arduino uno.

Passaggio 2: scrivi del codice

Ho aggiustato un po' la x-box, aggiustando tutte le parti rotte. Rimosse le pastiglie che si staccavano.

E finalmente ho un codice che funziona abbastanza bene per mio figlio, non ancora perfetto.

Il codice originale che volevo usare e quello che mi ha aiutato a capire il mio è questohttps://github.com/evankale/ArduinoMidiDrums

ma quando ci ho lavorato ho scoperto che interrompe la nota midi subito dopo averla inviata. il che va bene se giochi sul computer, che è lo scopo di quel codice, ma non così eccezionale quando vuoi davvero suonare la nota midi.

Puoi scaricare il codice nel file allegato - nota che ce ne sono 4.

Ho anche aggiunto una caratteristica davvero interessante che ti permette di scegliere la nota per ogni tastiera, salva anche le impostazioni nella EEPROM.

e i 3 software che menziono nel video sono loopbe1, bridge midi serial hairless e VMPK

Il prossimo grande passo è spostarlo per lavorare su un lampone pi.

Passaggio 3: farlo funzionare su un Raspberry Pi

Image
Image

Dopo aver quasi rinunciato al progetto, ho chiesto di nuovo su alcuni posti e sono stato indirizzato a un articolo che mi ha messo sulla strada giusta che è fluidsynth.

Trascorro diverse ore buone per farlo funzionare e alla fine l'ho fatto. Il problema principale era far funzionare il midi su Rpi. Per questo ho installato fluidsynth usando questo fantastico tutorial

sandsoftwaresound.net/qsynth-fluidsynth-ras…

Ho configurato Arduino per inviare comandi seriali, quindi ascoltarli con python serial sul lampone e inviarlo a midi tramite fluidsynth.

Sono persino riuscito a scaricare un file sf2 appropriato per la batteria.

Come puoi vedere Kesem lo adora. L'arduino stava usando lo stesso codice e per l'rpi scrivo il codice allegato, non sono riuscito ad allegare i file sf2 - ma possono essere facilmente trovati usando google.

Passaggio 4: fallo stare da solo

Rendilo da solo
Rendilo da solo
Rendilo da solo
Rendilo da solo

Il passo più grande per farlo funzionare da solo è stato rimuovere l'arduino e provare a farlo funzionare un po' più velocemente. c'erano notevoli divari tra il "colpo" e il suono riprodotto sul midi. Quindi per sbarazzarsi dell'arduino avevo bisogno di un'alternativa analogica ed è qui che è venuto in soccorso il mcp3008. puoi vedere nelle immagini che ho creato una break out board per questo, e nel video puoi trovare tutti i dettagli sui passaggi. Il mcp3008 usa spi per comunicare e ho collegato il 2 e ho eseguito alcuni test, adafruit ha un'ottima libreria per il mcp3008 per python. di nuovo le istruzioni nel video. Ho usato un rpi zero a causa delle sue dimensioni e ho aggiunto una scheda audio USB esterna, dall'uscita audio. Ho usato un semplice altoparlante con amplificatore integrato per riprodurre il suono. Anche il codice corrente è allegato e viene eseguito sull'rpi stesso e sul suo set come servizio, quindi può essere eseguito quando caricato. Una caratteristica davvero interessante che ho aggiunto è stata quella di collegare il piccolo pulsante di ripristino che era sulla scatola e utilizzarlo per spegnere il sistema, dal momento che sto correndo senza schermo. Il codice attuale non è ancora perfetto e continuo a cercare di migliorarlo e sto migliorando, quindi se hai idee per farlo funzionare ancora meglio quando si tratta del midi, mi piacerebbe sentire.

Consigliato: