(Guitar Rig 5 Interface) (Lenovo Miix 2 8") (Berhinger USB Interface)
Due to the very nature of the setup, changing presets/pedals in real time while playing is not something that is easy to do with a tablet. While it is possible to assign keyboard shortcuts to various presets, trying to hit a key on a keyboard and play at the same time is not so easy. Commercial Foot pedals that control Guitar Rig are available, but are difficult to find and very expensive ($300)!
(Rig Kontrol 3)
After thinking for awhile about the subject, I got an idea! I remember reading that some of the newer Arduinos offered usb HID simulation, including keypresses! I could simply make my own box with some momentary switches and I would have the same product at a fraction of the cost. As you will see later on, a simple controller like mine can be built for well under $20, including the enclosure!
Now no offense to Arduino; they make some great stuff, but I think even the most loyal customers must agree that they charge a pretty hefty premium for their products. But as long as you are willing to wait a while to get the parts, some Arduino Pro Micros with usb hid support can be found for as little as 7$ on Ebay.
Make SURE to order the ones with the newer ATMEGA32U4 chip, not the ATMEGA328 like the pro mini which is cheaper, otherwise usb emulation will not work without extra parts and more headaches.
I wanted to make a controller with four buttons, which could then be expanded up to 12 presets by hitting more than one button at once. A nice led indicator would also be necessary to indicate what
preset you are currently on. A resistor ladder was used to connect the buttons and free up pins. If you do create a resistor ladder, make sure to wire the buttons with different resistor values if you want
to be able to distinguish multiple button presses at once. I used 220, 390, 680, and 2.2k ohm resistors to ensure adequate separation between the buttons and used a 1K resistor to tie the analog pin to
As with everything in programming, there are always 100 different ways to do the same thing, but I wanted something a little more elegant than just using digital writes to turn leds on and off. Seeing as I
had nice clear colored leds, I figured a pwm cycled sine wave would provide a pleasing fading effect to the leds. To do this, I had the buttons switch boolean values on and off which then triggered the
keypresses and leds, otherwise the fading effect would stop as soon as you let go of the momentary switch. That's enough talking, lets see how it works shall we?
The LEDs In ACTION!
The Inside of the Box (Please Excuse the Point to Point Wiring!)
THE FULL SETUP!
The box was purchased at radio shack, and the leds/resistors/grommets were bought at Tayda Electronics. I recommend you use 1% resistors instead of 5%, or you may need to change the values in the matrix of my code slightly.
Here is a Video of it In action:
You will notice in the script that I have the box play a short introduction flash when you first plug it into usb, that is completely optional. I have not included keystrokes for multiple buttons as of yet because I simply don't need that many presets, but it should be just a matter of copy and pasting some existing code and changing a value here or there if you want the extra buttons:
(Sorry! Lots of Scrolling Ahead!)