sábado, 27 de julio de 2013

Controlador Midi para Organo Hammond - Parte 1

Prototipo funcionando con Arduino Leonardo y Multiplexor CD 4067


¡Hola de nuevo!

Estoy trabajando ahora en un proyecto personal, en el que pretendo crear un controlador adaptado para el software B4 II de Native Instruments, que és para mi gusto el mejor emulador de hammond que hay.

Native Instruments B4 II
Posteriormente el hardware podría adaptarse para controlar un sintetizador cualquiera, digamos un HOAX-3 que por cierto ¡suena de locura! (http://www.keyboardpartner.de/hammond/hoax.htm).  Por el momento nos centramos en la solución software.

Para ésto he comenzado mis pruebas con un Arduino Leonardo, el cuál tiene varias diferencias respecto al UNO y los demás en como trabaja con el puerto serial.
Por algunos meses estuve atascado con varios proyectos que trabajan con el puerto serial, incluido proyectos MIDI, pero después de investigar un poco me enteré de que el Leonardo simplemente trabaja de manera distinta con el puerto seríal, debido a que toda la solución está hecha en un solo chip.

Por ejemplo, el código de Ejemplo que viene con el programa del arduino que se llama "MIDI", simplemente no funcionaba. Y otro proyecto que estuve tratando de hacer con unos potenciometros digitales MCP41010 no funcionaban.
Todo ésto se debio a una simple instrucción, el Setup() trabaja de ésta manera en el código original:
void setup() {
  //  Set MIDI baud rate:
  Serial.begin(31250);
}
Para trabajar con el arduino Leonardo, simplemente hay que utilizar la libreria Serial1 en vez de Serial:
void setup() {
  //  Set MIDI baud rate:
  Serial1.begin(31250);
}
Y esto se aplica a todas las apariciones de la librería Serial.

Teniendo ésto resuelto, me animé a comenzar mi proyecto mas a fondo.

En la siguiente entrada pondré los detalles de el primer test que hice para utilizar un potenciometro como controlador midi, a través de un multiplexor de 16 canales, ampliando así la cantidad de entradas al Arduino.

¡Saludos!