Part level Sys Ex

Forum for Integra 7
Post Reply
Jumo
Posts: 5
Joined: 13:37, 1 November 2015

Part level Sys Ex

Post by Jumo »

In studio set I'm trying to set part level/volume on the I7 using a slider on my A-800pro. Seems easy enough by using cc#7. Here's the problem...I have a 2nd rompler module in the midi chain and CC#7 controls its master volume regardless of midi channel set by the controller. After reading a bit on using sysex it seems I may be able to accomplish this. I know nothing about sysex. I've read an online tutorial, but still having difficulty.
I think the answer to my question is in this post:
viewtopic.php?f=54&t=51766&p=293437&hil ... el#p293437
However I'm just not getting it. If someone can help me
Maybe correcting the last address I've tried below?
F0 41 10 00 00 64 12 19H 00 00 00 00 08 3B F7
User avatar
Quinnx.
Posts: 3439
Joined: 11:28, 13 January 2005
Location: HomeTown Ireland: Current Location USA

Re: Part level Sys Ex

Post by Quinnx. »

as long as you isolate a single midi channel you should have no probs.
Its possible your other device maybe setup to receive on all channels or something
thus Master is also being updated on cc send.

I would check your setting on the other device and make a change there.
AllenStoker
Posts: 5
Joined: 12:31, 27 June 2016

Re: Part level Sys Ex

Post by AllenStoker »

You're close on the sysex message, but the exact answer depends on exactly what part you are trying to adjust. I'm also not familiar with the A-800pro, but the exact sysex command is dependent on the exact values you are setting, so I'm not sure how you would send the sysex from that device. what you are trying to accomplish is really a function of the CC messaging set and to Quinnx's point, the correct fix is the identify why the other device is receiving all messages and fix that.

For future sysex needs, the part volume would look like this:

F0 41 10 00 00 64 12 18 00 20 09 40 -- F7

The first part "F0 41 10 00 00 64" is your 'start of command', manufacturer, device id, and device type (the I7). The 12 is a data put command.

Next is the address (18 00 20 09) for the part-level within the memory area for part #1. Part number 2 would be 18 00 21 09. The following byte is the actual value (40 would be a decimal of 64 or roughly 1/2 volume), and the "--" is where the checksum would go. Since the sysex is a single command and the value for level would change you would also need to recalculate the checksum for each volume change message which is why I don't think you'll be able to pull it off using sysex from anything like a slider control on another synth.

If you need to figure out specific sysex commands, I recommend that you hook a computer up to the USB on the I7 and start up MIDI-OX (free download) and monitor the messages coming out of the I7. Manually make one desired change at a time (like part volume) and when you complete the adjustment for a setting, look at the monitor to see the last SYSEX message from the I7. This is the same message you would send to it to make that same adjustment, and since the I7 is broadcasting it's own full message you can trust that the checksums and such are all correct. It's nice to know the sysex memory addresses, but this technique is much more efficient for programming a controller.

Hope that helps!
Jumo
Posts: 5
Joined: 13:37, 1 November 2015

Re: Part level Sys Ex

Post by Jumo »

Thanks AllenStoker for pointing me in the right direction.
Here's what I found to work:
F0 41 10 00 00 64 12 SS 18 00 20 09 DT S1 F7
SS= start of string for checksum calc (the A800 does the calc on the fly making it possible to use it like a volume slider)
18 00 20 09 = address/offset address for part 1 level , change the 20 to 21 for part level 2, 22 for part level 3, etc.
DT= DT0: 7 bit (0-127) value. The A800 will vary this value from 0-127
S1= value of check sum calc
Post Reply