Steinberg Houston

strinxx

2009-06-08 22:39:20

Hi Everybody!

First, I wanna thank you guys for this peace of software, it's actually perfect for what I was looking for. If it only can handle the Houston controller, too... but this thing shouldn't be too far away from a mackie ...?

So here is my situation:
I searched the web for a few days about how to "improve" the implementation of my Houston for Cubase - a few basic things were never really completed by Steinberg. (don't know if anybody is familiar with Houston)
For instance, the numeric keypad was supposed to work in three different modes: "Cursor" is working fine, "Functions" gives you 99 user-definable options, also cool, but "Data", which should actually give you simply the possibility to type in numbers and "enter", doesn't work at all...
Which is a sad, 'cause this would be a nice feature too, keeping you away from your keyboard.
And a few other knobs, which don't do what they were actually supposed to. Nothing more than one would do with some normal keyboard-shortcuts.

Then I found "Miditranslator", and it first saved my day!
I tried out the "classical" version, in order to check out if this thing is doing what was promised.
I translated Houston's number-keypad in "normal" keystrokes for use in Data-mode, 0 - 9 and "enter". And MT is doing a good job here, BUT, and here comes my point:
Although I enabled "midi-through", the number-keypad is now ONLY doing what I "translated" in MT. Everyting else is ok: transport-controls, fader-action... but the number-field kinda "lost" it's "Functions"- and "Cursor"-modes.
I found out, that Houston's number-keypad allways sends the exact same midi-message for every number, no matter in which mode I actually am (I first have to press one of those knobs, to tell Cubase what mode to select, or to "expect").
So, if Cubase is the one who kind of sorts out how to handle midi-messages from Houston, is this kind of stuff impossible for MT to translate?
I also read this thread of this gentleman who wants the jog-shuttle of his mackie-control to do some more good work for him... well this would be my dream for the Houston, too.
Any chance to get this done?

Thank you so much in advance for any help!
Greetings
Mike

badibeat

2009-06-13 12:48:46

Hi Mike

I too own a Huston, but support was abandoned quite early by Steinberg. I don't use it any more, also because it takes far too much space. But the motorfaders are still much better than what you get on a mackie control (they do their stuff without constantly reminding you that they are motorfaders).

I don't have much experience with bome's yet, as I still wait for a functional, editable preset to start from.
However I suggest that you try somehow to track the mode your huston is in and write it to a variable. It is important that you still forward mode changes to the application. Then you have to make the translation of the keypad keys dependent of that variable. If the mode is right translate - otherwise don't and forward unchanged. MIDI thru should be off, I think.
If the host application (Cubase) can alter the mode by sending MIDI data, then maybe you should watch this too and alter the state of the variable accordingly.

I would be interested in what you have.

badibeat

strinxx

2009-06-13 19:16:58

Hey badibeat,
thanxx so much for stepping up!
I totally agree, I'm actually quite happy with the Houston, since I work mainly with Cubase/ Nuendo... with Cubase 4.5 they added (believe it or not ;) a few more functions to it, like Control-Room Volumes and stuff (maybe you allready know about it) .. something you don't get with a MCU. Though I'm missing mackie's cool big timecode strip...

But...those little few things still don't work...grrrr so I hoped I could work this out with this Bome MT.
In fact, I'm not sure about wether this would work with the "classical" MT, at all. Maybe I need the Pro-Version. And I would definitely pay for it, if I could "complete" Steinberg's work with it.

And I thought I had forwarded those Mode-change-events, just by not letting MT translate them and enabling midi-through...?
I just translated every key (a singly entry for either state, pressing down a key and release) of the number pad, nothing else.
And yet, this did something to the whole mode change procedure.

To be honest, this kind of midi-workaround is quite new to me anyway, and beyond the actual midi translations, I have now idea how to handle any variable, unfortunately...

But to kind of read-out Cubase mode change "answers" is quite a good idea, haven't thought of this! This would need to run Midi-Ox, right? I'll give this a try, let's see what I can find out! I'll get back to you later.

Meanwhile, thanks so much for your help!
Mike[/quote]

badibeat

2009-06-13 20:44:20

Mike
I own Nuendo 4 with NEK, but hardly ever use it. Your news sounds interesting, though.
I dont't even know what Midi-Ox is, but when you switch modes on the huston surely some MIDI messages are sent to the host application.
Lucky trying!
badibeat

strinxx

2009-06-14 11:28:53

Hey badibeat!

What I found out is this:
When you press one of those mode-buttons, Houston sends out 2 midi-events:
I recorded every button-push in Cubase and got on channel 16 "1E" for holding down, on channel 17 "1B" for releasing the "Functions"-button, for example.

I then let Midi-Ox detect the outgoing events from Cubase (Midi-Ox is some kind of midi-sniffer, or analyzing tool, by the way), they only differed in an entry called "Data2":

Status B0
Data1 17
Data2 1E, followed by 1B for "Functions"
1A, followed by 1D for "Data"
1C, followed by 1F for "Cursor"
Chan 1
Event 23

This is for "initial" pressing a mode button.
If you go on pressing for a 2nd, or 3rd time on that button, you only get the 2nd Data2 entry: 1B, 1D, 1F - for "Functions, Data and Cursor"
So maybe the 1st entry coming from Cubase is its "answer" to Houston..?

If I did it right, and everything is correct, then there should be a way to "overcome" Houston's limitations... if I only had a clue how to deal with it now?

Thanks for your support here badibeat!
Mike

florian

2009-06-18 11:50:43

Hi strinxx,

I see what you want to do, and I believe badibeat is correct. So the general scheme would be this:

1) MT tracks the current mode
2) if in data mode, enable the MIDI->keystroke translators that you have already implemented

Btw, you don't need to resort to MIDI OX to find out what Houston is sending. Just create a translator, choose MIDI as incoming trigger type, and check "capture MIDI". Then press the buttons on the Houston and you'll see the MIDI messages. Click on one in the list to choose it.

I think it can be done in the classic edition of MT, like this:

1) name the preset that you have already created for the data mode "Data Mode" (presets are in the left list).

2) Create a new preset and name it "Mode Switch"

3) in "Mode Switch", create this translator:
Incoming: MIDI <message for "number" mode button>
Outgoing: Preset Change "Activate by Name", and choose "Data Mode"

4) Create two translators in preset "Mode Switch" to turn off the "Data Mode" when the other modes are selected:
Incoming: MIDI <message for "cursor" mode button>
Outgoing: Preset Change "Deactivate by Name", and choose "Data Mode"
Incoming: MIDI <message for "functions" mode button>
Outgoing: Preset Change "Deactivate by Name", and choose "Data Mode"

In general, I assume that you have turned on MIDI THRU and that your MIDI IN is set to Houston and your MIDI OUT to a virtual MIDI port. In Cubase/Nuendo, you just choose the virtual port as MIDI IN.

Note: with the 1.7 PRO edition, there is a number of things that can be done better:
- you don't need separate presets. You can just set a variable when in data mode. In your data translators, use a rule to not use the translators when not in data mode.
- it has built-in virtual MIDI ports, so you don't need to install a third-party virtual port.
- it support multiple MIDI ports, so you can e.g. send messages back to Houston for visual feedback, etc.

Anyway, I hope this helps some. If you have it working, please copy/paste your presets (one by one...) here... other houston users will appreciate it.

Regards,
Florian

badibeat

2009-06-18 13:40:18

Hi strinxx
I am happy Florian gave you this useful response.
I will get into it some time when I know a lttle more about MIDI Translator, but currently I have little time and the weather is just too good...
badibeat

strinxx

2009-06-18 16:31:40

Thank you so much gentlemen for your help!

I'm going to check this out on the Pro Version... I hope I can handle this baby ;o)

I get back to you, as soon as I've got any results.

Cheers
Mike

strinxx

2009-06-21 12:01:38

Hi everybody!

Florian, yor "mode-switch setting" works just fantastic!
I used it with MTPro now. Cool to address these little annoying issues!
And I was able to find a cool way for zooming, too. It's now so much faster, you don't have to press a knob that often, like before...
If anyone would find this useful too, I'd like to upload my Preset.

But to get into working with those variables and rules, I would definetely need some more (big time more!) information about how to handle variables...and rules.

I'm trying to gather all information about this kind of stuff, for instance:
Midi Translator is exactly what you need!

You need Rules for this (Pro or Author version). So, take a global variable e.g. "g0" and set this variable. Here´s an example.

Code:

Translator 1: Shift pressed
Options: stop=false
Incoming: MIDI 90 00 7f
Rules:
g0=1
Outgoing: (none)

Translator 2: Option pressed
Options: stop=false
Incoming: MIDI 90 01 7f
Rules:
g0=2
Outgoing: (none)

Translator 3: FADE IN
Options: stop=false
Incoming: MIDI 80 01 qq
Rules:
if g0!=1 then exit rules, skip Outgoing Action
Outgoing: MIDI 80 10 pp



If you press shift, you set g0 to 1. And Translator 3 will reacts on Jog Wheel, but he is only executed, if shif (g0 = 1 ) was pressed!

Hope this helps?
Rüdi
This is something I really would love to do with the Houston too, like I mentioned earlier...

Where do I get all those informations, about all possible options from and what do they actually mean (like stop=false)?

And what does, for instance, the rule "g0=1" mean?
Is it then just like simple math, like "4+g0=5"?

And yes, I studied the manual, too.

So, for my "mode-settings" action, how could this have been done with a variable?

I really don't mean to bother you guys with a bunch of stupid questions, please believe me!
But this kind of workaround is just so completely new to me.... I'm kind of lost here.

And for remapping Houston's (or Mackie's) jog wheel, wouldn't it be necessary to find translators for turning it clockwise and/ or counterclockwise? As far as I know, those jog-wheel actions send out continous midi-data... and they change depending on the speed of turning, too....pfffff...

Heeeeelllllp!!!

Transulator

2009-06-21 19:26:02

Can't help you with Houston but will try to answer some of your questions:
strinxx wrote: Where do I get all those informations, about all possible options from and what do they actually mean (like stop=false)?
The code you see above is generated when you save a preset as textfile (Menu: Preset). It represents the settings of any translator in the preset. You have access to this settings when double-clicking a translator.

stop=false means that 'Stop processing with this translator' is checked on the 'Options (F5)' page of the translator.
strinxx wrote: And what does, for instance, the rule "g0=1" mean?
It means that the global variable g0 is set to 1. From now on this variable is available across translators and presets and has the value 1 until it is set again. If the line reads 'g0=233' the value would obviously be 233. There's no secret behind the usage of g0. It could be g5 or ga or gz or whatever fits to the 'global variables list'. It's your choice which one to use. Important though is its status as 'global'. The 'local' variables are only accessible from within a translator.
strinxx wrote: Is it then just like simple math, like "4+g0=5"?
Yes.

HTH,
Transulator

florian

2009-06-22 21:34:05

hi strinxx, glad to hear it's working!
strinxx wrote: Where do I get all those informations, about all possible options from and what do they actually mean (like stop=false)?
Some are very MT specific, like the stop flag (as explained by Transulator). The rules section, however, behaves like a veeery simple programming lanugage, or, maybe more like an advanced calculator. There are assignments and expressions, where you have a variable on the left, and you set it to a new value, here are some examples how to change the value of g1:

g1=pp
g1=g2+45
g1=10-10
g1=g1+1
g1=1234*ga
g1=1000/pp
strinxx wrote: So, for my "mode-settings" action, how could this have been done with a variable?
please send me (or copy/paste) your presets and I'll modify it for you.
strinxx wrote: And for remapping Houston's (or Mackie's) jog wheel, wouldn't it be necessary to find translators for turning it clockwise and/ or counterclockwise? As far as I know, those jog-wheel actions send out continous midi-data... and they change depending on the speed of turning, too....pfffff...
as always: it depends... The Tranzport preset that ships with Midi Translator Pro has logic for using the jog wheel, also with varying speed. You can have a look at it...

And that's my first suggestion: just load up presets with rules and try to understand them. The forum is full with annotated examples of using rules.

Regards,
Florian

strinxx

2009-06-26 23:19:42

Thank you guys so much for every help!

I've been out for a few gigs the last couple of days, so I just read your answers!

Thanks Transulator, now this all is going to make a bit more sense to me...

I'll try to find some presets and have a look at those.
If other users were able to handle it, then it should be possible for me too, right?
But it's still a hard way to go, if you lack the matching piece of hardware, isn't it? :wink: But this tranzport preset might be the right thing to look at.

And thanks florian for helping me out by modifying my code, this will also help me a lot!
I'm going to upload my preset tomorrow morning.

Thanks again to you gentlemen!
Mike