Help - trying to use Korg Keystage as a Midi Controller

Oh, just found the knobs assigned to the Loop button. Great! I will go back and read the manual. Do re-share for others. Now, if only you could stop the Tempo button from blinking all the time… (and yes I don’t use the Tempo button, I’d rather it was mapped to a handy transport function).

Note that I have assignments to the knobs for each transport button held, except for the tempo button.

I did.

I understand the annoyance of this, I will give it a try but not optimistic.

This is doable, I’ll probably have it as a preference, no problem.

Do any of the mappings give us the wonderful transport jog dial…? :thinking:

Talking about the jog left/right in order to play also, or just for the cursor left/right?

The jog or shuttle dial, I thought it was known as. Beloved of video editors and OCD mix engineers … My favourite thing about the CC121 - the huge rotary dial that lets you shuffle around a paused or playing track… In the CC 12 1 you could flip from fine grain to larger jumps with an Alt key.

Just posting to thank you Keystage users for making your journey with it visible.

I’ve been looking for a Poly AT controller for quite a while now and they all seem to have a major flaw - and the Keystage was panned for its keyboard and pots in several reviews I read.

But you seem happy enough with the Keystage. I’m not bothered by pots/not pots, but the keyboard and the integration side of things is important to me.

I wish (like lots of folks) that MIDI 2.0 would become more widespread, and I wish the DAW manufacturers would pick it up more quickly. I guess it’s not worth their time just yet with so few users.

Keep us posted on how you’re getting on though - it’s very much appreciated.

As a keyboard, I do like it. It’s a bit clicky compared to some, but it has a nice look and form factor, the tray to mount your tablet / laptop is genuinely useful, and the Poly AT works.

It fits usefully into the spot of being a thing I can put onto my main desk when I want it and quickly remove when I don’t, also works sat on your knees. The built in audio-passthrough is handy (unless your projects are at 48khz rather than 44.1) and I think it might make a handy portable piano (passing through sounds from my Mac) for turning up at open mike nights too. Might try that…

The biggest annoyance is the blinking tempo light. You can’t switch it off (I’ve asked Korg to patch it, but I’m not holding my breath). I cover it with something but it is annoying.

@m.c , I realise I didn’t properly answer your question (not 100% sure I understand it). But I use the jog to move the cursor and current play point together, i.e. to work repeatedly when editing or planning to over-dub, sometimes over a small section of the timeline, going backwards and forwards.

I found this post recently that I think is worth up-voting, the idea for a mini CC121 Controller that is basically a slider and a big jog dial sounds spot on for me! New CC121 version? - #21 by sempondr

I think you refer to the jog left/right commands as shown here, i.e. turning the play mode on and have the direction as instructed by the jog wheel turn?

If so, the thing is (if I recall correctly) that though these commands perform OK when triggered by our qwerty keyboard (shortcuts) this is not the case when we trigger them using the MIDI Remote. But I will give it another try.

I now have the Keystage in its box, however I think that the blinking is in sync with the tempo. If this is the case, then I don’t see an easy way out. That being said, I haven’t forgotten your feature request (set the tempo button to a command instead of tapping tempo) and I will surely do this soon.

Note that you can always use the dedicated wiki for the script whenever you have additional requests here:

Ah. bit obvious in retrospect, but the big rotary Value knob on the Keystage does the jog dial function I am looking for, when focus is in the main upper zone in Cubase.

For the blinking light, I think I’m going to have to get a permanent black-tape based solution. Can’t seem to find a forum that Korg will take user feedback on.

I did try your controller script as a live jamming-gig solution with the Keystage. Keystage, one sustain pedal, one USB cable to MacBook, MacBook on battery for a couple of hours no problem. I set up 8 instruments likely to be good for a jam on the first 8 tracks of a cubase project (Piano, Organ, Strings etc.) and then used the knobs on the Keystage to fade instruments in and out.

Between songs, I put the Mac to sleep. But one time, it recovered without the Keystage being able to see Cubase etc. I didn’t have time for a reboot or restart of anything, so I just carried on without the benefits of the integrated script. Still, I will explore this idea more!

Not sure I understand, sorry. When using my script, it takes control of the jog wheel, so whatever happens is on it. My implementation is based on having in the “Mixer” subpage the jog wheel to control Nudge→Cursor Left/Right. Perhaps there’s an issue here…

I take it that the MIDI Port of the keybed kept working. In this case, this is due to the way the MIDI Remote API queries MIDI Ports, as far as I understand, since there have been reports in the past (nothing to do with scripts) concerning this issue. A workaround a user proposed, and some friends found that it works, is to add a “ghost” track in our project, deliberately connected to our “DAW” MIDI Port (and obviously in our case set to “Mute”). This way, this port is being queried probably more frequently, thus solving this issue.

Let me know whether you find out any functions you’d like to see in the remote, while performing live! It’s an interesting subject.

So, performing live is a bit of a non starter till it’s reliable.
I’ve tried a few things (including the ghost MIDI channel you suggested, but basically as soon as the Mac goes to sleep, the only way I can find to recover connection is to close Cubase and restart it. Unloading the song and reloading it doesn’t work. Shutting down Keystage and restarting it doesn’t work. MIDI reset doesn’t work.

Also, not sure why but I seem to have two instances of your script running, one permanently disabled. Only the running one gives me the choice to remove / disable it… and when I reconnect the Keystage, I always end up with two instances as shown… Not sure why this might be happening.

Hi, I’ve seen this too, it’s happening upon devices refreshing in Cubase. I think this happens after CB 13.0.51, and I’ve seen other users in MIDI Remote expressing similar behaviours. So, nothing I can do unfortunately, waiting for a fix by Steinberg or perhaps an OS related tweak suggestion.

By the way have you tried using CB12.0.70 instead?

Thanks, m.c…

Oh, I won’t worry about the ‘ghost’ MIDI remote device appearing it if its not actually affecting things. Are there posts on this already I can follow elsewhere?

I thought I had a fix for the lack of connectivity (the MIDI Remote API losing it with the Keystage…) in that I recovered nicely yesterday by using the “reload scripts” button at the very top right of the Midi Remote Manager page. This is a lot less intrusive than restarting Cubase. However, I need to test more to see if this is reliable. Sometimes switching the Korg off and on also seems to be required. I do recall always being told earlier that my CC-121 needs to be on before Cubase starts to get picked up nicely - but I never tried to use my CC-121 at a gig!

Meanwhile I’ve now read the manual with your script and it really is pretty awesome. No need for MIDI 2.0! I haven’t yet got to the ‘customising’ part of the manual you provided, but I’ll go there next. I am enjoying all the hands-on knobs experience working with Channel Strip controls, instrument QCs, Volume / Pan / Mute et . The Keystage is currently centre stage in my recording setup.

I have noticed one thing that doesn’t appear to be working - in the Focussed QC page, the big Value Knob is supposed to act like an AI Knob. But I found that it did nothing. And using Shift+Value on the FQC page simply closed all open plugins (undesired behaviour). This is not what I think you intended. Having an equivalent to the CC-121 AI Knob that just works with the currently selected control is nirvana, if its possible.

Also: is there a way to just jump along one track in the 8-track channel view…? Rather than moving in banks of 8?

As for things that might help with a gigging set, the only thing I can think of might be a quick way to set Key note ranges to specific Channels. E.G If I load a Bass on Cubase Track Channel 1, I might want it only to access the bottom two Octaves, meanwhile other track channels would start at Octave 3. (and other such ideas…)

Still hunting for a Korg Forum to let them know that blinking lights, tempo are otherwise, are not good defaults. The +/- Octave buttons also blink annoyingly.

Hi Alan,

Pretty much correct. Just to be precise, it will behave almost as expected when we really select a control in the UI of the plugin, i.e. really clicking it, not just focusing by hover. This is a behaviour already reported to Steinberg, I hope this will be fixed soon. Just for verification purposes, if you have CB12.0.70 installed, you’ll see that AI works as expected there.

The shift+Jog has two functions based on the direction of the turn: When we turn it right, it gets us to the next open plugin window. When turned left, indeed it closes all plugin windows. This is the assignment I chose it to do for my own workflow, please let me know if you need something different, I can surely set it as a preference.

Currently I have set the shift+Button Up/Down to navigate Up/Down in our tracks list. At the same time, I needed a way to change banks, since I really don’t use the mouse for such operations. What I can do (again as a preference) is to map the navigate Up/Down on our shift+Jog while setting the shift+Up/Down to our banks change. Let me know if this would be nice to have.

As a side note, if you hold the down button and turn knob 4, the display will change to a track selection mode. Then we can turn whichever knob corresponds to the track number of the bank zone that we want selected.It’s something I use often.

This is indeed the case, and what I most love about the MIDI Remote API :slight_smile:

I suggest that you get into customising when you find the time, because the assignments I’ve chosen were based on my personal workflow, and I’m not expecting the one of other users be the same. You can literally change any assignment to our “state” buttons held+knobs, plus the jog wheel.

The Keystage is a wonderful MIDI Keyboard. I do have two complaints though.

My first one is that it doesn’t have buttons (below the knobs). I really “suffered” trying to get to the functionality I wanted and even now it’s not the best, or anyway the one I’d want it to have. For example, I have a subPage where I’m using the knobs to mute/unmute tracks. This is not what I’m used to do, I always like using buttons for such stuff.

And the second one is that it doesn’t have endless encoders. This is problematic especially when we have dual-commands per knob, i.e. different action performed based on the turn direction.

Other than that I really have fun with this device :slight_smile:

Usually there are dedicated (and most of the time, hidden) sysex messages for such operations. However, I wasn’t able to find anything online. Perhaps I’ll have a closer look at its midi implementation reference.

I have continued to try to use the MIDI Controller script with mixed results. Sometimes things stay connected all day, sometimes it’s nearly impossible to get the Keystage MIDI controller working (though the page looks like it’s activated). Currently, the only way that I can get this to reconnect is to go to the MIDI Remote Manager page, remove the Keystage-custom controller surface, and then hit the “reload scripts” button at the top right. This seems to work.

I see there is a similar report on another page on this forum about the (interesting looking) Panorama CS-12 controller re the ghost duplicate controller showing in the MIDI remotes page - Tim Chandler says there that Steinberg will fix that in the next patch.

I thought I would write a tidy close out on the pro’s and cons of using the Keystage as a MIDI Controller now, but before I do, there is still one thing I don’t understand. Where you say, re the AI Knob functionality

Just to be precise, it will behave almost as expected when we really select a control in the UI of the plugin, i.e. really clicking it, not just focusing by hover.
This is a behaviour already reported to Steinberg, I hope this will be fixed soon.

I don’t find that the AI Knob functionality does anything, where would you expect to see it work? For comparison, my CC-121’s actual AI Knob works nicely with any hovered-over Cubase native control (though it doesn’t seem to do much in any case with most 3rd party plugins I try).

My CC-121 also doesn’t seem to suffer from losing connection to the MIDI script. I feel like I ought to test the standard Korg Keystage script, in case something in yours is somehow triggering this dis-connect when it tries to load…?

Sorry, I don’t know. It works here, when we click (not just hover) on a control, and always, we’re talking mostly about Steinberg plugins as you correctly mention. And this is actually a bug (a hover should be enough), as far as I can tell, since it works as expected in CB12.

When we start the DAW, MR API loads all scripts. IF a script contains errors, these will be logged into the MIDI Remote Logging Console, and the script won’t get activated anyway. Then, based on the port names it queries, activates the proper ones. So really nothing to do with my script, or anyone else’s ones. It does have to do with the MIDI Remote API and its connection queries though (can be really anything, and it’s been difficult for Steinberg to identify/fix some cases. They did fix some of them). Anyway, this is something reported since months ago, it doesn’t affect all users, and not all OSs equally. For example, here, either on my Win or Mac PCs I have not any disconnection at all, even after leaving my controllers (not just the Keystage) open for more than a day straight. And I did this just for testing this issue. Other users report disconnections even in a time frame of minutes. At the same time, I must mention here, that I do too got disconnections when on purpose (in order to find causes) disconnect/reconnect physically the controllers while in a session, AND when I tweak my USB energy savers. BUT this is not how things work at least not for me, I mean I would never dare to have my sessions under energy savers nor ever disconnect/reconnect controllers while doing my job, and it’s not just about controllers.

m.c. can you give me any example of a stock cubase control that, once actually selected, works with the FQC page selected on the script? Although as I say AI Knob continues to work nicely on CC121 I can’t get it to do anything with anything with the Keystage value knob on the FQC page of the script. Maybe I’m misunderstanding how it is supposed to work.

I can see why you would not allow auto-USB shutdowns etc in a pro setup. For me it’s part of how my home (part-time) activity works and most everything else recovers gracefully. But I also see why Steinberg might be less interested in tracking it down.

Sure. Take for example a Retrologue instance. Open it, then CLICK on, say, the CutOff knob:


The jog wheel (while in the FQC page) should now control it.

I think that they invested a lot of time on this, and still do. No one likes breaking MIDI, especially a DAW vendor :wink:

EDIT: I recall there were some issues with a part of the API in CB14.0.5, affecting the jog wheel behaviour, which I reported, and was fixed in 0.10. Have you updated to 0.10 yet?

OK, thanks for confirming. I can verify that this also doesn’t work on my setup. I am on Cubase 14.0.10. It does work with the CC121 (using either Click or Hover). It does work from the Keystage Knob 1, where it is assigned specifically, but not from the Value knob.