Old 11-19-2009, 02:33 AM   #1
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default CSurf plugin for Steinberg CC121

Edit: I will add news and updates at the the end of this post to keep this stuff somewhat chronological. Here is the original post.
---------------------------------------------------

Hi all,

I've recently got myself this new Steinberg CC121 controller for my little home studio. I love it. The device is a bit on the expensive side but this sturdy built thing has a great feeling to it and I really like how it integrates into Cubendo.

But it obviously had a huge drawback - it did not work with REAPER at all.

I took this annoyance as a challenge and I wrote a little REAPER control surface extension to 'advance integrate' the controller as tightly as possible into REAPER as well.




OK, what works?

The transport controls should work as expected. Cubase has no dedicated pause button so the play button of CC121 works as a pause button too (it blinks when in paused state).

The track controls including the fader and the track buttons should work fine as well. The 'VSTi' button will open the fx-page of the selected track instead of the VSTi-window of Cubendo. The 'e' button has no equivalent in REAPER and I have not finally decided what to do with that button. Maybe it will act as a shift button or it will be possible to assign a custom action to it. Currently it opens/closes the docker.

The large AI-Knob will jog through the project when in jog-mode and control the parameter under the mouse when in AI mode. No surprises here.

If the selected channel has got an instance of the REAPER EQ in the fx chain then the EQ knobs on the CC121 will control the Q, gain and frequency of the first four bands of the plugin. The all-bypass button will bypass the EQ.

The value encoder does currently control the master volume and the button underneath turns the metronome on and off. The function buttons are assigned to vertical and horizontal zoom in the arrangement (the default in Cubase).


...and what doesn't work?

Well, this is an alpha version so don't expect that anything will work at all.

However, there are a few known issues:

The bypass buttons for the EQ bands and the EQ Type button don't work as these parameters are not accessible through TrackFx_* or other API functions (AFAIK).

Mouse-over parameter changing with the AI-knob is currently not optimal and the lock button doesn't work at all. I'll have to experiment a bit with this to find a good solution.

The FX-button will only open the fx-panel of the track that has been manually selected in REAPER with the mouse and not the one selected by the controller through the API. I don't know yet if it is a bug in REAPER or on my side. This needs further investigation.

The fx-button can't close fx windows yet.

Customization of the function buttons and the value encoder is not implemented yet. I have several ideas but I'm open for what people want to see here.

Most likely a lot of other things I don't have thought of.


Installation.

Download this zip file to your computer:

Click Me

Unzip the file with your favorite unzipping tool and copy the contained dll into the REAPER plugins folder. Note: This folder is located inside the REAPER program folder (usually "C:\Program Files\REAPER\Plugins" or something like that). It has nothing to do with the VST-plugin directory of your system.

New: Copy the CC121 folder with the EQ maps into the REAPER Data folder (usually
"C:\Program Files\REAPER\Data").

Open REAPER, go to the preferences and select the control surfaces tab. Click on 'Add' and select 'Steinberg CC121' as control surface mode. Be sure to select the proper MIDI input and MIDI output for your CC121.

That is basically it.

Because I work at home ATM I have only partial access to 64 bit machines. So this control surface is currently 32 bit only but 64 bit support will follow ASAP.

I will add the source ASAP. It just needs a little clean up before someone actually looks inside this mess.

--

Thanks to the REAPER team for providing such a great product and to SWS, Xeniakos and Padre PC for releasing their extensions as open source. Your projects helped a lot to understand how REAPER ticks.

---------------------------------------------------
11-19-2009 - 0.0.0.1
  • Initial release.

---------------------------------------------------
11-21-2009 - 0.0.0.2
  • The fx-window show/hide button should now open and close the associated FX windows of the selected track.
  • Added a first 64Bit version of the plugin.
  • Added source.

---------------------------------------------------
11-24-2009 - 0.0.0.3
  • New option to adjust acceleration speed of the rotary encoders.
  • The 'e' button now shows/hides the I/O window of the current track.
  • Open and close folders by simultaneously pressing both 'Channel Select' buttons.
  • Simultaneously pressing the 'EQ Type' and 'All Bypass' buttons enters or leaves the 'Quick Control Mode' where:
    • The four 'On' buttons control the mute states of the first four sends.
    • The four 'G' encoders adjust the levels of the first four sends.
    • The 'Q' and the 'F' encoders control the first eight assignable fx parameter knobs on the TCP/MCP.

---------------------------------------------------
12-03-2009 - 0.0.0.4
  • Assign arbitrary actions to the user button, foot switch and the rotary encoder.
  • Added EQ maps to automap the CC121 EQ buttons to most EQ plugins out there (this is of course not limited to EQ plugins). Maps for REAPER's factory VST and JS EQs are already included. I don't have that many external plugins to create maps for but creating custom maps should be easy. Give me a hint if you need instructions.

---------------------------------------------------
12-15-2009 - 0.0.0.5
  • Fixed minor x64 issues.

---------------------------------------------------
01-08-2010 - 0.0.0.6
  • Added new function: Pressing the mute and the monitor button at the same time will swap the functionality of the volume fader and the pan encoder so the fader will control the panorama of a channel and the encoder will control the volume. This will make the automation of pan data much easier.
  • Added new function: Pressing the write and the VSTi button at the same time will disable and enable the motorfader. This is usefull in many recording and mixing situations where the sound of the moving fader is disturbing. This shortcut is much easier as plugging the wall wart in and out every time to shut up the fader.

---------------------------------------------------
01-08-2010 - 0.0.0.7
  • REAPER 3.2 compatibility update. Some minor things have changed in the 3.2 version of REAPER and this update brings the controller back in sync again.
  • Different AI Knob handling that should enhance compatibillity on x64 systems.

---------------------------------------------------
08-21-2010 - 0.0.0.8
  • REAPER 3.3 compatibility update. Some minor things have changed in the 3.2 version of REAPER and this update brings the controller back in sync again.
  • Added a virtual CC121 simulation (screenshot).

Still missing for full Cubendo functionality:
  • Change ReaEQ individual band's type and enabled state (not accessable via API).
  • Opening I/O window for the master track (closing works, opening needs a command ID).
  • Lock button for parameter locking (doesn't work with VST2 plugins in Cubase either).

Last edited by Rome; 08-21-2010 at 04:15 PM. Reason: Updated for 0.0.0.8
Rome is offline   Reply With Quote
Old 11-19-2009, 06:45 AM   #2
yhertogh
Human being with feelings
 
yhertogh's Avatar
 
Join Date: Nov 2006
Location: Belgium
Posts: 1,462
Default

Quote:
Originally Posted by Rome View Post
Hi all,

I've recently got myself this new Steinberg CC121 controller for my little home studio. I love it. The device is a bit on the expensive side but this sturdy built thing has a great feeling to it and I really like how it integrates into Cubendo.

But it obviously had a huge drawback - it did not work with REAPER at all.

I took this annoyance as a challenge and I wrote a little REAPER control surface extension to 'advance integrate' the controller as tightly as possible into REAPER as well.




OK, what works?

The transport controls should work as expected. Cubase has no dedicated pause button so the play button of CC121 works as a pause button too (it blinks when in paused state).

The track controls including the fader and the track buttons should work fine as well. The 'VSTi' button will open the fx-page of the selected track instead of the VSTi-window of Cubendo. The 'e' button has no equivalent in REAPER and I have not finally decided what to do with that button. Maybe it will act as a shift button or it will be possible to assign a custom action to it. Currently it opens/closes the docker.

The large AI-Knob will jog through the project when in jog-mode and control the parameter under the mouse when in AI mode. No surprises here.

If the selected channel has got an instance of the REAPER EQ in the fx chain then the EQ knobs on the CC121 will control the Q, gain and frequency of the first four bands of the plugin. The all-bypass button will bypass the EQ.

The value encoder does currently control the master volume and the button underneath turns the metronome on and off. The function buttons are assigned to vertical and horizontal zoom in the arrangement (the default in Cubase).


...and what doesn't work?

Well, this is an alpha version so don't expect that anything will work at all.

However, there are a few known issues:

The bypass buttons for the EQ bands and the EQ Type button don't work as these parameters are not accessible through TrackFx_* or other API functions (AFAIK).

Mouse-over parameter changing with the AI-knob is currently not optimal and the lock button doesn't work at all. I'll have to experiment a bit with this to find a good solution.

The FX-button will only open the fx-panel of the track that has been manually selected in REAPER with the mouse and not the one selected by the controller through the API. I don't know yet if it is a bug in REAPER or on my side. This needs further investigation.

The fx-button can't close fx windows yet.

Customization of the function buttons and the value encoder is not implemented yet. I have several ideas but I'm open for what people want to see here.

Most likely a lot of other things I don't have thought of.


Installation.

Download this zip file to your computer:

Click Me

Unzip the file with your favourite unzipping tool and copy the contained dll into the REAPER plugins folder. Note: This folder is located inside the REAPER program folder (usually "C:\Program Files\REAPER\Plugins" or something like that). It has nothing to do with the VST-plugin directory of your system.

Open REAPER, go to the preferences and select the control surfaces tab. Click on 'Add' and select 'Steinberg CC121' as control surface mode. Be sure to select the proper MIDI input and MIDI output for your CC121.

That is basically it.

Because I work at home ATM I have only partial access to 64 bit machines. So this control surface is currently 32 bit only but 64 bit support will follow ASAP.

I will add the source ASAP. It just needs a little clean up before someone actually looks inside this mess.

--

Thanks to the REAPER team for providing such a great product and to SWS, Xeniakos and Padre PC for releasing their extensions as open source. Your projects helped a lot to understand how REAPER ticks.
excellent work! I also have been playing around with the SDK and have written support for the Roland VS-2480 and modified the FaderPort csurf. It might give you some ideas (e.g. i use an ini file to either have a programmed action, or a configureable action assigned to some keys).

I also dont have a 64 bit machine, but managed to change my MSVC208 Express such that it can compile 64 bit plugins. Check out post 6 of this thread

More and more people are coding support for control surfaces. I think we need a sticky to group all of them together.

btw, how did you code that blinking led? :-D

Yves
yhertogh is offline   Reply With Quote
Old 11-19-2009, 12:37 PM   #3
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default

Hi

I started with the faderport extension as well. Great work on that VS2480 BTW. I seen this device several times at workshops and at exhibitions but I never had the chance to actually put a hand on a device for a test run.

I'm using the Professional Edition of VisualStudio so compiling for 64bit will not a problem. Testing is a bit tedious at the moment as I have to take REAPER and the CC121 with me to the office. My DAW environment at home is not really ready for Win7/64 yet so I have to stick with Win32. But a new 64 bit machine is on the way.

Edit: The blinking is done manually with a timeout in the Run() function.
Rome is offline   Reply With Quote
Old 11-19-2009, 01:51 PM   #4
yhertogh
Human being with feelings
 
yhertogh's Avatar
 
Join Date: Nov 2006
Location: Belgium
Posts: 1,462
Default

Quote:
Originally Posted by Rome View Post

Edit: The blinking is done manually with a timeout in the Run() function.
care to post some (pseudo-)code ?

Yves
yhertogh is offline   Reply With Quote
Old 11-19-2009, 02:11 PM   #5
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default

Sure It looks something like this:

Code:
DWORD lastBlinkTime = 0;
bool  playLightOn   = false;
bool  paused        = true;  // Controlled by SetPlayState()

// This will be called about 30 times a second:
void Run()
{
  // Get current system time:
  DWORD curTime = timeGetTime();

  // 500 ms elapsed since last toggle?
  if (paused && (curTime > (lastBlinkTime + 500)))
  {
    // Toggle light state:
    playLightOn = !playLightOn;

    // This function sends note-messages to the hardware
    // to turn on/off the individual lights:
    SwitchLight(LightPlay, playLightOn);

    // Save send time:
    lastBlinkTime = curTime;
  }
}
I will add the full source code with the next version of the plugin.
Rome is offline   Reply With Quote
Old 11-19-2009, 02:12 PM   #6
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 5,146
Default

Quote:
Originally Posted by Rome
I took this annoyance as a challenge and I wrote a little REAPER control surface extension to 'advance integrate' the controller as tightly as possible into REAPER as well
Nice work Rome !!
Geoff Waddington is offline   Reply With Quote
Old 11-19-2009, 02:20 PM   #7
spaz bouviere
Human being with feelings
 
spaz bouviere's Avatar
 
Join Date: Oct 2009
Posts: 58
Default

has anyone done this for a korg 3200 thing?? my mate's got one and they're fair enough, but with a bit of hacking could be much better still
spaz bouviere is offline   Reply With Quote
Old 11-19-2009, 09:20 PM   #8
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default

FIY: I'm currently sitting here in front of my Linux box and control REAPER with a Steinberg CC121 - and everything works fine.

Please don't tell Steinberg
Rome is offline   Reply With Quote
Old 11-20-2009, 02:26 AM   #9
Klinke
Human being with feelings
 
Klinke's Avatar
 
Join Date: Jul 2008
Location: Berlin / Germany
Posts: 764
Default

Quote:
Originally Posted by Rome View Post
The FX-button will only open the fx-panel of the track that has been manually selected in REAPER with the mouse and not the one selected by the controller through the API. I don't know yet if it is a bug in REAPER or on my side. This needs further investigation.
It's a bug in REAPER, see also http://forum.cockos.com/showthread.php?t=43624
Klinke is offline   Reply With Quote
Old 11-20-2009, 02:40 AM   #10
Jeffos
Mortal
 
Jeffos's Avatar
 
Join Date: Dec 2008
Location: France
Posts: 1,969
Default

Quote:
Originally Posted by Rome View Post
The bypass buttons for the EQ bands and the EQ Type button don't work as these parameters are not accessible through TrackFx_* or other API functions (AFAIK).
not sure I correctly understand, but if you're talking about bypass at FX level (?), I can help you about that, Rome..
Jeffos is offline   Reply With Quote
Old 11-20-2009, 03:17 AM   #11
yhertogh
Human being with feelings
 
yhertogh's Avatar
 
Join Date: Nov 2006
Location: Belgium
Posts: 1,462
Default

Quote:
Originally Posted by Klinke View Post
It's a bug in REAPER, see also http://forum.cockos.com/showthread.php?t=43624
Is there already a bug filed ? I dont recall having issues with this. I usually go to all tracks again and check which one is selected (first) to remove any ambiguity. I also dont understand how a track can be 'selected' on the surface but not within reaper.

Usually i have setup my code like:

receive select button press
check if the track has been selected already in the bank (cached state)
if yes, do CSurf_SetSurfaceSelected(tr,CSurf_OnSelectedChange (tr,1),NULL);

(the wrapping of these functions is important, otherwise SetSurfaceSelected (virtual void) does not get called by Reaper)

In SetSurfaceSelected you get back from reaper a track and a selected boolean flag which you can act upon.

Yves
yhertogh is offline   Reply With Quote
Old 11-20-2009, 12:01 PM   #12
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default

Quote:
Originally Posted by Jeffos View Post
not sure I correctly understand, but if you're talking about bypass at FX level (?), I can help you about that, Rome..
I think I've seen it already. REAPER seems to returns a "WET" parameter when querying the EQ.

What I'm missing is the state of the "enabled" checkboxes of the individual banks. The controller has dedicated buttons for this and it would be nice to be able to use them.

Quote:
Originally Posted by yhertogh View Post
Is there already a bug filed ? I dont recall having issues with this. I usually go to all tracks again and check which one is selected (first) to remove any ambiguity. I also dont understand how a track can be 'selected' on the surface but not within reaper.

Usually i have setup my code like:

receive select button press
check if the track has been selected already in the bank (cached state)
if yes, do CSurf_SetSurfaceSelected(tr,CSurf_OnSelectedChange (tr,1),NULL);

(the wrapping of these functions is important, otherwise SetSurfaceSelected (virtual void) does not get called by Reaper)

In SetSurfaceSelected you get back from reaper a track and a selected boolean flag which you can act upon.

Yves
I'm going to try that. Thanks for this suggestion. I'll report back
Rome is offline   Reply With Quote
Old 11-20-2009, 02:01 PM   #13
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default

OK, I've tested it and it didn't help, the last touched track state won't change and the WM_COMMAND based actions only operate on the last touched track

Is there some way to simulate the missing SetLastTouchedTrack(MediaTrack*) function?

Edit: Found a SetLastTouchedTrack() emulation in the SWS extensions. This works fine except for the master track, which can't be 'touched'.

Last edited by Rome; 11-20-2009 at 02:58 PM.
Rome is offline   Reply With Quote
Old 11-21-2009, 01:20 AM   #14
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default

OK, added new version.

It would be great if somebody could test the 64 bit extension with a 64 bit REAPER version. I have just compiled the extension to be 64 bit and I have no idea if this thing will actually load in REAPER. You don't need a device for this, just check if the configuration window appears under the control surface preferences.

Edit: Sorry for the triple post.

Last edited by Rome; 11-21-2009 at 01:26 AM.
Rome is offline   Reply With Quote
Old 11-21-2009, 10:09 AM   #15
yhertogh
Human being with feelings
 
yhertogh's Avatar
 
Join Date: Nov 2006
Location: Belgium
Posts: 1,462
Default

Quote:
Originally Posted by Rome View Post
OK, I've tested it and it didn't help, the last touched track state won't change and the WM_COMMAND based actions only operate on the last touched track

Is there some way to simulate the missing SetLastTouchedTrack(MediaTrack*) function?

Edit: Found a SetLastTouchedTrack() emulation in the SWS extensions. This works fine except for the master track, which can't be 'touched'.
I usually execute the action "set selected track as last-touched track" before the other action to solve that problem.

Yves
yhertogh is offline   Reply With Quote
Old 11-24-2009, 07:28 AM   #16
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default

New version -> 0.0.0.3

Quote:
Originally Posted by yhertogh View Post
I usually execute the action "set selected track as last-touched track" before the other action to solve that problem.
I'm using a simplified version, derived from the original SWS action and it works fine. Except that the master can't be touched.

BTW: I've added your KBD_OnMainActionEx() trick from in the TrackFX_*() thread to control FX parameters and it works great. Thank you for this small gem.
Rome is offline   Reply With Quote
Old 12-03-2009, 02:18 PM   #17
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default

New version -> 0.0.0.4 with user assignable actions and EQ maps

Looks like I'm the only REAPER user who is using a CC121. OK, this is not unexpected with an expensive Cubase only controller but I'm having a lot of fun with this thing, combining my two passions: Programming and music
Rome is offline   Reply With Quote
Old 12-03-2009, 03:06 PM   #18
norbury brook
Human being with feelings
 
norbury brook's Avatar
 
Join Date: Mar 2007
Location: London UK
Posts: 1,979
Default

Rome, I'll give it a try tomorrow as I've a CC121 as well :-)

thanks for doing this


MC
norbury brook is offline   Reply With Quote
Old 12-31-2009, 07:35 AM   #19
strinxx
Human being with feelings
 
strinxx's Avatar
 
Join Date: Jun 2009
Posts: 293
Default How are you guys actually doing this?!

Hey everbody!
I'm also from Cubendoworld, sitting here with my good Houston control, which is doing a great job in Cubase... and it works a bit in Reaper in HUI-mode.

The CC121 can't be that far from the Houston... is there any chance I can get it to be implemented as well?

This would be just sooo great!

Any help would be so appreciated!
strinxx is offline   Reply With Quote
Old 01-02-2010, 08:45 AM   #20
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default

I don't have a Houston so I'm just guessing here.

If the device works partly with the HUI protocol the chances are great that it uses MIDI to control all it's functions. So it should be possible to write an extension for REAPER but it will be a bit of work with all the knobs, faders and especially the display.
Rome is offline   Reply With Quote
Old 01-02-2010, 02:58 PM   #21
strinxx
Human being with feelings
 
strinxx's Avatar
 
Join Date: Jun 2009
Posts: 293
Default

Thanks for your reply!

Yes, it definetely uses Midi to communicate!
And I could try to write an extension, no matter how long it would take.... if I only knew how...!? And where to get all needed information...?
I already downloaded the mini-SDK package, but this is like chinese to me... is it a scripting language like Python?

If you have any advice, that'd be just great!

Thanks again!
strinxx is offline   Reply With Quote
Old 01-07-2010, 11:13 PM   #22
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default

New update with new functions (see above).

Quote:
Originally Posted by strinxx View Post
And I could try to write an extension, no matter how long it would take.... if I only knew how...!? And where to get all needed information...?
There are some examples included in the SDK and there are several open source extensions around on this forum (including this one) with some documentation. But they are all written in C++ as the control surface API is not accessible through scripting (and most likely never will be).
Rome is offline   Reply With Quote
Old 01-11-2010, 03:23 AM   #23
strinxx
Human being with feelings
 
strinxx's Avatar
 
Join Date: Jun 2009
Posts: 293
Default

Thanks so much for an answer!

I think it's best to maybe find someone who really is into C++ coding, rather than playing around with it, myself ;o)

Thanks again for your help!
strinxx is offline   Reply With Quote
Old 01-15-2010, 04:33 AM   #24
norbury brook
Human being with feelings
 
norbury brook's Avatar
 
Join Date: Mar 2007
Location: London UK
Posts: 1,979
Default

Just had chance to give this a try in reaper X64. Works great, amazing stuff,thanks Rome for doing this, now if I could get my Houston working


MC
norbury brook is offline   Reply With Quote
Old 01-15-2010, 07:47 AM   #25
strinxx
Human being with feelings
 
strinxx's Avatar
 
Join Date: Jun 2009
Posts: 293
Default

Quote:
Originally Posted by norbury brook View Post
...now if I could get my Houston working


MC
I'm totally with you brother!!!
strinxx is offline   Reply With Quote
Old 01-15-2010, 08:05 AM   #26
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default

Quote:
Originally Posted by norbury brook View Post
Just had chance to give this a try in reaper X64. Works great, amazing stuff,thanks Rome for doing this, now if I could get my Houston working
Thanks for the kind words. I moved to Win7/x64 some days ago and that makes debugging of 64bit code a lot easier.

Quote:
Originally Posted by strinxx View Post
Quote:
Originally Posted by norbury brook View Post
now if I could get my Houston working

MC
I'm totally with you brother!!!
BTW: Does anybody know if the Houston has working Linux drivers?
Rome is offline   Reply With Quote
Old 01-15-2010, 12:04 PM   #27
strinxx
Human being with feelings
 
strinxx's Avatar
 
Join Date: Jun 2009
Posts: 293
Default

No, definetely not.
It's been almost a decade now, since Steinberg thought about a Linux-compatible version of Cubase and any related hardware. They rejected it ... of course!

And with Windows 7 (maybe Vista,too?) they stopped supporting it, what means there won't be no drivers anymore.
strinxx is offline   Reply With Quote
Old 01-15-2010, 12:39 PM   #28
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default

Too bad. I've read that Steinberg doesn't even wanted to announce the original manufacturer of their depreciated hardware like Houston and Midex.

The CC121 is built by Yamaha so it works with the standard Yamaha MIDI drivers on Linux - the same that the Yamaha synths use for MIDI communication. This will keep the support for the device going a while, even if Steinberg decides to abandon the CC121.
Rome is offline   Reply With Quote
Old 01-15-2010, 03:33 PM   #29
strinxx
Human being with feelings
 
strinxx's Avatar
 
Join Date: Jun 2009
Posts: 293
Default

Well, for the Houston: they were made by Soundcraft.
Don't know if this helps...?
strinxx is offline   Reply With Quote
Old 01-26-2010, 08:45 PM   #30
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default

Small REAPER 3.2 update.
Rome is offline   Reply With Quote
Old 03-03-2010, 11:47 PM   #31
rossco
Human being with feelings
 
Join Date: Mar 2010
Posts: 1
Default

Hi,

I am a blind person using Cubase and CC121. I'm interested in accessing data from CC121 to integrate with screen reader software. Can the AI knob control third party synths (in cubase)?

Do you interface with REAPER by monitoring CC mesages from the CC121?

could you email me direct, as i am unable to use forums:
rossmcg@hotkey.net.au

Thanks
rossco is offline   Reply With Quote
Old 03-04-2010, 11:17 AM   #32
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default

Email sent.
Rome is offline   Reply With Quote
Old 05-31-2010, 01:12 AM   #33
marchinstin
Human being with feelings
 
Join Date: Aug 2009
Posts: 9
Default

HI there Rome!
I'm a 100% newcomer to reaper from cubendo and got the cc121: in other words a BIG BIG THANKS TO YOU!

Marchinstin
marchinstin is offline   Reply With Quote
Old 08-21-2010, 04:29 PM   #34
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default

Thank you.

I've updated the plugin to keep track of the latest API changes so it should work fine again with the current REAPER version.

There are some bad news as well: I sold my CC121 a while ago because I didn't use it as much as I thought I would (and because I needed the money). But I've created a virtual CC121 to be able to continue the controller support for other REAPER users.

I've included the simulator in the win32 folder of the zip file for anybody who wants to poke a bit around with it. It will need a MIDI loopback device to connect to REAPER (MIDI Yoke works fine here). Have fun.


Click to enlarge.
Rome is offline   Reply With Quote
Old 08-22-2010, 01:42 AM   #35
norbury brook
Human being with feelings
 
norbury brook's Avatar
 
Join Date: Mar 2007
Location: London UK
Posts: 1,979
Default

Thankyou Rome, I appreciate your work on this a lot


MC
__________________
www.norburybrookstudios.com
norbury brook is offline   Reply With Quote
Old 11-07-2012, 05:41 AM   #36
strinxx
Human being with feelings
 
strinxx's Avatar
 
Join Date: Jun 2009
Posts: 293
Default cc121 for Reaper4

Does the cc121 still work for the latest Reaper versions?
Thinking about getting one... anybody still using it?


Thanks ahead guys
strinxx is offline   Reply With Quote
Old 11-07-2012, 08:51 AM   #37
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default

Hi,

I have sold my physical CC121 a while ago so I currently can't test REAPER with the actual hardware. But I see no reason why it should have stopped working since the last version.

I still have the virtual CC121 so I'll try to test this one with the latest REAPER and give you feedback (and update this thread accordingly).

Rome is offline   Reply With Quote
Old 11-07-2012, 11:46 AM   #38
strinxx
Human being with feelings
 
strinxx's Avatar
 
Join Date: Jun 2009
Posts: 293
Default

Hey Rome, thank you for stepping up!

I just read the thread, and could see you had to update the plugin in the past... due to some changes in newer Reaper versions... so...

That's why I'm asking.

Again, thanks so much for any new input on this!
strinxx is offline   Reply With Quote
Old 12-12-2012, 11:48 AM   #39
Rome
Human being with feelings
 
Rome's Avatar
 
Join Date: Jul 2009
Location: Stavromula Beta
Posts: 154
Default

I've just got a new CC121 and I can confirm that the old plugin still works just fine with current REAPER versions.

However, I have a few ideas and improvements that I want to add so I'll create a new version soon.
Rome is offline   Reply With Quote
Old 02-01-2013, 04:26 PM   #40
Schöpke
Human being with feelings
 
Join Date: Jan 2013
Posts: 49
Default Two questions

Rome:
You wrote the interface for Reaper because you already had the controller. But would you advise to deliberately *buy* the cc121 for use with reaper? I would like to use its scrub wheel and transport buttons with the Reaper window hidden!

On a second thought... could this also be done with the Avid Artist Transport in HUI mode? Because that would be my controller of choice. It connects via EuCon, HUI and Mackie Control interfaces. I know already that EuCon isn't working, but would the Reaper HUI implementation be a fully working alternative here? Would the AT cabling via LAN be a problem?

I would like to give writing a similar interface for Artist Transport a try. I got your source as well as the "Reaper Mini-SDK". Could you by any chance point me in the right direction where to start from here? I never did hardware, you know I have VS 2008 IDE.

Thanks for advice,
Schöpke

Last edited by Schöpke; 02-01-2013 at 05:14 PM. Reason: Waren doch mehr als zwei...
Schöpke is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 03:31 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, vBulletin Solutions Inc.