Subversion Repositories svn.mios


Rev 1130 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed


<H1>MIDIbox NG</H1>
<H3>Created 2012/13</H3>

<P CLASS=INFO>MIDIbox NG is the "next generation" controller, running on a <A HREF="mbhp_core_lpc17.html">MBHP_CORE_LPC17</A> or <A HREF="mbhp_core_stm32f4.html">MBHP_CORE_STM32F4</A> module.<BR>
It replaces the old PIC based projects <A HREF="midibox64.html">MIDIbox64</A>, <A HREF="midibox16e.html">MIDIbox64E</A> and <A HREF="midibox_lc.html">MIDIbox LC</A></P>

<P CLASS=INFO>The firmware is currently in beta state. Details can be found in <A HREF="" TARGET="_blank">in this forum article</A>.</P>

<P CLASS=INFO>Meanwhile also the creation of the <A HREF="midibox_ng_manual.html">User Manual</A> is in progress.</P>

<H2> <IMG SRC="images/bullet.gif" ALT=""> Concept</H2>

  <LI>MIDI messages received and sent over multiple (traditional) MIDI IN/OUT ports, USB-MIDI and <A HREF="midibox_osc.html">OSC (Ethernet)</A>
  <LI>up to 256 buttons which are directly connected to <A HREF="mbhp_din.html">MBHP_DIN</A> modules
  <LI>up to 8 button matrices with 4x8, 8x8, 4x16, 8x16 or 16x16 configuration which are connected to <A HREF="mbhp_din.html">MBHP_DIN</A>/<A HREF="mbhp_din.html">MBHP_DOUT</A>, or to the <A HREF="mbhp_dio_matrix.html">MBHP_DIO_MATRIX</A> module -&gt; up to 2048 buttons accesible!
  <LI>up to 256 LEDs which are directly connected to <A HREF="mbhp_dout.html">MBHP_DOUT</A> modules.<BR>
      Individual brightness levels for each LED with 16 steps!
  <LI>up to 8 LED matrices with 4x8, 8x8, 4x16, 8x16 or 16x16 configuration which are connected to <A HREF="mbhp_dout.html">MBHP_DOUT</A> modules -&gt; up to 2048 LEDs accessible! Duo and RGB Colour LEDs are supported as well!<BR>
      Supported brightness levels for each individual LED in the matrix: 8 steps in a 4-row matrix, 4 steps in a 8-row matrix, 2 steps in a 16-row matrix.
  <LI>up to 128 rotary encoders connected to <A HREF="mbhp_din.html">MBHP_DIN</A> modules
  <LI>up to 128 pots/faders connected to <A HREF="mbhp_ainser64.html">MBHP_AINSER64</A> modules - the <A HREF="mbhp_ainser8.html">MBHP_AINSER8</A> module is supported as well.
  <LI>up to 32 motorfaders connected to <A HREF="mbhp_mf_ng.html">MBHP_MF_NG</A> modules
  <LI>up to 32 CV output channels connected to <A HREF="mbhp_aout.html">MBHP_AOUT</A>, <A HREF="mbhp_aout_lc.html">MBHP_AOUT_LC</A> or <A HREF="" TARGET="_blank">MBHP_AOUT_NG</A> modules
  <LI>up to 64 <A HREF="midibox_ng_manual_lcd.html">character or graphical displays</A> can be connected!
  <LI>up to 2 velocity sensitive keyboards can be connected (like known from <A HREF="midibox_kb.html">MIDIbox KB</A>)

<P CLASS=DESC>It doesn't matter if you are planning a Mini-Controller or a huge Monster-Controller. MIDIbox NG can be used as a simple MIDI-&gt;USB or OSC-&gt;MIDI router or just as a MIDI processor based on a single <A HREF="mbhp_core_lpc17.html">MBHP_CORE_LPC17</A> or <A HREF="mbhp_core_stm32f4.html">MBHP_CORE_STM32F4</A> module without additional hardware.

<P CLASS=DESC>But it could also consist of multiple cores which are linked together either at the host or client side, either via MIDI, USB or Ethernet, to scale the hardware indefinitely.</P>

<P CLASS=DESC>In order achieve the highest flexibility, the <A HREF="midibox_ng_manual_ngc.html">.NGC configuration format</A>:
  <LI>allows to process common MIDI messages, such as Note, CC, Aftertouch, Program Change, PitchBend
  <LI>allows to process NRPN events for higher resolution (14bit)
  <LI>allows to process SysEx streams - it's even possible to print LCD messages from SysEx dumps, or to map the SysEx dump of a MIDI device to multiple control elements to implement a "Synthesizer Programmer" (!)
  <LI>allows to trigger multiple actions when a control element has been moved or a MIDI message has been received
  <LI>allows to combine actions in "radio groups"
  <LI>allows to ouput to character or grapical LCDs with a printf-like format - the <A HREF="midibox_ng_manual_ngl.html">.NGL format</A> enables you to name each value!
  <LI>allows to pass LED patterns to LED Rings, and BCD digits to 7-segment displays connected to LED matrices.

<P CLASS=DESC>All control elements, such as buttons, LEDs, encoders, pots/faders, can be banked to multiply the access to MIDI parameters.

<P CLASS=DESC>Additional features:
  <LI> Optional <A HREF="midibox_ng_manual_scs.html">Control Surface</A>
  <LI> MIDI Router with 16 nodes
  <LI> MIDI Monitor for all ports
  <LI> MIDI Learn function for common MIDI events and NRPNs
  <LI> Snapshots of the control element values can be stored, restored and dumped (e.g. to use the controller as synth programmer with patch storage)
  <LI> Supports a (primitive) script language (.NGR scripts)

<P CLASS=DESC>For a more detailed impresssion, please have a look into the <A HREF="midibox_ng_manual_fs.html">First Steps</A> chapter of the <A HREF="midibox_ng_manual.html">User's Manual</A>

<H2> <IMG SRC="images/bullet.gif" ALT=""> Planned Features</H2>

<LI> improved documentation, example setups with pictures (users have to help out!)
<LI> "Morph" function to fade smoothly between two snapshots
<LI> SysEx receiver/dumper to store and "fire" SysEx dumps to/from SD Card
<LI> complete support of Logic/Mackie Control and Motormix protocol
<LI> integrated test modes for all control elements to troubleshoot hardware issues

<H2> <IMG SRC="images/bullet.gif" ALT=""> Already known Design Limitations</H2>

<LI> no support for big GLCDs, no support for touchpanels. Re-inventing Lemur, an iPad or similar tablet PC is out of scope. However, second-hand iPad1s are cheap today, and you could connect to the MBNG via OSC