OK. I did the comparison. I used these posts: GORDON = http://launch.groups.yahoo.com/group/CZsynth/message/5928 STEVE = http://launch.groups.yahoo.com/group/CZsynth/message/5876 I have written some observations about the comparison. Executive Summary: 1. I did exactly what you said needs to be done. 2. I successfully achieved what you said couldn't be done. --- In CZsynth@yahoogroups.com, Gordon JC Pearce <gordon@...> wrote: > > On Sat, Aug 31, 2013 at 07:44:23PM -0000, steve_the_composer wrote: > > Can you be specific--what 7 bytes? > > Did I use those 7 bytes in the tests I previously reported? > > If not, why do you want to send the CZ random 7 bytes? GORDON: It's in the protocol. You start a transfer with: > F0 44 00 00 7x yy pp where x is the MIDI channel, yy is the command byte and pp is the patch number. > The CZ will respond with: > F0 44 00 00 7x 30 > and you respond with: > 7x 31 STEVE: F0 44 00 00 70 10 60 70 31 F7 The 6th byte [10] is the code to request the CZ send a patch. The 7th byte [60] tells the CZ to send the data from the Sound Area. The 8th and 9th bytes [70 31] are an acknowledgement from the PC to the CZ to continue after after the CZ sends a dump header: F0 44 00 00 70 30 Once the CZ receives the 70 31 from the PC the patch (aka tone data) is sent with a final F7 byte. Notice the 6th byte is now 30. In order to send that data back to the CZ, you need to change that 30 to a 20 and then >>INSERT<< a byte to tell the CZ the destination. GORDON: > Now, if you send f0 44 00 00 7x yy pp 7x 31 all in one go, USB can handle that because it is (purely by coincidence) a multiple of three bytes - but it crashes the CZ. Sometimes you get valid patch data, sometimes you get garbage, sometimes you get to do a full reset and clear the RAM. > > This doesn't happen if you wait for the request from the CZ. STEVE'S OBSERVATIONS: In my previous posts (including the one cited above) I used the required sysex header to request data. I did in fact use the sysex string "all in one go," the usb-midi interfaces I used handled it, and the CZ did not crash. Perhaps the only thing I did not test is sending patch data back to the CZ. So, to test this I will play the midi files with patch data that goes to the sound area ( http://launch.groups.yahoo.com/group/CZsynth/files/CZ%20-%20Sounds.../Dr.%20Steve%27s%20%20Patch%20Test%20Files/ ). If the sysex data gets corrupted on the way out from the computer through the usb-midi interface to the CZ, I will admit that you are right. If I have no issues, are you willing to test all of your usb-midi interfaces? Then perhaps we can start compiling a table of interfaces that work with the CZ and those that don't work with the CZ? Maybe others will test theirs and share their results. Steve --- In CZsynth@yahoogroups.com, "steve_the_composer" <smw-mail@...> wrote: > > I will have to compare what you wrote with what I did. I am inclined to say, that's what I did and it worked and it has worked every time with every interface I used. > > But maybe there is some difference in what you are saying and what I did. I will get back after a comparison. > > Steve > > --- In CZsynth@yahoogroups.com, Gordon JC Pearce <gordon@> wrote: > > > > On Sat, Aug 31, 2013 at 07:44:23PM -0000, steve_the_composer wrote: > > > Can you be specific--what 7 bytes? > > > Did I use those 7 bytes in the tests I previously reported? > > > If not, why do you want to send the CZ random 7 bytes? > > > > It's in the protocol. You start a transfer with: > > > > F0 44 00 00 7x yy pp > > > > where x is the MIDI channel, yy is the command byte and pp is the patch number. > > > > The CZ will respond with: > > > > F0 44 00 00 7x 30 > > > > and you respond with: > > > > 7x 31 > > > > Now, if you send f0 44 00 00 7x yy pp 7x 31 all in one go, USB can handle that because it is (purely by coincidence) a multiple of three bytes - but it crashes the CZ. Sometimes you get valid patch data, sometimes you get garbage, sometimes you get to do a full reset and clear the RAM. > > > > This doesn't happen if you wait for the request from the CZ. > > > > -- > > Gordonjcp MM0YEQ > > >
Message
Re: Sysex and USB MIDI
2013-08-31 by steve_the_composer
Attachments
- No local attachments were found for this message.