BTW, below is a “work in progress” description of MidiBUD firmware that me and a bunch of early adopters find to be very useful when you put it between your controller keyboard and the rest of your rig. Currently it runs on MidiBUD hardware, and it is a good candidate for MidiBUD Mk2, however it could be easily ported to MidiREX hardware and be even more useful.
MidiBUD is a 4 channel MIDI processor, which forwards MIDI IN events to up to four MIDI OUT channels. MIDI events can be forwarded as is or transformed. The set of parameters that defines transformations is called a “scene”.
So MidiBUD has 4 scenes. If a scene is selected, MIDI events processed by this scene are sent to MIDI OUT. When you press scene buttons 1-4, you select the corresponding scenes 1-4. You can select more than one scene at the same time by pressing several scene buttons simultaneously. Or you can add/remove scenes without unselecting other scenes by holding down SHIFT button (the rightmost fifth button) and pressing the appropriate scene button.
Scene output channel: none, 1-16 … if set to ‘none’, midi events are forwarded on the same channel they were received, otherwise they are forwarded on the selected channel. Using this setting you can quickly switch between 4 sound modules connected to MidiBUD output. Or layer sounds of those sound modules if you select more than one scene simultaneously.
Scene key hold: if ‘on’, the sound will continue when you release a key until you release all keys and press new ones. So you can have that “Shine on your crazy diamond” Gm strings chord playing for two and half minutes while you playing solo notes on your favorite analogue mono synth.
Scene transpose: -48 … +48 semitones, allows you to transpose scene notes up/down for up to 4 octaves… good for layering. I.e. the Gm mentioned above won’t sound right if you don’t mix in some Hammond sound two octaves below.
Scene zone: specifies keys zone – midi note events will only be forwarded if they are within zone. Useful when you need to play more than one sound module at the same time using different parts of your keyboard. Again, that Gm above needs a low bass note mixed in to sound authentically.
Scene velocity: specifies scene velocity curve (none, soft1,2,3, hard 1,2,3, wide 1,2 or constant)
Scene after touch: specifies scene after touch curve (none, soft1,2,3, hard 1,2,3, wide 1,2 or constant)
Scene filters: specifies scene filters, you can filter out program change, control change, after touch or pitch bend events
Scene program: specifies bank/program that will be sent to MIDI OUT when the scene slot is loaded.
Scene root note: specifies scene root note (used by scale constrainer)
Scene scale: specifies the scale to constrain notes to, the out of scale notes will be converted to the closest scale note
Finally, a set of 4 scenes may be saved into a “slot” and re-called later. Slots have 12 character names for easy identification and numbers from 0 – 99, so there is 100 slots available.
The project is still in development: the above functionality is fully implemented and tested.
Let me know if you have MidiBUD and want to try this firmware.