DIY MIDI Stompbox

  • Hey Community,

    I am currently working on a diy midi stompbox which also should be able to communicate with the Kemper.

    As for now the requests I'd need are quite basic:
    - get all rig names of a performance

    - get all stomp types

    - get the activity state of each stomp

    - preselect a performance

    - select slots

    Atm i am able to get

    - the rig name with 0xF0 20 33 02 7F 43 00 00 01 7F,

    - the performance names 0xF0 20 33 02 7F 47 00 00 01 00 (01 - 05) 7F

    - the performance name 0xF0 20 33 02 7F 47 00 00 01 00 00 7F

    - the stomp type regular parameter requests 0xF0 20 33 02 7F 41 00 (32 || 33 || 34 || 35 || 38 || 3A || 3C || 3D) 00 7F

    - using cc messages for toggling slots / stomps / preselection

    Though it seems like the performance slot name requests are only covering the active performance and not the preselected one.

    So there are a couple of questions to the swarm intelligence of this forum :)

    Is there any command where you can get the names of the preselected performance and its slots?

    Is there a request to obtain the selected preset of a stomp (preferrably as a string)?

    Also, do you know if there are string requests to get the type and preset of a stomp?

    I'd rather try to go around mapping all the enums of stomp types and presets to strings within my logic.

    I would be really thankful for any tips and hints.

  • If you mean the "MIDI Parameter Documentation (Rev. 154)" then yes, i've read it carefully.

    But it lacks quite some information though which I only got through some other posts from e.g. Request Names of all 5 Rigs in current Performance via SYSEX especially from slateboy , JanosB and Gizmo .

    Thanks for that by the way!

    Also…mper_KPA_External_Control delivers quite some addidtional info and examples.

    But what I am missing is information which string requests are possible, or better which nrpn adresses can be triggered to obtain certain strings.

    The only example you get from the official documentation is how to obtain the current rig name.

    It doesn't state that an extended string request has to be used for the slot names for example.

    But this is no complain towards Kemper of course.
    As a software engineer I know how much fun it is to write interface documentations and the existing one is still quite complete.

    Just maybe somebody in here has a little bit a broader experience with string requests which would spare the work of polling all nrpn adresses for string and extended string commands and reverse engineer the output.

    I tried to search the forum as good as possible before I was asking for help.

  • Thanks for the heads up, i was also checking out some kemper repos before but couldn't really find the stuff i was looking for - or i just looked in the wrong places.

    I contacted the support team 3 years ago asking if they could give me more details on sysex commands like that.
    The answer was that unfortunately they can't give me more information as is offered.


  • you can take a look at my project here..

    KEKO Kemper Midi Control via Touchscreen

    (because of the ipad app i didn't work on this in the last months, but i will dive into it again).

    As far as i can remember without looking into the source...

    preselected performances and slots...

    -> nope.. i made a scanner that selects performance after performances and rigs after rig and requesting that name and storing that in javascript objects...

    To get the fx for a stomp you get back x'.. 00 01 f7'

    and that kind of messages (this is the "wah wah" fx, x'... 00 00 f7' means off). As for presets i am not fully sure, but i don't think this is possible...

    Hope this helps a bit..

  • That project looks awesome!
    I'll have to get used to the javascript syntax though :)

    Just out of curiosity - have you tried sniffing the ethernet port when using the kemper remote or the ipad app?

    I'm wondering if that would be an alternative to midi...

    but that's another topic ^^

  • Thank you for the kind words.

    This project is quite beta, and for users there should be somekind of a image (for a raspi) -> so setup is simplified, and hopefully i could simplify the code itself, i started with implementing a save function...

    It would be nice if the server could be started on a mobile device, but on android i don't think that is possible....

    No i have not tried that, maybe a good idea.

    I did not try the ipad app and i don't have a remote.