Blue Melon
BlueSense

Products/BlueSense and OSC

From BlueMelon


The BlueSense OSC (Open Sound Control) interface allows you to use BlueSense from within any environment which supports OSC. Cited from the OSC website:

"Open Sound Control (OSC) is a protocol for communication among computers, sound synthesizers, and other multimedia devices that is optimized for modern networking technology".

Examples of OSC enabled applications

svn

Gateway

OSC support in BlueSense is achieved via a special gateway application. The gateway is based upon Java and JavaOSC. The gateway can be used as both a client or server (TCP and UDP protocols) for your OSC applications.

Installation and Setup

Check the OSC directory of the SDK. There are a number of scripts which you can use to start a server or client.

OSC messages

General

Send these messages to

 /bluesense/master
  • addIPAdress ip username password
    • Adds a connection to an BlueSense ethernet router
  • getDevices
    • Returns a list of currently found BlueSense devices. The list is returned as individual osc messages:
 /bluesense/device id name firmwareversion
  • detectDevices count timeout
    • Try to detect 'count' devices. The process stops when no devices have been found for 'timeout' miliseconds.
  • detectDevice id timeout
    • Try to detect the device with the given 'id'. The process stops wenn the device is found or after 'timeout' miliseconds.
  • getListedDeviceCount
    • Returns the number of found BlueSense devices:
 /bluesense/deviceCount count

Individual BlueSense devices

You can send a OSC message to an specific BlueSense module:

 /bluesense/id/message  
  • id: should be replace by the id of the module
  • message: a specific message. Possible messages are listed below:

Analog input module

Events

 /bluesense/id/lastSampledInput index value

Commands

  • getResolution
 /bluesense/id/getResolution
 returns /bluesense/id/resolution value
  • getSampleDelay
 /bluesense/id/getSampleDelay 
 returns /bluesense/id/sampleDelay value
  • getVoltageReference
 /bluesense/id/getVoltageReference
 returns /bluesense/id/voltageReference value
  • setResolution
 /bluesense/id/setResolution value


Analog output module

Commands

  • setOutputs
 /bluesense/id/setOutputs v1 v2 v3 v4 v5 v6 v7 v8
  • setOutput
 /bluesense/id/setOutput index value
  • getOutput
 /bluesense/id/getOutput index 
 returns /bluesense/id/output index value 
  • getOutputs
 /bluesense/id/getOutputs 
 returns /bluesense/id/output v1 v2 v3 v4 v5 v6 v7 v8 

Digital (switch) input module

Events

 /bluesense/id/lastSampledInput/index value
 /bluesense/id/lastSampledCounter/index value
 /bluesense/id/lastSampledRotary/index value

Commands

  • requestNeedsBooleans: Switches boolean events for side 0 (A), 1 (B) on (1) or off (0).
 /bluesense/id/requestNeedsBooleans side onoff
  • requestNeedsCounter: Switches counter event for a port on (1) or off (0)
 /bluesense/id/requestNeedsCounter port onoff
  • requestNeedsRotary: Switches rotary event for a port on (1) or off (0)
 /bluesense/id/requestNeedsRotary port onoff

Digital (open collector) output module

 /bluesense/id/setouputs mask value
 /bluesense/id/getoutputs 
 returns /bluesense/id/outputs value
 /bluesense/id/getoutput index
 returns /bluesense/id/output index value
 /bluesense/id/setPWMs mask v1 v2 ... max v16
 /bluesense/id/getPWMs 
 returns /bluesense/id/PWMs mask v1 v2 ... max v16
 
 /bluesense/id/getPWM index 
 returns /bluesense/id/PWM index value
 /bluesense/id/setPWM index value

DC motor module

 /bluesense/id/setSpeeds v1 v2
 /bluesense/id/setSpeed index value
 /bluesense/id/getSpeed index
 returns /bluesense/id/speed index value

Relay module

 /bluesense/id/setouputs mask value
 /bluesense/id/getoutputs 
 returns /bluesense/id/outputs value
 /bluesense/id/getoutput index
 returns /bluesense/id/output index value


Servo module

  • setAngles
 /bluesense/id/setAngles v1 v2 v3 v4 v5 v6 v7 v8
  • setAngle
 /bluesense/id/setAngle index value
  • getAngle
 /bluesense/id/getAngle index 
 returns /bluesense/id/angle index value 
  • getAngles
 /bluesense/id/getAngles 
 returns /bluesense/id/angles v1 v2 v3 v4 v5 v6 v7 v8 

Stepper module

 /bluesense/id/setConfiguration current autostop halfstep wavedrive fastdecay
 /bluesense/id/setSpeed value

Router modules

 /bluesense/id/setChannel channel

       

 

This page was last modified 11:30, 21 February 2008.