Skip to main content

Protocol-OSC

Open Sound Control (OSC) is a widely used protocol for controlling all sorts of devices. This is a generic protocol implementation, so you have to know the exact commands your device reacts to, and how to connect to it.

OSC works by sending commands with an address and often also an argument. If we have a device with a level to control, the command can look like this:
Address: "/fader/1"

At the moment our OSC device core only works via UDP.

Configuration

To configure the device you need to set some device specific information.

image.png

  • IP
    Set the IP address of the device to control 
  • Send Port
    Set the port to send OSC commands to. This can either be set on the device or found in the manual.

  • Receive Port
    Set the port to listen for OSC commands. Some devices sends the return commands on the port it receives commands from. If this is the case, then leave it empty, otherwise set the port specified on the device or found in the manual.

  • Ping Command
    To check if the device is connected and active, you can specify a command to send once in a while. If we receive a response, we expect the device to be connected. This is often something like "/Ping" or "/KeepAlive".
    If the Ping Command is not set, the device status will always be connected, since there is no way of knowing if there is a device listening.

  • Pong Command
    On some devices, the response to the Ping Command are different from the command send. For instance, some devices will respond with "/Pong" when a "/Ping" is sent. Specify it here, or leave it empty to use the Ping Command.
  • Sync Command
    Some devices needs to receive a sync command once in a while, to keep sending feedback. This can be left empty.

  • Sync Rate
    Set how often the Sync Command should be send. In seconds.

Models

The OSC core provides 3 different models to use:

  1. Simple model
    This model includes parameters for very simple OSC 

  2. Dynamic model
    This model includes everything from the simple model, but also a way to receive feedback on parameters.

  3. Advance model