Hi,
As well as your fourth and fifth bytes, you're also probably missing a lot more data!
What you've reported fits in with my suspicion that some of these devices (but not all, as Jeff has one that works! :-) ) can have very small buffers which will easily overflow with SYSEX data. SYSEX data is the odd man out in the MIDI protocol in that (IIRC) all other messages are three bytes or less. But SYSEX messages are of variable length, but will never be less than four bytes!
An AN1x voice bulk dump will provide nearly 800 bytes of data, which must be received continuously with no interruption or loss. Most MIDI interfaces will handle this case by having several buffers. One buffer will be filled and then dealt with, whilst the next one is received. But typically, such buffers are 256 bytes in length.
I'd be very wary about trying to use a device with such a limited buffer size in any form of "kludge" mode, as you may risk data corruption.
re the ability to fix a problem in Windows that is fixable in Linux, remember we are talking about Windows! :-)
I actually think MIDI support in Windows is going backwards. See the following link for a post of a problem with the Yamaha EX5 and Windows 7, which doesn't occur with earlier versions of Windows!
http://www.ex5tech.com/ex5ubb_cgi/ultimatebb.cgi?ubb=get_topic&f=8&t=000491I think your best "fix" is to get a reputable MIDI interface. I used a low cost MIDISPORT 2x2 for a long time, and that was rock solid.
http://www.m-audio.com/products/en_us/MIDISPORT2x2.htmlMy current studio and live setups use a combination of a MOTU MIDI Express 128, Focusrite Sapphire 6, EMU 1212M, and an Edirol interface. All of those have proven to be very good over time.
Cheers
Derek
--- In AN1x-list@yahoogroups.com, "witchole" <dougwoodrow@...> wrote:
>
>
>
> --- In AN1x-list@yahoogroups.com, "derek192603" <dacook.sa432bb@> wrote:
> >
> > As you've found, they seem to work fine for basic MIDI duties but are hopeless at handling SYSEX data. Probably because they cannot handle the burst of data.
>
> That does indeed appear to be the case. The vendor:product id of my device is 1a86:752d, which is a CH345 device made by QinHeng Electronics. I've discovered this device is included in Linux reports of buggy USB MIDI firmware that "reports it can do more than 4 bytes in a packet when they can only properly handle 4".
>
> http://comments.gmane.org/gmane.linux.alsa.devel/83706
> and
> https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3752
>
> This fits perfectly with the missing 5th and 6th data length bytes I've witnessed.
>
> It looks from the above that the Linux guys are getting around the problem by ignoring the reported capability of such devices, and restricting the packet size to 4 bytes. I did actually already try the device under Crunchbang with no success, maybe I need to try updating the ALSA driver.
>
> But if it can be fixed in Linux, surely it can be fixed in Windows too - anyone know if there are any alternative drivers available?
>
> [PS will my messages always have to be approved by a moderator on this group?]
>