Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
USB compatible (or not) devices list
#61
(12-21-2024, 09:14 AM)Jesse Johannesen Wrote: The MRCC host ports nominally work with devices that are MIDI Class Compliant, however USB seems to be particularly complicated to apply correctly, and we often see devices that claim to be class compliant which still have incompatibilities due to the way they were implemented. It's not something we can change usually since it is to do with the device trying to connect

So you're saying it's a bug in the Synth. How can you rule out that this isn't a bug in the USB-host of the MRCC? From the outside, this were to look exactly alike, right?
Reply
#62
Regarding host compatibility with USB MIDI devices. So far, I don’t think we’ve seen any case where we would blame the MRCC host code for a failure. But let me explain…

We’ve had many reports of incompatible devices, so we acquired some of those devices and they worked. The #1 failure of a USB MIDI devices on MRCC is that it wasn’t routed correctly. For example, The modern Sequential Circuits synths. Customers reported they didn’t work, so we took an MRCC to the Sequential booth at Knobcon and tested all of them and they all worked. Same with the OP-1. Multiple reports of it not working, so we got one, it worked. Same for Keith McMillen Softstep MIDI controller, reported not to work, got one and it works great. We have tested a lot of devices that work great.

The Basestaion 2 fails because it trips over-current protection due to severely violating USB inrush current limits. Some devices need power if they aren’t plugged into a USB 3 port that supports higher current, such as the Keystep Pro. Some Korg sequencers use a second USB MIDI virtual port that MRCC can’t route to as there’s only one virtual out.

In the case of when it genuinely fails, such as when the MRCC host LED doesn’t turn green, we have seen that the client devices have mistakes or strange implementation of their USB MIDI device descriptors. MRCC isn’t Microsoft Windows. MRCC has no operating system. The USB MIDI host code is written to the USB MIDI specifications, while Windows has 20 years worth of USB device interoperability tricks to make things work regardless of crappy implementations. Saying it works on Windows doesn’t help us, we can’t use Windows host code. For example, OXI One came out and it didn’t work. A generous customer lent us theirs and we discovered an issue with the device code. We made a temporary work around for it, but we also contacted the vendor and he fixed his code.

The challenge is, there’s no way for the device vendor to know when they have done something goofy when it worked on Windows. The only way to know what has gone wrong is for us to have the device, and plug it in to MRCC with a special version of MRCC firmware with USB debugging turned on so we can see where it fails.

We don’t have the budget to buy lots of new MIDI devices (though the GAS is strong), so we need help to get loaners to test problem devices. But first, we need to absolutely rule out that the device is configured correctly, and that it was routed correctly as that is much more likely to be the problem.
Reply


Forum Jump:


Users browsing this thread:
3 Guest(s)