Encoders in Traktor and Ableton Python scripts.

I haven’t made any posts in a while so I got a couple of updates to share with you. Before I begin with some of my latest developments, I would like to refer you to two people that inspired me very much with their work and ideas, Alex (fuzzywobble) and Dave (60works), check their websites, they are very passionate about building controllers and have a lot of well documented information.

Firstly, I decided to improve a little bit my Rotary Encoder device, since it was the one that got the least attention from me but deserved a lot of it since it was the device that started my controllerism journey. It basically consists of 4 rotary andcoders and encoder LED rings from MayhewLabs, heavily inspired by the monome ARC 4 but for now it runs only on MIDI. I had to rewrite the whole firmware and communication protocol from scratch in order to support “proper” encoder functionality and the ability to set the LED’s through MIDI messages. I also wanted them to work much or less like jog wheels in Traktor, so I had to correctly setup the CC messages. I figured out that whenever you turn the encoder right it has to send a CC 1 value and when left a CC 127 value. And use the 7Fh/01h encoder setting in Tractors mapping. So now, unlike I stated in my previous post I have the ability to scratch too :) I mapped some more effects to them and above is a little jam video I came up with. Also since an Arduino Uno can only support up to 2 rotary encoders, I had to do a little dirty trick wiring an mini pro board through SPI

After that I shifted my interest back on Ableton Live and its very restrictive mapping mode. Something had to be done, I couldn’t fully utilize my devices. After some research I discovered that there exists a very interesting folder called MIDI Remote Scripts with many python files. Those are the controllers you can choose from the drop down menu in settings. After some more reaserch I have found the golden resource for Ableton scripting, decompiled scripts and libraries revealed the whole API. It was a matter of poking around and I had a basic “launchpad” functionality. A magic red box moving around and launching clips. After some consideration of my workflow in Ableton Live I decided to re-size the box to only 4 chanels and use the other half of the grid as effect triggers. Lets see what comes out of that.. I will probably make a video of that sometime later on.

And my last adventures were participating in DJ TechTool’s Midi Figter 3D competition. Maybe I didn’t win a Midi Fighter (oh well I guess I could always build one myself :P ) but I was really surprised when that sloppy video got literally thousands of views in almost no time! So the fact that it raised interest and awareness is the best prize for me!

End of captain’s log.
Until next time! Peace!

1 comment for “Encoders in Traktor and Ableton Python scripts.

  1. Jake
    February 26, 2014 at 7:27 am

    Hi. I’m an electronics engineering and I also build myself some MIDI controller using arduino. I Where did you get all these buttons? It looks expensive. I want to build one too but Novation just released launchpad mini which makes the project not cost effective. Oh well, for the love for science!

    Cheers from the Philippines.

Leave a Reply

Your email address will not be published. Required fields are marked *