top of page
Search
  • Writer's pictureLeonardo

Wicked Keys

Updated: Oct 18, 2023

I love synthesizers. But for me, most of them have a big problem: they have keys.


I have been playing guitar since my early teen years. I feel comfortable playing guitar even when my virtuosity level is not high. One thing that works quite nicely for me is that playing the guitar is about patterns. When learning scales or chords, you have to practice a pattern. That pattern can be easily transposed to any location of the frets. Transposing songs and scales on a piano is something that I have not been able to do proficiently.


My first instrument with keys was a cheap Casio keyboard with a few built-in presets and drum sounds. I used it extensively but never committed to learning to play anything more than simple songs and phrases.


When making music, I usually sketch something with the guitar and then rewrite the part directly on the DAW's piano roll. Then I can playback those notes on a hardware or software synth. Every time I see a video of someone jamming on a poly synth I feel envious. I wish I would be better at playing my synths.


To improve the situation, there were a few options that could follow:

  1. Practicing and practicing with the keyboard.

  2. Getting some kind of guitar synth or guitar-to-MIDI converter.

  3. Making my own instrument/controller with an easy-to-learn layout.

Since I'm an engineer I picked number 3.


Layouts and devices


Some years ago when I first got an iPad 2 I bought a bunch of apps. Among those, one of the most inspiring for me was SoundPrism. SoundPrism provides a special layout for the notes and makes it very easy to play chords. The Pro version allows for MIDI output, which could be used for controlling synths.


SoundPrism for iPad.

I enjoyed it so much the app that I made a "clone" with other experimental features using Processing. My version was called HackPrism.


HackPrism. A Processing sketch inspired by SoundPrism.

Later I discovered other applications like Musix Pro which has a variety of alternative layouts to play. My main issue with iPad apps is the lack of tactile feedback. Just like when typing, I'm much faster with the real computer keyboard than with the onscreen keyboard of the iPad or other touch devices.


One alternative that looks very powerful is the Linnstrument by the great Roger Linn. The Linnstrument provides a bunch of pressure-sensitive pads that can be used to play other instruments expressively. I considered getting one of these, but the cost of the device requires the commitment to learn all the functions.



Other devices could be used with alternative layouts, for example, the Novation Launchpad. But as far as I know, the pads are not velocity sensitive.


Some time ago I built an ergonomic mechanical keyboard called Redox. This one uses Cherry MX switches which provide a nice touchy feeling and are preferred by gamers.



This build inspired me to try and build other devices using this kind of switch. I just needed to pick a layout.


After checking some of the alternatives I found the Wicki-Hayden to be my preferred.


Transposing phrases and chords is even easier than in a guitar. The notes are straightforward to locate thanks to the coloring pattern. Lastly, the main chord patterns are easy to play. Some of the disadvantages I found are that moving one semitone is a big jump. For example C to Cb or C to C#. But so far it has not been a big issue and all the melodies that I have tried to play feel natural.


Designing Wicked


Having selected the layout I started designing the hardware. Since I had a spare Teensy 3.6 I decided I was going to use it. Scanning the keys, which in this case are 95, is similar to mechanical keyboards. It consists of a matrix of keys and each column is scanned one by one.


Key matrix of Wicked

Initially, I was ok with the fact that the device was not going to feature velocity-sensitive keys. However, after checking the Wikipedia article on the Wicki-Hayden layout I found the Melodicade MX by KOOP Instruments.


The Melodicade MX is a mostly 3D-printed instrument featuring the same layout. The Melodicade MX is hand-wired and requires a large 3D printer. I recommend you check the KOOP instruments page.


One interesting thing is that in the Melodicade MX two layers of switches are used to have velocity-sensitive keys. The top layer (Cherry MX switches) requires cutting the plunger cap. That allows the plunger to press the switch of the second layer.


In my case, making a minor modification of the switch footprint would allow me to use the same PCB for mounting the two types of switches. That way I could use a single kind of PCB for the two layers. Here you can see how it looks on the final boards.

Wicked top layer with Cherry MX switches.

Wicked bottom layer with regular push buttons.

Once the switches are in place, the two boards are mounted on top of each other.




The PCBs have a set of jumpers that need to be bridged to distinguish which board is on top and which one is at the bottom.




Once I had defined the fundamental block (the key scanning) it was time to define the features of the device.


Let the imagination run wild


Every time I design a musical device I want it to be everything at once: sequencer, controller, synthesizer, modular, programable, extensible, easy-to-use, beautiful, with a huge screen, intuitive, affordable, easy-to-build, portable, and without compromises. However, over the years I have gotten better at set constraints to complete the devices I plan.


That's why I decided to create a list of the intentions that I had for this project.


Wicked does not want to be a complex device


I wanted the instrument to be simple. I want to connect it and be able of using it. I have some devices like the Elektron Analog Four, which is a synthesizer with a powerful sequencer having lots of features and menus. It is a challenging device. If I don't use it for a few months, I start forgetting where things are. On the opposite spectrum, I have Roland System 1m which is (almost) a knob-per-function synthesizer. Every time I turn it on, I have a lot of fun with it. All the common functions are exposed in the panel and there are practically no menus.


Roland System 1m. Too green but great.

In the case of Wicked, I decided to have a minimal interface: one small screen and two encoders that act as push buttons. I plan to minimize the number of menus. I want to have the common stuff, like octave selection, MIDI channel, and other common options available in MIDI keyboards.


Wicked wants to be on my desk


I wanted to have a compact device that can be on my desk most of the time. There are small devices like the Korg nano or micro/series. But those do not feature many octaves. Wicked packs 5 1/2 octaves on a box with an area of 18x23 cm. It even fits nicely on my improvised standing desk.


The repurposed structure that I used as a standing desk. Wicked fits nicely.

Wicked wants to control my gear


As expected, Wicked sends MIDI. I wanted it to have USB MIDI so I can easily control my software. I also needed the regular DIN connector for MIDI so I can easily connect it to my hardware synths.


MIDI outputs: USB and DIN connectors.

One missing feature would be to produce CV and Gate signals for my Eurorack. The main reason for that omission is that I find it more practical to use a MIDI to CV converter. When using MIDI I can have a single long cable that goes from Wicked to the MIDI to CV converter. However, I did not discard the possibility of having CV. I added a jack that could be used either for audio output or CV+Gate. But as of today, I use that output for audio.


Wicked wants to make some noise


I had as an afterthought the possibility of making Wicked a standalone device capable of producing some noise. I have a Casiotone MT-65 (which I rescued from the trash) and I enjoy the simplicity and beauty of the sounds. The synthesis engine is not very sophisticated but it is capable of producing interesting sounds. It is not a Jupiter but I like to play some melodies with it. For that reason, I added a sound output to Wicked and a basic synthesis engine. My idea is to have a few presets (just like in the Casiotone) and be able of putting my headphones and play some tunes without requiring a computer or a synth.


At the moment I do not have defined the structure of the synth engine I will use. The main constraint is that it will not be hi-fi. I will most probably be some 8-bit style sound.


Wicked wants to be autonomous


After I built the first Wicked I felt the need of making mine more portable. I had among my stuff a rechargeable battery and a power converter. I decided to install them on my Wicked so I could use the device with my hardware synths without the need of having the USB cable plugged in. This is not a strictly needed feature, but I thought it was nice. You may not need the battery if the device spends most of the time on a desk with access to USB power.



LiPo battery for Wicked


So far I'm happy with the features Wicked has. I have not finished writing the firmware but it is already very useful and inspiring.


Problems of producing Wicked


As you may be aware, we are in the middle of a semiconductor shortage. Since the beginning of 2020, it has been difficult to source enough parts to build some of my modules.


When I designed Wicked I made it with the idea of building only one or two for myself. Because of that, I used the parts that had in my component boxes. The main part used in Wicked is a Teensy 3.6. Currently, it is almost impossible to source one. Luckily, I foresaw that I had to make it compatible with the Teensy 4.1. The Teensy 4.1 is hard to get as well. But I have a few that I bought for other projects.


I'm considering making changes to the design in order to fit other boards, like the Raspberry Pi Pico. However, it is not straightforward since the RPi Pico does not have enough I/O. I will have to come up with some solutions.


One thing that I considered very important is the use of original Cherry MX switches. These switches are widely available but the originals are more expensive than the "clones". In my mechanical keyboard (that I showed before) I used some cheap switches that I got from Amazon. Now I regret that purchase because after one and a half years of use I have had to replace 3 of them and some have started producing multiple presses. The fact that Wicked uses 95 original Cherry MX switches immediately makes the BOM a bit expensive.


Nitpicking Wicked


Even though Wicked is one of my babies and I'm really happy with it, it is not a perfect device. There are a few things that I can nitpick regarding the functionality or the feel.


My first nitpick is the mechanical sound. Since it uses Cherry MX switches these tend to be a bit noisier than the keys of a MIDI controller. It is also the case that the switches need to be fully pressed in order to measure the velocity of the press. If the switch is not fully pressed (the lower layer button is not activated) the controller sends a low-velocity note. If you have used a mechanical keyboard you may be aware of how these switches feel.


The second nitpick is the quality of the built-in audio. I did not want to add a specialized audio IC into Wicked. The main reason was that I wanted to avoid having problems sourcing the ICs. As I mentioned before, the audio is produced either by the DAC (Teensy 3.6) or PWM (Teensy 4.1). The audio resolution is equivalent to 8-12 bits of resolution and it could be a bit noisy. Do not expect to record your new album directly from the Wicked audio output.


The third nitpick. The case is 3D printed. I used Wood filament which is plastic infused with wood particles. Personally, I believe that it looks (and smells) great. But this filament is not the most resistant. Once I accidentally dropped my Wicked from the desk and one of the corners cracked. Fortunately, I was able of repairing it with a bit of glue. If you want me to use regular PLA plastic (brown color) which is more resistant I could do that.


The last nitpick. I have not finished the firmware yet. As mentioned before, Wicked has basic functionality so far. I still need to do more work on it to implement the features I have in mind. The good thing is that, since there will be very few users of Wicked, it would be easier for me to listen to your feature requests.


Closing remarks


Making this project was a lot of fun. I'm very satisfied with how it turned out. Learning to play with the Wicki-Hayden layout has been somewhat easy. I still have to practice more in order to be able of playing Frère Jacques as well as I want to.


Meanwhile, here is a short video I recorded of me playing a few patterns in Wicked.






1,431 views2 comments

Recent Posts

See All
bottom of page