akai s2000 sysex help plz

Home Forums General Using Ctrlr akai s2000 sysex help plz

Tagged: , ,

Viewing 20 posts - 1 through 20 (of 56 total)
  • Author
    Posts
  • #8167
    Synthetech
    Participant
    • Topics: 13
    • Replies: 70
    • Total: 83

    Hey all again.

    It’s been awhile since I worked a panel up.

    I aquired a Akai S2000 sampler.  I would like to create a controller that is WAY better than the SCSI connected MESA II program.

    I heard you can change the S2K’s parameters using sysex.  But it involves some MSB/LSB usage and I’m a little confused and rusty on how to implement the syntax.

     

    Here’s a page that helps describe the sysex commands in the S2K.http://troywoodfield.tripod.com/sysex.html

     

    about half way down he goes into how the structure of the akai’s sysex works.. there are “maps” of the parameters in documents found for all three S series samplers.  S900/1000, S3000 and S2000.

    Evidently to figure out all Sysex for them, you must look thru all their sysex suppliments/charts that can be found on akaipro.com

    I can get some activity from my sampler, but I’m not getting the reaction I’m after.  I’m doing something wrong with defining the MSB/LSB when I assign a slider with sysex and it’s values.

     

    MESA II sucks donkey balls.  It is not a real time controller.. you adjust a parameter and then it takes a second to change the value.  I think the SCSI port is modifying the entire parameter dump each time a control changes.

    It’s my understanding that thru MIDI I can do realtime adjustments to say.. the filter/resonance, LFO depth/speed and all the other goodies locked under pages of little LCD screen menus.

    If anyone can help, I’d be happy to work up a panel and post it up here when it’s done..  they are still a rocking sampler to work with.. and they go so cheap these days too.

    #8170
    atom
    Keymaster
    • Topics: 159
    • Replies: 2945
    • Total: 3104
    • ★★★★★

    I recommend reading the “getting started” document: http://ctrlr.org/getting-started/

    #8171
    Hecticcc
    Participant
    • Topics: 25
    • Replies: 160
    • Total: 185
    • ★★

    I was thinking about doing an s2000 panel aswell after finishing the Emu sampler panel, but if you want to work on this i will be glad to help out where i can.

    Beware of how to do it though, making a good panel for a sampler is not easy. Many variable parameters, like amount of samples in a preset for instance, makes it tricky.

    The good part about making a panel for a sampler is that you have to learn Ctrlr and Lua really well, and if you decide to make a panel for something “simpler”  it is way easier to do because you already know lots of tricks 🙂

     

    As for your lsb/msb  problem, how are you assigning the midi-message? Do you use the slider’s properties directly, ie set to sysex and add formula with ls and ms placeholders; or are you using Lua?

    #8175
    Synthetech
    Participant
    • Topics: 13
    • Replies: 70
    • Total: 83

    Thanks for the replies.

    Atom, I will definately refresh myself by reading your guide.

    Hecticc,  cool you made a Emu panel… which sampler?

    I’ve done a panel before.  It was for a custom Korg Poly 800 (new firmware).
    But I did that about a year ago.  I used both straight panel editing and a little bit of LUA/scripting so it could fetch a patch dump and set all the knobs/sliders/switches each time you selected a new patch via the panel.

    It was a pretty in depth script.. so I’ve gotten my feet a little wet in the fancy stuff.

     

    I tried to do a simple filter control via sysex command for the S2K.  I used a imageSlider and dialed in the Sysex format using a formula… I faltered with the LSB/MSB implimentation, evidently.

    This machine seems to use the LSB first, then MSB.. so say 1C, 0A pairs of bytes would be LSB, MSB.

     

    I appreciate any help/pointers I can get..  maybe if we collaborate we can get a decent panel once and for all for this machine..

     

     

    #8176
    atom
    Keymaster
    • Topics: 159
    • Replies: 2945
    • Total: 3104
    • ★★★★★

    For Ctrlr it doesn’t matter where the LSB/MSB part will be in the message, i think that DSI Evolver has LSB first, and some other synths have MSB first, it makes no difference to Ctrlr.

    #8180
    Hecticcc
    Participant
    • Topics: 25
    • Replies: 160
    • Total: 185
    • ★★

    Did some reading up on the sysex implementation of akai, it uses nibble-ized bytes so using “standard” lsb/msb splits will not work. It will never respond to the first character of a byte message; sending 11, 21…f1 fill be read as 01 by the Akai.

     

    From what i read this is the way to handle it:

    • Suppose you want cutoff to be set to max ie 127.
    • First convert to hex = 7f
    • Split this over two bytes, msb and lsb : 07 and 0f  — Atom, my guess is this is where bigInteger has to be used to ensure proper splitting? I have no time right now to dig into this atm.
    • Then send the message lsb first, so FO …… 0f 07 …..F7

     

    As for the sysex listings there are no full specs to be found, plugging it in and analysing the sysex it spits out when you change a parameter seems to be the only way…

     

    Gonna dig my s2000 up from the attic &  hook it up again when i have more time, then i will be able to test some stuff out for this.

    #8181
    atom
    Keymaster
    • Topics: 159
    • Replies: 2945
    • Total: 3104
    • ★★★★★

    there are 2 splits in Ctrlr:
    LS/MS
    and
    ls/ms

    the capitalization matters, big letters means 7bit split (a 14bit integer is split into 2 7 bit numbers), the small letters means 4 bit split (a 8bit message is split into two 4bit numbers)

    #8200
    Synthetech
    Participant
    • Topics: 13
    • Replies: 70
    • Total: 83

    Thanks so much for the quick replies/support.

     

    I found this site to help figure out the sysex/parameters

    http://lakai.sourceforge.net/documentation.shtml

     

    Something about offset bytes is how you locate a parameter to change it’s value.

     

    I took a look at Ctrlr and found you can reverse the MSB/LSB..   what is “Value Mapping” and “Number Mapping”?  Is this where the MSB/LSB nibble bytes go?

    I can tell this is going to take some time to understand.. but I’m guessing once we figure out how to crack the Akai open, then it’ll just be a matter of tedious entries for each slider/parameter.

    #8201
    Synthetech
    Participant
    • Topics: 13
    • Replies: 70
    • Total: 83

    And if we ever get this done, I have a Roland D2 to figure out eventually too..

    I’ve heard you can use most of a MC-505 editor.. but the only one I found so far sucks just as bad as MESA II.   There is not realtime control over something as simple as the filter.. again it is like it is rewriting the entire patch dump again instead of changing just the one parameter.

    I see the knob adjust, but hear no changes.. but when I let the knob go, I finally hear it change to the value where I released the knob at.

    #8207
    atom
    Keymaster
    • Topics: 159
    • Replies: 2945
    • Total: 3104
    • ★★★★★

    I used to own a s2000 but not anymore, anyway maybe you can record some sysex data for some of the parameters ? I’m not sure if the S2000 transmits data when changing parameters, but if it does have a look at what it’s sending in the MIDI Monitor or in MIDI OX and go from there.

    #8208
    Hecticcc
    Participant
    • Topics: 25
    • Replies: 160
    • Total: 185
    • ★★

    Yes the sysex is sent out when you adjust a parameter with the jogwheel, i used to record automation like this with it. As long as you don’t overdo the amount of data being sent it responds quite fast too 🙂

    #8212
    atom
    Keymaster
    • Topics: 159
    • Replies: 2945
    • Total: 3104
    • ★★★★★

    Well then this is a start compare the data coming in with the data you are generating.

    #8213
    zeoka
    Participant
    • Topics: 73
    • Replies: 466
    • Total: 539
    • ★★★

    Hello

    Is it possible the display of s3000 series is sent by sysex ?

    i’ve an old s3200 i have tried with sound diver and there is a windows : a replica of the display so may be it is possible with s3000xl series and eventually the s2000
    Transmit was bi directionnal so….

    Sound diver worked relatively bad but Ctrlr may be works better….

    #8218
    Synthetech
    Participant
    • Topics: 13
    • Replies: 70
    • Total: 83

    This is promising then if we can extract the sysex format from monitoring the MIDI data..

    I’m betting some of the sysex docs I’ve found will spell out how to use that “offset byte” information to dial in the parameter to assign to a slider.

    I’ll give it a go tonight and see if I cant evoke a response out of it.

    #8219
    atom
    Keymaster
    • Topics: 159
    • Replies: 2945
    • Total: 3104
    • ★★★★★

    If you have an editor that works via MIDI (i remember that MESA did SCSI not MIDI), you can always plug a monitor between the sampler and your computer using MIDI-OX/MidiYoke combinations, and sniff what’s going on the wire. As i remember ReCycle from Propellerheads supported those samplers.

    #8224
    Synthetech
    Participant
    • Topics: 13
    • Replies: 70
    • Total: 83

    Uhhh.. I think recycle uses scuzzy as well, not MIDI.

    I have searched all over for a MIDI based controller app for the Akai s2000 and have come up nil.

    that’s why I think it’s worth the trouble to create a new panel for it. and it will also work for all the S Series samplers.
    they are backward compatible but not forward.
    that is why you have to look at the S 1000 sysex documentation to find the code format for parameters then the additional sysex documentations just have the update information.

    it is in the S 1000 doc that I think I saw the offset byte info that is the key to locating all the basic parameters, instead of monitoring every single jogwheell edit.

    #8225
    atom
    Keymaster
    • Topics: 159
    • Replies: 2945
    • Total: 3104
    • ★★★★★

    Well SoundDiver used MIDI (i think recycle could use both MIDI and SCSI). Also i’m not saying use those old ones, just get them, and reverse engineer the communication between the old program and the device, and implement that in Ctrlr, it’s simpler then trying to decipher cryptic manuals full of bytes/bits/nibbles and other stuff i don’t even wanna think about.

    #8233
    zeoka
    Participant
    • Topics: 73
    • Replies: 466
    • Total: 539
    • ★★★

    I think Recycle(2.0 not 2.1) deal with SDS but can make program with keygroups so it is interesting to see the midi messages. I believe you can choose midi or scsi

    Sound diver send&receive quasi all params except the filter2 or/and the 3rd env. i believe but they are optional on the S2000

    Recycle and Sound diver “reconize” devices(they scan for) i would like to know how they do.

    It could be a nice feature for panels.

    Other thing : filter1 cutoffs (for example) are many in my s3200.

    number of midi channels x number of progams x number of keygroup and may be x number of zones= number of filter1 cutoff sysexs possible Not sure however

    • This reply was modified 9 years, 2 months ago by zeoka.
    • This reply was modified 9 years, 2 months ago by zeoka.
    • This reply was modified 9 years, 2 months ago by zeoka.
    • This reply was modified 9 years, 2 months ago by zeoka.
    #8238
    atom
    Keymaster
    • Topics: 159
    • Replies: 2945
    • Total: 3104
    • ★★★★★

    If a device implements the standard Identity request then you can query it and find out what is it.

    http://www.blitter.com/~russtopia/MIDI/~jglatt/tech/midispec/identity.htm

    not all devices do that, and you’d need a database of all possible responses to find ALL devices. But yes the MIDI library will have a special field and callback for identifying the device. There is some more information in the response, like the firmware level, that can be useful for updates etc.

    #8248
    Synthetech
    Participant
    • Topics: 13
    • Replies: 70
    • Total: 83

    Ok.. I hooked up the S2k to MidiOX and this is what I get when I have Program 1, Keygroup ‘s “FILTER  Freq  Reso” page on the LCD showing.

    A zero Freq gives me this-

    SYSX: F0 47 00 2A 48 00 00 00 07 00 01 00 00 00 F7
    0002C49D   1   2     F0  Buffer:     7 Bytes   System Exclusive
    SYSX: F0 47 00 16 48 00 F7

     

    A “1” gives me this..

    SYSX: F0 47 00 2A 48 00 00 00 07 00 01 00 00 01 F7
    0002C49D   1   2     F0  Buffer:     7 Bytes   System Exclusive
    SYSX: F0 47 00 16 48 00 F7

     

    Freq set to “15”..

    SYSX: F0 47 00 2A 48 00 00 00 07 00 01 00 0F 00 F7
    0002C49D   1   2     F0  Buffer:     7 Bytes   System Exclusive
    SYSX: F0 47 00 16 48 00 F7

     

    And finally we have Freq. set at “99”

    SYSX: F0 47 00 2A 48 00 00 00 07 00 01 00 03 06 F7
    0002C49D   1   2     F0  Buffer:     7 Bytes   System Exclusive
    SYSX: F0 47 00 16 48 00 F7

     

     

    I’m not sure what that second message is, I think OX is resending the message back to the Akai and that is a confirmation msg.. seems to get that msg no matter what parameter I edit.

     

    here’s another..  Program1 Keygroup 1, LFO1 rate set to “0”

     
    00037B80   1   2     F0  Buffer:    15 Bytes   System Exclusive
    SYSX: F0 47 00 28 48 00 00 00 21 00 01 00 00 00 F7
    00037B8F   1   2     F0  Buffer:     7 Bytes   System Exclusive
    SYSX: F0 47 00 16 48 00 F7
    00037B93   1   2     F0  Buffer:     7 Bytes   System Exclusive
    SYSX: F0 47 00 16 48 00 F7

     

    that one gives me two extra messages at the end..

    Anyone know if there’s a midi thru to switch on/off in OX?

     

    Here’s the same LFO1 parameter, set to “99”
    00054E73   1   2     F0  Buffer:    15 Bytes   System Exclusive
    SYSX: F0 47 00 28 48 00 00 00 21 00 01 00 03 06 F7
    00054E82   1   2     F0  Buffer:     7 Bytes   System Exclusive
    SYSX: F0 47 00 16 48 00 F7
    00054E86   1   2     F0  Buffer:     7 Bytes   System Exclusive
    SYSX: F0 47 00 16 48 00 F7

     

     

    I tried to make a slider out of the sysex info, but I cludged it all up somehow and it doesnt like it.

    Any pointers on how to do it?  Thanks all for your help and comments..  I think once I figure out how to do one, I can figure out most the rest of it.

     

     

    • This reply was modified 9 years, 2 months ago by Synthetech.
Viewing 20 posts - 1 through 20 (of 56 total)
  • The forum ‘Using Ctrlr’ is closed to new topics and replies.
There is currently 0 users and 61 guests online
No users are currently active
Forum Statistics
Threads: 2,495, Posts: 17,374, Members: 77,605
Most users ever online was 12 on January 22, 2019 3:47 pm
Ctrlr