Network UMP support in Zynthian is here

Hello to all Zynthianers,

our friend @jofemodo gave me the honor to announce that Zynthian is one of the very first synthesizer (and probably the very first open source one !) to officially support Network UMP !
Vangelis release will the first Zynthian OS version to include it. I am proud to be the Zynthianer who wrote the Network UMP daemon for this machine I looooooovvveeeee :heart_eyes:

Network UMP is the official MIDI Manufacturers Association method to transport UMP (Universal MIDI Protocol, which includes MIDI 1.0 and MIDI 2.0) over Ethernet. Simply said, Network UMP is the protocol which will replace RTP-MIDI little by little.
Some Zynthianers may remember that I made an official presentation of the first Zynthian running the prototype implementation during NAMM2024 (yes, already one year ago :roll_eyes:)

The complete specification is available here :

ā€œOfficialā€ drivers on Windows and macOS are on the way, but you can find a free driver both for Mac and Windows here :

rtpUMP creates virtual MIDI ports on the computer (PC or Mac) and you can choose for each of them if you want to use RTP-MIDI or Network UMP protocol.

(Do not worry about the restriction warning on the page : I am one of the managers of KissBox, and we are happy to provide the driver for free to Zynthian community :partying_face:ā€¦
And as Zynthian is not (yet ?) a MMA member, KissBox has provided a Product Number so the Zynthian is recognized properly by software supporting UMP endpoint identification.

I take the opportunity of this message to cheer @oscaracena who has started to extend my work to provide more functionalities to the Network UMP daemon. A big thank to him !

Benoit

12 Likes

Iā€™m more than happy make pull requests, if you wish! Just tell me! :wink:

1 Like

FANTASTIC achievement!!

1 Like

Hi @oscaracena

I am currently in ā€œNAMMā€ mode until next week. I will come back to you probably end of next week and see how we can arrange this :ok_hand:

Benoit

3 Likes

I donā€™t get it totally. Iā€™m a linux desktop user. Is it necessary to get also those ā€œdriversā€ or a special daemon to get access to those virtual midi ports?
Or is it a Windows/Mac thingy?
Regards

1 Like

In linux, you can use the jacknetump daemon to connect to your Zynthian (using the client mode). It will create two Jack ports (netump_in and netump_out), to which you can connect your favourite app. If needed, I can write a simple tutorial how to do so. Are you familiar with Jack?

2 Likes

I think, I amā€¦ but you never know :wink:
Regards

3 Likes

Then, it should be a piece of cake :wink: . The ā€œdaemonā€ with support for client mode is in my fork of jacknetumpd. Until merged, you can download it from there, as explained here:

1 Like

When @BEB and @oscaracena have the bandwidth to rationalise the recent changes and @jofemodo or I have time to do this, we will integrate this directly into the zynthian MIDI menus, similar to how rtpmidi is currently integrated, i.e. enable service in admin and enable port routing in chain.

[Edit] Doh! It is already done. Well done guys!

6 Likes

The only thing missing is the zynthian

EDIT: Iā€™m curious to see how BomeBox and Zynthian will communicate. For now, I have them connected via a dedicated Raspberry Pi.

1 Like

This is really great news.
Couple of questions - Iā€™m on staging and have installed the windows drivers. Iā€™m trying to create a connection between my windows machine and Zynthian using NETump and just get an ā€˜inviting peerā€™ message on the windows software. NETUMP is on on the Zynthian.
Should this be working, is there something else I need to install/set up or am I just jumping the gun a bit :slight_smile:

1 Like

Hi @SteveFlesh

first of all : are you sure that your Zynthian runs the Network UMP daemon (jacknetumpd) ?
As far as I know, this daemon is only included in the Vangelis release (I let the Zynthian answer about the precise situation for this release) or you have to install it manually (and launch it manually)
The current Zynthian OS release does not yet include the daemon and the UI to activate/deactivate it.

When you talk about the driver, I assume you talk about rtpUMP available on KissBox website.
In that case, these are the steps :

  • step 1 : create a session. The session name becomes the virtual MIDI port for your computer and it becomes available to any MIDI compatible software on Mac and Windows
  • step 2 : define the protocol you want to use. rtpUMP supports two protocols : RTP-MIDI and Network UMP. Make sure you choose the correct protocol as they are not interoperable (the Zynthian will not respond if you select Network UMP and that the Zynthian uses RTP-MIDI and vice versa)
  • step 3 : activate the session (checkbox on the top)
  • step 4 : define a remote participant (click on + below the lowest list box). Enter the name you want (letā€™s say Zynthian V5, the real name does not matter), the IP address of the Zynthian, and the UDP port used for the protocol. On the Zynthian, UDP port for RTP-MIDI is 5004, while UDP port for Network UMP is 5504 (I choosed them different, so you can use RTP-MIDI and Network UMP at the same time on the Zynthian :wink:). I think this is probably where you made a mistake as rtpUMP proposes 5004 as default port. For Network UMP, make sure you enter 5504 for the remote port
  • select the session and the remote device in their respective lists, then click on Connect.

With the configuration given here (and jacknetumpd running on the Zynthian), you should get a ā€œConnectedā€ information now :slight_smile:

Benoit

1 Like

Hi @ToFF

I can tell you, because we made the test already : it works :slight_smile:
As the Zynthian uses the mDNS discovery, it appears automatically in the list of devices visible by the BomeBox (just make sure that the BomeBox is updated to the latest version, as Florian made the Network UMP support publicly available only recently)

Benoit

Brill, it was just the UDP port which needed configuring correctly.
There was no need to install jacknetumpd or run it manually - I assume thatā€™s because iā€™m on Oram Staging rather than Stable. Just had to make sure the NetUMP Midi 2.0 checkbock was selected on the Zynthian (which it was when I first tried)

Hi @BEB,

Thanks for the confirmation, Iā€™m looking forward to it working. It will be beneficial for me in that I want to skip the PC/DAW solution. Just turn on my music cabinet full of synths and play.

There is no new firmware available for BomeBox yet, I think it will be released only after the drivers for WIN and macOS are available.

ToFF

We have implemented UMP on zynthian as a server accepting connections. Has anyone considered implementing the client side so that we can connect zynthians together using UMP?

2 Likes

Is this part of a plan to make networked Zynthians the most powerful audio system ever?

Because Iā€™m all for it.

1 Like

My fork of jacknetump has already implemented the client side. If installed inside a Zynthian, it just must be configured as client to connect to the other Zynthā€¦ More info:

1 Like

Hello to all Zynthianers,

I have released V1.4 of the Network UMP daemon.

This version includes all the changes made by @oscaracena plus some changes (it is now possible to define both local and remote UDP port, so the argument on command line is not anymore --port, but either --localport or --remoteport depending on the port you want to change)

By default, the daemon uses port 5504 like before if no argument is provided

@riban and @jofemodo, you can use this version for the coming release of Zynthian OS, as it merges all the latest changes

Benoti

5 Likes

I will update ASAP.

1 Like