Sevish

You are browsing the Music Resources category


Using Microtones in Electronic Music (microtonal tutorial)

If you are looking for a quick introduction to microtonal scales in computer music, then I invite you to watch my latest tutorial video.

Using Microtones in Electronic Music explains how to tune software synths to microtonal scales, for composition and production using a DAW-based workflow.

Microtonal music is a deep topic, and this tutorial video is just one possible starting point. If you know of alternative approaches then please do share your knowledge with others!

Contents

0:00 Intro
0:30 What software
2:00 Tuning up
2:35 5edo
4:37 Messing around with 19edo
14:40 19edo semaphore[9]
18:19 A golden ratio inspired tuning
27:00 Some chords of 22edo
32:07 How a song like Gleam looks on piano roll

Links mentioned in the video

Making microtonal music on Linux computers

This article explains some software and hardware I used to write a few of my albums. The workstation runs Linux, Bitwig Studio and various audio plugins. I also cover many alternative software choices here as your preferences might differ to mine. Updated 2023.

[The old article about my previous workflow for making microtonal music with Ableton Live is still available though quite out of date as Ableton have improved their microtonal support in recent years.]

Illustration of a penguin holding a microtonal keyboard with longing expression

Overview

Hardware

You could probably get away with using a few year old laptop for sure. I have some kind of Intel Core i7 and 16GB DDR4 RAM.

If you want to record in from microphones or hardware synths then you’ll also want to get an audio interface. I just got a cheap one that said it was USB class compliant. 2 ins, 2 outs.

USB MIDI keyboards seemed to universally work for me on Linux. Isomorphic keyboards such as my C-Thru AXiS-49 work well for microtonal music because scale and chord fingerings remain the same in each key, whereas a standard MIDI keyboard requires you to learn a different fingering for each key. The keys are all nerdy lil hexagons, it’s cute. It just plugs in via USB and my system recognises it instantly as a MIDI input device.

Photo of an AXiS-49 MIDI keyboard showing an array of hexagonal keys

I bought a second hand M-Audio Keystation 88es for 50 quid. Good deals can be had if you buy used. It’s my preferred MIDI controller; I even prefer it over the AXiS-49! There’s something about the traditional 1-D style keyboard that feels natural to play.

Which Linux distro?

Which Linux distribution is a personal preference and I can’t hope to do the question justice. To replicate my setup you want any Debian-based distro so you can use the KXStudio repository (more about the KXStudio suite of tools later).

Screenshot of Bitwig Studio and Cadence on a computer running KDE Neon operating system

The distro I’m using is KDE Neon which is based on Ubuntu. I find KDE Plasma to be familiar, fast, with possibly too many options for customisation. Of course audio software demands that your desktop environment be as lightweight as possible. XFCE and MATE are two other lightweight and popular desktop environments worth trying.

If you just want sane defaults for audio work then Ubuntu Studio gives you get the low latency kernel and other audio tweaks set up by default. Think they have PipeWire now and of course KDE so I’m thinking to switch to Ubuntu Studio next time I nuke and pave.

For Arch-based distros, the AUR has an impressive selection of audio software.

General setup and audio tools

I’ve been using KXStudio applications to deal with audio on my Linux music workstation. There are quite a few tools in KXStudio so here are the ones I find especially useful:

Cadence

Cadence is a set of tools for audio production all in one application. It performs system checks, manages JACK, calls other tools and make system tweaks. It launches automatically when I boot, so I can then launch my DAW and get straight to doing music.

Carla

Carla is a plugin host that can load up various Linux synths and effects. There’s even a way to load Windows VSTs with it but I haven’t taken the time to figure that out – I’m happy with Linux-native software currently. The reason Carla is so crucial for me is that it can be loaded not just as a standalone app but also as a Linux VST. This is extremely useful if your DAW only supports VST plugins but you want to use LV2 plugins too – Carla acts as a VST-LV2 bridge in this case.

KXStudio repository

You can install the KXStudio apps by first setting up the KXStudio repo in your package manager. The repo also contains a large number of music plugins so you can install them via your package manager rather than compiling manually. This is so useful! It even contains all the u-he Linux synths (you still need to pay for a license as they are proprietary) and Zyn-Fusion (the new interface for ZynAddSubFX)!

General setup

When doing any kind of real-time audio processing or recording, you’ll want to use the low latency kernel rather than the generic kernel. This may help prevent crackling and reduce your system’s audio I/O latency. If you’re using a distro that is designed for audio work such as Ubuntu Studio then you already have this kernel. Otherwise if you’re using a generic distro you should search online for how to install and use the low latency Linux kernel.

You should also add your user to the audio group. This gives your Linux user permission to use desktop audio devices.

Digital Audio Workstations (DAWs)

These days I’m using Bitwig Studio as my DAW. I will explain why below and also mention a few alternatives.

Bitwig Studio

As a former Ableton user I found it easy to switch over to Bitwig Studio. Bitwig has a native Linux version which works well with the apps I installed from KXStudio. It is not free software – you buy a license and then get 1 year of upgrades. You can continue to use your copy after the license expires but you don’t get feature updates until you redo the license.

Bitwig Studio supports Linux VST plugins, but note that it does not support Linux LV2 plugins. This is disappointing because many libre audio plugins use the LV2 standard and not VST. And this is why the Carla plugin host is so essential – it allows me to bridge LV2 plugins into Bitwig Studio!

Editing polyphonic pitch-bend using Bitwig Studio's piano roll

Bitwig’s built-in synths support MPE polyphonic pitch-bend. Its piano roll allows you to detune each note individually using an intuitive interface. That does entail a lot of manual work but gives you unprecedented pitch control in a polyphonic setting. MPE is also quite future proof being that it’s part of the MIDI 2.0 spec. I’m waiting to see if future synths will work seamlessly with Bitwig’s implementation of polyphonic pitch-bend.

Some people will prefer using Bitwig’s polyphonic pitch-bend over my usual approach (which is to use plugins that can import tuning files – more on that further below)!

There are various alternatives to Bitwig Studio and I’ll mention a few below.

Ardour

Ardour is one of the most widely used free-and-open-source DAWs for Linux. Supports MIDI and synth plugins, so you can use plugins to get microtones.

Reaper

Screenshot of Reaper DAW

Reaper – I am told by many many people that it is simply the best DAW around. Its native Linux build is stable enough for serious use. The license is cheaper than most proprietary DAWs and the demo version gives full access to all features, including saving and loading projects, so you can try it fully before committing to support the devs.

Reaper also lets you customise the key colours and layout of the piano roll. This is one of those issues that only microtonalists seem to understand is useful!

Renoise

Renoise is a tracker style DAW that runs natively on Linux and can be microtuned using the SCL to XRNI tool. It also supports plugins so you can get at those microtones that way.

LMMS

LMMS comes bundled with a variety of synths, all of which support microtuning by default.

Plugins and softsynths

Many synths don’t support microtonal tunings (they are locked in to 12-tone equal temperament) so we’re only looking at synths that support custom tunings. Often times the synths that come bundled with your DAW don’t support it but there are exceptions, try it and see.

If you use synth plugins that have built-in microtonal support then it doesn’t matter which DAW you use, as long as your DAW supports plugins. Below is a showcase of Linux-native plugins with support for microtonal tunings.

Surge XT

Screenshot of Surge synthesizer

Surge XT is a powerful open-source synth with an excellent implementation of microtonal tuning via .scl and .kbm files. It’s cross-platform and can run as an LV2 or VST plugin. You can also use it with VCV rack.

Vital

Screenshot of the Vital synthesiser plugin

Vital is a wavetable synth which supports microtonal tuning via .tun or .scl/.kbm files. There is a free version and a paid version and I believe the source code has also now been released.

TAL-Sampler

Screenshot of TAL-Sampler audio plugin

TAL-Sampler is my sampler plugin of choice because it’s fun to play, not overly complicated and supports microtuning by tun file, MTS-ESP or MPE. That’s three ways to choose to get at those tunings!

The great people at TAL now support Linux for all their plugins which is extremely welcome because I was using them before I switched over. The sampler is especially important because there aren’t many of those supporting Linux. But I also get a lot of use from TAL-Chorus-LX, TAL-DUB-X and TAL-DAC.

Pianoteq

Modartt’s Pianoteq is well known in the music world for its rather good piano sound. It’s a physically-modelled piano – this has some benefits over sample-based pianos. First, it has a tiny footprint of just a few megabytes storage, as opposed to the gigs and gigs often required by sample-based pianos. Second, you can tweak the parameters of the physical model to get interesting variants on the typical piano sound. Here’s an example that will interest microtonalists: you could design a piano with quietened even harmonics (e.g. harmonics 2, 4, 6, etc.) so that the timbre will blend better with the Bohlen-Pierce scale (this scale features primarily odd harmonics). This kind of sound design possibility is pure excitement for nerds like me.

Pianoteq is a good example of how developers should implement Scala files support. It supports .scl files but also the .kbm format that allows the user to create any specific full-keyboard microtuning. Additionally they provide a tone circle graphic that allows you to visualise how the overtones of the piano timbre align with your tuning. That’s not necessary to have, but is a really nice feature.

Tip: on the tuning screen you usually must enable the ‘Full Rebuild’ option otherwise a great many tunings will sound unnatural and un-piano-like.

MTS-ESP is also supported as a method of microtuning, but last time I checked it had some sound quality issues. I’m recommending Scala files instead if you want to tune it.

Pianoteq supports Linux, macOS and Windows natively so it’s a good plugin for almost anybody who wants to write microtonal piano music. Just note that the Stage version has no microtonal support; you’ll need to get the Standard or Pro version if you want to retune the piano.

u-he plugins

Screenshot of u-he ACEScreenshot of u-he BazilleScreenshot of u-he DivaScreenshot of u-he Hive2Screenshot of u-he ReproScreenshot of u-he Zebra2

ACE – virtual semi-modular synthesizer
Bazille – virtual modular synthesizer
Diva – virtual analog synthesizer
Hive2 – wavetable synthesizer
Repro – virtual analog synthesizer
Zebra2 – various synthesizer

Many of the u-he synths have Linux versions available and can be microtuned using .tun file import.

Please be aware the Linux versions of our plug-ins are still considered beta. While the plug-ins are stable, we are not able to provide the same level of support for these products as we do for the macOS and Windows versions. Support is provided via the Linux and u-he communities on our forum.

I have a license for ACE and was using it on Windows for a few years. It’s nice to know that I can continue using it on my new setup.

EP MK1

Screenshot of Mike Moreno EP MK1

EP MK1 is a free, physically-modeled electric piano plugin by Mike Moreno Audio. It has two methods for microtuning – you can dial in any equal temperament you want via the interface or you can load a text file containing a list of frequencies. The text file can be easily generated by Scale Workshop (I’m not sure if any other tuning software supports Pure Data text files).

I think EP MK1’s electric piano simulation is actually pretty usable within a mix. And with the recent addition of support for Pure Data text files it’s possible to tune every MIDI note to an arbitrary frequency. I finally have good reason to use this plugin on my next album.

Zyn-Fusion (ZynAddSubFX)

Screenshot of Zyn-Fusion synth plugin

Zyn-Fusion is a powerful synth capable of additive, subtractive, FM and PM synthesis. Really though you want this because its thick PADsynth sound can’t be imitated elsewhere. Zyn-Fusion can be microtuned by importing Scala (.scl) files and keymap (.kbm) files. Alternatively you can enter tuning data directly via the UI which might be helpful to some. While the developer of the new UI put so much effort into it, I feel like Zyn-Fusion still bugs out a lot and has rough edges. So I don’t really recommend this synth plugin anymore but it’s worthy of mention.

v1 Suite

The v1 plugins (except for drumkv1) all support microtuning via .scl file.

synthv1 – a subtractive synth
samplv1 – a polyphonic sampler
padthv1 – an additive synth based on Paul Nasca’s PADsynth algorithm

As far as I’m aware samplv1 is the only microtonal-capable sampler plugin for Linux, so you will want to grab this!

kbm files are supported which means these synths can do full-keyboard microtuning. Your tuning can be saved per-instance or optionally saved as a system setting (in case you want to always use the same microtonal tuning in every instance).

This same developer also created the Qtractor DAW for Linux.

Amsynth

Amsynth is a subtractive synth and it’s quite easy to use.

Pure Data + Camomile

Pure Data is a visual programming environment for audio similar to Max/MSP. It is free and very powerful.

Camomile is a VST wrapper for Pure Data patches. In other words, it allows you to turn your Pd creations into VSTs that you can load in to your DAW! It is cross-platform, so your creations can run on Linux, macOS and Windows.

The combination of Pure Data and Camomile is comparable to Max 4 Live.

Calf Audio Vinyl

Vinyl by Calf Audio is a vinyl emulation audio effect. So what, you ask. Well, it has one useful feature called ‘drone’ which applies an oscillating pitch-drifting to whatever audio you feed into it. If you dial in a lot of ‘drone’ you can recreate that warbly lo-fi tape-wow sound, or if you use just a little you can add a subtle intonation drift that will add interest to an otherwise perfectly accurate digital synth sound. Those of you who have composed just intonation music using digital synths will know the buzzing periodicity/phase-locking kinda sound. Just a little ‘drone’ adds enough error to the intonation to prevent that buzzing from happening.

Tuning software

Most synths don’t provide any interface for customising your own microtonal scales – instead they load a tuning file that you have to create yourself. For that, you’ll need some special software.

Scale Workshop

Screenshot of the Scale Workshop web app for making tunings

If you’re just getting started, try Scale Workshop – it can generate microtonal scales and export to a variety of tuning file formats. It’s free and open-source (MIT license). Because it runs in your web browser it doesn’t require installation.

Scala

For serious experimenters, you might want to graduate from Scale Workshop and use Scala. It’s also free, and can be installed by following the instructions on their official website. It’s not as user friendly as the alternatives but it has about ten thousand cool features hidden away.

If you want to re-tune hardware synths or use MIDI Tuning Standard then you will want to get Scala and not Scale Workshop!

Load the tuning file into your chosen synth

This is the important bit!! Once you have created a tuning file using Scala or Scale Workshop, simply load it up in your synth of choice. Read your synth’s user manual for how to do this. Now you can jam away in your chosen microtuning.

Proof this all works

As of 2023 I have released 5 albums that were produced on this Linux-based setup. So I’m serious when I say I prefer this OS and it hasn’t held me back as an electronic musician. If you’re curious about my sounds then head to sevish.com and hit play.

Are you making music on Linux, or making any kind of microtonal music? Let me know in the comments what works for you and how you got it running! Everybody has a different workflow and we can all learn something from one another.

My thoughts on desktop Linux

My first experience with Linux was Fedora Core 3 in the early 2000s. It was neat but I wanted to play Stepmania and Rollercoaster Tycoon so I stuck with Windows. Later I got into music production. Again, Windows stuck. The spell was broken by Windows 10 which is literally so bad. I got back into Linux and saw how much it had matured. That’s when I committed to it.

(I do use macOS at work which is pretty good but this too is riddled with bugs and awkward design decisions).

The swap over to Linux was a gradual process as I had to learn a few things but I think I ended up with a solid system. Whenever I boot up the old Windows machine to revisit old projects I am quickly reminded how often I used to tolerate crashes on Ableton+Windows.

One issue remains with Linux that many audio software developers still target only Windows and macOS. I see this trend slowly reversing – and I have so much appreciation for developers who add support for native Linux. Have supported a few of these devs myself by purchasing their tools and sending in detailed bug reports when needed. Big respect to you all.

More articles by Sevish about making microtonal computer music


What you’re referring to as Linux, is in fact, GNU/Linux, or as I’ve recently taken to calling it, GNU plus Linux plus KDE plus JACK plus Bitwig Studio plus Carla plus Scale Workshop plus Surge XT.

Making microtonal scales with Scale Workshop 1.0

A new web app called Scale Workshop allows you to design and play your own microtonal scales. You can also tune various other synthesizers with it. It has just reached version 1.0 and is now recommended for use by the wider musician community.

Scale Workshop has these aims in mind:

  • Scale creation. Use the tools to generate and modify tunings automatically, or manually input your own.
  • Import Scala and AnaMark tunings. Yes it works with that amazing 4000+ scale library that’s floating around the internet.
  • Export the most popular tuning formats easily. Converting .scl files and .tun files is fast. It also exports tuning files for Kontakt, Max/MSP and PureData.
  • No installation required. Scale Workshop runs in your web browser on Windows, macOS, iOS, Android and Linux.
  • Free and open-source. The software costs nothing and it is MIT licensed. Volunteers have already contributed new features and bug fixes on our GitHub repository. Feature requests and bug reports are welcome from anybody.

What else does Scale Workshop do?

Scale Workshop puts a polyphonic synth right inside your browser. You can audition and perform your scales by playing with a connected MIDI controller, QWERTY keyboard, or by using the touch-screen overlay.

Convert scl files and convert tun files to various tuning formats. Export formats include Scala .scl/.kbm, AnaMark TUN, Native Instruments Kontakt tuning script, Max/MSP coll text format and Pure Data text format.

Share your scales with other people by copy-and-pasting the URL in your address bar while working on your scale. The recipient will instantly see your scale information and can play it using their keyboard. This is invaluable for communicating your tuning ideas with others, or allowing your musical collaborators to export your tuning in whatever format they prefer. Try it out.

Display frequencies, cents and decimal values for your tuning across all 128 MIDI notes.

List of supported synths

Note that this list is incomplete.

Via AnaMark TUN (.tun)

  • Big Tick Angelina
  • Big Tick Rhino
  • Camel Audio Alchemy 1.x
  • Humanoid Sound Systems Enzyme
  • LinPlug Alpha
  • LinPlug CRX4
  • LinPlug MorphoX
  • LinPlug Octopus
  • LinPlug Organ 3
  • LinPlug SaxLab
  • LinPlug Spectral
  • Mark Henning AnaMark
  • PolyGAS
  • Spectrasonics Omnisphere
  • TAL BassLine-101
  • TAL Sampler
  • TAL U-NO-LX
  • u-he ACE
  • u-he Bazille
  • u-he Diva
  • u-he Hive
  • u-he Zebra
  • VAZ Modular
  • VAZ Plus
  • Virtual CZ
  • Xfer Serum

Via Scala .scl/.kbm

  • amsynth
  • Applied Acoustics Chromaphone 2
  • Applied Acoustics Lounge Lizard EP-4
  • Applied Acoustics String Studio VS-2
  • Applied Acoustics Ultra Analog VA-2
  • Cakewalk Dimension Pro
  • Cakewalk Rapture Pro
  • Cakewalk Z3TA+2
  • Garritan Personal Orchestra 4
  • Imageline Harmor
  • kv331audio Synthmaster and Synthmaster One
  • Key Tuner JSFX Script
  • Madrona Labs Aalto
  • Madrona Labs Kaivo
  • Madrona Labs Virta
  • Modartt Pianoteq
  • padthv1
  • Plogue Alter/Ego
  • Plogue Chipsounds
  • Plogue Sforzando
  • PolyGAS
  • Reveal Sound Spire
  • samplv1
  • synthv1
  • UVI Falcon
  • ZynAddSubFX
  • Zyn-Fusion

Others

  • Max/MSP (via text file you can load into the coll object)
  • PureData (via text file you can load into the text object)
  • Native Instruments Kontakt (via text file you can load into the Kontakt script editor)

A personal note

This has been a labour of love for almost 2 years – I hope that many people will find it useful! If you want to share any work you’ve created with Scale Workshop then I’d love to hear about it.

Now that Scale Workshop is in a stable state, I am going to focus my attention back on composing new music and hosting the Now&Xen microtonal podcast.

 

Open Scale Workshop in a new window

 

Informative videos about microtonal music on YouTube

I’m always keen to see how other musicians are creating microtonal music and the ideas behind their craft. For a few years now I have been building a YouTube playlist of microtonal music tutorials and explanations. As the playlist now has over 140 videos, it’s a good time to share these hours of content with others.

One thing that makes microtonality fascinating is that the newcomers are exploring new tonal structures that even the old masters haven’t heard of. But new or old, when a musician shares their insight in a video, I include it in the above playlist.

The playlist features videos from: Tolgahan Çoğulu, Adam Neely, Dolores Catherino, minutephysics, This Exists, Elaine Walker, Stephen James Taylor and others.

amsynth 1.8.0 adds support for microtonal tunings

Of all the software synths in the world, very few of them support microtonal scales. If you are a musician using Linux and open source software then your options are even fewer. It’s for that reason that I want to celebrate the news that amsynth 1.8.0 adds support for microtonal tunings!

amsynth is a virtual analog synthesizer that runs as a standalone or VST, LV2 or DSSI plugin. Its sonic characteristic is similar to other popular digital VA instruments – fantastic for leads, basses and stabby chords. It’s light on the DSP and the controls are very easy to understand, so amsynth will rightfully earn a place in my toolkit once I move my music production machine over to Linux.

Installing

The easiest way to get amsynth if you’re on a Debian-based distro is to add the KXStudio repositories and then install via apt. Assuming you already have the KXStudio repos on your system, simply run the following command:

sudo apt install amsynth

If you’re unable to use the above, download the source for amsynth 1.8.0 and build it.

Tuning amsynth

Once you have amsynth up and running, microtunings can be loaded by right clicking the interface and selecting a .scl file. In addition, you can load up a .kbm file for custom key mappings.

If you need some Scala tuning files (.scl) to play with, generate some with my Scale Workshop browser tool, or install Scala itself. Scala is extremely powerful, though you need to install it to your PC along with all its dependencies.

Full-keyboard microtuning

Developers, TAKE NOTE of what amsynth developer Nick Dowell has achieved here – .scl and .kbm formats are BOTH supported. .scl files specify the intervals in the scale, and .kbm specify the base tuning of the scale, whether it is A = 440 Hz or something else entirely.

Without supporting both of these formats, a synth could barely be said to support microtonal scales at all. I’m so pleased that amsynth gets this right.

The future

Judging by this page on amsynth’s GitHub, it looks like amsynth may become cross-platform in the future. Should this ever happen, then Windows and Mac users would also have access to this nifty, free and microtonal instrument too. I look forward to this and will follow amsynth’s progress into the future.

‘Retune for Live’ microtuning with Max 4 Live, by Ursine

Retune for Live is a Max 4 Live MIDI device which accepts MIDI notes as input, then outputs polyphonic microtonal MIDI which you can route to your MIDI instruments. It works on instruments that don’t support microtonal scale input, as long as they respond to pitch bend. You specify the microtuning via csv file or scl tuning file.

It all works simply enough. You have one MIDI track where you can play and record polyphonic MIDI. The Retune for Live transmitter device sits on this track and beams the note & pitch-bend data intelligently to a number of receiver devices, each of which working for one monophonic part. So if you want 8-note polyphony then you must have 8 instances of the instrument/VST each driven by their own receiver device.

When I write microtonal music I usually rely on VSTis which have support for full-keyboard microtuning built in. There should be no compromises in your art – and my art is microtonal so if a synth has no microtuning or dodgy microtuning then I don’t use it at all.

Except that for a long time I have wanted to hear Clotho from the Columns soundtrack rendered in quarter-comma meantone tuning. To faithfully recreate the sound of the original game, I set out to use a YM2616 simulation. I found two YM2616-esque VSTs, GENNY and FMDrive, but GENNY doesn’t even have working pitch bend, so that’s straight out the window.

Sega Columns

So I got myself a copy of FMDrive and downloaded a MIDI file of Clotho. MIDI retuning via Scala seemed dodgy and I could hear the results were wrong. After one night of trying different things I gave up. TobyBear’s microtuner is ancient and I couldn’t even get the ruddy thing to work at all. This is all a roundabout way of saying…

I tried Retune for Live and it just worked! So if you have Max 4 Live and want to get microtonal sounds from a synth that can’t be microtuned, give it a try. You can download Retune for Live for free or pay-what-you-like donation from the author Ursine.

As much as this solution was successful in my case, it uses more CPU power since you have to run multiple instances of the same instrument. For that reason I will avoid this solution for larger projects. But if you really need a certain sound (and you already paid big buck$ for Ableton Live and Max 4 Live), then Retune for Live might be the way to go.

Several months after my explorations with Retune for Live, I did convince the developer of FMDrive to implement some microtonal functions, but that’s a story for another day. As for my quarter-comma meantone rendition of Clotho, that was sadly lost in the great didn’t-back-it-up-and-hard-drive-died catastrophe of Spring 2016. It was badass though, I’ll remake it one day.

Microtonal piano roll for Ableton Live

Here’s a tutorial to help you make microtonal music in Ableton Live. We’re going to mod Ableton Live’s piano roll to play 22-tone equal temperament (aka 22-edo). You can apply this technique to other piano roll designs, with some limitations discussed later. Abletonalists unite!

First I should provide some context as to why this tutorial will be so useful. Check out this mindblowing M-Audio Keystation 88 with the keys rearranged to play 22-edo. It was a little project of William Lynch‘s a few months ago.

William Lynch's 22-tone per-octave M-Audio Keystation 88

This keyboard layout is Steve Rezsutek’s design as discussed in Paul Erlich’s paper Tuning, Tonality, and Twenty-Two-Tone Temperament.

There are gaps between some white keys because white keys actually come in different shapes and sizes, making things look a little messy when rearranged. You also need extra black keys to make this work, so you can see a few missing at the upper end of the keyboard. Spare keys can be found on second-hand broken keyboards or bought as replacement from the manufacturer. Soon we’ll be able to 3D print each key for any given piano roll layout (this could be a great project for a music technology student). Obviously this is all very DIY, but at this point in time nobody is mass producing microtonal instruments. Everybody in the microtonal scene right now hacks and invents their own unique stuff.

Truth be told, I’m planning to use some of my Rhythm and Xen album sales to buy a new keyboard and make one of these for myself.

The goal of this tutorial is to recreate Rezsutek’s keyboard layout in the Ableton Live piano roll. Erlich suggests to remove all the E notes, so that you have something that looks like below:

22-tone-temperament-Rezsutek-keyboard-layout

ableton-live-microtonal-piano-roll-22

Not only will this tutorial show you how to make a dope 22-note piano roll like above, but you’ll also be able to actually HEAR and PLAY music in this novel tuning system. It’s a beautiful system that includes such wonderful intervals as the subminor third, the 7th and 11th harmonics, and near-quartertones, plus a variety of rich chords, progressions and comma pumps.

This technique isn’t specific to 22-edo; you can adapt the method for other tunings too.

To make this happen, we will be using the piano roll ‘Fold’ function, as well as taking a few other steps to make everything sound correct.

Making the layout in Live

This is the easiest part, and you might know this trick already if you’re knowledgeable with Ableton Live. We will create a MIDI clip that has one massive chord containing every note except for all the Es. Then we will enable Fold so that the Es disappear from the piano roll. So let’s look at it step by step:

Create yourself a new MIDI clip and make sure that Fold is disabled. Then start building up a chord containing all the notes except for the Es:

ableton-live-22-edo-piano-roll-tutorial-1

It’s easiest to work up from the bottom. Once you have made one octave you can copy and paste to fill in the rest of the notes.

ableton-live-22-edo-piano-roll-tutorial-2

Once you have added all the notes from C-2 to G8 you can move the whole chord to the left, so that it is outside of the range of the clip. This way, you won’t hear an almighty cluster of pain when you play the clip.

ableton-live-22-edo-piano-roll-tutorial-3

Ctrl+A to select all the notes in the chord, then tap 0 to disable all the notes. This will protect you from hearing these notes if you have MIDI Editor Preview enabled.

Then click on the Fold button to enable it. All of the Es will disappear from the piano roll.

ableton-live-22-edo-piano-roll-tutorial-4

Just ignore the note names (C4, C#4 etc.) because they don’t have any relation to 22-edo.

Making the tuning file

Now we have our custom piano roll layout set up in Ableton Live, but that doesn’t mean that the notes will play a 22-edo scale. You can’t just drop Operator on to the MIDI track and expect everything to be tuned to 22-edo automatically. At this point, you should make sure that you have some kind of MIDI instrument or VST/AU plugin that supports microtonal scales.

I will use Scala to design a tuning file with 24 notes in total. Each note will be tuned to a note from 22-edo, and 2 of the notes will be duplicates that fill in the missing Es.

First we type ‘equal 22’ into scala and hit enter. This generates the scale. Then we click on ‘Edit’ to see all of the notes that were generated. By Scala tuning standards, 1/1 will fall on middle C at ~261 Hz unless a keyboard mapping is specified. So we can assume 1/1 is C, and therefore the notes 218.18182 and 818.18182 should be duplicated to fill in the missing Es.

ableton-live-22-edo-piano-roll-tutorial-5

You can just select 218.18182 and 818.18182, then Ctrl+C and Ctrl+V to duplicate them. Finally, click on the ‘Ascending’ button to make sure that all the pitches are in the correct order. Click OK when done, and save your progress.

Or if you’re too lazy for all of this, save the below text as a .scl file:

! 22-edo-no-Es.scl
!
22-EDO with no Es
 24
!
 54.54545
 109.09091
 163.63636
 218.18182
 218.18182
 272.72727
 327.27273
 381.81818
 436.36364
 490.90909
 545.45455
 600.00000
 654.54545
 709.09091
 763.63636
 818.18182
 818.18182
 872.72727
 927.27273
 981.81818
 1036.36364
 1090.90909
 1145.45455
 2/1

All that’s left is to export this scale for the synth you’re using. You can read your synth’s manual to determine which format of tuning file it needs. Then export the correct format file using Scala. Watch my YouTube video tutorial below to find out how to export various kinds of microtonal tuning files with Scala.

Making it all come together

Head back to Ableton Live as quick as possible, then drop an awesome VST instrument on to the MIDI channel you used earlier. Load the tuning file you created into the VST, then jammmmmm. The setup is finished, so start writing!

Remember that octave transpose works differently now because your scale actually spans (what Live thinks of as) 2 octaves:

Ctrl+↑ to move a note up by a tritone.
Ctrl+↑↑ to move a note up by an octave.
Ctrl+↓ to move a note down by a tritone.
Ctrl+↓↓ to move a note down by an octave.

Make sure to read Paul Erlich’s paper Tuning, Tonality, and Twenty-Two-Tone Temperament for more insight into the musical possibilities of this scale.

Download an example project

Update: I made an example project with one MIDI clip already set up for you. In the project folder you’ll also find tuning files in 3 different formats.

Applying this to other tuning systems

I suspect that the Fold method will work easily for any scale less than 12 notes. It will also work for any even-numbered scale with 12 to 24 notes in total, as long as the pattern of white and black notes repeats every 12 MIDI notes. This is because the “octave transpose” function (Ctrl+↑ or Ctrl+↓) in Ableton Live’s piano roll transposes by 12 notes and ignores folding. So an asymmetric piano roll layout will be broken by octave transposition.

Music in 22

There’s a long list of 22-tone music on the Xenharmonic Wiki. And here’s a song I created in 22-tone equal temperament back in 2010:

Further exercises

  1. Use the Fold method to create piano roll layouts for other tuning systems.
  2. Find out if absolutely all piano roll layouts are possible with the Fold method. Why/why not?
  3. Recreate this software piano roll in hardware by disassembling a MIDI keyboard and re-arranging the black and white keys by hand. (How to remove keys from an M-Audio Keystation)
  4. If you’re still trying to figure out why the piano roll needs to be modded in the first place, read my article about why DAW developers should design a better piano roll.
  5. Start evangelizing to audio technology developers, asking them to support microtonal piano layouts and microtonal tunings.

Video tutorial – How to export various tuning file formats in Scala

When you’re designing musical tunings in Scala, you might eventually want to export your tuning to use it in a synthesizer. Synthesizers support various tuning file formats, so you’ll need to know how to make a few different kinds. This video shows you how to export Scala files (.scl), export AnaMark tuning files (.tun), and export MIDI Tuning Standard dumps (.mid). Right at the end of the video you’ll also find out how to retune other synths like the Yamaha DX7ii.

Free Ableton Drum Racks to customise your piano roll

I’ve written before about how DAWs don’t often allow a custom piano roll designed for microtonal musicians. If you’re using a scale with more or less than 12 notes, then the piano roll doesn’t match up with what you hear from the synth. As an Ableton Live user, I wanted to know what workarounds I could use right NOW in order to make composing microtonal music a little easier.

My goal: display custom note names for every note on the piano roll!

Enter the Drum Rack

Live Drum Rack set up for custom note names

Using a Drum Rack, it’s possible to change the note names displayed in the piano roll. Load up one of my sample Drum Racks (download here) and add it to an empty MIDI track. Create a MIDI clip on that track and make sure that ‘Fold’ is enabled on the piano roll. You should see something like below:

Ableton Live piano roll with a custom 9-note scale mapping

The example above shows a 9-note scale using the letters A B C D E F G H J.

Then, you must load your instrument on a new MIDI track, and connect the MIDI input of that track to the Drum Rack track (pre FX).

Routing for custom piano roll trick in Ableton

Once this routing is set up, you can compose in the piano roll of the Drum Rack track. The note names here can be a useful guide when you’re composing with microtonal scales.

Making these Drum Racks is time consuming because you have to name all 128 notes individually. I have done the hard work for you and made a pack of Drum Rack presets that you can drop into your project. Each one assumes that MIDI note 60 is middle C (this is the default for Scala keyboard mappings).

5 note scale: C, D, E, A, B
6 note scale: C, D, E, F, A, B
7 note scale: C, D, E, F, G, A, B
8 note scale: C, D, E, F, G, H, A, B
9 note scale: C, D, E, F, G, H, J, A, B
10 note scale: C, C#, D, D#, E, E#, A, A#, B, B#
11 note scale: C, C#, D, D#, E, F, G, G#, A, A#, B
12 note scale: lol
13 note scale: C, C#, D, D#, E, F, F#, G, G#, A, A#, B, B#
14 note scale: C, C#, D, D#, E, E#, F, F#, G, G#, A, A#, B, B#
17 note scale: C, Db, C#, D, Eb, D#, E, F, Gb, F#, G, Ab, G#, A, Bb, A#, B
19 note scale: C, C#, Db, D, D#, Eb, E, E#, F, F#, Gb, G, G#, Ab, A, A#, Bb, B, B#
22 note scale: C, C#, D, D#, E, E#, F, F#, G, G#, Hb, H, H#, J, J#, K, K#, A, A#, B, B#, Cb

>> Download the pack of Drum Racks (.zip) <<

About the chosen note names

The note names that I chose for some of the mappings are somewhat arbitrary. But there is some method to the madness.

The note names for the 5 note through to the 9 note mappings just assign a unique letter for each note. The 10 note mapping has 5 naturals and 5 sharps. The 11 note mapping is similar to the standard 12 note mapping, without F#. The 13 note mapping is similar to the standard 12 note mapping, but B# is added. The 14 note mapping uses 7 naturals and 7 sharps.

The 17 note mapping is based on a circle of fifths. C# is actually higher than Db because the fifth is tuned sharp (i.e. it’s a superpythagorean tuning).

The 19 note mapping is also based on a circle of fifths.

The 22 note mapping is designed for 22-EDO, so that the naturals give you a symmetrical decatonic scale such as those described in Paul Erlich’s paper Tuning, Tonality, and 22-Tone Temperament.

The limitations of the Drum Rack method

There seems to be a performance drop if you have too many of these Drum Racks active. I’m using a 4 year old laptop, and editing the Drum Racks become tedious once there were about 4 of them active.

But the main problem is that you can’t change the colour of the notes, so you’re still stuck with the 7-white 5-black Halberstadt layout. Try to look at the note names and ignore the note colours.

It would be a great help if Ableton would implement some kind of key colour mapping feature in the Live’s piano roll. The only way this could happen is for users to actively ask for it. You should go and make the feature request now at Ableton’s forums and beta website.

More words about microtonal computer music

My workflow for making microtonal music in Live
Why DAW developers should design a better piano roll
VSTs for playing and composing microtonal music
Microtonal music in Bitwig Studio

Stereo Panning in Ableton Live

Just wanted to share a super simple Ableton Live effects rack. Despite its simplicity, this is the rack I use the most (in fact it’s my default rack preset). It’s a stereo pan. Download it.

Stereo Pan effect rack for Ableton Live

You see, Ableton Live strangely omits stereo panning while other DAWs such as Logic Pro and Pro Tools sensibly include it.

That thing that looks like a pan pot on the channel strip? Yeah that’s a balance control. It doesn’t actually let you manipulate a stereo signal, it just makes the left or right channel quieter. Stereo panning is different; it allows you to pan the left and right channel independently to any part of the stereo image.

I use this effects rack to tightly control the stereo image of my tracks and busses. And I never use Live’s balance control unless it’s on a mono track.

Installing the Stereo Pan effects rack

  1. Download Stereo Pan.
  2. Unzip the adg file.
  3. Drag the adg file on to an effects chain and Ableton will place the rack for you.

Example usage

  1. Instead of setting the balance control to 10 o’clock, try panning the left channel to 8 o’clock and the right channel to 12 o’clock.
  2. Create a return track with a stereo ping pong delay. Usually these delayed signals are hard left and hard right. Place the Stereo Pan rack after the delay to position the two delayed signals wherever you like in the stereo field.

If you’re interested, check out some of my sounds.