stringtranslate.com

Caja MIDI

MIDIbox es un proyecto de código abierto no comercial con una serie de guías sobre cómo construir interfaces de dispositivos de instrumentos musicales ( MIDI ). A través de una serie de tutoriales de bricolaje , se guía a los usuarios en el proceso de construcción de un microcontrolador básico que también se puede utilizar para construir unidades de control MIDI de hardware para varios sintetizadores, software de grabación multipista y otros dispositivos MIDI; así como sintetizadores independientes, secuenciadores y otros proyectos.

Historia

Estudio MIDIbox
Caja MIDI LC

La plataforma de hardware MIDIbox es la continuación del trabajo anterior de Thorsten Klose sobre controladores MIDI. [1] [2] Los diseños se basan en un entorno estandarizado de módulos reutilizables e intercambiables. Poco después del lanzamiento de los primeros módulos, se formó un pequeño grupo de entusiastas que se convirtió en una próspera comunidad de desarrollo de código abierto.

Secuencia MIDIbox V3

La plataforma de hardware MIDIbox (MBHP)

MIDIbox SEQ V3

La plataforma se centra en módulos bien definidos y documentados basados ​​en circuitos pequeños y sencillos, para permitir el montaje por parte de aficionados. Estos módulos se ensamblan posteriormente para formar un proyecto completo. Todas las placas se pueden fabricar como PCB de una sola capa y placas prototipo diseñadas con un programa CAD gratuito . Casi todos los componentes son de orificio pasante para facilitar el montaje.

La primera plataforma de hardware MIDIbox (MBHP) se basó en su propio sistema operativo de código abierto , MIOS (MIDIbox Operating System), escrito en lenguaje ensamblador PIC , para lograr velocidad y precisión. Una capa de envoltura C proporciona una codificación simplificada. MIOS está diseñado y documentado para permitir una reconfiguración, adaptación y extensión sencillas por parte de aficionados y entusiastas.

La nueva plataforma de hardware MIDIBox, MIOS32, se ejecuta en procesadores basados ​​en ARM LPC1769, de NXP, y STM32F407, de STMicroelectronics , y se basa en un sistema operativo en tiempo real (RTOS) derivado de FreeRTOS . [3] La cadena de herramientas para MIOS32 se basa en GCC y utiliza solo lenguaje C.

Los módulos

Actualmente, hay disponibles alrededor de 15 módulos separados:

Módulos de microcontroladores

Módulos de entrada

Módulos de salida

Módulos secuenciadores

Secuenciador SEQV4 V4
MIDIBox Seq V3 (arriba), MIDIBox FM (abajo)

Módulos de sonido

Módulos de expansión de memoria

Módulos de E/S MIDI

Módulos varios

Módulo RTP-MIDI

Plataforma de hardware MIDIbox (MBHP)

El sistema operativo MIDIbox (MIOS)

El sistema operativo MIDIbox (MIOS) facilita el diseño de aplicaciones flexibles de controladores MIDI. MIOS se adhiere a una plataforma abierta y no comercial, que es fundamental para el intercambio de ideas y adaptaciones personales que no son posibles con los controladores comerciales.

La mayoría de los controladores creados por la comunidad se basan en diseños documentados existentes y comienzan a funcionar con el conjunto de funciones que ofrece el firmware existente. Los usuarios finales pueden mejorar sus dispositivos con código de programa intercambiable y personalizarlos para que se adapten a su aplicación anfitriona, sintetizador u otro dispositivo MIDI. Los usuarios también pueden personalizarlos para que se adapten a su propio flujo de trabajo preferido o diseñar un nuevo proyecto desde cero.

El código fuente de la aplicación, los esquemas de los módulos y los diseños de PCB están disponibles de forma gratuita para uso no comercial como plantillas para modificaciones y mejoras. De este modo, MIOS y la plataforma de hardware permiten un acceso sencillo al desarrollo de microcontroladores por parte de aficionados, al tiempo que posibilitan aplicaciones fuera del ámbito del mercado MIDI comercial y generalizado.

MIOS estuvo bajo licencia GPL hasta la versión 1.8. Las versiones posteriores requieren ahora el permiso de Thorsten Klose para su uso comercial. [6]

Presupuesto

El sistema operativo consta de un núcleo que proporciona al usuario conexiones a eventos de hardware y software, y funciones para la interacción con módulos de la plataforma de hardware. Un módulo central con un microcontrolador PIC18F452 puede manejar

Los controladores en segundo plano están disponibles para las siguientes tareas de control:

Todo el sistema operativo ha sido escrito en lenguaje ensamblador y optimizado para la velocidad. MIOS utiliza actualmente 8k de memoria de programa y 640 bytes de RAM.

Solo se necesitan 75 μs para leer 128 pines de entrada digital y escribir en 128 pines de salida. Se manejan 16 codificadores rotatorios en 100 μs. Las entradas analógicas se escanean en segundo plano cada 200 μs; los cambios mayores que un rango mínimo definible activan un enlace de usuario.

Se pueden activar funciones dedicadas con hasta 256 eventos MIDI; el procesamiento de la lista de eventos requiere unos 300 μS. Los eventos MIDI también pueden procesarse mediante una rutina de usuario para el análisis de sysex o tareas similares. Hay disponible un temporizador de usuario para el código activado por tiempo.

Es posible admitir otros lenguajes de alto nivel además de C.

Hardware MIOS

El hardware de MIOS está organizado en torno al concepto de MIDIBox Hardware Platform (MBHP). Las MBHP son placas base muy versátiles que ofrecen el mayor número posible de conexiones para un procesador determinado. Actualmente hay cuatro versiones de MBHP disponibles:

Cuando un proyecto necesita menos E/S que las disponibles en un MBHP determinado, el concepto MIDIBox permite crear una PCB simplificada dedicada a este proyecto. Este es el enfoque utilizado en Sammich MIDIBox SID [7] y Sammich MIDIBox FM. Estos dos kits contienen el diseño original del MBHP, pero con una PCB simplificada, dedicada a la conexión con un chip SID o un chip YMF262.

En el caso del STM32F407 MBHP, la CPU está montada en un módulo utilizado como placa hija, fabricado por ST y vendido como placa de desarrollo (llamado STM32F4 Discovery por ST). [8] El usuario final no tiene que lidiar con componentes SMD, ya que la placa hija está montada en conectores estándar de 0,1" [9].

Soluciones completas

En este momento hay 11 proyectos completamente documentados disponibles, así como una gran cantidad de proyectos de usuarios generados por la comunidad. Los proyectos oficiales son los siguientes:

Secuenciador de 16 pistas Live Step y Morph + arpegiador avanzado

Sintetizador controlable por MIDI de hardware basado en el chip de sonido MOS Technology SID (MOS6581) que viene con el Commodore 64/128

Sintetizador de hardware basado en el chip de sonido Yamaha YMF262 (también conocido como OPL3) para generar los famosos sonidos FM conocidos de las tarjetas de sonido Soundblaster (compatibles) de principios de los 90

Fusiona dos entradas MIDI independientes en una única salida

Enruta varias MIDIboxes a un único puerto MIDI

Proporciona funcionalidad básica para recibir y transmitir eventos MIDI

Proporciona salidas CV y ​​de compuerta para controlar dispositivos controlados por voltaje, como sintetizadores modulares analógicos.

Controlador MIDI de 64 canales completo

Versión extendida del MIDIbox 64

La interfaz MIDIO128 se utiliza para controlar hasta 128 pines de salida digital y reaccionar ante hasta 128 pines de entrada digital a través de MIDI.

Alternativa al MIDIbox 64/64E

Informa de eventos que se transmiten a través del cable MIDI en formato legible.

Véase también

Referencias

  1. ^ "Thorsten Klose", SynthDIY
  2. ^ Sitio web de Thorsten Klose, "MIDIBOX.org", uCApps.de
  3. ^ "RTOS (sistema operativo en tiempo real) líder en el mercado para sistemas integrados con extensiones de Internet de las cosas". FreeRTOS . Consultado el 9 de marzo de 2017 .
  4. ^ "MIDIbox se convierte en RTP-MIDI... - Conceptos de diseño - Foro MIDIbox". Midibox.org . Consultado el 9 de marzo de 2017 .
  5. ^ "KissBox la respuesta de la red". www.kissbox.nl . Archivado desde el original el 9 de abril de 2013. Consultado el 17 de enero de 2022 .
  6. ^ "Registro de cambios de MIOS8". UCApps.de . Consultado el 9 de marzo de 2017 .
  7. ^ "MidiBox SammichSID | Vintage Synth Explorer". Vintagesynth.com . Consultado el 9 de marzo de 2017 .
  8. ^ "STM32F4DISCOVERY - Kit de descubrimiento con microcontrolador STM32F407VG * Nuevo código de pedido - STMicroelectronics". St.com . Consultado el 9 de marzo de 2017 .
  9. ^ "Página de inicio de BEB DigitalAudio". Beb.digitalaudio.free.fr . Consultado el 9 de marzo de 2017 .

Enlaces externos