Here are some preliminary versions of MIDIbox MF and MIDIbox16E which can be used by everybody who already own one (or more) core module(s) in order to test the Logic Control Emulation mode. Also MIDIbox64 users can try the MB16E firmware to check if their host software regognizes the faked LC unit.
the mk_syx archive contains two new sample initialization files midibox16e_lc.ini and midibox16e_mf_lc.ini — just read the comments in these files.
When you upload the firmware, the MIDIbox will *not* answer to LC queries from the host software until the LC Emulation ID has been set (this is done in the .ini file…).
ID 10 stands for “Logic Control”, ID 11 for “Logic Control XT”. For Mackie Control emulation (-> Cubase SX users…) possibly another ID is required, but I cannot try it by myself; inputs are welcome!
Checked features (with 2 core modules):
emulation of 8 motorfaders working
emulation of 8 V-pots, external controller and jog wheel working
128 buttons working - all specified commands in the LC spec can be triggered
128 LEDs working - the MIDIbox toggles the LEDs like specified
LCD working (ok, I only tested a 2*40 chars display) - you see the selected tracks, the track names, the fader and v-pot values, fx settings… the LCD-messages are sent by the host software
LED-Rings not supported yet (but will work with the final release)
Note that the SysEx dump structure has been completely changed. By now, 8 internal banks instead of 6 are available, and up to 64 buttons and 64 LEDs can be connected to the core module. Together with a BankStick, 8*8 = 64 banks can be used
The current version of vmidibox16e is *not* compatible with the new firmwares. Serge will adapt the editor in the next days. In the meantime you have to use the mk_syx.pl script (perl must be installed) to generate a .syx file, or you have to use the default files until then. The .syx files can be uploaded with MIDI-OX or vsysexbox
Other new features: MB16E knows a new encoder mode LCEMU (for what damned thing should this be useful? ;-)) and MB16E/MBMF can handle with touch sensors. The touch sensitivity can be adjusted in a special submenu or in the .ini file. Connection diagram for the DIN module can be found here: http://www.ucapps.de/mbhp/mbhp_din_touchsensors.pdf , a schematic will follow soon.
Btw.: capacitive touch sensors (the cheapest way to realize a button function) are no dedicated motorfader features - in fact you could misuse 64 thumbtacks as button-replacement
Have fun!
I hope that Cubase SX users don’t need an additional driver for MC emulation.
Best Regards, Thorsten.
P.S.: does anybody know a distributor for 2*55 character displays?
One quick Q b4 i post the updated diagram for my box:
Will encoders with inbuilt buttons be treated just like the v-pots on the LC? So they preform the exact same function as described in the LC manual…For instance
I’m basically workin out which buttons/LEDs will be connected to the 16E core and preform the LC functions and which buttons/LEDSs will be connected to the MB64 core and preform the functions triggered from that f/w…
Encoders with inbuilt buttons are coming with 5 pins: 3 for the encoders, 2 for the button function. I see no difficulties - the buttons have to be assigned on the following way:
[BUTTONS]
# Following Button events are documented in the logic control user
# manual, chapter 13 "Control Surface Layout and IDs"
# LC event: "select buttons" for the V-Pot section
1 = 90 20 7F @OnOff # select function of V-Pot 1
2 = 90 21 7F @OnOff # select function of V-Pot 2
3 = 90 22 7F @OnOff # select function of V-Pot 3
4 = 90 23 7F @OnOff # select function of V-Pot 4
5 = 90 24 7F @OnOff # select function of V-Pot 5
6 = 90 25 7F @OnOff # select function of V-Pot 6
7 = 90 26 7F @OnOff # select function of V-Pot 7
8 = 90 27 7F @OnOff # select function of V-Pot 8
didnt think to look in the ini file’s for info as i havn’t done anything with the PICs yet, but they have cleared up a lot regarding control and implementation…
another few q’s to clear up…;
128 buttons working - all specified commands in the LC spec can be triggered
In the midibox16e_lc.ini file I only see button support for the following LC functions:
LC event: “select buttons” for the V-Pot section
LC event: F1-F8 buttons
LC events: special functions
Navigation buttons, only available as MIDI triggers when no display is connected or NAVIGATION_BUTTONS is disabled - is this reffering to the transports buttons on the LC?
Button 25-64 for the button extension if 0xff, button is disabled (this is the default) - what is the button extension? Are these the buttons where u can assign the rest of the LC controls…? like the Assignment buttons, Display buttons, Global View buttons, Zoom control buttons etc…
If that’s the case then it’s all good if not, what am i missing…?
Ok, I see - the example file isn’t perfect I didn’t assign all button functions to my physical MB16E, since my own version has only 8 buttons (the 4 navigation buttons, and four MIDI triggers; in the configuration file Button number 17-24).
However, all other button inputs are functional when I temporary connect two DINX4 modules, but since my desk is currently full of instruments, I had to replace everything which needs too much place
In the next days I will start to build a more compact prototype which allows me to use the LC emulation more on a more ergonomic way - and with much more buttons!
The navigation buttons are normaly used for the MB menu navigation, but you can disable it in LC emulation mode and use the buttons as normal MIDI triggers.
I thought about that idea too, i’m not sure how it’d be implemented tho… a f/w tweak i guess…
The other thing that made me wonder was mebbe you can scroll across lines - using the v-pots (encoders) as described in the LC manual…
I’ve searched and seen no 2x55 LCDs, it must be custom made specially for the LC/MC. The only other option would be 4 or 2x80 which is mebbe abit overkill…!! ;D
Two displays can be attached to the LCD bus of core module without problems, just only the E (enable) signal has to be inverted in order to allow a proper addressing — but IMHO the result would look stupid. :-/
However, I searched on the web but haven’t found a suitable display. So I thought about alternative solutions - how about a graphical LCD? A 320x80 LCD like known from some synthesizers would be the best, because it would allow to display 5x7 pixel characters. But it seems that such displays are vanished from the stocks of the main distributors. A 240x64 could also do the job - up to 48 characters can be displayed on one line, that means, 7 characters less than the LC (the spaces between the tracknames could be left out…).
The big advantage: the LED-rings could be replaced by nice pixel-maps on the screen, the MTC and some more values could be displayed due to the available space - this means less effort for constructing the enclosure
Germans say “Not macht erfinderisch” (if you really desire for a solution, you will make the best inventions ;-))
The software handler for the graphic LCD requires some memory to save the bitmaps and characters, I will try to integrate this into the MIDImon firmware since it already has some free space for such extensions. Yes, the MIDIbox NG will also support graphic displays in form of a PlugIn
So, that means even tho the extention handler for the graphics LCD would be on the core runnin the MIDIMon f/w, it would still be be displayed and represented correctly on the LCD connected to the 16E core runnin the LC f/w…? So it’s like the LCD can display info from other core’s, even tho it’s connected to one…
Best…
Dan (in MB bliss - even tho it aint built, and i’ve parts everywhere!)
I must say I am little dissapointed of leaving the idea of LCD ASCI and going to graphic LCD. My point is that graphic lcds are not that bright and it will be way harder to recognise the characters displayed in the screen from a distance. (I admit I have minor problem with my vision :) )
Ok to the point someone sayed he found an LCD 2X80
where? and how much?
And is it possible with the current driver 2X40 to drive the 2X80 LCD.