OSC (Open Sound Control)

Open Sound Control (OSC) is a protocol for networking sound synthesizers, computers, and other multimedia devices.

Bringing the benefits of modern networking technology to the world of electronic musical instruments, OSC‘s advantages include interoperability, accuracy, flexibility, and enhanced organization and documentation.

Usine offers tools and modules like the OSC Lister and the OSC Learn feature for adaptation of this protocol into your own workflow.

To enable OSC (Open Sound Control) capabilities in Usine see OSC and Network Configuration.

You’ll also find information about using OSC Learn and OSC devices in the user's manual

OSC learn

You’ll find a complete step-by-step exercise about using OSC Learn in the user's manual. Once the OSC is configured using the OSC learn is the same as performing a MIDI learn.


1. Activate the Remote icon.
2. Click on the object you want to control.
3. Move the control on your remote OSC device.

Once assigned, the assignation becomes visible in the The Settings Panel / remote tab of the Usine object.

Use the OSC lister

Usine provides a very easy and quick way to directly receive and handle incoming OSC messages with the new OSC Lister module.

This module will automatically create a list of all OSC messages and their respective Outlets, then using the buses modules, you can route the message anywhere in your workspace.

Send one simple value

If you would like to send a simple value from one computer to another; lets say the value of a fader:

The source computer

  1. Add an OSC send module with 1 data.
  2. Set the name of your data, also called OSC address, for example /usine/mydata/.
  3. Set the broadcast switch ON.
  4. Set the data type to float (tag f).
  5. Set the send switch ON to activate the OSC send.

Turn your patch ON and verify that Usine sends the OSC message when you change the fader’s value. The OSC send led of the The Master Panel should blink to show indication of the transmission.

If unable to see activity, see OSC and Network Configuration for setup troubleshooting.

Receive one simple value

The target computer

  1. Add an OSC receive with 1 data.
  2. Set the name of the data you want to receive, in our case, /usine/mydata/.
  3. Turn the on change parameter ON. In this case the data is received each time it changes, otherwise nothing has been received.

The settings panel and the patch:

Receive several values from the same address

Let’s say you receive an XY with this address:

/4/xy-01

/4/xy/02

In the OSC receive module (2 data’s) use the address

/4/xy

Send multiple values

If you want to send several values at the same time, it can be more efficient to use a single module with several data Inlets/Outlets than using multiple OSC Send modules.

For example with 2 data’s:

The source computer and target computer:

Send less than 32 values

As an example we want to send 8 values from a Sequenced Steps module to be received by a similar set.

First create a patch as shown in the picture to the right:

The source computer and target computer:

If the amount of data is known (size of an array), Usine provides an efficient alternative to patching each individual data line. This example uses the array Outlet/Inlet patched to Data’s and provides an equivalent result to the individual patching shown in the picture above.

But be careful, the size of the sent array will never be greater than the number of data inlets, in this example 8.

The source computer and target computer:

Send an array

The most efficient way to send an array or if you don’t know its size is to use the array (b) type:

Source OSC send = array (b) type

In this case using the array (b) type, the array must be connected to the data inlet and not the data’s inlet.

NO YES