MIDI DESIGNER
The only MIDI controller for iPad, iPhone, and Mac


Talk to other MIDI Designer users about MIDI Designer, iOS MIDI and related topics. Or share layouts, pages, and ideas.

Check out our Facebook Group.

Of course, if you want to send us an email, feel free.

Open problem reports

Summary of user requests
PLEASE HELP: Roland JP-08 sysex confusion - MIDI Designer Q&A
0 votes
in How does MIDI Designer work with X? by effegee (320 points)
I have tried all four types of checksum available and none of them work.
Also, I am not on the beta team.  How do I sign up?
Hi there, we'll add you to the team shortly (you'll get an email from Apple/Testflight). Then it's a question of when we get to it. Thanks!
Here's more info from another blog post (if it helps at all):


The checksum calculation is expressed simply in C as follows

static unsigned char roland_cksum(unsigned char *data, int len)
{
        int i;
        unsigned int cksum = 0;

        for (i=0; i<len; i++) {
                cksum += data[i] & 0xFF;
        }
        cksum = (0x100 - cksum) & 0x7F;

        return cksum;
}

for Max users, here’s an sxformat string you can use. It takes 4 inputs (sorry for the line break):

sxformat 240 65 16 0 0 0 29 18 3 0 / is $i1 / is $i2 / is $i3
         / is $i4 / is checksum(1,13,2) & 127 / 247
That helps. We'll queue this up with the ticket. Please hang tight as we're hyper-focused on something new during the next few months. Thanks.
That checksum is the same one we use. The only possibilities is: 1) it's a different checksum required for this device or 2) the bytes we're performing the checksum on are not the right ones. Anyway, nothing that cannot be figured out with a bit of focus, we'll hit this when we can, thank you.

2 Answers

+1 vote
This sounds like you are dealing with nibble bytes.

Check this thread for the solution.

http://mididesigner.com/qa/3881/how-to-send-roland-jx-305-nibbles-2-values-in-sysex-message

 

 From the sysex log it seems you have a 1 byte checksum to add. You need to select the 1 byte checksum in MD, like admin mentioned.
by ezb (5.7k points)
edited by ezb
ezb, the issue here is that MD does not add the checksum that the JP-08 wants to see.  I've tried all of the checksum types MD offers in the drop-down menu.  I don't what you mean by "1 byte checksum".
Effegee

According to your log and sysex description the following is the case with your log.

F0 41 10 00 00 00 1C 12 03 00 02 02 06 0F 64 F7

Bytes 02 02 are the address  MSB and address LSB
Bytes 06 0F are the value MSB and value LSB
Byte 64 is the checksum. It is only 1 byte.

If you have a range of 0-255 in your slider it is not gonna work. You need the named tick list I provided in the JX-305 thread.

Let me know how it goes, because it would be really strange if Roland suddenly started using some other checksum.
ezb--
Again, the issue is with the checksum.  I created a button in MD to send the following string, including the checksum, which is the last byte (5B):
 41 10 00 00 00 1C 12 03 00 02 02 0F 0F 5B

The JP-08 recognizes the string as a proper SysEx command. Remember, this is with "none" selected in the checksum drop-down menu.
Then I set up a button with the same string, MINUS the checksum (5B) and selected the "Roland" checksum.  This is the logged output:
F0 41 10 00 00 00 1C 12 03 00 02 02 0F 0F 2D F7

MD creates a checksum of "2D"
Axe FX II :  2C
Roland two-byte model ID:  2D
Roland three-byte model ID:  49

So, it seems that Roland may have done something with the checksum of these new synth modules.
Please add a another option to the value like “LSB First” This button would do the same as the named tick trick does (see the link for qa-3881 above) and would improve performance b/c you don’t need to translate 255+ named tick for 2/3 of your template. A PCM wave table in some roland requires 1024 values (V=3bytes)
Hi all, where did this conversation end up? Is there still a checksum we need to add? Thanks!
I was able to do named ticks for almost all roland related things. Using the roland checksum of course ... I still think that LSB First would save some resources ... I still use iPad 2 for some MDP templates
0 votes
v 1.1 firmware added CC control for almost all the panel controls check the roland site for details

Also the NAMED TICKs works but you need to HACK and create huge table with values and paste it to named ticks. ... all doable and works. If you search for roland here you’d find a message that shows you how to make named ticks for MSB/LSB Roland Sysex.

Again done this Jd-XI and works like a charm
by bladuck (640 points)
...