SysEx Beginner Tutorial, System Exclusive MIDI (JP-8000)

preview_player
Показать описание
NOTE: There was some confusion about the "Checksum". More details are included below, following the video description.

This video requires no prior experience with MIDI or SysEx, or even with Hexadecimal. It teaches you how to understand and construct both MIDI and SysEx messages in order to control almost any MIDI device. If you're interested in controlling a JP-8000, this video covers specifics in depth.

VYZEX VENOM SOFTWARE LINK
Some people seem to be having trouble locating the software. The Venom synth hasn't been the best maintained synth, and that goes for its firmware & software as well. In any case, you can download the latest version from the maker's website here.

[UPDATE 9/19/2020] The following link no longer works. You can download MidiQuest instead, since it has the same MIDI monitor feature. Just search on YouTube or elsewhere for a link to MidiQuest.

[Old Link -- No Longer Works]

ADDITIONAL CHECKSUM EXPLANATION:
If the term "remainder" is unfamiliar to you, simply put, the remainder is what's left over after you divide one thing into pieces of a certain size.

Let's say you have 25 dollars, and you want to buy as many games as you can, and each game cost 10 dollars., how many games could you buy? And also how much would you have left over? In this case you could buy 2 games, and you would have 5 dollars left over. 5 is called the remainder.

On the other hand, let's say you have 25 dollars and you want to buy as many games as you can, but this time each game costs 50 dollars. How many games could you buy, and how much would you have left over? In this case you couldn't buy ANY games, so you would still have 25 dollars in your pocket. 25 is the remainder in this case.

So back to Lemur / checksum. we need to:

1) Add up all the numbers indicated
2) Divide the number by 128
3) Take the remainder
4) Subtract the remainder from 128

In the video we saw that:
1) The sum was 81 (that's how much money we have in our pocket).
2) We want to divide 81 by 128 (the amount that the game costs.) We can't afford the game, so we have 81 dollars remaining in our pocket.
3) We said the remainder is 81.
4) 128 - 81 = 47. So our checksum value is 47.

Now what if the sum was greater than 128?
1) Let's say the sum was 350 (that's how much money we have in our pocket).
2) We want to divide 350 by 128 (each game costs 128 and we want to buy as many as we can with the money we have). We can afford to buy 2 games (since 2 * 128 = 256). After we buy as many games as we can, we have 94 dollars left in our pocket. This is the remainder
3) We said the remainder is 94.
4) 128 - 94 = 34. So our checksum value is 34.

Hope that helps to clarify!
Рекомендации по теме
Комментарии
Автор

I'm glad to see this video is still getting views in 2020 --> 2021 --> 2022 --> 2023!
Thanks everyone!

JustHackingAround
Автор

...still in 2021 a great video about sysex calculation.
Thank You.
Greetings vom Germany.

solidaudio
Автор

Thanks so much for taking the time to explain sysex and hexadecimal. I've always used standard CC data over the years and glossed over the cryptic info in the back of my owners manuals because I couldn't understand it. Great job! A much needed tutorial that I'm glad I found!

markdavenport
Автор

Awesome content! I started writing a template for my BCR-2000 + etc and this was exactly the info I was looking for.
Thanks a lot!

theMIDImaniac
Автор

super helpful. Trying to send SysEX to a FaderPort to change the button colours. Not there yet, but dang, this video gives me a lot of understanding. Appreciated!

paulelliott
Автор

Hey Man, thx for this video. I've known of sysex for years, but only in the context of "data dumps" for my drum machines, rack units, etc. Now I'm getting deep into Logic Pro X's environment and sysex keeps coming up in a different context. I didn't know where to start researching so I searched YouTube and this came up. This is going to be really helpful. Thanks again!

russell_szabados
Автор

Hi toaaronjunk.

Thanks for making this video! It really helped me a lot to understand sysex. This is the first, clear description I have found that doesn't blast you in the face with too much info at once.

Thanks again! ;-)

Mechanoid
Автор

Hi Gary, thanks for the comments. I'm glad the video helped!

JustHackingAround
Автор

Thank you very much, I learned a lot about sysex 🙏

gokhancanbulat
Автор

Hi, thanks a lot for the comment! Ever since I made this video I've sort of wondered if I took things TOO slow...so I'm glad to hear it helped. It's difficult to find clear explanations of this sort of thing, but it's not too difficult to actually understand once you hear it (hopefully!)

JustHackingAround
Автор

Trying to mediate between 5 midi controllers and 8 synths without knowing the inner workings of things like sysex has been a nightmare. Thanks a bunch, looking forward to watching more of your videos.

sixxdb
Автор

I'd recommend using the software shown in the video to monitor the MIDI output you get when turning the scratch pad versus turning the scratch pad with the BPM button held down. This sort of thing you gotta reverse-engineer to a certain extent, so learning about what MIDI data the DJX-IIB it is sending will help you understand how it operates and hopefully lead you to the solution you're looking for.

JustHackingAround
Автор

Thanks, glad it was helpful! You should have no problem building SysEx messages for your D-550 if you follow these steps (I had a look at the manual, and being a Roland device it's a pretty similar process.) I recommend checking out a program called Osculator. You can use it with your iPhone/iPad to send messages to synths. Soon it will be possible to send SysEx messages using this. I might post another video once the new version of the software is released.

JustHackingAround
Автор

Thanks, this was helpful. Been using synths for a long time, but never really understood SysEx. I'm trying to figure it out so that I can build an editor for my D-550. Hopefully you make Part 2 soon :)

user
Автор

Great video, great teaching style, not at all boring !

NeilHester
Автор

Thank you Thank you thank you
Thanks to your video I have managed to control my Tyros 3 with an Alesis Vortex using the Midi -OC software
your explanation regarding system exclusive was very helpful

KedmaEvents
Автор

Thanks for your quick & knowledgable reply!
The DJX-IIB does not send any of this data according to the MIDI chart, it can only receive it.
I guess I will just keep trying, thank you :)

alexriesenbeck
Автор

Awesome video... it always seemed like a no go zone.. thanks

joelananias
Автор

This is a -great- video for us who are new to SysEx and MIDI messages. Thank you!
Here is my dilemma: I have a Yamaha DJX-IIB unit that I'd like to send a MIDI clock to.
The manual explains to hold the BPM button and turn the scratch pad 'a few turns' past 280.0BPM to enter MIDI sync mode. My scratch pad doesn't want me to do that. I am trying to send SysEx data to the DJX-IIB that will put it into Sync mode. I have made a few codes with no luck (its all new to me).. Can you help a guy out? :)

alexriesenbeck
Автор

Hi, you really helped me out. I was trying to program some Sys-X into Logic using an external Synth (S90ES) and this got me going. Thanks!

Gregkoable