[sharing] Open Stage Control & Max : tutorial & examples

Mathieu Chamagne's icon

For all the lovers of touchOSC, Lemur, Mira, … the next cutting edge piece of software that will let you control your patches from *any* multitouch device running on iOS, android, windows, macOS, linux … is called Open Stage Control (Libre and modular OSC / MIDI controller) : https://openstagecontrol.ammd.net

It’s free and open source, and it’s awesome !

It’s only default is its lack of examples… As I spent a bit of time exploring the amazing possibilities of Open Stage Control with Max, I thought that sharing a couple of tips & tricks may be useful to other Max users.

It’s available on this GitHub repository :
https://github.com/matcham/OpenStageControl_Max_examples

for now it contains 3 folders / categories :

  • 01_O-S-C_Max_tutorial : a Max patch + O-S-C session demonstrating various patching mechanisms & some widget customisation examples.

  • 02_O-S-C_Max_using_OSSIA-lib : showing how OSSIA can ease integration of Open Stage Control in Max workflow.

  • 03_O-S-C_Max-for-Live_example : work in progress… available soon

I hope some of you will find it useful.

Looking forward reading your feedbacks

Cheers

Mathieu

manmusic's icon

Hello Mathieu, I'm sorry, but I can't seem to use the OSC-ossia patch bidirectionally. Is that normal? I find this library very interesting, but I'm having a hard time understanding it. I also see that you've decided to use Odot partially in your M4L patches. Do you have a preference?

Mathieu Chamagne's icon

Hello

are you talking about O-S-C_OSSIA-Max_example.maxpat ?
can you explain exactly what doesn't work for you ?
make sure your OpenStageControl listen to port 8080 (that should be the default setting), and sends to port 8000.
Here it works bidirectionally...

(I've just commited an updated version to github with some minor fixes & updates)

In the M4L example, I use o.dot externals mainly because o.collect in order to send bundles.
o.route could be replaced by ossia.router

manmusic's icon

I really can't seem to understand my issue. On Open Stage Control 1.25.4, which I'm currently using locally, I have the following settings: "send 192.168.1.1:8000" and port 8080.

It does receive information correctly from the O-S-C_OSSIA-Max_example patch. However, Open Stage Control is unable to connect to the Max patch and displays an error: "(ERROR, UDP) send EHOSTDOWN 192.168.1.1:8000".

I've checked the network settings on my 2017 MacBook Pro 14.3 (running Monterey 12.6.3), but everything seems to be in order. I've disconnected all my peripherals (screen and external hard drive).

I've also tried alternating the application startups, launching Max first and then Open Stage Control, and vice versa, but nothing seems to resolve my issue.

Mathieu Chamagne's icon

did you checked if OpenStageControl can send osc to a udpreceive 8000 in Max ?
In OpenStageControl settingse, try using
send 127.0.0.1:8000
(= localhost)

manmusic's icon

Merci beaucoup Mathieu! I'm really sorry for the inconvenience, and congratulations again on these 3 truly fantastic patches