Drawbars Sys-ex - Conversion to CC - OB3²

Hi everyone.

I have 2 keyboards, a Korg Pa80 and an OB3². I usually use the Korg with Cantabile while the OB3² has always given me problems.

In fact, I have struggled a lot to configure the OB3² with Cantabile because of a wrong choice of Midi/USB cable (solved with an OTraky cable). This keyboard of mine has good Hammond clones, sounds quite realistic, but adjusts its sets very little.

Now, replaced the cable, I can finally use also OB3² with Cantabile. I must say that until a few days ago I could not use its drawbars because the messages are Sys-ex and not CC.

Having a keyboard that has original drawbars and not being able to use them, sends you into a depression!!!

I didn’t give up!!! I tried to see in the forum something on the subject, with little results.

So I searched the manual and among the various utilities of Cantabile I saw that there are midi filters and in particular the encoding and decoding Sys-ex.

Through the instructions contained in the tutorial, I wrote a line (on the decoding part Sys-ex), I tried to move a drawbar and to tell the truth I succeeded!

But it was not enough because there were some problems that, according to my logic (but only mine…) would be needed so many lines for the volume of each drawbar multiplied by 9.

We needed an algorithm that would group each row "from… a… " for each drawbar.

So I asked Dave Doré if he knew of a way to use drawbars with Cantabile, and he confirmed that this was the way to go.

He asked for some time to evaluate and then inquire.

He got in touch with Brad, who analyzed the problem and gave him the right input to solve the problem.

He then created a limited set of lines, 9 in all, where each one controls each drawbar by converting it from Sys-ex messages to CC# messages.

I don’t know if this can be useful, certainly yes for those who own an OB3², but it could be useful for doing exercises and experiments with Sys-ex encodings and decodings.

Here is the story of how it was possible to set the midi filter to get this nice “converter”.

Brad helped out and showed the syntax for the OB3 draw bar sliders. It is as follows.

F0 31 01 01 3E [0000000]$(val[6]) [0]$(val[5…0])[?] F7

The 5th byte in the example here is the draw bar identifier byte “3E”. That byte is different for each draw bar running from 36 to 3E hexadecimal. All the syntax that proceeds & follows that byte is the same for all the draw bars.


Notice that 36 which is the 16’ stop is set to produce CC12. The upper draw bars on the VB3 II and many others is CC 12 to 20. So you would just make 9 filters, one for each draw bar and stack them on the route filter box like so.


That covers the how the draw bars would be decoded.

I hope it is useful!!!