Go Back   Cockos Incorporated Forums > REAPER Forums > MIDI Hardware, Control Surfaces, and OSC

Reply
 
Thread Tools Display Modes
Old 04-09-2020, 08:01 PM   #1
BrentHarmon
Human being with feelings
 
Join Date: May 2019
Location: Oregon
Posts: 60
Default Behringer X32 DAW Controller with Reaper

Is there a way to setup the Behringer x32 Daw Remote to communicate with Reaper. I have tired a few videos and only seems to control the Mix Bus side of the x32 and not the regular 1-32 side

Thanks
BrentHarmon is offline   Reply With Quote
Old 04-09-2020, 10:21 PM   #2
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
Default

Welcome to the Reaper Forums "

The CSI Reaper plugin should be able to do this (using the appropriate set of configuration files).
Beware that it seems that the X32 only sends out 7 Bit Midi for the faders on USB, which seems to be poor for mixing purpose. Maybe it provides higher resolution on OSC, but this seems not to be confirmed, yet.

-Michael

Last edited by mschnell; 04-10-2020 at 03:35 AM.
mschnell is offline   Reply With Quote
Old 04-10-2020, 02:56 AM   #3
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,184
Default

Quote:
Originally Posted by BrentHarmon View Post
Is there a way to setup the Behringer x32 Daw Remote to communicate with Reaper. I have tired a few videos and only seems to control the Mix Bus side of the x32 and not the regular 1-32 side

Thanks
Are you technical at all ?

CSI, the project we work on -- there's and endlesss thread in this forum , has support for OSC.

The X32 speaks many dialects of OSC, we have been waiting for an early adopter to get this going, there will lots of trials and tribulations, but the result will be worth it (hopefully)

Are you up for that ?
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 04-10-2020, 03:41 AM   #4
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
Default

I suppose there will be a lot of opportunities to get an X32 very cheap.
A German Music Store offers to give you € 1000 for one if you buy the new "Wing" Mixer.

While the Wing seems a really great desk, it lacks the count of analog ins, an X32 features. Hence to get an X32 for some €1000 seems like a great deal, even if you use it only as a Control Surface for Reaper. Any you can use it as an Audio interface as well, at the same time.

-Michael
mschnell is offline   Reply With Quote
Old 04-28-2020, 01:38 PM   #5
David_M
Human being with feelings
 
Join Date: Apr 2020
Location: Italy
Posts: 14
Default

Quote:
Originally Posted by BrentHarmon View Post
Is there a way to setup the Behringer x32 Daw Remote to communicate with Reaper. I have tired a few videos and only seems to control the Mix Bus side of the x32 and not the regular 1-32 side

Thanks
hi BrentHarmon

https://sites.google.com/site/patric...#TOC-X32Reaper

your solution.

David_M
David_M is offline   Reply With Quote
Old 04-28-2020, 02:08 PM   #6
hangnef
Human being with feelings
 
hangnef's Avatar
 
Join Date: Dec 2017
Posts: 69
Default

Quote:
Originally Posted by BrentHarmon View Post
Is there a way to setup the Behringer x32 Daw Remote to communicate with Reaper. I have tired a few videos and only seems to control the Mix Bus side of the x32 and not the regular 1-32 side

Thanks
Do you mean the X-Touch? In addition to what is mentioned above, the klinke plugin works great w/ Reaper.
hangnef is offline   Reply With Quote
Old 04-28-2020, 10:25 PM   #7
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,688
Default

The X32 is a completely different beast than the XTouch. AFAIK not MCI protocol, hence no Klinke.

-Michael
mschnell is offline   Reply With Quote
Old 04-29-2020, 12:15 PM   #8
hangnef
Human being with feelings
 
hangnef's Avatar
 
Join Date: Dec 2017
Posts: 69
Default

Quote:
Originally Posted by mschnell View Post
The X32 is a completely different beast than the XTouch. AFAIK not MCI protocol, hence no Klinke.

-Michael
Totally true, I have an x32 rack w/ an x-touch. I was confused by the "daw remote", to me the x-touch is a DAW touch surface/remote and also allows me to remotely control my x32 rack.
hangnef is offline   Reply With Quote
Old 05-06-2020, 07:43 PM   #9
BrentHarmon
Human being with feelings
 
Join Date: May 2019
Location: Oregon
Posts: 60
Default

Quote:
Originally Posted by hangnef View Post
Do you mean the X-Touch? In addition to what is mentioned above, the klinke plugin works great w/ Reaper.
Yeah I just order the X touch from Guitar Center I should have it by this week Fingers Crossed.
BrentHarmon is offline   Reply With Quote
Old 04-26-2021, 09:14 AM   #10
flipotto
Human being with feelings
 
flipotto's Avatar
 
Join Date: Feb 2007
Location: VA
Posts: 885
Default

Quote:
Originally Posted by mschnell View Post
The X32 is a completely different beast than the XTouch. AFAIK not MCI protocol, hence no Klinke.

-Michael
I know - late to the party...

You can select MCU protocol on X32 when on DAW remote.
I use klinke csurf plugin - it works great!

Or you can use Patrick's x32reaper, also.
flipotto is offline   Reply With Quote
Old 12-14-2021, 12:34 AM   #11
jacksoonbrowne
Human being with feelings
 
jacksoonbrowne's Avatar
 
Join Date: Aug 2017
Location: Ottawa, Canada
Posts: 563
Default

Quote:
Originally Posted by Geoff Waddington View Post
Are you technical at all ?

CSI, the project we work on -- there's and endlesss thread in this forum , has support for OSC.

The X32 speaks many dialects of OSC, we have been waiting for an early adopter to get this going, there will lots of trials and tribulations, but the result will be worth it (hopefully)

Are you up for that ?
I know that this is an older post, and am wondering if there were any early adopters.

I certainly would be up for the task.
jacksoonbrowne is online now   Reply With Quote
Old 12-15-2021, 06:48 AM   #12
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,184
Default

Quote:
Originally Posted by jacksoonbrowne View Post
I know that this is an older post, and am wondering if there were any early adopters.

I certainly would be up for the task.
Cool, what we need is a map of the X32 OSC messages.

Do you have / can you generate a map?

You need a map entry for each fader/button/etc.

You also need maps for feedback from Reaper/CSI -- this includes meters, switch lights etc.

With that, we should be able to get the X32 up and running.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 12-15-2021, 09:56 AM   #13
flipotto
Human being with feelings
 
flipotto's Avatar
 
Join Date: Feb 2007
Location: VA
Posts: 885
Default

The most useful document specifically the unofficial guide.
https://drive.google.com/file/d/1Snb...hbJpIpD0a/view
link taken from this site - by Patrick-Gilles Maillot
https://sites.google.com/site/patrickmaillot/x32

Here is the wiki
https://behringerwiki.musictribe.com...emote_Protocol
flipotto is offline   Reply With Quote
Old 12-15-2021, 01:44 PM   #14
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,184
Default

Quote:
Originally Posted by flipotto View Post
The most useful document specifically the unofficial guide.
https://drive.google.com/file/d/1Snb...hbJpIpD0a/view
link taken from this site - by Patrick-Gilles Maillot
https://sites.google.com/site/patrickmaillot/x32

Here is the wiki
https://behringerwiki.musictribe.com...emote_Protocol
Thanks, had a glance, WAY more in there than I have time to dedicate to.

It would be great if someone could come up with the simple transport control OSC messages for this unit.

My concern with this device continues to be all the configurations.

I think we would need both the OSC messages and someone at least a bit familiar with how to hook it up to a network.

Maybe start there.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 12-15-2021, 04:12 PM   #15
jacksoonbrowne
Human being with feelings
 
jacksoonbrowne's Avatar
 
Join Date: Aug 2017
Location: Ottawa, Canada
Posts: 563
Default

Quote:
Originally Posted by Geoff Waddington View Post
Thanks, had a glance, WAY more in there than I have time to dedicate to.

It would be great if someone could come up with the simple transport control OSC messages for this unit.

My concern with this device continues to be all the configurations.

I think we would need both the OSC messages and someone at least a bit familiar with how to hook it up to a network.

Maybe start there.
Hi Geoff,

My primary career over the last 30 years has been as a software engineer/architect.

I have a very good understanding of the M32/X32 OSC messaging (Thanks Patrick-Gilles Maillot).

I have done some successful previous work with X32 <--> OSCII-BOT <--> REAPER, but have now decided that CSI would/should be the better way to go.

I will kick start off being an CSI/X32 adopter by providing you with the Transport messages first.

I will send the list of transport messages later this evening if I can find time.

Cheers,

Roy

Last edited by jacksoonbrowne; 12-15-2021 at 06:15 PM.
jacksoonbrowne is online now   Reply With Quote
Old 12-15-2021, 08:06 PM   #16
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 5,990
Default

Roy, if it helps, here's an example of a CSI .ost (OSC Surface) file for an MCU-like setup. Note: I renamed the file extension to .txt so I could upload it in the forum, which is fine because CSI .ost files are simply plain ASCII text files with a different extension.

Hopefully by looking at this you can get a feel for the how the OSC addresses get converted into CSI widgets and what the syntax would look like. The .ost file essentially defines all the capabilities of the surface (what buttons are included, their address, which have/expect feedback). Once you had a similar .ost file for the X32, the next step would be assigning those surface widgets to CSI/Reaper actions in a .zon file.

Anyway, I hope this is helpful.

Last edited by Funkybot; 09-28-2022 at 11:55 AM.
Funkybot is online now   Reply With Quote
Old 12-15-2021, 09:00 PM   #17
jacksoonbrowne
Human being with feelings
 
jacksoonbrowne's Avatar
 
Join Date: Aug 2017
Location: Ottawa, Canada
Posts: 563
Default

Quote:
Originally Posted by Funkybot View Post
Roy, if it helps, here's an example of a CSI .ost (OSC Surface) file for an MCU-like setup. Note: I renamed the file extension to .txt so I could upload it in the forum, which is fine because CSI .ost files are simply plain ASCII text files with a different extension.

Hopefully by looking at this you can get a feel for the how the OSC addresses get converted into CSI widgets and what the syntax would look like. The .ost file essentially defines all the capabilities of the surface (what buttons are included, their address, which have/expect feedback). Once you had a similar .ost file for the X32, the next step would be assigning those surface widgets to CSI/Reaper actions in a .zon file.

Anyway, I hope this is helpful.
Thanks @Funkybot, I will check it out.

However I am hoping for CSI/X32/OSC not to require X32 to be in MCU mode, and use the Native X32 OSC.
jacksoonbrowne is online now   Reply With Quote
Old 12-15-2021, 09:16 PM   #18
jacksoonbrowne
Human being with feelings
 
jacksoonbrowne's Avatar
 
Join Date: Aug 2017
Location: Ottawa, Canada
Posts: 563
Default

Quote:
Originally Posted by jacksoonbrowne View Post
Hi Geoff,

My primary career over the last 30 years has been as a software engineer/architect.

I have a very good understanding of the M32/X32 OSC messaging (Thanks Patrick-Gilles Maillot).

I have done some successful previous work with X32 <--> OSCII-BOT <--> REAPER, but have now decided that CSI would/should be the better way to go.

I will kick start off being an CSI/X32 adopter by providing you with the Transport messages first.

I will send the list of transport messages later this evening if I can find time.

Cheers,

Roy
Hi Geoff,

I looked back at my OSCII-BOT X32 OSC implementation docs.
I started with MASTER track and track channels, and got that working in OSCII-BOT.

Here's my notes from back then.

I hope this helps.

BTW the X32 implementation of transport is soooo configurable on the X32 that there is no fixed/static OSC messages exclusively to transport.
I suggest implementing basic Master Track, and Track controls first.

Comments are most welcome.

-----------------------------

Code:
//**********************************************************************
//**********************************************************************
// Many thanks to PATRICK-GILLES MAILLOT for his excellent				
// "OSC protocol implementation for the X32/M32 Digital					
//  Mixing Console families"											
// I have somewhat quoted from his manual in the NOTES sections			
//																		
// NOTE that the X32 does not support OSC "Bundled Messages"			
//**********************************************************************
//**********************************************************************




//**********************************************************************
//**********************************************************************
// X32 EVENT NOTIFICATION												
//**********************************************************************
//**********************************************************************

//----------------------------------------------------------------------
// OSC MESSAGE:	/xremote												
//----------------------------------------------------------------------
// DESCRIPTION:	Subscribe to all X32 event notfications					
// NOTES:		"Triggers X32 to send all parameter changes to client.	
//				 Timeout is 10 seconds, e.g. the /xremote command has to
//				 be renewed before this delay in order to avoid losing	
//				 information from The X32 console" 						
//----------------------------------------------------------------------




//**********************************************************************
//**********************************************************************
// MASTER TRACK 														
//**********************************************************************
//**********************************************************************
	
//----------------------------------------------------------------------
// X32 MASTER TRACK Name/Scribble Stript Text							
//----------------------------------------------------------------------
// OSC MESSAGE:	/main/st/config/name									
//----------------------------------------------------------------------
// NOTES:		Scribble Strip text:									
//				"A 12 character max string representing the main LR		
//				 channel name "											
// CAVEATS:		It is suggested that CSI should send this to the X32	
//				with the text MASTER" during CSI initialization.		
//				To reflect Reapers Master track named "MASTER".			
//----------------------------------------------------------------------

//----------------------------------------------------------------------
// MASTER TRACK VOLUME													
//----------------------------------------------------------------------
// OSC MESSAGE:	/main/st/mix/fader										
//----------------------------------------------------------------------
// NOTES:		"[0...1]" where = inf, 1 = +10dB						
//----------------------------------------------------------------------

//----------------------------------------------------------------------
// MASTER TRACK PAN														
//----------------------------------------------------------------------
// OSC MESSAGE:	/main/st/mix/pan										
//----------------------------------------------------------------------
// NOTES:		"[-1...2]" where 0 = CENTERED							
//----------------------------------------------------------------------

//----------------------------------------------------------------------
// MASTER TRACK MUTE													
//----------------------------------------------------------------------
// OSC MESSAGE:	/main/st/mix/on											
//----------------------------------------------------------------------
// NOTES:		"[0,1]", where 0 = MuteOn, 1 = MuteOff					
//----------------------------------------------------------------------




//**********************************************************************
//**********************************************************************
// TRACK 																
//**********************************************************************
//**********************************************************************
	
//----------------------------------------------------------------------
// TRACK SCRIBBLE STRIP TEXT											
//----------------------------------------------------------------------
// OSC MESSAGE:	/ch/<trackNumber>/config/name							
//----------------------------------------------------------------------
// NOTES:		Scribble Strip text:									
//				"A 12 character max string representing the track name"	
//				<trackNumber> is a value of 01 thru 32					
//----------------------------------------------------------------------

//----------------------------------------------------------------------
// TRACK VOLUME															
//----------------------------------------------------------------------
// OSC MESSAGE:	/ch/<trackNumber>/mix/fader								
//----------------------------------------------------------------------
// NOTES:		"[0...1]" where 0 = inf, 1 = +10dB						
//				<trackNumber> is a value of 01 thru 32					
//----------------------------------------------------------------------

//----------------------------------------------------------------------
// TRACK PAN															
//----------------------------------------------------------------------
// OSC MESSAGE:	/ch/<trackNumber>/mix/pan								
//----------------------------------------------------------------------
// NOTES:		"[-1...2]" where 0 = CENTERED							
//				<trackNumber> is a value of 01 thru 32					
//----------------------------------------------------------------------

//----------------------------------------------------------------------
// TRACK MUTE															
//----------------------------------------------------------------------
// OSC MESSAGE:	/ch/<trackNumber>/mix/mute								
//----------------------------------------------------------------------
// NOTES:		"[0,1]", where 0 = MuteOn, 1 = MuteOff					
//				<trackNumber> is a value of 01 thru 32					
//----------------------------------------------------------------------

//----------------------------------------------------------------------
// TRACK SOLO															
//----------------------------------------------------------------------
// OSC MESSAGE:	/-stat/solosw/<trackNumber>								
//----------------------------------------------------------------------
// NOTES:		"[0,1]", where 0 = SoloOn, 1 = SoloOff					
//				<trackNumber> is a value of 01 thru 32 or X32 Channels	
//				<trackNumber> is a value of 71 for master Track			
//----------------------------------------------------------------------

Last edited by jacksoonbrowne; 12-17-2021 at 02:54 AM.
jacksoonbrowne is online now   Reply With Quote
Old 12-15-2021, 10:12 PM   #19
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 5,990
Default

The file I posted was not for an MCU device, it was for an OSC device that mimics the MCU layout and naming convention. I use it for testing sometimes without actually owning an MCU device of any kind. Just using my iPad and OSC. So there's no MIDI or MCU at all there, just pure native OSC.
Funkybot is online now   Reply With Quote
Old 12-15-2021, 11:57 PM   #20
jacksoonbrowne
Human being with feelings
 
jacksoonbrowne's Avatar
 
Join Date: Aug 2017
Location: Ottawa, Canada
Posts: 563
Default

Quote:
Originally Posted by Funkybot View Post
The file I posted was not for an MCU device, it was for an OSC device that mimics the MCU layout and naming convention. I use it for testing sometimes without actually owning an MCU device of any kind. Just using my iPad and OSC. So there's no MIDI or MCU at all there, just pure native OSC.
@Funkybot,

Sorry, I mis-interpreted your post.

I have a lot of knowledge on the X32 console as well as it's OSC message formats, and have created some oscii-bot scripts for my own use. But I am very new to help porting it to CSI.
That's why I want to be an early adopter of CSI for X32/OSC.

I think I could be very helpful in that regard.

Cheers,
Roy
jacksoonbrowne is online now   Reply With Quote
Old 12-16-2021, 10:00 AM   #21
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 5,990
Default

Roy,

Looking at what you posted it seems like that would get converted for CSI as this in the .ost file....

Code:

Widget Fader1 
Control /ch/1/mix/fader
FB_Processor /ch/1/mix/fader
WidgetEnd

Widget ScribbleText1                    // If you were to call this DisplayUpper1 instead, it may give you the ability to borrow existing .zon files and more easily retrofit them for the x32
Control /ch/1/config/name               // I'm not sure this row is even required for displays but doesn't hurt
FB_Processor /ch/1/config/name
WidgetEnd

Widget Pan1
Control /ch/1/mix/pan
FB_Processor /ch/1/config/name
Widget End

Widget Mute1
Control /ch/1/mix/mute
FB_Processor /ch/1/mix/mute
Widget End

Widget Solo1
Control /-stat/solosw/1                // Interesting this follows a different convention than volume, pan, mute
FB_Processor /-stat/solosw/1
Widget End

Widget Fader2 
Control /ch/2/mix/fader
FB_Processor /ch/2/mix/fader
WidgetEnd

Widget ScribbleText2
Control /ch/2/config/name
FB_Processor /ch/2/config/name
WidgetEnd

Widget Pan2
Control /ch/2/mix/pan
FB_Processor /ch/2/config/name
Widget End

Widget Mute2
Control /ch/2/mix/mute
FB_Processor /ch/2/mix/mute
Widget End

Widget Solo2
Control /-stat/solosw/2
FB_Processor /-stat/solosw/2
Widget End

Widget Fader3 
Control /ch/3/mix/fader
FB_Processor /ch/3/mix/fader
WidgetEnd

Widget ScribbleText3
Control /ch/3/config/name
FB_Processor /ch/3/config/name
WidgetEnd

Widget Pan3
Control /ch/3/mix/pan
FB_Processor /ch/3/config/name
Widget End

Widget Mute3
Control /ch/3/mix/mute
FB_Processor /ch/3/mix/mute
Widget End

Widget Solo3
Control /-stat/solosw/3
FB_Processor /-stat/solosw/3
Widget End
You'd basically do continue on like that for each parameter on the hardware.
Funkybot is online now   Reply With Quote
Old 12-16-2021, 01:27 PM   #22
Funkybot
Human being with feelings
 
Funkybot's Avatar
 
Join Date: Jul 2007
Location: New Joisey
Posts: 5,990
Default

Then once you've got the .ost setup, the next step would be to start creating a zone folder and .zon files for the surface.

You'd need a X32_home.zon
Code:
Zone "Home"
    	IncludedZones
    		"Channel"
    	IncludedZonesEnd    	
ZoneEnd

// You could add more included zones like "Buttons" etc later on
Then a X32_Channel.zon (to start):
Code:
Zone "Channel"
    TrackNavigator
    ScribbleText|                       TrackNameDisplay
    Fader|                              TrackVolume
    Pan|                                TrackPan "0"
    Alt+Pan|                            TrackPanWidth "1"
    Shift+Pan|                          TrackPanL
    Option+Pan|                         TrackPanR
    Solo|                               TrackSolo
    Mute|                               TrackMute
ZoneEnd
That would get you a basic CSI setup.
Funkybot is online now   Reply With Quote
Old 12-16-2021, 10:51 PM   #23
jacksoonbrowne
Human being with feelings
 
jacksoonbrowne's Avatar
 
Join Date: Aug 2017
Location: Ottawa, Canada
Posts: 563
Default

Thank you so much Funkybot

However the X32 will not send any osc messages to CSI until it receives "/xremote" from CSI.

"/xremote" is basically telling X32 that "Hey X32, CSI here, and I want to subscribe to your osc messages".

After "/xremote" is received by the X32 it will send osc events to CSI for 10 seconds. Therefore the "/xremote" should be sent by CSI on a periodic basis that is less than 10 seconds to ensure that no osc events are missed by the CSI. I would suggest every 5 seconds.

Is this something that CSI can do?
jacksoonbrowne is online now   Reply With Quote
Old 12-17-2021, 12:35 AM   #24
jacksoonbrowne
Human being with feelings
 
jacksoonbrowne's Avatar
 
Join Date: Aug 2017
Location: Ottawa, Canada
Posts: 563
Default

Reaper can and does #bundle osc messages.
X32 does not support #bundle messages.

Can CSI unbundle them before being sent to the X32?

Cheers,
Roy
jacksoonbrowne is online now   Reply With Quote
Old 12-17-2021, 01:38 AM   #25
EcBaPr
Human being with feelings
 
Join Date: Aug 2009
Posts: 402
Default

is there any advantages to establishing X32/CSI integration which you couldn't achieve with a comprehensive OSCii bot script ? its always cool to see new tools but I'm wondering if you gain anything ?

thanks again Roy for your port of OSCii bot by the way.. been really helpful here..
EcBaPr is offline   Reply With Quote
Old 12-17-2021, 06:00 PM   #26
jacksoonbrowne
Human being with feelings
 
jacksoonbrowne's Avatar
 
Join Date: Aug 2017
Location: Ottawa, Canada
Posts: 563
Default

Quote:
Originally Posted by EcBaPr View Post
is there any advantages to establishing X32/CSI integration which you couldn't achieve with a comprehensive OSCii bot script ? its always cool to see new tools but I'm wondering if you gain anything ?

thanks again Roy for your port of OSCii bot by the way.. been really helpful here..
Hi EcBaPr, it has been a while since we last talked.

I made the decision to go with CSI as the code for my OSCII-BOT script was getting way to large for the 30 or so events that I got working.
Also, once I get CSI working for the X32 it should, with maybe just minimal tweaks to CSI, work for the entire X family.

And the big bonus will be to everyone with an X32.
Not to mention the huge amount of support the forum can provide.

Cheers, Roy
jacksoonbrowne is online now   Reply With Quote
Old 12-17-2021, 06:14 PM   #27
jacksoonbrowne
Human being with feelings
 
jacksoonbrowne's Avatar
 
Join Date: Aug 2017
Location: Ottawa, Canada
Posts: 563
Default Help: Need 1 More thing to start CSI testing

I have installed CSI 1.1 and need just 1 thing before I can continue CSI-X32 development.

In order for CSI to receive OSC messages from the X32, it must send "/xremote" to the X32 every 5 seconds.

Does CSI have the capability to instantiate a background thread that could do this?


-
jacksoonbrowne is online now   Reply With Quote
Old 12-17-2021, 11:48 PM   #28
jacksoonbrowne
Human being with feelings
 
jacksoonbrowne's Avatar
 
Join Date: Aug 2017
Location: Ottawa, Canada
Posts: 563
Default Please Help .... Bump

Please Help .... Bump
jacksoonbrowne is online now   Reply With Quote
Old 12-18-2021, 12:26 AM   #29
EcBaPr
Human being with feelings
 
Join Date: Aug 2009
Posts: 402
Default

Quote:
Originally Posted by jacksoonbrowne View Post
Hi EcBaPr, it has been a while since we last talked.

I made the decision to go with CSI as the code for my OSCII-BOT script was getting way to large for the 30 or so events that I got working.
Also, once I get CSI working for the X32 it should, with maybe just minimal tweaks to CSI, work for the entire X family.

And the big bonus will be to everyone with an X32.
Not to mention the huge amount of support the forum can provide.

Cheers, Roy

cool I see where you are coming from.. hope the CSI integration goes well..
EcBaPr is offline   Reply With Quote
Old 12-18-2021, 02:40 AM   #30
jacksoonbrowne
Human being with feelings
 
jacksoonbrowne's Avatar
 
Join Date: Aug 2017
Location: Ottawa, Canada
Posts: 563
Default

Quote:
Originally Posted by EcBaPr View Post
cool I see where you are coming from.. hope the CSI integration goes well..
Thanks EcBaPr

I totally understand the X32 OSC messaging.
But I am still learning CSI

But I am hung up on this one:
Does CSI have a timer thread that be used to issue an "/xremote" every 5 seconds?
I am still googling OSC on CSI/REAPER and may come up with an answer I hope.

Cheers,
Roy
jacksoonbrowne is online now   Reply With Quote
Old 12-18-2021, 05:56 AM   #31
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,184
Default

Quote:
Originally Posted by jacksoonbrowne View Post
Thanks EcBaPr

I totally understand the X32 OSC messaging.
But I am still learning CSI

But I am hung up on this one:
Does CSI have a timer thread that be used to issue an "/xremote" every 5 seconds?
I am still googling OSC on CSI/REAPER and may come up with an answer I hope.

Cheers,
Roy

Looks like we need to add an Action for this
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 12-18-2021, 09:43 PM   #32
jacksoonbrowne
Human being with feelings
 
jacksoonbrowne's Avatar
 
Join Date: Aug 2017
Location: Ottawa, Canada
Posts: 563
Default

Quote:
Originally Posted by Geoff Waddington View Post
Looks like we need to add an Action for this
Thanks Geoff,

I am willing and able to help/test/etc
jacksoonbrowne is online now   Reply With Quote
Old 12-19-2021, 03:03 AM   #33
jacksoonbrowne
Human being with feelings
 
jacksoonbrowne's Avatar
 
Join Date: Aug 2017
Location: Ottawa, Canada
Posts: 563
Default

Until CSI can do this, I am at a stand still
jacksoonbrowne is online now   Reply With Quote
Old 12-19-2021, 05:42 AM   #34
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,184
Default

Quote:
Originally Posted by jacksoonbrowne View Post
Until CSI can do this, I am at a stand still
Thought you said you were a software engineer/architect

Are you familiar with C++ ?

CSI is open source.

There is a virtual Widget called OnInitialization.

You could write a simple Action to send the OSC message upon initialization.

That would at least give you ten seconds.

You could then hook a button to that action as well until we can build a timer for the heartbeat, and buy yourself another ten seconds with a button push
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 12-19-2021, 05:50 AM   #35
jacksoonbrowne
Human being with feelings
 
jacksoonbrowne's Avatar
 
Join Date: Aug 2017
Location: Ottawa, Canada
Posts: 563
Default

Quote:
Originally Posted by Geoff Waddington View Post
Thought you said you were a software engineer/architect

Are you familiar with C++ ?

CSI is open source.

There is a virtual Widget called OnInitialization.

You could write a simple Action to send the OSC message upon initialization.

That would at least give you ten seconds.

You could then hook a button to that action as well until we can build a timer for the heartbeat, and buy yourself another ten seconds with a button push
Hi Geoff,

I am very familiar with c++ using visual studio.
What version of VS does the open source require?
jacksoonbrowne is online now   Reply With Quote
Old 12-19-2021, 05:55 AM   #36
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,184
Default

Oops, too early on Sunday, this was meant to be in the more general CSI area
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com

Last edited by Geoff Waddington; 12-19-2021 at 07:32 AM.
Geoff Waddington is offline   Reply With Quote
Old 12-19-2021, 06:12 AM   #37
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,184
Default

Quote:
Originally Posted by jacksoonbrowne View Post
Hi Geoff,

I am very familiar with c++ using visual studio.
What version of VS does the open source require?
Great news !!

I'm using Microsoft Visual Studio Community 2019 Version 16.11.7.

Just download the source and have a look -- some of it is ok, some not so much, like any code

You will want to look at the files that contain Actions:

control_surface_action_contexts.h
control_surface_manager_actions.h
control_surface_Reaper_actions.h

This will give you a flavour of how to design and code an Action.

In order to use the new Action it needs to be added to the dictionary -- see control_surface_integrator.cpp around line 1027.

Let's say you designed the Action to take a string param (the message), and you named it SendOSCString, the Zone definition would look like this:

Code:
Zone SomeZone
    OnInitialization SendOSCString "/remote"

...



    SomeButton SendOSCString "/remote"
Zone ZoneEnd
That's the basics, please get back with any questions.
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington is offline   Reply With Quote
Old 12-19-2021, 07:10 AM   #38
jacksoonbrowne
Human being with feelings
 
jacksoonbrowne's Avatar
 
Join Date: Aug 2017
Location: Ottawa, Canada
Posts: 563
Default

Love the c++ coding style Geoff, exactly the same way I do
jacksoonbrowne is online now   Reply With Quote
Old 12-19-2021, 07:20 AM   #39
jacksoonbrowne
Human being with feelings
 
jacksoonbrowne's Avatar
 
Join Date: Aug 2017
Location: Ottawa, Canada
Posts: 563
Default

I am using VS 2019 Enterprise edition and the sln compiles good, but with a lot of warnings. So I set the project warning settings to /W0 and all warnings are gone.

Later today when I wake up I will delve into the source code.
jacksoonbrowne is online now   Reply With Quote
Old 12-19-2021, 07:25 AM   #40
Geoff Waddington
Human being with feelings
 
Geoff Waddington's Avatar
 
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,184
Default

Quote:
Originally Posted by jacksoonbrowne View Post
I am using VS 2019 Enterprise edition and the sln compiles good, but with a lot of warnings. So I set the project warning settings to /W0 and all warnings are gone.

Later today when I wake up I will delve into the source code.
Yeah, since this is basically an R&D project, I'm pretty lax on warnings, if I know they are meaningless, like complaining about possible unsigned/signed comparisons in Win32 macros, while we're on 64 bit systems, and indeed, a lot of that old Win32 macro stuff is actually 16 bit from the old DOS days, I know, I was coding Windows WAY back then

One day, I will bite the bullet and clean that junk up
__________________
To install you need the CSI Software and Support Files
For installation instructions and documentation see the Wiki
Donate -- via PayPal to waddingtongeoff@gmail.com
Geoff Waddington 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 05:59 PM.


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