Building a foot controller

  • So, as it appears there's no sign of an official Kemper foot controller I thought I'd look into making my own (I've a pretty solid hobbyist knowledge of electronics, microcontrollers and hardware design so it's not completely nuts!).


    I've poked (virtually) the Kemper midi spec using some tools on my PC and I've got it responding to SYSEX messages and telling me things like the current rig name, effect slot names, types and status etc, so I can get the information I need. The main thing I want is for the board to provide feedback. I'm currently thinking of a fairly stripped down, seven pedal board with some display capabilities, MIDI in / out for the Kemper plus an additional MIDI out to control other gear on the pedal board when switching rigs in performance mode.


    It would have:


    Standard pedal switches for effects slots A,B,C,D,X,MOD,DELAY (I don't really care about turning reverb on and off from the pedal board), and a single mode switch. The idea would be to have the mode switch flip between effect control and performance / rig control. In performance control the first five switches would select rigs and the second two move up and down between performances.


    Displays - RGB LEDs on each switch, plus possibly a number of 2x40 character LCDs. I could go for one per switch, but that's possibly overkill - one for each of the first five would do for me (these would actually correspond to the A,B,C,D,MOD slots, as I always have a stereo loop in the X slot). In effect mode the LEDs and display backlights would indicate the effect type by colour and the displays show a summary of the effect (probably its name), and in perform mode they'd show the names of the rigs in each of the (up to) five slots in the performance. I could in theory add another display to show current rig / performance name, but I'm not sure it's needed.


    At this point it would be easy enough to add inputs for expression pedals, although I wouldn't use these for the kemper once they're managed by the microcontroller I could map them to whatever CC I feel like on either of the MIDI outputs. I guess a tap output would be useful (also for my other effects via the second MIDI out). I've not checked but I suspect that the Kemper honours MIDI clock for tempo in which case that's easy and I can manage the tap tempo in the pedal board rather than sending CC on / off.


    I reckon the build cost for this would be around 200 pounds all in, buying from general hobby stores and not trying to be particularly economical. I'd use an ATMEGA328 as the central 'brain', should have enough capacity.


    My main priority is to get something that fits on my pedal board and allows me to treat the kemper effects as if they're real stomp boxes, the other control stuff is a bonus. Feedback is critical though!


    Thoughts? Any other hardware hackers out there?


    Tom

  • Hi Tom,
    I’m a bit of a DIY guy myself, and I think your project sounds fun. I programed an ATMEGA a few years back to process servo commands for a 4 rotor RC helicopter I made. I found programming it quite easy and I think you are right, it should have enough horse power to do the midi thing. Did you know the Arduino is based off that same CPU, so if you need any sort of USB capability, or other Aduino goodies (like daughter boards) that might be a good option.

    I’m not sure about the official Kemper Pedalboard, but I thought I read rumors on this forum about it coming soon, not to put a damper on your enthusiasm, just a heads up.

    Another thought. The cable bundle might be a bit clunky if you need two midi cables plus power. The official solution is rumored to use the single network connector to pass everything.

    Lastly, I would keep all 8 switches. I know the reverb doesn’t sound like a thing anyone would want to turn on or off during a song, but there is something to be said for completeness, and who knows, you may find another use for it (consider it for future expansion).

    Oh, and one other thing. I don’t know if you will have access to the main out digital signal, but if you do, you may just have enough horse power to save it to memory and send it back to the KPA at a later time. This opens a possibility for a decent looper if you have enough memory to hold the loop. 44100(Hz) x 2(bytes per channel) x 2 channels x 300 sec (assume a 5 minute song) = 5 or 6 meg of memory.


    Good luck and have fun.

  • Hi DigitalBliss,


    I'm actually going to be using one or two arduino nanos, although how much of the arduino libraries will be left by the time I've finished I'm not sure! As you say, they're a good base to start from and I've used them in quite a few projects.


    I'd be entirely happy if Kemper make an official board while I'm designing mine - I'm not really trying to make something general here, it's quite specifically tailored to what I want and it's unlikely that the official one will be identical (although if it is, cool!). I'm not too fussed about the cable bundle size either as I've already got a snake running between my pedal board and the KPA so it's just a question of having another custom one made with a couple of MIDI cables built in (guitar in, stereo send / return already). If Kemper release the protocol and interface spec for the ethernet port I'll use that instead, obviously. I've already got a voodoo labs power supply with a spare connector in the pedal board so that's taken care of.


    I don't think there's any way to interact with the actual signals within the amp through this mechanism (and making a good looper is non-trivial anyway). I've also not got a huge incentive to do so as I already have a TC electronics Ditto X2 on the pedal board in the effects loop so...


    Anyway, I'm finishing up some actual paid work at the moment so should be able to get started sometime in the new year - it'll all be up on github (hardware schematics, any PCBs I end up making, laser cutter templates, software) and under an appropriate open source license - probably GPLv3 for the code and CC-BY for the other bits. So while initially it'll be tailored very much to my own requirements, there's absolutely nothing to stop someone else extending it or changing the code, in fact I'm hoping that'll happen.


    I'll update here when I actually get started!


    Tom

  • Hi Tom,


    i recently started my own project too. At the moment it´s some kind of stuck because of the sysex messages which seem to be a bit more complicated to handle than i thought first...
    Program changes work fine right now. Also the 4 RGB Leds can be controlled but do not yet display the real received data.
    These things seem to be very similiar to your idea so far. I´m really looking forward to read more from your project. Mine is not worth sharing yet as the code is some kind of patchwork and very messy. I have never before made something with arduino or programming in general, so its all new to me.


    Hope to learn something from you!


    Chris

  • Hi guys,


    I'm interested in your projects too and want to hear more about it. Did I get it right, you're listening on the Ethernet Port, not MIDI?
    I'm planning a project for a footcontroller which works over the Ethernet port. I dont want to use Midi, because I want to use the PoE from the ethernet port. Maybe I can use Wireshark to listen on the Ethernet port what happens, when you plug something in.

  • I am using a ethernet cable for data + power... but only from the switch to my rack ;) Inside the rack the cable gets split into 2x Midi and a PSU.


    I tried listening on the ethernet port a while ago and it didn´t work very well. Only a "NO" as answer for everything i sent to the KPA.
    I think that the port is not yet open for communication before the release of 3.0.
    Maybe i will change my footswitch later to use the same messages as the remote (which i ordered).


    So for now the only documented and working way is to use the MIDI in/out.

  • Ok thank you!


    But aren't users out there, who have already the Kemper Remote? On which firmware are they using it? Maybe a secret 3.0?
    I ordered a USB to Ethernet adapter, so the possible phantom power wont kill the Ethernet port on my notebook =)

  • I tried listening on the ethernet port a while ago and it didn´t work very well. Only a "NO" as answer for everything i sent to the KPA.


    If you hook the KPA's network port up to a working IP-network with a DHCP-server it will actually go get an address and appear as a host on the network. A host-scanner further reveal that there are active network-oriented IPC-services on the KPA (looks like some form of windows protocol stack). I would guess that there are network functions for use in the lab, and/or for service/troubleshooting, but there is no further information available about what it is capable of.


    Note that I tested this some time ago, and I haven't checked if anything has changed in more recent firmware editions. There's a lot of fairly advanced, but inexpensive kits available to build IP-network solutions that include MIDI over TCP or UDP so it wouldn't be surprising if Kempers own controller also would be running an IP protocol-stack.

    Edited once, last by heldal ().

  • If you hook the KPA's network port up to a working IP-network with a DHCP-server it will actually go get an address and appear as a host on the network. A host-scanner further reveal that there are active network-oriented IPC-services on the KPA (looks like some form of windows protocol stack).


    Yes, thats what i experienced too.


    But aren't users out there, who have already the Kemper Remote? On which firmware are they using it? Maybe a secret 3.0?


    The only users i know that use the remote are T. Wendt (in this case he´s working for Kemper) and M.K.Heafy of Trivium which gives me the question if the endorsed artists do some kind of "final testing" at the moment. They will surely have the latest firmware with new functions.


    A few more days and we wil know more when the first remotes are shipped to the early birds.


    Until then i will continue my little DIY-Footswitch. Heres a pic of the first version of the enclosure:


    [Blocked Image: http://c-philipps.com/KPA_FS_V1.jpg]


    The Material is 2mm aluminum painted with "wrinkle black" paint (often used on Harley Davidson Engines). The lower part of the case is unpainted Aluminum, i like the contrast :)
    The green labels are made from foil.


    Hopefuly i will complete the software part the next days... this is much harder to handle than the waiting on the Remote because i can hold it in my hands but it doesn´t work yet :(

  • Wow this looks great =)


    Mine would be much simpler. Just 5 switches for PC and maybe a display. But I'm adamant that its PoE. I dont want a solution with MIDI and external power supply as phantom power.

  • To keep you up-to-date:


    At the moment the only thing i can do is toggle effects on/off, change the bank and the rig. Also the tuner can be activated an deactivated again.


    I am totally stuck at the point where i have to work with the requested parameters. Maybe i´m too dumb to learn programming. The first step with every Control Change was relatively easy, but now it´s getting complicated beyond my abilities... Of course i will try to get it to work.


    I tried understanding the code from daltona which is really well written to my eyes, but i didn´t find a way to get the parts working together. Seems like i expect too much from myself :rolleyes:


    I will let you know if something worth mentioning happens!

  • Have you already been trough the debug mode under SYSTEM? There are some options/details related to the Ethernet board.


    Yes, i have seen this whilst playing around in the menu a while ago. But i don´t want to damage anything so i decided to take the documented way with the midi ports.
    Maybe when the remote is available i will have a look at the messages which are sent from it. But for now i don´t want to use something that isn´t officially supported yet.


    My brain would frazzle over trying to make something like this.


    You can believe me, it´s the same for me. But sometimes i have something in my head and i can´t even sleep right ´til i achieved what i had planned or at least miserably fail while trying it :D

  • Yeah, you're probably right. Its nearly impossile to reverse engineer it without a Kemper Remote. Yesterday I hooked up CommView and Wireshark and all I found out was that the Kemper is looking for a Remote and if it can't find one it increments the Port and searches again.