|
|
|
02-08-2020, 03:06 AM
|
#1
|
Human being with feelings
Join Date: Apr 2019
Posts: 98
|
Simple OSC with CSI test
I'm having a hard time getting CSI to do what I want...
I have an Arduino micro controller, with ethernet and a switch in stomp box. The purpose of my stomp box is to set the WET parameter of Reacomp FX in track 101 in Reaper to be 100 or 0 when I step on the switch.
I can successfully send OSC commands directly to Reaper, and the stomp box is doing exactly what I want. But since I must hardcode the Arduino to send commands to track 101, I have to reprogram it every time I add/remove a track before 101... CSI is supposedly able to help me out with this, but...
In CSI's "Control Surface Integrator" I have added a page, with a child OSC surface. The OSC surface points to the IP of my Arduino, and I've specified port 8888 to receive, and 9999 to send.
Now - this is where the fog gets really thick, and it's hard to see the path... Let's say I send "OSC <ip_on_reaper> 8888 /recaompguitar01 i 0
I can not visually see any signs of the commands received in Reaper/CSI, and how on earth can I bind my commands to my track named "guitar1" in Reaper, and its FX "Reacomp"???
|
|
|
02-08-2020, 04:00 AM
|
#2
|
Human being with feelings
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,258
|
Quote:
Originally Posted by netphreak
I'm having a hard time getting CSI to do what I want...
I have an Arduino micro controller, with ethernet and a switch in stomp box. The purpose of my stomp box is to set the WET parameter of Reacomp FX in track 101 in Reaper to be 100 or 0 when I step on the switch.
I can successfully send OSC commands directly to Reaper, and the stomp box is doing exactly what I want. But since I must hardcode the Arduino to send commands to track 101, I have to reprogram it every time I add/remove a track before 101... CSI is supposedly able to help me out with this, but...
In CSI's "Control Surface Integrator" I have added a page, with a child OSC surface. The OSC surface points to the IP of my Arduino, and I've specified port 8888 to receive, and 9999 to send.
Now - this is where the fog gets really thick, and it's hard to see the path... Let's say I send "OSC <ip_on_reaper> 8888 /recaompguitar01 i 0
I can not visually see any signs of the commands received in Reaper/CSI, and how on earth can I bind my commands to my track named "guitar1" in Reaper, and its FX "Reacomp"???
|
Yeah, that flexibility thing again...
I would suggest you try this approach just to get you going.
The dumber the Control Surface, the better it works with CSI.
If you haven't read @MalcolmG's wiki -- link is on 1st page of this thread -- it is a bit outdated -- he describes what an .mst/.ost Widget definitions file is -- basically it presents the capabilities of the surface, not what it does -- that's CSI's job.
Now to your exact use case.
Here's a rough sketch of the definitions in proposed netphreakArduino.ost and netphreakArduino.zon files.
netphreakArduino.ost:
Code:
Widget Stomp1
Control /recaompguitar01
WidgetEnd
netphreakArduino.zon:
Code:
Zone "ToggleCompWet101"
Stomp1 Reaper "ToggleReacompWetOnTrack101"
ZoneEnd
Then all you need to do is define "ToggleReacompWetOnTrack101" the way you would define any custom Reaper Action -- there may even be one that does this if you are very lucky Do you have SWS installed ? There are a ton of goodies in there.
There are many ways to do what you want, this is but one, hopefully it illustrates how easy it is.
The Widget def files (.mst/.ost) present the Control Surface capabilities and give simple handles (e.g. Stomp1) to tie to the Actions in the .zon file.
To change the behaviour of Stomp1, you would need another Zone and a way to switch the Zones.
You might have something like this:
Code:
Zone "Play"
Stomp1 Play
Stomp2 GoZone "ToggleCompWet101"
ZoneEnd
Now when you press Stomp1, Reaper transport goes into Play mode.
If you have a Stomp2 you could use it to get back to the "ToggleCompWet101" behaviour.
You could also modify "ToggleCompWet101" to use Stomp2 to switch behaviourr like this:
Code:
Zone "ToggleCompWet101"
Stomp1 Reaper "ToggleReacompWetOnTrack101"
Stomp2 GoZone "Play"
ZoneEnd
Any questions, ask away
__________________
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
|
|
|
02-08-2020, 04:39 AM
|
#3
|
Human being with feelings
Join Date: Apr 2019
Posts: 98
|
Great post, wow, thank you!
Though, I still can not see how any of this solves the root of the problem - binding action of any kind to another ID than track number... I don't know if track number 101 has become tracknumber 92, 110, 99, 12, etc. etc. next week.
Very sad that primary ID always seems to be track number - even though Reaper itself uses a proper id - Reaper's own ID of my track number 101 is in fact CF774744-59F5-466D-A6E9-AC07AFD25B22
|
|
|
02-08-2020, 05:25 AM
|
#4
|
Human being with feelings
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,258
|
Quote:
Originally Posted by netphreak
Though, I still can not see how any of this solves the root of the problem - binding action of any kind to another ID than track number... I don't know if track number 101 has become tracknumber 92, 110, 99, 12, etc. etc. next week.
Very sad that primary ID always seems to be track number - even though Reaper itself uses a proper id - Reaper's own ID of my track number 101 is in fact CF774744-59F5-466D-A6E9-AC07AFD25B22
|
Reaper uses GUIDs for Track id so that the track number doesn't matter.
You can think of it this way -- CF774744-59F5-466D-A6E9-AC07AFD25B22 is in slot 101 right now, but if you rearrange it it is still CF774744-59F5-466D-A6E9-AC07AFD25B22 no matter where it is visually.
Maybe there is a better approach, why is track 101 magic, what are you trying to do ?
__________________
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
|
|
|
02-08-2020, 06:15 AM
|
#5
|
Human being with feelings
Join Date: Apr 2019
Posts: 98
|
Quote:
Originally Posted by Geoff Waddington
Reaper uses GUIDs for Track id so that the track number doesn't matter.
|
Exactly my point. We don't have that luxury at disposal, unfortunately. A proper ID.
Quote:
Originally Posted by Geoff Waddington
You can think of it this way -- CF774744-59F5-466D-A6E9-AC07AFD25B22 is in slot 101 right now, but if you rearrange it it is still CF774744-59F5-466D-A6E9-AC07AFD25B22 no matter where it is visually.
|
Kind of the purpose of an ID, yes Now, how do I set up an action (custom Reaper Action in this case) handling CF774744-59F5-466D-A6E9-AC07AFD25B2 instead of 101? 101 will get another number anytime I add/remove tracks before this track, so it's not usable as an ID.
|
|
|
02-08-2020, 06:21 AM
|
#6
|
Human being with feelings
Join Date: Apr 2019
Posts: 98
|
Quote:
Originally Posted by Geoff Waddington
why is track 101 magic, what are you trying to do ?
|
Nothing magic, it's:
Track ID: CF774744-59F5-466D-A6E9-AC07AFD25B2, with Name: Guitar1, Tracknumber: 101
- right now. Tomorrow it may look like this:
Track ID: CF774744-59F5-466D-A6E9-AC07AFD25B2, with Name: Guitar1, Tracknumber: 97
Means: Tracknumber not feasible to program anything against. Track ID is. But how...
|
|
|
02-08-2020, 06:22 AM
|
#7
|
Human being with feelings
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,258
|
Quote:
Originally Posted by netphreak
Exactly my point. We don't have that luxury at disposal, unfortunately. A proper ID.
Kind of the purpose of an ID, yes Now, how do I set up an action (custom Reaper Action in this case) handling CF774744-59F5-466D-A6E9-AC07AFD25B2 instead of 101? 101 will get another number anytime I add/remove tracks before this track, so it's not usable as an ID.
|
Ok, so it's not Track 101 you're interested in but rather the Track with GUID CF774744-59F5-466D-A6E9-AC07AFD25B2 ?
In that case I think a custom Action launching a script might be the way to go.
__________________
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
|
|
|
02-08-2020, 06:42 AM
|
#8
|
Human being with feelings
Join Date: Apr 2019
Posts: 98
|
Correct. I can't see how anyone wanting to program anything against a track number. It's just a temporarily number, as long as it's not possible to 'lock' the tracknumbers in Reaper GUI.
Oh well, thank you again for all the effort you do for this community
|
|
|
02-08-2020, 07:17 AM
|
#9
|
Human being with feelings
Join Date: Mar 2009
Location: Dartmouth, Nova Scotia
Posts: 11,258
|
Quote:
Originally Posted by netphreak
Correct. I can't see how anyone wanting to program anything against a track number. It's just a temporarily number, as long as it's not possible to 'lock' the tracknumbers in Reaper GUI.
Oh well, thank you again for all the effort you do for this community
|
Hold on a sec, I'm pretty sure some CSI folks are already writing and using custom actions that launch scripts, don't think it's very difficult.
__________________
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
|
|
|
02-08-2020, 07:30 AM
|
#10
|
Human being with feelings
Join Date: Apr 2019
Posts: 98
|
I’ll hold
I’ve given up hoping for the Reaper devs to improve their OSC implementation, so workarounds are the only way out. Or, I could continue what I currently do - stack up with hidden dummy tracks, and make sure the automated tracks have the same track number all the time - but it’s a massive pita...
|
|
|
08-16-2020, 01:58 AM
|
#11
|
Human being with feelings
Join Date: Feb 2020
Posts: 19
|
Im a bit novice in osc and totally new in csi, but why not use custom action with track name? I made those to workaround changing track number.
PS. Can You point me to some resources to make Arduino with osc over ethernet? I’m capable of doing usb midi controller, but midi input with reaper and realern is not great at all..
|
|
|
08-16-2020, 02:17 AM
|
#12
|
Human being with feelings
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,793
|
AFAIU, CSI can take Midi(USB) and OSC(Ethernet) controllers equally well.
Directly using OSC messages to control Reaper Features seems a lot more problematic than using Midi for this. Hence I used OSCIIBot to convert OSC to Midi external of Reaper for some similar purpose.
-Michael
|
|
|
Thread Tools |
|
Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -7. The time now is 04:44 PM.
|