Subversion Repositories svn.mios


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

HEADER 3 ChangeLog of MIDIbox64E

<CENTER><H1>MIDIbox64E Change Log</H1></CENTER>
<CENTER><H3>Last Release: V2.2d @ 2009-12-29</H3></CENTER>

<IMG SRC="images/1x1dot.gif" height=10 ALT=""><BR>


   <LI> mk_syx now part of the release package<BR>
     (-&gt; tools/mk_syx directory)

   <LI> added some meta handler examples<BR>
     (-&gt; meta_examples directory)

<IMG SRC="images/1x1dot.gif" height=20 ALT=""><BR>
   <LI> Update for MIOS V1.9g<BR>
     No change in application itself.

<IMG SRC="images/1x1dot.gif" height=20 ALT=""><BR>
   <LI> Application can now be compiled for PIC18F4620 as well.<BR>
     No change in application itself.

<IMG SRC="images/1x1dot.gif" height=20 ALT=""><BR>
   <LI> a patch mode has been implemented which can be selected as an
     alternative option to the common "bank" mode in main.asm<BR>
     In patch mode, each BankStick contains only one bank
     configuration (means: encoder/pot/button/label setup), but 
     128 snapshots! This allows you to prepare one configuration
     for your MIDI gear, and to store/recall/morph up to 128 scenes.</LI>

   <LI> there are two new SysEx commands for storing/restoring patches</LI>

   <LI> patches and banks can be changed from external with a 
     "Program Change" command. The channels are specified in
     main.asm. Default: Channel 16 - Banks; Channel 15: Patches </LI>

   <LI> some minor bugfixes and improvements</LI>

<IMG SRC="images/1x1dot.gif" height=20 ALT=""><BR>
   <LI>three new SysEx commands have been implemented to simplify
     the configuration data up- and download. It's a block
     oriented format and therefore doesn't require delays between
     every byte anymore. This means, that data uploads can
     now also be realized without the use of MIDI-Ox so long the
     SysEx tool allows to insert delays between every block
     ("Delay after F7") - it should be 750 mS - thats the
     same requirement like for MIOS uploads.<BR>
     More infos can be found <A HREF="howto_tools_mbsyx.html">here</A>.</LI>

   <LI>the script has been updated to support the
     new upload format. It can be downloaded from <A HREF="midibox/">here</A>.</LI>

   <LI> Bankswitching now significantly faster</LI>

   <LI> support for a datawheel (rotary encoder) as replacement for
     the left/right button. To enable it, set DEFAULT_ENC_DATAWHEEL 
     to 0 - connect the rotary encoder to pin 4 and 5 of the first
     DIN shift register, connect the exec button to pin 7 and
     the snapshot button to pin 6 </LI>

   <LI> experimental support for AIN/MF modules<BR>
     Although MIDIbox64E has been designed for rotary encoders, 
     it can now also handle with up to 64 pots/faders or up to 
     8 motorfaders.<BR>
     Pots and faders are mapped to the "encoder" entries 64-128.
     Example: if group width is 16, and group 1 is selected, 
     encoders are using Entry 1-16, and pots are using entry 64-(number of pots)</LI>

   <LI> new hardware setup file for "MIDIbox NG"<BR>
     -> setup_midibox_ng.asm<BR>
     (8 encoders, 8 motorfaders, 8 touchsensors, 64 buttons)</LI>

   <LI> new hardware setup file for "MIDIbox SEQ" <BR>
     -> setup_midibox_seq.asm<BR>
     (16 encoders + 1 datawheel, 44 buttons)</LI>

<IMG SRC="images/1x1dot.gif" height=20 ALT=""><BR>
<LI><I>V2.0 - MIOS based version - MIDIbox16E renamed to MIDIbox64E</I>
   <LI> the complete MIDIbox16E firmware has been ported to MIOS and is
     now running on a PIC18F452. For new projects it's recommended 
     to switch to the PIC18F452 because of the higher flexibility, 
     but also the update of an existing MIDIbox to MIOS makes sense 
     due to the new features - just only the processor and the 
     crystal have to be changed. </LI>

   <LI> biggest improvement: MIDIbox64E can handle with up to 
     64 rotary encoders and LEDrings!</LI>

   <LI> all 128 virtual pots and 64 button entries stored in a bank can 
     be updated by incoming MIDI events</LI>

   <LI> the previous "subbank" mechanism which divided the 128 encoder
     entries into 8 "banks within banks" has been renamed to "pages"
     The width of a page is free definable. This means, that all
     128 encoder entries can be controlled by MB64E with a single 
     encoder (low-cost solution) as well as with up to 64 encoders!</LI>

   <LI> Note that Serge's vmidibox16e editor (which has been developed 
     for the PIC16F version) can also interact with the new
     The transfer rate has to be set to a value less than 150, otherwise 
     the dump won't be received completely. This isn't a bug in MIOS, but 
     a problem related to the PIC18F which can only save 64 bytes at once 
     in the internal flash memory (the PIC16F saves 2 bytes (14 bit)
     at once). </LI>

   <LI> Beside of the MIDI Learn function, MIDI events can now also be
     edited directly</LI> 

   <LI> Support for on-screen editing of pot lables and banknames </LI>

   <LI> up to 8 BankSticks can be handled by the firmware now (-> up to 64 banks) </LI>
   <LI> the DEFAULT_BANKSTICK_CS setting in main.asm allows you to
     select a dedicated EEPROM for your application or disable
     the BankStick support at all. This feature is especially 
     usefull when different applications are used with the MIDIbox</LI>

   <LI> banks can be copied </LI>

   <LI> A morphing function has been added which allows to fade smoothly 
     between two pot scenes: the current pot positions and the pot positions 
     saved in a snapshot (bank) </LI>

   <LI> Encoder events can now be triggered via Remote: <BR>
        F0 00 00 7E 43 [d]9 00 [pot] [value] F7 <BR>
     ([d] = device number (0-7), <BR>
      [pot] = pot number (0-63), <BR>
      [value] = pot value (0-127) </LI>

   <LI> Button events (also menu buttons) can now be triggered via Remote: <BR>
        F0 00 00 7E 43 [d]9 01 [button] [value] F7 <BR>
     ([d] = device number (0-7), <BR>
      [button] = button number (0-63), <BR>
      [value] = button value (0=pressed, 1=depressed) </LI>

   <LI> Special Functions can now be triggered via Remote: <BR>
        F0 00 00 7E 43 [d]9 02 [sfbn] [sfbp] [value] F7 <BR>
     ([d] = device number (0-7), <BR>
      [sfbn] = special function number (0-127), <BR>
      [sfbp] = special function parameter (0-127), <BR>
      [value] = button value (0=pressed, 1=depressed) </LI>

   <LI> A software implemented MIDI Rx/Tx LED function has been integrated </LI>

   <LI> the MIDIbox64E tutorial has been updated</LI>

   <LI> the LCD screen can now be centered for various displays, the
     cursor positions have to be configured in main.asm
     (search for DEFAULT_YOFFSET_LINE*)</LI>

   <LI> the predefined MIDI channels stored in the bank can now be 
     overwritten by a global channel</LI>

   <LI> various default setup_*.asm files are included in this
     release which are preconfigured for the original
     MIDIbox16E, MIDIbox NG and MIDIbox SID hardwares</LI>

<IMG SRC="images/1x1dot.gif" height=20 ALT=""><BR>
    <LI>Now support for 40 buttons and 32 LEDs like known from MIDIbox64</A>
    <LI>Each encoder can be assigned to a "fast" or "slow" flag separately within the encoder configuration menu or via SysEx (see the updated <A HREF="midibox/">mk_syx</A> script).</A>
    <LI>The new "Select Parameter" SFB allows to select parameters on-the-fly without bankchange. More details can be found in the <A HREF="midibox16e_tutorial.html">MIDIbox16E tutorial</A>.</LI>

<IMG SRC="images/1x1dot.gif" height=20 ALT=""><BR>
    <LI>New SysEx command "Switch Bank" allows to change a bank via MIDI (see also <A HREF="midibox16e/midibox16e_sysex_implementation.txt">midibox16e_sysex_implementation.txt</A>). It will be used by one of the next releases of <A HREF="" TARGET="_blank">Serge's editor</A> to access all banks via remote. The feature could also be usefull in conjunction with sequencer software like Logic Audio to switch to a bank depending on the selected Song, Window, VST PlugIn (as far as the software supports such an automization).</A>
    <LI>New SysEx command "Partial Write" allows to write quickly into particular memory locations (see also <A HREF="midibox16e/midibox16e_sysex_implementation.txt">midibox16e_sysex_implementation.txt</A>). It's a feature especially for the editor.</A>
    <LI>Note: a complete setup file for <A HREF="" TARGET="_blank">Serge's Editor</A> can now be found <A HREF="midibox/vmb16Epresets.ini">here</A>.</LI>

<IMG SRC="images/1x1dot.gif" height=20 ALT=""><BR>
    <LI>Pin Assignments of Port C (Encoder Input, LED-rings output) have been changed to get the firmware compatible with the <A HREF="mbhp.html">MIDIbox Hardware Platform</A>.</LI>

<IMG SRC="images/1x1dot.gif" height=20 ALT=""><BR>
  <UL> Initial version.<BR>Following Features have been implemented:
    <LI>Rotary Encoder Handler with interpolator (double resolution)</LI>
    <LI>8 internal banks</LI>
    <LI>BankStick support (+4*8=32 banks with every BankStick)</LI>
    <LI>support for 2*16 display</LI>
    <LI>support for (optional) LED-Rings with up to 16*16 LEDs</LI>
    <LI>4 customizable LED-Ring patterns in every bank</LI>
    <LI>Menu with 2 cursor and 1 exec button</LI>
    <LI>Different Display Modes</LI>
    <LI>Named Events (requires BankStick)</LI>
    <LI>Snapshot Button with Save/Recall behaviour</LI>
    <LI>MIDI Learn Mode for every encoder</LI>
    <LI>MIDI Learn for Single encoder, automatic row channel, automatic row add</LI>
    <LI>Meta Events allow you to define SysEx strings and more</LI>
    <LI>MIDI Merger</LI>
    <LI>Exchange setups via SysEx</LI>
    <LI>min/max values for encoders</LI>
    <LI>Sending absolute values: xx xx [from min to max]</LI>
    <LI>Sending relative events: xx xx 40 +/- speed</LI>
    <LI>Sending relative events: xx xx 00 +/- speed</LI>
    <LI>Sending relative events: xx xx 40 +/- 1</LI>
    <LI>Sending relative events: xx xx 00 +/- 1</LI>
    <LI>Sending relative CC events: CC Inc/Dec xx</LI>
    <LI>Progressive Mode for Encoders (faster turns: higher inc/dec)</LI>
    <LI>"Fast" Button to enable the progressive mode</LI>
    <LI>"Slow" Button</LI>
    <LI>20 MIDI Trigger Buttons with optional special functions</LI>
    <LI>different button behaviour like on MIDIbox Plus</LI>
    <LI>optional MIDI event filter for the merger</LI>