English Version
French Version
Spanish Version
CV MIDIbox
Lista de características:
- requiere módulos CORE y AOUT o módulo AOUT_LC
- hasta 8 salidas CV con resolución de 12 bits
- 8 salidas gate
- Las salidas se pueden asignar a 16 canales MIDI y eventos Note/Velocity/Aftertouch/CC/NRPN/Pitchbender
- 8 apilamientos independientes de Note con 16 profundidades de nota!
- Modos Mono/Legato/8*Poly
- rango Pitchbender seleccionable
- Función Transpose de Octavas y Semitonos
- Función Split/Layer para el teclado
- Polaridad de Gate seleccionable
- Curva de salida seleccionable: V/Oct, Hz/V, Invertida, Exponencial
- Salida de reloj de sincronización de 24ppqn con varios divisores y múltiplos (96ppqn .. 24ppqn / 16)
- Función de Calibración fácil de usar.
- Fusor MIDI ( compatible con MIDIbox Link )
- configuración vía 4 botones/LCD o vía SysEx
Opciones de Hardware
-
Cuando planeas tu MIDIbox CV debes considerar las siguientes opciones:
- módulo MBHP_AOUT o módulo MBHP_AOUT_LC : la MIDIbox CV puede manejar un módulo MBHP_AOUT o hasta 4 módulos MBHP_AOUT_LC .
- MBHP_AOUT: interfaz de alta calidad con 8 salidas de 12 bits. Hacen falta 2 MAX525, estos DACs son muy caros (cada chip cuesta 30 EUR!).
Interconexiones a un módulo MBHP_AOUT
- MBHP_AOUT_LC:
interfaz de bajo coste con dos salidas CV, de configuración
12-bits/8-bits o 8-bit/8-bit . Se pueden encadenar 4
módulos MBHP_AOUT_LC para tener 8 salidas. Esta interfaz
es realmente barata, pero construir el módulo, con todas
las resistencias, lleva su tiempo..
Interconexiones a un módulo MBHP_AOUT_LC
- MIDIbox
CV también puede manejar DACs alternativos, pero hace falta una
modificación de controlador. Puedes encontrar los drivers
en cv_aout.inc y cv_aout_lc.inc
- LCD de 2x16 :
la solución más cómoda para configurar la MIDIbox
CV es el uso de la interfaz de menú. Aunque sea para
corrección de errores, tiene sentido gastarse los cuartos en una
LCD ( LCD con luz trasera de 2x16 disponible por unos 7.50 EUR en Reichelt),
además, durante el desarrollo no se ha planteado el uso sin un
menú/LCD. Se puede cambiar la configuración desde un PC
vía SysEx, pero aún no hay ningún editor
disponible. Por todo esto, por favor, considera hacerte la interfaz de
menú.!
- DINX1: hace
falta un registro Shift para los 4 botones de menú
(respectivamente los dos botones de menú + la rueda de
datos, ver abajo). No tiene sentido construír un módulo
DINX4 completo sólo para 4 salidas digitales, así que
sugiero construír los registros Shift de un
solo 74HC165 + 9 resistencias de 10k en la misma veroboard en la
que estén montados tus botones.
- 4 botones o
2 botones/datawheel: para la navegación del menú son
necesarios al menos un botón de Exit y uno de Select. Para
introducción de datos hacen falta botones de Inc/Dec o un
datawheel (rotary encoder).
Diagrama de interconexión para configuración de 4 botones
Diagrama de interconexión para 2 botones y un datawheel
Configuración de Hardware
Ya que MIDIbox CV soporta tantas opciones diferentes
de hardware, evidentemente hará falta personalizar el firmware.
La configuración básica (que nunca se altarará) no
se puede editar desde la interfaz de menú, debe cambiarse en el
archivo main.asm de la aplicación.
- Botones y datawheel opcional.
- 4
Botones : esa es la configuración por defecto que no
tendrás que cambiar si es la configuración que planeas
usar. Lo siguiente define en el archivo main.asm la selección de
números de pin en el módulo "DINX1":
#define DEFAULT_DIN_MENU_EXEC 7 #define DEFAULT_DIN_MENU_RIGHT 6 #define DEFAULT_DIN_MENU_LEFT 5 #define DEFAULT_DIN_MENU_SELECT 4
- 2
Botones y un datawheel: Hay que establecer DEFAULT_ENC_DATAWHEEL en 0
para seleccionar el primer encoder. Las conexiones del encoder se
especifican en mios_tables.inc, el número de pin de Exec y
Select en el archivo main.asm
;; mios_tables.inc: ;; SR Pin Mode ENC_ENTRY 1, 4, MIOS_ENC_MODE_DETENTED ; Data Wheel ;; (and 5)
;; main.asm: #define DEFAULT_DIN_MENU_EXEC 7 #define DEFAULT_DIN_MENU_SELECT 6
- Salidas
Gate : si se usa un módulo MBHP_AOUT, hay dos salidas gate
ya incluídas en el módulo por sí mismo que se
asignan a CV1 y CV2. El resto de salidas están disponibles
directemente en el socket J5 del módulo core. Esta es la
única opción para el módulo MBHP_AOUT_LC (sin
desventajas!).
Recuerda que las salidas gate en J5 están deshabilitadas por defecto.
Esto es para reducir el riesgo de que alguien que no se haya
leído la documentación cargue el firmware en
una MIDIbox64 (o similar), en la que J5 se usa como entrada de
pote. Haría un cortocircuito que podría destruir los
controladores de puerto.
Por esto, hay que habilitar J5 explícitamente en el archivo main.asm:
; usa PORTA y PORTE (J5 del módulo core) para 8 salidas gate adicionales #define ENABLE_J5 0
- Interfaz AOUT: debe especificarse si se han conectado al core módulos comunes MBHP_AOUT o MBHP_AOUT_LC :
; 1: un módulo MBHP_AOUT ; 2: hasta 4 módulos MBHP_AOUT_LC encadenados #define DEFAULT_AOUT_INTERFACE 1
- Si
se usa uno o más módulos MBHP_AOUT_LC, habrá que
especificar, además, la configuración de
resolución.:
; 1: primera salida CV 12bit, segunda salida CV 4bit ; 2: primera salida CV 8bit, segunda salida CV 8bit #define DEFAULT_AOUT_LC_1_RESOLUTION 1 ; 1st AOUT_LC module #define DEFAULT_AOUT_LC_2_RESOLUTION 1 ; 2nd AOUT_LC module #define DEFAULT_AOUT_LC_3_RESOLUTION 1 ; 3rd AOUT_LC module #define DEFAULT_AOUT_LC_4_RESOLUTION 1 ; 4th AOUT_LC module
- La
salida de sincronización de reloj está disponible en el
pin RD4 del PIC (puerto J14 del módulo core ) por defecto;
si se desea, se puede cambiar el pin:
#define DEFAULT_EXT_CLK_LAT LATD #define DEFAULT_EXT_CLK_PIN 4
- También
se puede configurar el ancho de pulso de la salida del reloj en piezas
de 500 uS. por defecto está a 1 mS:
; 0 -> 500 uS ; 1 -> 1 mS ; 2 -> 1.5 mS ; etc... #define DEFAULT_EXT_CLK_PULSEWIDTH 1
- Una
vez que se hayan hecho todos los cambios, hay que reconstruír la
aplicación como se describe en esta página HowTo.
Menús
-
El propósito de los botones/datawheel:
- EXIT: usa este botón para salir de la página del menú actual
- SELECT:
en la mayoría de los menús, este botón sirve para
seleccionar el parámetro (posición del cursor)
- DERECHO/IZQUIERDO o Datawheel: incrementación/decrecimiento del parámetro seleccionado
Y aquí teneis una descripción de las páginas de menú disponibles:

Página inactiva |
Esta
es la pantalla inicial de después del encendido. No sale nada de
interés- ni mensaje de estatus, ni monitor MIDI, ni nada- El
propósito de esta pantalla es garantizar la mejor latencia de
aprox. 50 uS! Sí! es cierto, no hablamos de milisegundos, sino
de
microsegundos!! :) Pulsa el botón EXIT para entrar en el menú.
|

MIDI Events |
En la mayoría de los menús puedes seleccionar la salida CV y otros parámetros.
La posición del cursor se cambia con el botón SELECT .
En
este submenú se pueden asignar eventos MIDI entrantes a las 8
salidas CV. Con "Note" la salida CV apropiada cambiará su nivel
de voltaje en las notas entrantes (1V/octava). Además, el
nivel de voltaje puede ser cambiado con el PitchBender dependiendo del
rango de Pitchbender Seleccionado (-> ver menú
Pitchrange ). Cada salida CV tiene su propio apilamiento de nota
(-> ver menú Note Handling /"manejo de nota").
Con "Vel." el nivel de voltaje cambia con la velocidad de la Nota.
Con "ATch." cambia el nivel de voltaje con los eventos Aftertouch entrantes.
Con
"CC" el nivel de voltaje se cambia con los eventos de controlador MIDI
entrantes. Hay que seleccionar por separado el número CC en el
submenú "CC/NRPN number" .
Con
"NRPN" el nivel de voltaje se cambia con los eventos NRPN entrantes.
Este es un formato de CC especial que transfiere un valor a una
resolución de 14 bits. El número NRPN LSB (CC#98) ha de
ser seleccionado por separado en el submenú "CC/NRPN number". El
MSB (CC#99) siempre es 0. Los datos MSB se transfieren con CC#6, los
datos LSB con CC#38.
Con "PitchBender" se cambia el nivel de voltaje con eventos PitchBender entrantes.
|

Transpose |
Las
salidas CV que estén asignadas a Notas se pueden transportar
individualmente mediante -8/+7 octavas y -8/+7 semitonos.
|

Zona Teclado |
Las
salidas CV asignadas a Notas pueden ser divididas en diferentes zonas
de teclado. Esto te permite reproducir diferentes sonidos con un mismo
teclado. También puedes "capear" sonidos solapando las zonas y
transportando las notas.
|

Pitchrange |
las
salidas CV asignadas a Notas se pueden controlar con un Pitchbender.
Este submenú permite definir cada cuántos semitonos
el Pitchbender debe cambiar de puesto el voltaje en direcciones
positiva y negativa.
|

Note Handling (manejo de nota) |
MIDIbox
CV tiene un apilamiento de nota individual para cada salida CV. El
apilamiento de nota no solo es ventajoso para poly sintetizadores, sino
también para modo sintetizadores, porque mejora la
reproducción en vivo.- sin apilamiento de nota, el modo
Legato/Mono no podría determinar las teclas presionadas: Legato
significa que la get será activada con la primera tecla
presionada, y se desconectará cuando todas las teclas sean
liberadas.
Mono
significa que la gate será re-activada si se presiona una nueva
tecla o si se libera una mientras las demás siguen presionadas.
Poly
asigna todas las teclas pulsadas a diferentes salidas CV. La primera
nota siempre se redirigirá a la salida CV #1, la segunda a la
#2, la tercera a la #3 y así si las salidas
apropiadas se asignan a Notes en el menú MiDI event. Esto
significa que podrás seguir usando las últimas salidas
para otros eventos MIDI.
|

CC/NRPN Number |
En
este submenú hay que seleccionar el número CC o NRPN LSB
que se usa cuando la salida apropiada reacciona a eventos CC o NRPN.
|

Gate Polarity (polaridad de puerta) |
En
esta página de menú se puede cambiar la polaridad de cada
salida gate individual. Tenemos por defecto salidas gate positivas (La
Gate se eleva cuando se pulsa una tecla).
Cambiando la polaridad, la gate se invertirá ( la gate disminuye cuando se pulsa una tecla).
|

Output Curve (curva de salida) |
En
esta página de menú se puede cambiar la curva de salida
para cada salida CV individual. 1V/Oct es una curva lineal que dan la
mayoría de los sintetizadores.
El
escalamiento de V/Hz es apropiado para sintetizadores como Korg MS-20.
Recuerda que este comportamiento de salida necesita ser calibrado, el
proceso de calibración se describe abajo.
Opcionalmente se puede invertir la curva lineal de salida.
También hay disponible una curva exponencial, esto puede ser útil si se ha asignado a la velocidad una salida CV.
|

Clock Divider (divisor de reloj) |
Hay
una salida de sincronización de reloj disponible en J14 del
módulo core que se activa en cada reloj MIDI entrante. El reloj
MIDI tiene una resolució de 24ppqn (24 pulsos por cuarto de
nota).
Opcionalmente
se puede incrementar la resolución del reloj 32, 48 o 96 ppqn.
Esto se hace usando un "phase locked loop" (PLL)(bucle de fase
bloqueada) implementado por software.
El reloj MIDI 24ppqn también se puede dividir por 1, 2, 3, 4, 5, ... 16 si se desea.
|

Calibration (Calibración) |
Esta página del menú simplifica la calibración del módulo AOUT .
Se
pueden seleccionar diferentes voltajes(Minimum, Middle, Maximum, 1.00V,
2.00V, 4.00V y 8.00V), que deben ser medidos en la salida CV.
Si los valores de salida no coinciden, se pueden ajustar con los trimmers de gain y offset.
El
proceso de calibración se describe abajo. Debe mencionarse que
la calibración es especialmente necesaria cuando cambias
entre1V/Oct a la característica curva de salida Hz/V .
|

MIDI Configuration (configuración MIDI) |
El
fusor MIDI te permite enchufar la MIDIbox y un teclado a un ordenador
con o sin la necesidad de una segunda interfaz MIDI In. Solo tienes que
enchufar el MIDI Out de tu teclado al MIDI In de tu MIDIbox y el MIDI
Out de tu MIDIbox al MIDI In del ordenador.
Si
conectas el MIDI In de tu MIDIbox con el MIDI Out de tu ordenador,
debes deshabilitar el fusor MIDI para evitar bucles retroalimentados
infinitos.
Si se deben conectar en cascada múltiples MIDIboxes basándose en el concepto MIDIbox Link, hay que declarar todas las MIDIboxes como MIDIbox Link Forwarding Point (punto de partida MIDIbox)...
excepto la última, que ha de ser declarada como MIDIbox Link Endpoint (punto final de enlace).
Nota:
En este menú, también puedes habilitar la opción
MIDIbox-to-COM con el botón SELECT button. Puedes encontrar
más información en Página de Interfaz MIDIbox-to-COM!
|

Send SysEx (Enviar SysEx) |
En
este submenú se puede seleccionar la ID de dispositivo, y con el
botón SELECT se puede activar manualmente una descarga SysEx que
contiene la configuración actual. Recuerda que la ID de
dispositivo no se guardará en la memoria EEPROM, sino que se
derivará desde la ID de dispositivo MIDI tras el encendido.
|
Calibración
-
Las
salidas
CV se pueden calibrar fácilmente desde la página del
menú "Calibration". Necesitarás un multímetro para
medir los niveles de salida, es más fácil con los
multímetros digitales que con los analógicos. Recuerda
que los multímetros baratos pueden tener una tolerancia
del 0.5% o más,
lo que significa que si mide 8.00V, el nivel de voltaje real
podría estar entre 8.04V y 7.96V. Los usuarios de AOUT_LC
notarán especialmente un error de linearidad causado por valores
de las resistencias de 10k. Por esto, no te tires mucho tiempo
intentando conseguir que los valores cuadren a la perfección,
intenta encontrar los valores que cuadren mejor!
- 1V/Octave:
el voltaje máximo debería ser 10.67V. Este valor se
deriva del número de notas disponibles (128): 10.67V / 128 =
0.0834V, una octava consta de 12 semitonos -> 12*0.0834V = 1.00V
Los usuarios de MBHP_AOUT_LC tienen que calibrar primero el
offset : seleccionar "Min.", y ajustar el potenciómetro de
offset hasta que la salida CV alcance 0.00V Después,
seleccionar "Max." y ajustar el potenciómetro de gain hasta que
el voltaje alcance aprox. 10.67V
Ahora recomprueba el gain: selecciona 1.00V, 2.00V, 4.00V y 8.00V y
ajusta el gain hasta que se alcancen los valores seleccionados con
tanta precisión comoc sea posible.
- Hz/V:
el voltaje máximo debería ser 10.24V. Se ha elegido este
valor para simplificar el cálculo de los niveles de voltaje
necesarios para cada nota.
Con 10.24V y resolución de 12 bits, cada paso del DAC
puede incrementar el voltaje 0.005V.
Importante:
primero ve a la página
"Output Curve"(curva de salida) y selecciona "Hz/V", de otra manera,
medirás resultados erróneos. Hay que seleccionar esta
curva para cada CV individual que deba usar esta característica. Después,
ve al menú de calibración, ajusta el offset (si hace
falta), selecciona el voltaje máximo, ajusta el gain hasta que
alcance10.24V, luego prueba con 1.00V,
2.00V, 4.00V y 8.00V
- Bipolar voltages(voltajes bipolares) (por ej. -5V/+5V):
Algunos sintes necesitan voltajes bipolares para controlar los
parámetros de sonido como Finetune, ADSR, CutOff/Resonance, etc.
Los usuarios del módulo MBHP_AOUT tienen que añadir la extensión CV Balanceada a cada salida para poder ajustar el voltaje de salida por debajo de los 0V. También hay disponible un potenciómetro de offset en el módulo AOUT_LC .
Para calibrar el CV balanceado primero selecciona "Middle" y
ajusta el pote de offset hasta que alcance 0.00V. Después
selecciona "Min.-" y "Max." y cambia los niveles ajustando el pote
de gain.
Comprueba de nuevo el voltaje de "Middle" y vuelve a hacerlo, hasta que
hayas encontrado valores que cuadren a la perfección.
Vistazo
-
Tarde o temprano, MIDIbox CV soportará el módulo MBHP_SHX8 ,
para que haya disponibles 64 salidas CV. En cualquier caso, debido a
las limitaciones de memoria, esta solución no podrá
manejar un modo polifónico de 64 notas ;-) Pero no es problema
mejorar el firmware
con una opción que permita controlar las 56 salidas restantes,
siempre vía CC.
También puede ser útil una solución multiplexadora S&H para el módulo MBHP_AOUT_LC ,
significaría que con un solo módulo se pueden hacer 8
salidas de 12 bits sin demasiado esfuerzo ni soldaduras.
Créditos
Esta
es la CV MIDIbox de Francois Buat. Él hizo muchas sugerencias
interesantes con respecto a las mejoras y probamos el firmware juntos
en sintes como Minimoog, Korg MS-20, rsf Kobol Expander, Polykobol II,
etc...

Last update: 2010-09-23
Copyright © 1998-2010, Thorsten Klose. All rights reserved.
|