Console 1 as MIDI Controller

I want to use my Cosole 1 as MIDI controller für the Rack. It has 26 knobs and 39 buttons (4 of them with 3-states), 4 mono (or 2 stereo) LED VU-meters and 2 mono LED meters that can be programmed by MIDI CC messages.

Unfortunately, when turning a knob, the Console 1 increases MIDI CC values in steps of 3. Steps of 1 can be achieved by pressing the “Fine Adjust” button, but this is not an option when turning knobs with 2 hands in an intuitive way. Because of this, Console 1 does not come handy with the existing MIDI to CV modules.

So I plan to code a special module for the Rack. Has anyone here experiences with Console 1 in the Rack?

A couple of years ago I coded a MIDI mapping for the large SSL-style mixer in Reason Studio: Softube Console 1 as MIDI controller for the SSL mixer - ReasonTalk.com

3 Likes

Seems like you need some sort of layer between Rack and your midi controller. plugin or something else…

One thing that comes to mind is to use bitwig and make a controller script for it that maps to the slots on a device. Then you would just use the parameter mapping to map all your stuff.

Could also maybe try bomes midi translator to get there.

I like the idea of a Rack plugin that interfaces directly with Console 1. Could possibly do something where if you are highlighting a module it uses some sort of specific mapping for it. Could even program some options to customize it for any external midi controller.

I never coded a Bitwig controller script, nor do I have any experience using Bomes (does it run on Linux too?), but I coded a handful of VCV Rack modules so far, and two of these modules are dealing with MIDI data.

1 Like

If it only sends a message every three steps, how can you overcome that in your own module?

I think he means that each step is a jump of 3. I see there are alternate “knob modes” described in the manual that might do the trick, esp. “Linear” and “Linear Slow”.

@Ahornberg Have you tried the Stoermelder MIDI-STEP? I’ve found this useful with the “relative” knobs of other controllers, and it might be easy to add a new mode for step-by-3.

yeah, same thing, right?

@jim1 Stoermelder MIDI-STEP is useful for controllers that send data in relative mode (there are several realtive modes, but simplified explained, this controllers can only send 2 values: a value of 63 means -1, a value of 64 means +1). Of course, I have tried the Stoermelder module, but with no success.

The “alternate kob modes” you refer to in the Console 1 manual have nothing to do with MIDI. You can only use them with the Softube driver software (unfortunately this software doesn’ run on Linux).

Console 1 runs in absolute MIDI mode and sends data-values in the range of 0 to 127. If you turn a knob clockwise, the data are e.g. 4, 7, 10, 13 and so on, starting in relation to the last value (in the example above, it was 1). If you turn a knob counterclockwise, the data go in the other direction, always in steps of 3. If you reach 0 or 127 and turn the knob further, the next data will also be 0 or 127 (regarding on the left or right “end” you reached, of ourse there is no end on an endless encoder).

If you want the maximum possible MIDI precision (0 to 127 in steps of 1 instead in steps of 3), you must hold down the “Fine Adjust” key on the controller while turning the knob.

This is how Console 1 works in MIDI mode, and my approach will only address MIDI mode, because there is no proprietary software for Linux provided by Softube or anyone else. There also doesn’t exist any tecnical documentation about the proprietary protocol that Softube uses.

So, what’s the task for me here? Coding a VCV module that does a bidirectional data transfer to and from a connected Console 1 controller to ensure the best possible experience in handling the controller. It’s about the “feel” of “look & feel”.

As I said in my first post, I coded a MIDI mapping for Reason Studio and I used it exclusively for mixing until VCV Rack emerged and gave me lot more possibilities in dragging cables and turning knobs than Reason Studio could ever do (off-topic: for me, polyphonic cables are the killer-feature in the Rack).

My question to the community was: Has anyone here experiences with Console 1 in the Rack?

1 Like

I still want to know how you are going to do this, but I guess I can wait and see, if it’s a secret.

I’m working on that. Maybe it turns out that it is impossible, but if it is possible, I will show the solution here in 2 ways: as an explanation of how it can be done and as an open source module.

3 Likes

Console 1 can receive MIDI CC data and applies them to the corresponding knobs.

An example, assuming the knob for CC 10 has a value of 100 and someone turns the knob clockwise:

  • Console 1 sends the value 103
  • my module sends back 101
  • Console 1 sends the value 104
  • my module sends back 102
  • Console 1 sends the value 105
  • my module sends back 103

and so on.

I thought after console 1 sent 103 it couldn’t send 104, it could only send 100 or 106? steps of three?

  • console 1 sent 103
  • my module sends back 101 - so the knob on console 1 is set to 101
  • console 1 sends 104 (because 101 + 3 = 104)

oh! Interesting… cool.

1 Like

proof of concept:

Yes, i have Console 1.

And used it before, a while back though. I did assign some of it’s knobs and rotaries to MindMeld. And used Stoermelder MidiCat at that time.

Unfortunately at this moment i can not be of any more help or assist in testing, as i am in the middle of relocating to abroad.

I noticed your post before, but didn’t respond as I can’t be anymore useful then this, right now.

(ps. I also remember to have used your Console 1 script for Reason a while back! :wink:)

1 Like