Summary: the USB Host port on the Anyma Phi has speed limits, does not support USB hubs, and is unable to drive a Haken Continuumini. It would be great if those limitations could be fixed, and more importantly, they should not carry over to the Anyma Omega.
The USB Host port on the Anyma Phi
The USB Host port on the Anyma Phi is a distinctive feature: not many synths have it. Its ability to directly connect to, and power, a MIDI controller makes small and simple rigs possible.
And while supporting the MPE standard is not really useful for a paraphonic synth, it can be nonetheless be used expressively together with MPE controllers.
The upcoming, polyphonic Anyma Omega will support the MPE standard, and it too will have a USB Host port. It's important that its USB Host port works better than the Anyma Phi one.
Three MPE controllers
I connected, in turn, three MPE controllers to the USB Host port of my Anyma Phi (running the latest firmware version, 1.1.0):
Of the three, only the Seaboard has a battery; the other two are powered via USB.
Also, only the Linnstrument also has standard, five-pin MIDI connectors: all three can send MIDI over USB.
The three controllers emit MIDI data at different speeds. I didn't actually measure the speed, I only got a sense of it by looking at the MIDI messages with the KMIDIMon program on Linux.
The Seaboard is the slower of the bunch; it emits a fairly slow and consistent message flow, irrespective of how many notes are played and how much the fingers move around.
On the Linnstrument, the message speed from the five-pin MIDI port is intrinsicly limited, but the USB speed is quite variable. It is also configurable, and can go up to three times the speed of the five-pin MIDI port.
Finally, the Continuumini is the fastest of the bunch, with a very high time resolution even when playing one single note, so much that the KMIDIMon program could not keep up.
The MIDI speed on the Seaboard and the Continuumini is not configurable: the former is slow, the latter is fast.
A simple patch
In order to avoid risking to overload the Anyma Phi CPU, I created a simple patch with one Virtual Analog oscillator, one State Variable filter, and the reverb, for a total load of 36%.
I then routed six signals as follows:
- X axis -> Pitch Bend -> Oscillator pitch;
- Z axis -> Channel Aftertouch -> Expression -> OSC1 Level;
- Y axis -> Control Change #1 -> Controller A -> OSC1 Shaper;
- Control Change #16 -> Controller B -> Filter cutoff;
- Control Change #18 -> Controller C -> Filter resonance;
- Control Change #17 -> Controller D -> Reverb wet/dry.
The Seaboard and the Continuumini only emitted the first three; the Linnstrument also emitted the last three using its Low Row feature on three additional X/Y/Z axes.
Passing through the computer
As a comparison, I connected the three controllers and the Anyma Phi (using its USB Device port) to the computer via a powered USB hub, and routed the messages from all three to the Anyma Phi.
I was able to play the Anyma Phi patch from any of the controllers (including the Continuumini, see below), and even using all three at a time (for some definition of play :-) ). Of course they were interfering with each other, all of them trying to control the one poor note, but even then, the interaction remained responsive all the time.
And now the point of all this: using the USB Host port of the Anyma Phi, first directly, then via USB hubs.
The Seaboard Block
The Seaboard Block has a battery, so it doesn't need power over USB. It worked flawlessly when connected to the USB Host port, no doubt helped by its low MIDI speed. Nonetheless it stayed expressive, so no problems here.
The Linnstrument 128
When connected via the five-pin MIDI port, the Linnstrument had no problems either, playing responsively and accurately, also helped by the low speed of the five-pin MIDI port.
The Anyma Phy did manage to properly power the Linnstrument from its USB Host port, even when the Linnstrument was not in Low Power mode. However, it often lost notes and was not very responsive. Getting it to a playable state required increasing the Linnstrument USB output delay from the default of 235 to the maximum of 512, and setting the Pitch/X axis to Quantize Hold. Even then, it still lost the occasional touch, so much that using the five-pin MIDI port is still preferable.
The Haken Continuumini
The Continuumini created the most problems to the Anyma Phi. It was not powered properly from the USB Host port, its display showing ErrP (Power Error). I used a USB Y-cable and a power bank to work around that, but even then the Continuumini display started flickering after being connected to the Anyma Phi, and there was no sound nor any evidence of the Anyma Phi receiving MIDI messages.
As a check, I connected the Continuumini to the computer using the same Y-cable and powerbank (even though it was not necessary), and the Anyma Phi could flawlessly receive and play the Continuumini messages via the computer, as before.
USB hubs connected to the USB Host port
Finally I tried using two different USB hubs, in turn connected to the USB Host port of the Anyma Phi, with all three controllers connected to them.
The same powered USB hub, successfully used before when connected to the computer, was not recognized by the Anyma Phi. It did not light up and no MIDI message seemed to be received by the Anyma Phi from any controller.
A different, non-powered USB hub also didn't seem to be recognized by the Anyma Phi. The Continuumini showed the same ErrP message as before, and the Linnstrument was being correctly powered, but again, no MIDI message seemed to be received from any controller.
Given that the Anyma Phi worked properly with all three controllers when messages were routed via the computer, it looks like there are problems with the USB Host port itself. It seems to have a low speed limit that, while not problematic for standard MIDI speeds, is quite limiting when using USB, which can be quite faster.
Also it does not seem to recognize common USB hubs; I don't know if it does recognize any specific model.
Finally, it's incompatible with the Haken Continuumini, making the two unable to work together without an intermediate device.
It would be great if these limitations could be solved by an Anyma Phi firmware update but, as a participant in the Anyma Omega kickstarter, I'm more concerned that these limitations may be carried over to the Anyma Omega.
I'm sure Aodyo already has plans to test the Omega USB Host port with an extensive collection of MIDI controllers, including a number of MPE ones. Hopefully this investigation is additional evidence of the need for such in-depth testing.