[LAU] MIDI over wifi on Linux, revisited

karl at aspodata.se karl at aspodata.se
Sun Jan 3 03:21:15 UTC 2016

Jonathan Brickman:
> Some may remember, I tried a full-court press on MIDI over wifi about
> eighteen months ago, using a couple of different methods; there were
> occasional losses in realtime play, enough key-up commands lost that it
> could not be used.  So I gave it up for then and eventually found a
> different use for my Rpi2.

For midi over a network have a look at


> Now if I understand this Wikipedia article
> <https://en.wikipedia.org/wiki/Open_Sound_Control> correctly, SLIP is
> commonly used to encapsulate OSC signals.

According to the article, yes, but only over usb, and usb in this case 
is used as a replacement for a rs232 serial line. Midi (over 
midicables) uses the same framing as rs232, but it has its own idiotic 
baudrate that complies with nothing else, perhaps so you cannot use 
plain serial cables. So midi over usb is just old plain midi (with a
differnt baudrate and added framing) over a new medium which behaves
as if it were a rs232-connection.

Well, that is my guess anyhow.

> This could be a great clue,
> because SLIP is very definitely a protocol which can give us verification
> and recovery of lost signals, i.e., signals lost in the normal wifi
> situation.

No, SLIP takes the place of IP (as in TCP/IP), it only does routing 
(where routing in this case is: to the other side of the cable).

Neither IP nor SLIP gives you any retransmission or guaranteed delivery,
you need TCP for that. As the article says, OSC uses UDP, which is a 
minimal shim over IP. It just dumps the packet over to the other side 
without any delivery check or retransmissions of lost packages.

>  And I have seen the Pure Data method of converting OSC to MIDI
> and back, so that is not too much of a problem.  The question I have is,
> what would be the best method of verifying, configuring, and debugging SLIP
> encapsulation?  To do this well, for production on stage, I have not not
> only be able to checkbox on for SLIP, but trigger warnings if it detects a
> certain degree of errors.

SLIP is defined in https://tools.ietf.org/html/rfc1055 and the first 
paragraph under HISTORY is:

   SLIP has its origins in the 3COM UNET TCP/IP implementation from the
   early 1980's.  It is merely a packet framing protocol: SLIP defines a
   sequence of characters that frame IP packets on a serial line, and
   nothing more. It provides no addressing, packet type identification,
   error detection/correction or compression mechanisms.  Because the
   protocol does so little, though, it is usually very easy to

/Karl Hammar

Aspö Data
Lilla Aspö 148
S-742 94 Östhammar
+46 173 140 57

More information about the Linux-audio-user mailing list