Controll Millumin from Spyder X20 via UDP

We are looking to control Millumin from our Spyder X20. "Advanced" (the X20 software control) allows for commands to be sent via TCP or UDP; Millumin only lists OSC as an option. I have tried sending commands such as follows from Advanced to Millumin:

IP: (IP address of Millumin computer)
Port: 5000
Command: /millumin/action/launchNextColumn

We have successfully used Qlabs as an intermediary where we send a UDP command to Qlabs and then Qlabs sends an OSC command to Millumin. This is a bit messy and we would much rather send a UDP command from Advanced directly to Millumin.

My understanding is that OSC runs on top of UDP. Is there any way to get this to work?


  • Hello @michaelvoccola,

    OSC is based on top of UDP, so basically, an OSC message is an UDP Message with a specific formatting. 

    You can consult the OSC specification and this sample to understand the header philosophy.
    You can also use a network analyser such as wireshark to print the messages from Qlabs in your setup
    If you have a lot of messages to convert, you an write a little script that prints out an UDP packet from an OSC message. 

    Hope it helps



  • Hello @michaelvoccola,

    OSC is a binary protocol, but it's very close to a text protocol.
    For example, to send an OSC message such as "/millumin/action/launchNextColumn", you have to send the following string to Millumin via UDP :

    Where [HEX_00] is the character with value equals to zero (not a printable character).

    Basically, this is how is encoded OSC protocol. Of course, you can replace the OSC message.
    If you need to pass arguments with the OSC message, it's a bit more complex, so use Wireshark as Antoine suggested to know how the OSC message is written.
    Best. Philippe
  • @antoineM @Millumin

    Thank you for the information. We will investigate with Wireshark and compare the workflow of sending OSC over UDP to just doing straight OSC from Octopus to trigger the X20 and Millumin. I will say that it would be excellent if Millumin was able to interpret UDP as OSC in the same way as QLabs seems to be able to.
  • Hello @michaelvoccola,

    This is an interesting idea (interpreting simple strings as OSC messages).
    Could you submit it on Uservoice ? If some users are interested too, we may allocate time for this. Thank you.

    Best. Philippe
Sign In or Register to comment.