strymon / spl

A tool for managing MIDI presets written in C++ using Qt and RtMIDI
49 stars 11 forks source link

Device Rejected Write Command #5

Closed gsiefert closed 9 years ago

gsiefert commented 9 years ago

When renaming a preset and attempting to Sync, I get the error "Device Rejected Write Command". Using Strymon Timeline and the TimeLine reports "Error" on its display.

Using Windows 8.

image

luntar commented 9 years ago

The device (Timeline in this case) will reject a "write command" when it detects that the data sent from the Librarian has been corrupted.

It's possible (and in a lot of cases) that this is a "system" issue and not a code bug - however, more information is needed. If you could, please send Hugo an email at support@strymon.net and he will help you debug the problem. I'll leave this issue open until we learn more.

Thanks!

luntar commented 9 years ago

Librarian pre-release 0.9.4.1 or better has code in place that should prevent this error, or at least do a better job or recovering from such issues and allowing a clean sync.

Some Details

This issues has been reproduced using several different USB MIDI devices. In my test case, a MIDI sysex message is delivered to a USB MIDI interface from a host test program. The data payload was never delivered to the target or was corrupted before it was placed on the USB. Using an bus analyzer, this pattern was confirmed.

My best guess is that this is an overflow issues - too much data too fast; some USB MIDI interfaces are better than others.

However, if an error or timeout is detected, throttling the MIDI data-out transfers can work around the issue.