Sign in to follow this  
Followers 0
TK.

MIDIbox TC

21 posts in this topic

How about a low-budget MIDI controller with just one rotary encoder, one 2x20 LCD and 6 buttons to control your whole equipment? ;-)

midibox_tc_hw.jpg

This application is just a demonstrator and far from perfection, but it's already usefull as MIDI remote device for Cubase/Logic/Whatever or softsynths like Reaktor. Up to 255 MIDI parameters can be controlled, organized in 51 banks. All parameters and banks can be labled for a better oversight. Incoming events will be registered, means: the internal values will be updated automatically - presumed that the MIDI host application sends the parameters through MIDI Out when you load a new song, a new patch, or move a virtual fader/knob.

Handling:

midibox_tc_screen1.jpg

Main screen, first bank is active, 5 parameters are shown. When a parameter is selected with one of the 5 select-buttons, you can control it with the rotary encoder.

midibox_tc_screen2.jpg

So long as you turn the encoder, the parameter label will be print in long form, also a nice bar is displayed (-> bar could look better, feel free to enhance it!).

midibox_tc_screen3.jpg

Here parameter 2 (Pan) is modified.

midibox_tc_screen4.jpg

By pressing the menu button, the bank can be selected. Instead of numbers, every bank can be named.

Here a connection diagram for the application:

http://www.ucapps.de/mios/midibox_tc.pdf

The code is available under Concepts->MIOS->Download

Configuration has to be done in two seperate files:

the MIDI events are defined in mios_tables.inc::MIOS_MPROC_EVENT_TABLE

tc_labels.inc contains the labels for 51 banks and 255 parameters

Alternative switch: in app_defines.h, you can change the VALUES_PER_PAGE setting if you would like to control only 4 parameters per page. In this case, 64 banks and 256 parameters are available. It's intended as fallback solution for 2x16 displays.

Have fun! :)

Best Regards, Thorsten.

Share this post


Link to post
Share on other sites

;D ;D

Great! another box to do :P :o :-*

Nice

D

Share this post


Link to post
Share on other sites

It seems to be a good laboratory for testing new features and other stuffs  ;)

One of the 3 pic18F I ordered will be mounted in this little experiment Midibox !

Thanks again TK !

Gilles

Share this post


Link to post
Share on other sites

I now understand the power of this platform.

This is great.

Share this post


Link to post
Share on other sites

I got a question on this cool project!

For the DINx1 can I use a DINx4 I already have and leave only the first shift register on the sockets??

Share this post


Link to post
Share on other sites
For the DINx1 can I use a DINx4 I already have and leave only the first shift register on the sockets??

Yep, should be no problem...

Share this post


Link to post
Share on other sites

Would it be simple to add a ledring to the unit ?

Nat

Share this post


Link to post
Share on other sites

Hi Nat,

yes, the enc_example3 shows how to drive up to 64 LED rings. Of course, the same routine could also be used for MIDIbox TC, although only one LED ring should be driven :)

Best Regards, Thorsten.

Share this post


Link to post
Share on other sites

Thanks, and would that be a new app or just a modification of the existing code ?

Thanks,

Nat

Share this post


Link to post
Share on other sites

But where is the mios tc apps??!!?? In the zip there's only mios_lcd.inc... :D

I'm lost.... :-X

Share this post


Link to post
Share on other sites

ooops... (fixed)

Best Regards, Thorsten.

Share this post


Link to post
Share on other sites

Hello Thorsten !

This might be what I'm looking for  :)

I will get a Behringer BCF 2000 soon (I would have liked to build a MidiBox, but I don't have the time and my knowledge in electronics and programming is peanuts) and I'd need to find a way to display track information, as the Behringer does not feature an LCD !

Do you think it would be possible to start from this MB TC and to use it as a simple display to be used with the BCF 2000 ? I mean, the MB would just receive information from the sequencer (Cubase SX2) and display it on two 2x20 LCDs : track names, parameter values (volume in dBs would be great....).

I also was wondering if it would be possible to add just one fader to control the master volume of the sequencer (no master fader on the BCF 2000), plus a few switches (for F1 to F8 functions) and perhaps an encoder for jog/shuttling.

Last question, the most important. Is it possible to use both in parallel, knowing that the BCF 2000 connects via USB, and the MB TC via MIDI ? And, when switching bank presets on the BCF 2000 (for instance, switching from 1-8 to 9-16), will the display also switch tracks (same) ?

Sorry for asking so many questions but I'm completely lost !

Thank you.

Share this post


Link to post
Share on other sites

Everything is possible, but you have to program it by yourself, because nobody did something like this before. MIDIbox TC displays the sent MIDI messages, and not the received events. Maybe MIDImon provides better basics for such a project, but there is still a lot of stuff which has to be added so that it works like you've described it.

I would estimate the effort for this to about 1/2 year: 3 months to learn assembler, one month to learn about MIOS, 1 month to learn how MIDImon works, 1 month to realize an application exactly for your requirements.

To make it clear: there are two groups of MIOS users, one very very small group which implements or enhances applications based on their own plans, and another much bigger group which uses the premade stuff. There is no group which implements application on request.

Best Regards, Thorsten.

Share this post


Link to post
Share on other sites

Hi !

Thank you for your quick answer !

Don't make me wrong, of course I was not requiring anybody to program anything at my request  ;)

It turns out that I had not understood anything about the project, then, as I thought the information displayed on the LCD came from the host application, the same MB motorfaders are fed by the feedback from the host application in MB LC.

I know someone who can program in assembly language, maybe we could do something together.

anyway, thank you very much for your work.

Share this post


Link to post
Share on other sites

Hi again !

There is something, though, which isn'y clear for me ! When introducing the MB TC at the start of this thread, you say (I quote)

"Incoming events will be registered, means: the internal values will be updated automatically - presumed that the MIDI host application sends the parameters through MIDI Out when you load a new song, a new patch, or move a virtual fader/knob."

On reading this, I understand that if you move a fader in the host application (virtual fader), the values will be updated. So I understand that MB TC displays incoming events !

There must be something I don't understand, then, sorry  :)

Share this post


Link to post
Share on other sites

Hi,

It displays the selected view, this means e.g. that the LCD doesn't automatically display the volume value if a volume event is received, this would make the device useless for common usage (imagine what would happen if the automation of Cubase sends a lot of parameters at the same time and you want to send an additional parameter - the LCD would jump to a lot of values and you wouldn't see what you are doing...)

However, if your Behringer controller can send the same events like a Logic/Mackie Control, a MIDIbox LC could be an alternative, because it displays the messages sent by the host application. Sorry that I cannot give you any additional informations on this very complex topic, my time is currently very limited.

Best Regards, Thorsten.

Share this post


Link to post
Share on other sites

Hi !

I understand that your time is short, no trouble at all. Thank you for your help. I might consider using a MB LC with only 2 2*40 LCD's, one fader and a few buttons. It might work.

I shall wait until I get the Behringer and I'll keep you posted, for those interested.

Cheers.

Share this post


Link to post
Share on other sites

yes wait until you get the BCF 2000 and then I can help you to see how add to a midibox with LCD ;)

Share this post


Link to post
Share on other sites

This could be a terribly useful thing for me right now. I have several synthsThat I plan to add a Full mios controller for, but with school and work, moving my studio, and Girlfriend, I have had little time for anything else.My questions

1) Can this send sysex? I have two synths whose parameters are controlled by sysex, not cc's.

2)Can it send certain events on different midi channels?

If the answers are yes, I could throw this thing together in a couple hours from parts i have laying around including an already assembled core.

Thanks in advance!

AB

Share this post


Link to post
Share on other sites

thanks pilo! :)

Arumblack: this is just a toy, a demonstrator application which is implemented very simple in the hope that (experienced) programmers can enhance it for their needs. Of course, it can send SysEx when you program this into the code. It already can send any common MIDI event on any channel. It wasn't my intention to enhance this by myself in the future (I don't use it by myself...)

Keep in mind that with MIDIbox64E a much more flexible application is already available. Although "64" implies that a lot of rotary encoders can be connected, this is no must, you can also connect a single encoder and switch between the 128 parameters per bank very easy with one or more special function buttons

My suggestion: build a minimal control surface with 8 or more buttons, a rotary encoder and a LCD - and then play with the different applications. Don't begin with a case before the possibilities are clear for you, maybe you will change your mind and prefer another user interface.

Best Regards, Thorsten.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0