
MIDI over Ethernet
In addition to the ASCII based control syntax, Cinetix products with Ethernet interface can be controlled with binary MIDI messages. MIDI may be used for DMX control (plus I/O control with the Ethernet/DMX512 GenIO). Additionally at some positions of the front panel rotary switch (positions A,B,C,D) the DMX interface is reconfigured as a fully compatible MIDI interface - simply a special adaptor cable has to be put at the DMX connector (pins 4 and 5 of the XLR connector drive a MIDI IN compatible optocoupler). In addition, the Ethernet/DMX512 Generator is equiped with a physical MIDI IN and a MIDI OUT connector.
The baudrate of this serial interface is 19200 by default. It has to be set to MIDI baudrate with the configuration command B (see below). With this configuration, the device can be used to transfer any MIDI data bidirectionally over the Ethernet.
Advantages of MIDI formatted binary messages: clear, self synchronizing data structure (status byte plus data bytes).
On the other hand MIDI has some disadavantages: data bytes are restricted to 7 bit and the speed of native MIDI connections is far below actual technical standards.
Transfer of MIDI data over Ethernet is baud rate independent, this compensates the latter disadvantage. Furthermore, MIDI messages may be used as a context independent binary command structure.
Essentially 3 different situations are possible:
1. When you are writing your own PC-based control software, you simply have to open a TCP or UDP socket with appropriate IP and port parameters and build your own user interface.
2. If you are using a software with built-in TCP or UDP interface, which is able to handle arbitrary transfer of 8 bit data bytes, the situation is even easier.
3. Specific MIDI oriented software (like sequencers or MIDI file recorder/players) however usually can open only registered MIDI ports. This is a commonly known barrier for use of MIDI over Ethernet. A well working solution for this problem is provided by the ipMIDI software driver (download at www.nerds.de ).
Alternative methods to transfer MIDI data over Ethernet exist for Windows PCs. A good survey is presented at openmuse.org. Our research shows that DMIDI and NetMIDI seem to be close to our demands, but we have not found a really "install and play" featured download. NetMIDI is based on the TCP protocol, which has some disadvantages for transparent transfer of MIDI over the Ethernet. Anyway, for people who want to program their own interface, netmidic and netmidid from "Div's MIDI Utilities" (available from different servers) may be a good resource. The otherwise interesting project "MIDIOverLan+" uses a proprietary protocol, i.e. can only transfer between PCs or MACs with this software installed. MWPP seems to be over-engineered for the purpose considered here, just as the (really existing ??) MIDI standards RFC4695 and RFC4696.
For these reasons specifically the ipMIDI driver is supported by our Ethernet/DMX products and described here more detailled.
When installed on a Windows PC (tested here with Windows 2000, Windows XP and Windows 7) or on a Mac/Linux PC (not tested here), during the boot process it opens a set of registered virtual MIDI ports. These ports are seen and accepted by MIDI software. For communication via Ethernet, a multicast UPD socket is opened.
Multicast is essentially based on UDP datagrams, but uses a special class of Ethernet IP addresses (class D network). It is primarily designed for distribution of streaming media. But in the context used here it has the advantage to be laid over the specific IP configuration of the local network.
To use the ipMIDI driver, 2 steps have to be performed:
--- First install the ipMIDI driver following the instructions given there. A detailled manual of ipMIDI is installed together with the software. After installation the computer has to be rebooted. The ipMIDI driver starts automatically now and furthermore any time the PC is booted (the free trial version is only active for 60 minutes after boot). You will find an icon ipMIDI on your system tray or in your Start menu folder. Open it, we recommend to deactivate "local echo" and mute all ports except no.1 (which is assigned to ethernet port no 21928). Other settings are possible, but this one is most easy to start with.
Now start your MIDI software and check if a MIDI IN and a MIDI OUT port named "1.Ethernet MIDI" is available there. It can be used like any other MIDI port found on the PC.
--- Next configure IP address, port and baudrate of the Ethernet/DMX device for the UDP mode:
Choose TCP configuration (rotary switch position 0), serial configuration (rotary switch position F, needs serial adaptor cable) or UDP configuration (rotary switch position E, use UDP terminal software "udpterm" provided at our website).
Next the IP address for UDP (configuration command N) has to be set to 225.0.0.37 and the ports (commands D and S - devices before May2011: command R) should be set correspondingly to 21928. If the device shall be used for transparent transfer of MIDI data, we recommend to set the baud rate of the serial interface to MIDI with the command B31250<enter>. (Change of these parameters has no influence during configuration. But for normal operation, i.e. when the rotary switch is turned to any of the positions 4,5,B,C, "udpterm" has to be reconfigured to the new Ethernet settings.)
Now the rotary switch of the Ethernet/DMX device is set to position 5 (for DMX control by MIDI messages) or position C (transparent MIDI communication). For transparent MIDI communication, a special adaptor cable (see device manual, last page) has to be plugged into the DMX OUT connector. At the Ethernet/DMX Control Box, no signals may be fed into DMX IN.
Try to send appropriate data from your MIDI application software and - if applicable - try to send some data back to your MIDI application. Following primitive check should work: connect the Ethernet/DMX device to your local ethernet. Start MIDI-OX and chose "1.Ethernet MIDI" as MIDI OUT port. Send arbitrary CONTROL CHANGE messages (easy with MIDI-OX). If the blue LED of the Ethernet/DMX device does flash, everything seems to be ok.
Independent of having the ipMIDI driver installed, multicast configuration of the Ethernet/DMX device has generally some advantages when it is used for UPD communication: Configuration is possible over any existing local network configuration. Thus if the IP settings are unknown or incompatible with the existing network, reconfiguration and operation is possible without (temporarily) changing the configuration of the local network. For this reason, the UDP multicast configuration is factory default at Cinetix Ethernet products delivered from May 2011. Two different versions of our configuration program "udpterm.exe" are available: one for multicast, another one for conventional UDP. For details see the manual of "udpterm".
* State of information May 2011. Right of modifications reserved.
* This description is for information only, without any warranty. No product specifications are assured in juridical sense.
* Trademarks and product names cited in this text are property of their respective owners.