
Stepper was developed in collaboration with my fellow student Manuel Welsch as part of the course “Musical Interfaces” at the University of Applied Sciences Düsseldorf. The goal of the course was to find new, creative or simpler ways of interacting with music using the technology available to us today. Gyro sensors, micro controllers, touch resistances or reprogrammed controllers can all create new creative possibilities. There were no boundaries set to creativity.
The concept of Stepper was to find a more intuitive and fast way to create beats, rhythmic patterns, especially for live performances. It gives the user the possibility to control up to 8 tracks at once by a matrix of 8 x 16 LED buttons. Each of the 8 rows represents a track with a certain sound/instrument and each of the 16 columns represents a 1/16 note of a bar. Stepper has 3 modes: sequencer, sound and rhythm. The first and default sequencer mode serves for entering and editing notes. Pressing a button in the matrix creates or removes a note at the corresponding position for the corresponding track. The light of the buttons gives you feedback on which steps have notes. Furthermore, there are many intuitive ways to edit and alter notes, such as moving their position, altering their length or changing their velocity. In the sound mode, the buttons of the matrix represent sound presets. You can load up 128 sound presets for each track. One track could, for example, contain different drum snare sounds. Pressing buttons on the matrix gives you the possibility to quickly select and change between different sounds. In addition, you can press several buttons at once to layer different sounds. Finally, the rhythm mode gives you control over prepared rhythm patterns and rhythm presets. You can quickly save and load rhythm patterns which will boost the speed of building beats especially during live performances.
A strong focus of the project was to make the control as easy and intuitive as possible without limiting the options too much. In order to achieve this, we followed the concept of moving the basic controller functionality in the foreground while keeping the more complex functions for the advanced user in the background. Like this, if you plug in the controller you can immediately create a one bar beat by pressing buttons on the matrix with very little knowledge of the controller. The button background light gives you an immediate visual feedback on which steps of which track have notes. Furthermore, a vertical beat syncronized line moves one the matrix to indicate the current position of the loop. You can then dig deeper by playing around with the modes and functions and gradually learn the more advanced functions. To make this process as fast and easy as possible, we designed the functions as intuitive as possible. So for example, by pressing and holding a single button with a note and turning the encoder in the length mode only the length of the single note would be altered. If you press and hold several notes, logically, the length for all pressed notes would be changed. If you hold and press the track select button, the length of all notes of the track would be altered.
You can find a detailed description of the functionality in the following graphic.
Although there is a wide range of similar devices available on the market today, we found that none of these devices allows an as fast and easy way of control, as we imagined and wished, as two passionate musicians. That’s why we decided to build our own controller for our own needs, as well as, we believed, for many other musicians who feel the same way.
Stepper was developed as a device to control the music production software Ableton Live. The hardware is made of two reprogrammed Novation Launchpad Mini, an endless encoder, a Teensy microcontroller and an USB hub. The functionality of the device is written as an Ableton Midi Remote Script in Python. Ableton Midi Remote Scripts allow third party controllers to control the software and specify their logic and functionality.
Since the official documentation for the Ableton Live Scripts is only available to official partners of Ableton Live which cooperate to produce third party controllers, we had to overcome many obstacles, especially at troubleshooting and bug fixing. Sometimes it was pretty hard to get the information on certain API functions and their use from unofficial documentations and forum contributions. Nevertheless we could implement all planned functions and where very satisfied with the end product, which we can use now for jamming and live performances. ■