From: Daniel R. <dr....@co...> - 2007-12-22 01:42:04
|
Hello all. First off, thanks to those who responded to me privately, who probably meant to reply to the list. The answer to my last questions were "set the checksumOffset, start, and end values." That worked. So now I've advanced quite a bit in my HelloWorld, and now I have the following code super.trimSize = 16; super.checksumOffset = 14; super.checksumStart = 6; super.checksumEnd = 13; byte[] first = new byte[] { (byte)0xF0, // It's a MIDI System exclusive message! 0x41, // Roland ID 0x10, // Device ID 17 (minus one) 0x00,0x2E, // Model ID 2E for HPD-15 0x12, // Command ID (this is data set, could be a request 0x11) 0x01,0x00,0x10,0x00, // the offset for the user kit, pad A1 0x00, 0x00, 0x07,12, // the nibbled data for the shekere 124 (byte)0xFF, // checksum will go here (byte)0xF7 // end }; which works perfectly for ONE parameter change (I'm amazed. I had never nibbled before :). But now I want to send an entire kit (pads A1, A2, etc.). I've tried the two obvious things, making two sysexs back to back (they get trimmed to one, otherwise the checksum would be calculated just once). I've also tried putting in more than one offset and data (message was received but didn't do the right thing). I can send more than one sysex message, but I imagine there's a better way. Thanks in advance for your help! Best, Daniel |