Tabla de contenido:

Convierta la batería de X-box Rock Band en una batería electrónica Midi Stand Alone .: 4 pasos (con imágenes)
Convierta la batería de X-box Rock Band en una batería electrónica Midi Stand Alone .: 4 pasos (con imágenes)

Video: Convierta la batería de X-box Rock Band en una batería electrónica Midi Stand Alone .: 4 pasos (con imágenes)

Video: Convierta la batería de X-box Rock Band en una batería electrónica Midi Stand Alone .: 4 pasos (con imágenes)
Video: GUITARRISTAS ANTES VS GUITARRISTAS AHORA !!! 2024, Mes de julio
Anonim

Tuve la suerte de conseguir una batería x-box usada, tiene una forma un poco tosca y no tiene paleta, pero nada que no se pueda arreglar. La convierto en una batería eléctrica independiente. Leer el valor analógico del sensor piezoeléctrico y convertirlo en comandos MIDI.

El hardware actual consiste en RPI-Zero, mcp3008 que está conectado a los sensores piezoeléctricos originales en los tambores configurados.

Suministros

MCP3008 + kit de batería x-box con zócalo IC, o 5 piezo montado en alguna superficie. tarjeta de sonido rpi zerousb para altavoces amplificados rpisimple algunos cables y pcb.6 resistencias de 10M ohmios y algunos encabezados macho para la placa del conector piez

Paso 1: Prepare el sensor piezoeléctrico

Image
Image

Primero lo tomé una parte y encontré todos los sensores piezoeléctricos, el cableado y creé una placa con una resistencia de 1M entre los 2 cables de cada piezo.

El Cymbal tenía un interesante circuito adicional en ellos. Lo tomé una parte dejando solo el sensor. Quiero algún día averiguar cuál es la salida de ese circuito, Esta parte de las pruebas y el trabajo se realizó en arduino uno.

Paso 2: escriba un código

Arreglé un poco la caja x, reparando todas las partes rotas. Se quitaron las almohadillas que se deshacían.

Y finalmente obtuve un código que funciona lo suficientemente bien para mi hijo, que aún no es perfecto.

El código original que quería usar y el que me ayudó a resolver el mío es este

pero al trabajar en ello descubrí que detiene la nota midi justo después de enviarla. lo cual está bien si juegas un juego en la computadora, que es para lo que está destinado ese código, pero no tan bueno cuando realmente quieres tocar la nota midi.

Puede descargar el código en el archivo adjunto; tenga en cuenta que hay 4.

También agregué una característica realmente interesante que le permite elegir la nota para cada teclado, incluso guarda la configuración en la EEPROM.

y los 3 programas que menciono en el video son loopbe1, puente serial midi sin pelo y VMPK

El siguiente gran paso es moverlo para que funcione en una frambuesa pi.

Paso 3: haz que funcione en una Raspberry Pi

Image
Image

Después de casi renunciar al proyecto, volví a preguntar en algunos lugares y me dirigieron a un artículo que me puso en el camino correcto que es fluidsynth.

Pasé varias horas para hacerlo funcionar y finalmente lo hice. El problema principal era que midi funcionara en el Rpi. Para eso instalé fluidsynth usando este gran tutorial.

sandsoftwaresound.net/qsynth-fluidsynth-ras…

Configuro el Arduino para enviar comandos en serie, y luego los escucho con el serial de python en la frambuesa y lo envío a midi a través del fluidsynth.

Incluso logré descargar un archivo sf2 adecuado para batería.

Como puede ver, a Kesem le encanta. El arduino estaba usando el mismo código y para el rpi escribí el código adjunto, no pude adjuntar los archivos sf2, pero se pueden encontrar fácilmente usando google.

Paso 4: hazlo independiente

Hágalo Stand Alone
Hágalo Stand Alone
Hágalo Stand Alone
Hágalo Stand Alone

El paso más importante para que funcione de forma independiente fue eliminar el arduino e intentar que funcione un poco más rápido. había diferencias notables entre el "hit" y el sonido reproducido en el midi. Entonces, para deshacerme del arduino necesitaba una alternativa analógica y aquí es donde el mcp3008 vino al rescate. puedes ver en las imágenes que creé un tablero de ruptura para ello, y en el video puedes encontrar todos los detalles en los pasos. El mcp3008 usa spi para comunicarse y conecté el 2 y ejecuté algunas pruebas, adafruit tiene una gran biblioteca para el mcp3008 para python. nuevamente instrucciones en el video. Usé un rpi zero debido a su tamaño y agregué una tarjeta de sonido usb externa, fr la salida de sonido. Usé un altavoz simple con amplificador incorporado para reproducir el sonido. El código actual también se adjunta y se ejecuta en el propio rpi y está configurado como un servicio, por lo que se ejecuta cuando se carga. Una característica realmente interesante que agregué fue conectar el pequeño botón de reinicio que estaba en la caja y usarlo para apagar el sistema, ya que estoy funcionando sin pantalla. El código actual aún no es perfecto, y sigo tratando de mejorarlo y estoy mejorando, así que si tienes ideas para que funcione aún mejor cuando se trata de midi, me encantaría escucharlo.

Recomendado: