Hi Clemens, thanks for responding. On Sun, May 28, 2017 at 10:16 PM, Clemens Ladisch <clemens@xxxxxxxxxx> wrote: > Hedde Bosman wrote: >> I've owned a MIDEX8 for some years now and am now attempting a driver >> for it. [...] >> it looks a bit like the standard usb midi class, but it requires some >> periodic (i guess timer) messages on endpoint 0x02 > > Why "requires"? What happens if you do not send them? Without sending those, the midi in does not seem to work. > >> Not all (interrupt) urbs that are submitted will complete (within 25 >> ms at least). > > And why would that be a problem? I am not sure about the inner workings of the device. However, it seems to be a timing signal, that might be used to time-stamp midi in packets. I haven't been able to determine the exact impact, but did notice that sometimes the midi-in stops responding. If that is related, I cannot tell. > >> Sometimes after sending a few messages, an empty urb shows up in >> wireshark. However, in code, there's an if-statement that should allow >> only messages of length > 0 to be submitted (line 568, if (num_read > >> 0)). > > Try adding a check before the actual usb_submit_urb() call, but nothing > would protect against your code accidentally changing the > transfer_buffer_length of an active URB field later. I will try and report back later. > >> Might this have to do with issue 1? > > Not unless you have mixed up input and output URBs. afaik I did not. I am looking for better ways to debug though. > > > Regards, > Clemens Regards, Hedde _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel