[sdiy] New device, weird midi behavior

john slee indigoid at oldcorollas.org
Sun Dec 31 03:45:55 CET 2017


A "Bus Pirate" might be very useful here for sniffing the MIDI data and
streaming it to a file that you can decode "offline"

Bloody good value they are (particularly if you also work with SPI/I2C)

John

On 31 December 2017 at 13:38, <rsdio at audiobanshee.com> wrote:

>
> On Dec 30, 2017, at 5:03 PM, Joel B <onephatcat at earthlink.net> wrote:
> > I have this new device, a kickstarter product, it is USB Powered, and it
> only works well with a few of my synthesizers. For others it seems to send
> nothing at all, others it makes them stop making any sound at all while
> plugged in, as if it is sending a stream of all notes off.  In my emagic
> midi interface it either sends nothing, or, on another Unitor 8 in the
> Unitor daisy chain it sends bank select 0 every so often. Plugged into an
> old Opcode midi interface it seems to send proper note on off though. Seems
> to work ok on Roland JX8p and Yamaha tx816... not on DX7 though. Korg
> Minilogue but not sequential max.  Seems to send proper midi data to my
> iconnectMidi1 for iOS.
> >
> > Same keyboards and interfaces all respond properly to other midi
> sources. So I’m thinking something electrical is wrong here?
> >
> > What would you investigate to try to understand what is going on?
> >
> > Any hypotheses?
>
> Having designed several commercial USB-MIDI products, and having looked at
> many open source projects from beginners and amateurs in the USB and
> USB-MIDI universe, I've learned that there are quite a few ways to get the
> design wrong on a USB Device. Even the venerable MOTU (Mark of the Unicorn)
> managed to release a USB-MIDI Device that failed miserably under particular
> conditions. Reading through the history of USB Specifications, especially
> if you have access to every version (the earliest of which are not really
> made available any more), you'll note that the designers have pointed out
> the many ways in which manufacturers and designers have misinterpreted the
> specifications. The USB folks have even modified the USB Specifications in
> some ways over the years to account for the fact that so many manufacturers
> have misinterpreted the rules and requirements. The promise of USB is that
> it’s “universal,” but that promise isn’t always delivered. It's actually
> somewhat difficult to maintain compatibility when so many manufacturers do
> not fully implement the required standards.
>
> In other words, it's entirely possible that this Kickstarter product is
> not 100% USB compliant.
>
> That said, your description makes it sound like you're mostly having
> trouble with the classic MIDI interface, so perhaps it has little or
> nothing to do with USB, per se.
>
> As someone else pointed out, if this USB Device does not have a full 5 V
> boost regulator on board for the classic MIDI interface, then it may not be
> 100% compatible with classic MIDI devices. USB is nominally running on 5 V,
> but if you read the details of the spec then you'll find that a USB powered
> Device hanging off a bus-powered hub will only get 4.01 V, and that's
> perfectly legal within the USB Specifications. Unfortunately, nearly all 5
> V chips require the supply to be in the range from 4.75 V to 5.25 V, and
> 4.01 V is not nearly enough. Some manufacturers end up shipping devices
> with chips that are underpowered, while others end up shipping devices with
> classic MIDI ports that don't match the specifications 100%. MIDI is
> technically a 5 mA current loop, so the exact Voltage “shouldn’t” be
> important. However, the transmitter and receiver circuits both involve
> specific resistances that won’t produce the right 5 mA current if the
> Voltage isn’t 5 V.
>
> Moving on from USB-MIDI Voltage compatibility to the classic MIDI
> protocol, there are a few infamous quirks among the big MIDI manufacturers
> that caused no end of trouble for musicians who combined products from
> specific different companies. Namely, there are a few All Notes Off
> messages that are intended to be used only in emergency situations, but one
> company (I think it was Roland?) who decided to send All Notes Off from
> their keyboard controllers every time the keyboard player lifted all
> fingers off the keyboard. The MMA was adamant that this was an incorrect
> use of that message, and that All Notes Off should only be sent when a user
> presses some sort of Reset button, but for decades there were still
> keyboard controllers from that manufacturer (and perhaps others) which
> violated the MIDI Specification. In particular, this posed problems for
> multi-timbral synthesizers, because All Notes sometime come from a
> sequencer and not a keyboard player, so All Notes Off messages could
> seriously interfere with rhythm or backing tracks that aren't played by
> hand.
>
> So, you could have a firmware problem, an electrical problem, or one of
> many potential specification violations.
>
> I'm not quite clear on how all of your gear is communicating. I assume
> that you have a computer as a USB Host, this USB powered Kordbot, but also
> an eMagic Unitor 8 or Opcode MIDI interface, and then Roland, Yamaha, and
> Korg synthesizers. Are you using the Kordbot and the MIDI interfaces at the
> same time? Or are you merely using them alternatively as a test to swap out
> individual components in an attempt to find the problem?
>
> One highly useful diagnostic technique would be to use a MIDI splitter and
> connect some sort of MIDI dump software so that you can view the messages
> coming out of the Kordbot. You could then potentially play back those exact
> same messages without the Kordbot in the MIDI path, just to see whether
> it's a MIDI data protocol problem with these classic synths, or if it's an
> electrical problem with the new USB-powered hardware.
>
> I've designed a lot of MIDI and USB-MIDI hardware, and it really helps to
> be able to see the MIDI messages when things aren't working. That's getting
> a bit harder these days, because USB-MIDI slightly alters the protocol as
> its passes through, so I often revert to simpler, 8-bit computers with only
> classic MIDI interfaces so I can see the raw MIDI data. One thing to keep
> in mind is that when testing with USB-MIDI, certain data sequences that are
> possible in MIDI cannot be transmitted verbatim over USB-MIDI, so you can't
> use USB-MIDI to diagnose those kinds of problems with the protocol. It's
> rare, but still important to know that your tests might be obscuring the
> problem itself. For one thing, Running Status simply doesn't exist on
> USB-MIDI. That technically should not be a problem, but if there are errors
> in the interpretation of Running Status then USB-MIDI will totally obscure
> that.
>
> Brian Willoughby
> Sound Consulting
>
>
> _______________________________________________
> Synth-diy mailing list
> Synth-diy at synth-diy.org
> http://synth-diy.org/mailman/listinfo/synth-diy
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://synth-diy.org/pipermail/synth-diy/attachments/20171231/75ab5fbf/attachment.htm>


More information about the Synth-diy mailing list