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
GP10, checksum for a Roland 4 Byte ID device? - MIDI Designer Q&A

GP10, checksum for a Roland 4 Byte ID device?

+1 vote
asked Mar 18, 2017 in How does MIDI Designer work with X? by fingerstyler (130 points)
Hey there. Based mostly on your information -- we don't have ANY hardware here in the woodshed -- I'm willing to guess that you're right: none of the existing sysex types work.

It's also possible -- but you'd know -- that your MIDI target might ignore the checksum? Seems like we've got no such luck.

Are you intending on sharing your layout with others, or is it just for you? Even rough, unfinished layouts help others get control of gear...

Are you interested in helping us test the feature in Beta?  

Thanks for using MIDI Designer and for your question/suggestion,
Dan
Hi Midi Designer Team,
Thank you for getting back and your thoughts!

Yepp, none of the existing sysex types work. Would you add the 4 Byte Model ID solution, pleeeese;-)
And of course I'd love to beta test.

Also, unfortunately the GP-10 does not ignore the checksum.

Static values work:
Change GP-10 to GK Set 1
F0 41 10 00 00 00 05 12 10 00 00 07 01 68 F7

this does not work so far (because of the Checksum = csH)
GP-10 Select GK Set (0-3)
F0 41 10 00 00 00 05 12 10 00 00 07 V csH F7


I'll create a GP-10 Midi Designer layout based on sysex and would be glad to share with others.
I fully support your community, but first - things have to work:-)

The following HW components already work great together.
- GP-10 by Boss connected via USB to the
- Midx-20 by Robert at Primovasound connected via Midi to a
- Babyface Pro by RME-Audio
- Behring FCB1010 with Uno chip

Hope to hear from you soon.

Cheers,
Stefan
Thanks Stefan, I'll look into this shortly and circle back.
Pushing a fix to beta right now. Look out for the notifications from TestFlight/Apple and make sure to accept. Thanks!

Note: it's a new checksum type.
Thank you very much for takeing this to the next level!!
I just installed and can see the new checksum type.
I will verify on Sunday, as I am on a Business Trip without having access to all the devices.
I just checked the log in Midi designer and from there I think it works awesome. Thank you!

One additional question:
How to read the current Status of the GP-10 Paramentes into the Midi Designer Template I' m going to set up?

..just to make sure that all parameters show the current status of the hardware to edit them in Midi Designer.
Hi Stefan, with some devices it's possible, because they send back individual parameters, and with others they just send a massive sysex dump. In that second case, there's no way in MD to parse, divide and conquer. That's why some MD layouts can read back all values from a synth and others cannot. It depends on the target. Thanks!
Which MD Layout reads back all values as an example? - just to have a firest direction to look at?
Thank you!
There are several, I think, but one that does it in a crazy way -- because the reface DX requires it -- is the reface DX layout by Helfried. It basically has to send a different request per parameter than the parameter itself. The synth then sends back the requested param. It's crazy. But it really depends on your synth. Many synths will only send back a giant sysex. Those we don't handle.
Hi,
I just verified with the hardware connected and it works. I can send a parameter change via sysex to the Roland GP-10:-) Great!!

Now, with the preset you provided (reface DX..) I still do not understand the "get" sysex implementation.
Which sysex Bytes should I put to receive the value of the corresponding "set" Parameter:

1.) Sysex to set the parameter: 41 10 00 00 00 05 12 10 00 00 07 V
41H Manufacturer ID (Roland)
10H Device ID (GP-10)
00H Model ID # 2 (GP-10)
00H Model ID # 3 (GP-10)
05H Model ID # 4 (GP-10)
12H Command ID (Data Set)
10H Address MSB
00H Address
00H Address
07H Address LSB
V

2.) "get" request: This is my first guess, but does not work: 41 10 00 00 00 05 11 10 00 00 07 (what are the "size" Bytes used for and how should those be set?)
41H Manufacturer ID (Roland)
10H Device ID (GP-10)
00H Model ID # 2 (GP-10)
00H Model ID # 3 (GP-10)
05H Model ID # 4 (GP-10)
11H Command ID (Data Request)
10H Address MSB
00H Address
00H Address
07H Address LSB
ssH Size MSB
ttH Size
uuH Size
vvH Size LSB

3.) How can I make "set" parameter to listen and update?

Thanks again for your support!
I found the answer - I just entered "00 00 00 01" for the size Bytes and it worked - I received the devices state and the set Parameter updated.

so:
1.) Sysex to set the parameter: 41 10 00 00 00 05 12 10 00 00 07 V
2.) "get" request: 41 10 00 00 00 05 11 10 00 00 07 00 00 00 01
3.) set parameter did the update.

case closed.
This is great! 2.9 barrels towards a release candidate... soon. Thanks!
...