Sevish Music

You are browsing the Tutorials category

Sevish’s microtonal music workflow with Ableton Live and Scala

This is my answer to the question “Sevish, how do you make your music?”

I won’t discuss my creative process but I’ll explain my workflow and the tools used to get music made. What I like about my workflow is that it works superbly for me.



I use Ableton Live to write, record, and mix my music. Within Live, I load VST instruments that have built-in microtonal scale support. I use Scala to produce the tuning files necessary to retune those VSTis. I play the VSTis using my MIDI keyboard, C-Thru AXiS-49, QWERTY keyboard and through mouse input. I also sample recordings that I have made using my Zoom H4n portable recorder.


Ableton Live is a DAW (digital audio workstation) that has an effective workflow for electronic music. For my drum’n’bass, breakbeat electronic, it works just fine. Live has no built-in microtonal scale support, and the piano roll is always locked to a 12-note Halberstadt layout, which can be tricky.

It’s possible to make microtonal music in Ableton Live by using VST instruments or Max 4 Live instruments with microtuning support built in. As far as Ableton knows, MIDI data goes into these instruments and audio comes out. It’s up to the instruments themselves to provide the new tunings and scales that I use in my music.

I use a couple of Max 4 Live instruments that I made myself, plus several VSTi: Xen-Arts FMTS2, IVOR, XenFont, TAL-Sampler, u-he ACE and Garritan Personal Orchestra 4. All of these plugins have full keyboard tuning support, which is why I choose to use them. To tune up, they each require you to import a tuning file. I’ll elaborate on that later.


Before writing a piece, it works well to have an idea already of the tuning you want to use. Scala can be used to invent musical tunings or specify an old one. I have written about how to invent your own scales with Scala, described other superbly expressive tunings that already exist, and hand-selected some interesting scales to download.

Once I have a scale in Scala that bends my ear in just the right way, it must be exported as a tuning file for it to be usable in those VST instruments. The common formats are:

  • .scl (GPO4, Plogue synths, Pianoteq, ZynAddSubFX etc.)
  • .tun (u-he synths, Linplug synths, Omnisphere, Alchemy, Anamark etc.)
  • .mid MIDI Tuning Standard SysEx tuning dump (Xen-Arts synths etc.)
  • .txt (Max/MSP instruments that use the coll object)

I wrote a guide to exporting .tun files, and the process is much the same for producing MIDI tuning dumps and .txt tuning files.

(If you’re a Max/MSP or Max 4 Live user, I also wrote a guide to microtuning your patches with the coll object, and microtuning using expr).

After I have some tuning files to work with I’ll load them up in one of my synths, and jam away until I play something I really like. I don’t go too deep in to the theory of it all; I leave that up to others. Using your ear and finding sounds you like is a good way to go.

Sound design

I like to record sounds on location with my H4n portable recorder. After recording I keep the audio in my personal sound library until I’m ready to use them in a project.

I almost never use the preset sounds on my synths. It’s best to patch in your own sound designs because that becomes a recognisable part of your craft. It’s well worth practicing this skill for yourself. Some days I do nothing but come up with new sound designs with my fave synths. That way I can save them in my personal library and use them only when inspiration strikes.


The AXiS-49 is a hexagonal keyboard controller, and it’s best suited to exploring microtonal scales because it makes fingering really easy. Imagine trying to play a 15-note scale on a standard keyboard where the pattern repeats after every 12 notes… The fingering gets totally perplexing and that gets in the way of creativity. With the AXiS that’s no problem at all. The AXiS also greatly increases my reach, so I can play large chords easily.

The difficulty I find with the AXiS is that I use so many different tunings that it’s difficult to build up a muscle memory for any of them. And the buttons are so close together that I make mistakes quite easily.

It comes in handy to have a standard keyboard at times. I was given a 2 octave MIDI controller with some knobs on it which I can map to various functions in my DAW. Using this to recording automation in real-time is one way to breathe some life into a static synthesised part.

Finishing up

I mix and master in Ableton Live, then publish on my Bandcamp, YouTube and Soundcloud pages. Which you should definitely check out.

2 microtonal scales for your standard 12-tet guitar

I was reading some of Ivor Darreg’s writings and a really interesting idea jumped out.

“Try this: Move the bridge down until the 13th (instead of the 12th) fret sounds the octave of the open string. This will give an approximation of the 13-tone equal temperament.”

Here’s how it works. If you have a guitar with a movable bridge, then you can move it down such that the 13th fret gives you a perfect octave. This gives you a 13 tone scale to play on your guitar!

While its approximation to 13-edo is far from perfect (you’d need to completely move the frets for that) this should offer plenty of new tonal resources to the experimenting microtonal guitarist. Compared to 13-edo, the error is largest in the middle of the scale.

You can reverse this and push the bridge up such that the octave lies on the 11th fret, giving you a brand new 11-tone scale to experiment with. Again, it poorly approximates 11-edo but don’t worry about that, there are plenty of new sounds available through this method.

The idea can be pushed further:

“I fretted a guitar to 18-tone (Busoni’s proposed third-tones) and can use this guitar as a 17 or a 19 without the theoretical errors from moving the bridge spoiling any performances. So you can have three systems for the price of one.”

This really is “one weird trick that luthiers don’t want you to know!” Bwaha… ok I’ll see myself out the door.

For something a little different, check out 9 Alternative Tunings NOT for Guitar.

How to invent your own musical scales using Scala

When you want to edit photos, there’s Photoshop. When you want to listen to music there’s iTunes (if you’re a pro at life, there’s foobar2000). When you want to create your own musical scales, opening up endless possibility in harmonic and melodic expression, there is Scala.Scala is a multi-purpose toolkit for everything related to tunings, scales and microtonality. You have a hardware synth that you want to retune? Scala will do it. Or a softsynth? Scala can export the tuning files required to make that happen. Want to generate all kinds of crazy scales that you can use to compose new music? Scala has near infinite options for you to play with. Want to experiment with world music and historical scales? There’s a database of thousands on the Scala website.Scala tuning softwareThis is a beginner-level tutorial which deals with scale creation and microtonality in a practical way. I can’t attempt to cover everything Scala can do here. But you’ll learn some fundamentals.First I’ll show you how to create equal scales, then I’ll show you how to create just scales. If you don’t know what the difference is, just follow the tutorial from beginning to end, and read some of the links later to fill in the gaps of your knowledge. By the end of this tutorial you will have invented some of your own musical scales!

Equal Temperament scales

Equal temperaments are scales that divide an octave into some number of equally big pieces. The 12 note scale of Western music is an example, as each semitone is of equal size. So you already have experience with equal temperament scales and didn’t know it.In Scala, equal temperaments are trivially easy to create!A popular thing that beginning microtonalists like to do is to try quarter tones. The quarter tone scale divides the octave into 24 notes. Let’s make the scale in Scala. Load up Scala, type this line into the text field at the bottom, then hit enter:

equal 24

Explanation: When you type the command equal, followed by a number, Scala will produce an equal-tempered scale with that number of notes in an octave.But it looks like nothing happened after we hit enter. We still need to check that the scale was created correctly. So type:


This will show you the tuning data for the equal temperament scale you just created. As below:

  0:          1/1               0.000000 unison, perfect prime  1:         50.000 cents      50.000000  2:        100.000 cents     100.000000  3:        150.000 cents     150.000000  4:        200.000 cents     200.000000  5:        250.000 cents     250.000000  6:        300.000 cents     300.000000  7:        350.000 cents     350.000000  8:        400.000 cents     400.000000  9:        450.000 cents     450.000000 10:        500.000 cents     500.000000 11:        550.000 cents     550.000000 12:        600.000 cents     600.000000 13:        650.000 cents     650.000000 14:        700.000 cents     700.000000 15:        750.000 cents     750.000000 16:        800.000 cents     800.000000 17:        850.000 cents     850.000000 18:        900.000 cents     900.000000 19:        950.000 cents     950.000000 20:       1000.000 cents    1000.000000 21:       1050.000 cents    1050.000000 22:       1100.000 cents    1100.000000 23:       1150.000 cents    1150.000000 24:          2/1            1200.000000 octave

Explanation: The equal command that we just used has produced 24 items for us (24 notes in our scale). The  show command lets us see those 24. Each of these shows some number of “cents.” The cent is a measurement of how wide or narrow an interval is. Notice that each interval in our 24-equal scale goes up by 50 cents. 50 cents is exactly one quarter tone. 100 cents makes up a semitone, and 1200 the whole octave. Cents are a useful measurement to get your head around if you want to compare tunings with each other.That’s enough staring at numbers. Time to hear these quarter tones for the first time. On the Scala interface you’ll see a button which says play. Click that button!Chromatic ClavierHere’s the “chromatic clavier!” You can use this to try out your scale using your PC’s built in MIDI synth. A very handy tool indeed. Play using your mouse, or use the Sound Settings button to set up a MIDI keyboard controller.


  1. Find some cool chords in the quarter tone scale which don’t exist in the normal Western scale.
  2. Create other equal tempered scales using the equal command that we used to create the quarter tone scale. Try any number you like, but make sure you play and listen to them using the chromatic clavier. Here are some numbers you can try which are known to give interesting musical results: 5, 13, 17, 22.


Equal Temperament scales (no octaves)

In the first part, we divided an octave into some number of equal parts. Amazingly, we are not limited to dividing octaves. We can choose to divide other intervals instead, such as a perfect fifth or whatever you like. But what’s the point?Every note in a non-octave scale has a unique identity. Consider that we know a note A as a note oscillating at 440 Hz, or some octave above (880 Hz, 1760 Hz) or below (220 Hz, 110 Hz, 55 Hz). If our scale doesn’t include octaves, then a note A won’t have any other counterparts higher or lower in the scale. This means that, as we climb up or down into different registers, we keep hitting unique note identities which haven’t been heard elsewhere in the scale!This approach is extremely fruitful for new sounds, sonorities and progressions. However composition technique must change drastically. For starters, there are no more chord inversions, since you can’t raise any notes up or down an octave. Of course, this makes voicing difficult too. But you gain a very wide variety of intervals to play with, and it will challenge and grow you as a composer to exploit non-octave scales. Just try it and see.Here’s how we do it. We’re going to create a scale which divides a perfect twelfth (an octave plus a fifth) into 13 equally spaced parts.

equal 13 3/1

Explanation: The equal command tells Scala that we’ll be making a scale where all notes are the same size. The number 13 shows that we want 13 notes. And that weird fraction on the end? That’s the big interval that will be split into 13 equal parts. Think of it as a pseudo-octave.Why 3/1? For now just take my word for it. 3/1 is a perfect twelfth. So rather than repeating at the 8th (octave), we’re repeating at the twelfth.Notice, if we don’t include the number 3/1, then Scala will assume that this is an octave based scale. (An octave, by the way, can be expressed as 2/1).Let’s see the cents values for the scale we created:


And the result:

  0:          1/1               0.000000 unison, perfect prime  1:        146.304 cents     146.304231  2:        292.608 cents     292.608462  3:        438.913 cents     438.912693  4:        585.217 cents     585.216923  5:        731.521 cents     731.521154  6:        877.825 cents     877.825385  7:       1024.130 cents    1024.129616  8:       1170.434 cents    1170.433847  9:       1316.738 cents    1316.738078 10:       1463.042 cents    1463.042308 11:       1609.347 cents    1609.346539 12:       1755.651 cents    1755.650770 13:          3/1            1901.955001 perfect 12th

Can you remember how many cents are in an octave?The answer is 1200 cents. Looking at the above list of intervals, we can see there’s no value too close to 1200 cents at all. But there’s this nasty 1170 cents interval that’s gonna sound noticeably flatter than an octave. On the other hand, that perfect twelfth at 1901.955 cents, is purely in tune. Whatever this scale is, it doesn’t represent anything we’re used to in Western music. There’s no perfect fifth, no octave…The scale we’ve just created is none other than the Bohlen-Pierce scale, a famous non-octave scale with many interesting properties. It sounds very alien until you have taken time to immerse yourself in it. Jam with the chromatic clavier and hear it for yourself (remember, just click the play button on the Scala interface to do this).


  1. Try some other scales which divide the perfect twelfth. Use the same method as above, but replace the number 13 with any number you feel like.
  2. The perfect fifth is a ratio of 3/2. With this knowledge, try out some scales which divide the perfect fifth.
  3. Search for Bohlen-Pierce music on YouTube, and hear other people’s approaches to the scale. But only after you have tried to explore this unusual tonal territory for yourself.

Just Intonation scales

The topic of just intonation (JI) is deserving of several books in its own right. It is an old mathemusical theory in which many cultures have their own take.What could a name like “just intonation” mean… If you think of “just” as meaning fair, right, exact, and perfect – and intonation of course having to do with the accuracy and flavour of the pitch – then you should get the general idea. Just intonation is a tuning system that uses exact, perfect intervals.In fact, the pitches of just intonation are made up of ratios. Think of numbers such as 2/1, 3/2, or 15/8. (These intervals are an octave, perfect fifth and major seventh, respectively).

Just one quick way of making just intonation scales

Time to get creative! There are many ways to go about making your own just scale, but here’s one way that can get you exploring quickly.On the main Scala window, click on the Input button to open up the Input Current Scale window. Here you can enter the pitches you want to use. In this case we’ll enter some fractions at random, following some simple guidelines.

  1. Put one fraction per line.
  2. The last line should be 2/1. This makes sure that your scale repeats at the octave.
  3. To ensure that every pitch fits within a single octave, make sure that the numerator of each fraction is greater than the denominator, but less than double the value of the denominator.(For example 3/2 is okay. 1/2 isn’t okay because the numerator is less than the denominator. 5/2 isn’t okay because the numerator is greater than double the denominator.)
  4. The pure “JI effect” is generally stronger with simpler ratios, so avoid complicated fractions such as 51227/29096 and keep things simple.

Below are a few examples that follow the above guidelines.

ji-example-1 ji-example-2 ji-example-3

You can also use Kyle Gann’s anatomy of an octave to find some interesting numbers to plug in.Once you’re done, hit OK and you’ll be taken back to the main Scala window. At this point you will find 9 times out of 10 that Scala says “Scale is not monotonic ascending.” If you saw this message then it means that the pitches of your scale are in a weird order. To fix this issue, tap the Edit button on the main Scala window, tap the Ascending button, and finally click OK.Let’s take a quick look at what you made:


Take a quick look at the interesting names that Scala gives to the ratios you randomly chose.Now it’s time to hear your scale! Hit the Play button to show the Chromatic Clavier. You can hold shift when you click to hold multiple notes down and hear that solid JI sound.Alternatively you can play your scale using a connected MIDI controller or MIDI keyboard. To do this just click the Relay button on Scala’s main window and then click the Start Relaying button.Repeat this process of JI scale creation a few times, each time playing your scale using a keyboard to get a feel for the unique musicality of each one.Once you become comfortable with this process and you get to know certain ratios that you love the sound of then you can start to ignore the guidelines I gave before.

Further reading about just intonation

Now you know how to come up with a just intonation scale of your own. But you still might not know why you would want to use just intonation. There are many differing opinions out there and it’s easy to find them using Google. And I recommend you spend a lazy afternoon doing just that. Here are a few suggestions:

Further exercises

  1. Load up various scales from the Scala scale database. Use the command show to display the tuning data (boring numbers) for a scale. Is it meaningful to you?
  2. Jam with each scale. Is it meaningful now?
  3. Pick the weirdest scale you can find from the Scala scale database and jam until it sounds normal.
  4. This tutorial has only shown you how to create and play scales within Scala. Now learn to use your creations in other synths by reading my tutorial on exporting scales in Scala.
  5. Explore other tuning software. There is CSE and LMSO (for Mac OS X) and alt-tuner (for Reaper). Find what works best for you.

Make microtonal music on Mac OS X

Seems like there are tonnes of Max OS X users who want to get into microtonal music but don’t know how to jump in. Although I’m a Windows-using peasant, I wanted to gather up some ideas to start you off. Let’s dip in…

Logic Pro microtuning

Logic Pro supports microtonal scales, and can even load Scala files! This can retune all of its built-in instruments and synthesisers (it doesn’t apply to any AUs or VSTs you’re running).

This online help file from Apple shows you how to find the tuning settings in Logic Pro X.

The big drawback—and I mean huge—it only supports 12-note scales, those scales must repeat at the octave, and each note can only deviate from 12-tet from plus or minus 100 cents (1 semitone).

These limitations restrict you to certain kinds of microtonal scales, and while there’s certainly room to explore within these limits, you’ll miss out on whole genres of microtonal scales that will blow your mind. You’ll miss the unimaginable cloud-like non-octave scales like Bohlen-Pierce and Wendy Carlos’ scales. Stretched-octave scales like Indonesian Slendro and Pelog also can’t be tuned faithfully. And large scales such as the 20-note eikosany, Harry Partch style just intonation, or large equal temperaments, are straight out unavailable.

Nevertheless, Logic makes it easy to microtune its high-quality instruments, even if it is crippled, so if you already own Logic then you should definitely check it out.

Microtonal AU and VST plugins for OS X

If you’re using a DAW that supports AU or VST plugins (such as Logic, Ableton Live, and some others) then you can make microtonal music by using certain plugins that support full microtuning. They can usually import a tuning file and that sets everything up for you.

It should come as no surprise that there are less *free* options for microtonal composition on a Mac than there are on Windows or Linux. But you can start with alphacanal Automat and Plogue Sforzando

If you’re willing to spend a little, then have a look through the big list of microtonal software plugins on the Xenharmonic Wiki.

Some people report success running Xen-Arts’ Windows-only VSTs using the free emulator WINE and a free VST host. If you’re of the technical mind to set up WINE, there’s a world of free VST synths for Windows awaiting you!

Making tuning files on OS X

If you want to design your own tunings and export them for use in other instruments then there’s the Custom Scale Editor (CSE) software from Hπ Instruments. It allows you to tune every MIDI note to whatever pitch you want, exports tunings in a variety of popular formats and can retune the output of sequencers and notation programs. Thanks to Juhani Nuorvala for reminding me to mention it!

I heard that the now discontinued Lil’ Miss Scale Oven was the way to go. Really, I’ve heard wonderful things and wish I could have a little play with it myself.

It’s also possible to install Scala on OS X for free. I’ve never been through this process, but I’ve heard that it’s one of the most challenging things you can attempt to do.

Follow the instructions on the Scala website, and go slowly and carefully. You will be confused. You will have to install other things to get it to work. You will want to cry. But it IS possible…

Other pathways to microtonality on OS X

Max/MSP, Pure Data and CSound are audio programming languages that can let you make sounds from the ground up. If you’re the tinkering type then try these!

Microtonal equal temperaments on a Max/MSP synth using expr
How to play microtonal scales on a Max/MSP synth

If you have any other methods of making microtonal music in OS X then get in touch so I can update this post!

But… how do I start writing microtonal music?

Over time I’ve noticed that I get asked this question more and more:

How do I start writing microtonal music?

This always comes from musicians who have enjoyed listening to microtonal music, and are comfortable composing in their own twelveness, but haven’t found the courage or motivation to start experimenting for themselves.

My answer is always the same.

First you gotta get set up with the right tools for the job. In a few hours or less you can set up some free microtonal synths.

The real thing to do, is get ANY microtonal scale up on your instrument, and then play. It’s fine to choose the scale at random. Keep playing until you find something you like about it. Start building up layers over this. This helps you to find how parts of the scale connect with other parts.

After you become a little comfortable with the scale, just try out a different scale and you may find something even better than before. Then over some days or weeks try another and another. Just experiment.

Your composition skills (or lack thereof) shouldn’t hold you back during this time. This is because when you write microtonally you’ll have to discard a lot of the ‘rules’ you already know. Old habits become unable to reinforce themselves. That’s kinda the point of going to all this effort.

Nobody can guide you through microtonal music the same way that they guide you through playing an instrument or learning music theory. There is no established method, instead you get a bazillion competing schools of thought about how to organise and play from the infinite number of scales that are possible. A well-trodden path simply doesn’t exist for you – you make your own path or you don’t enter this forest at all. But if you do make it inside, you’ll find the sweetest fruits. So it’s totally up to you to start trying.

After going through many creative cycles you get to learn about what scales work for you. If you’re the studious type you may be able to read tuning theory concepts and slowly start to grasps small aspects of it.

For me, it was a lot of listening, and a lot of loading randomly-selected scales into my synth to see what I liked and didn’t. A whole lot of failed experiments, and a few that worked. Reading about microtonal tuning theory is overrated, but it can be a starting point for finding interesting scales. If you have nothing more than a good ear, perhaps it’s you who will excel the most in this unknown territory.

And that’s how to start writing microtonal music. It didn’t take anything more than getting your toes wet with a few randomly-selected microtonal scales.

Microtonal equal temperaments on a Max/MSP synth using expr

The mtof object can take a MIDI note number and output the frequency of that note in standard 12-tone equal temperament tuning (aka 12-EDO). But what if you want to get away from this musical dogma? How about we start to explore say 13-EDO, 7-EDO, 24-EDO, or 41-EDO with Max/MSP?

Equal temperament on Wikipedia
Equal temperament on the Xenharmonic Wiki

Some years ago I wrote an expression that could quickly be dropped into any Max/MSP synth and then play microtonal equal temperaments. It’s a more generalised version of mtof and I want to share that with you today. It’s an mtof-killer!

mtof and expr

First let’s take a quick look inside the mtof object and see how it works. Really, mtof just performs one simple expression.

mtof-as-an-exprThe mtof object on the left always gives the exact same result as the expr on the right. Got it?

A replacement expr for microtonal equal temperaments

Here is my mtof-killer expression in all its beasthood:

An expression to replace mtof in microtonal settings

Nasty, right?

Copy and paste this code into Max/MSP and continue along with this tutorial.


How to use it

The ‘EDO’ value sets what equal tempered tuning you want. So a setting of 5 gives you 5-EDO, a setting of 34 gives you 34-EDO.

‘Reference Frequency’ is the standard pitch for the scale. Usually in Western music A = 440 Hz. You can also use 432 Hz if you believe in crystal healing and reptilian world leaders.

‘Reference MIDI Note#’ is the MIDI note to be tuned to the reference frequency (above). This could be MIDI note 69 if you want to tune to middle A, or MIDI note 60 if you want to tune to middle C.

For starters, try 5 for the EDO value, 440 Hz for the reference frequency and 69 for the reference MIDI note number. Have a play on the keyboard. It’s a cool sounding pentatonic scale, right?

Why this works

If you played with my example patch and got it working, then you don’t need to read this section. Just start using it in your projects and have fun exploring equal temperaments.

But if you absolutely must know how this magic is done, then keep reading! (Warning: I will assume that you already understand how to make expressions with the expr object).

Let’s look back at the original mtof expression, try to understand it, and then try to generalise it.

Output frequency = 8.175797 * pow(1.0594633,$f1)

Note that pow(a,b) is just the expr object’s way of saying a^b.

8.175797 is the frequency (in Hz) for MIDI note 0.
$f1 is the MIDI note number being played.
1.0594633 is the size of the smallest step size in 12-EDO. It is the value of a semitone.

Therefore an mtof object has this general structure:

Output frequency = Frequency of MIDI note 0 * pow(step size,MIDI note number)

Let’s start by swapping the step size of 1.0594633 with the step size from any n-EDO we want. But how do we calculate the step size? For n-EDO, it’s calculated like this:

step size of n-EDO = pow(2,1.0/n)

So let’s bring that into our in-progress generalised mtof:

Output frequency = Frequency of MIDI note 0 * pow( pow(2,1.0/n),MIDI note number )

That’s great, but unless you want MIDI note 0 to always be equal to 8.175797 Hz, how will we go about tuning our scale up to some standard pitch? Well first we need to know what our standard pitch is (aka reference frequency) and we also need to know what MIDI note number to assign that reference frequency to. Once we know these, we work backwards to find the frequency at MIDI note 0.

If our reference MIDI note number is higher than 0, then the frequency at MIDI note 0 will always be lower than the frequency at the reference MIDI note number. In fact:

Frequency at MIDI note 0 = reference frequency / pow(step size,reference MIDI note number)

We can re-use the step size calculation from before and insert it into the above calculation for MIDI note 0 frequency:

Frequency at MIDI note 0 = reference frequency / pow( pow(2,1.0/n),reference MIDI note number )

Above, we’ve just found a way to calculate the frequency at MIDI note 0 for any reference frequency assigned to any MIDI note number for any EDO of size n. That’s the entire left side of the mtof-killer worked out. So let’s bring alllll of this together:

Output frequency = Frequency of MIDI note 0 * pow(step size,MIDI note number)
                 = (reference frequency / pow( pow(2,1.0/n),reference MIDI note number )) * pow( pow(2,1.0/n),MIDI note number )

And finally we replace these English-language variables with integers and floats in expr format, such that:

$i1 = MIDI note number from the keyboard
$f2 = n-EDO
$f3 = reference frequency
$f4 = reference MIDI number

($f3 / pow ( pow (2,1.0/$f2),$i4)) * pow ( pow (2,1.0/$f2),$i1)

Well done if you kept up! I hope that explains how this expression alone can allow you to play microtonal equal tempered tunings in your Max/MSP projects.

UPDATE: Homebrewed methods like my one above are often inefficient. A commenter Toby noted:

This does the same thing in a simpler way:

expr $f3 * pow(2,($f1-$f4)/$f2)

If you need more power than this, for example you wish to create scales with arbitrary and variable step sizes, or you wish to play just intonation scales, then you should read How to play microtonal scales on a Max/MSP synth.

Sevish - Rhythm and Xen (Front cover)My recent album Rhythm and Xen uses many microtonal tunings. Give it a spin and see how all of this theory can be used to make accessible music with new moods.

Thanks for listening.

Xen-Arts Microtuning Virtual Instruments Part 5

Here’s a helpful Scala tutorial for intermediate tunesmiths. Jacky Ligon ( has explained batch processing and keyboard mapping in Scala. Batch processing is great if you have 4000 Scala tuning files (.scl) and you wish to export them as, say, MIDI tuning dumps or Anamark TUN files, without saving each file manually! You’ll also get a taste for using text commands in Scala, and creating script files from those commands.

To be fair I learned a thing or two from this article myself, and I’ll be using these tricks next time I get the chance.

Learn tuning theory

John Moriarty, a member of the global xenharmonic/microtonal music movement, has been making videos to explain modern tuning theory concepts. The ideas are presented in a very visual way with narration and musical examples. I would be interested to know how tuning theory newbies get on with these vids. It’s a heavy topic, both wide and deep with details. Anyway, enjoy John’s playlist!

And I’m sure there’s more to come in the future.

Microtonal chiptune music with One-SF2 VST

Sonic the HedgehogI grew up as a gamer. Luckily my aunt was into games too, so I got the chance to play oldschool systems from before my time such as the Atari 2600 and the NES. All of this cemented my interest in electronic music from a young age. (For what it’s worth, my ongoing fascination with drum & bass probably came by playing Rage Racer on the Sony Playstation).

Some years ago, fueled by the nostalgia of umpteen million nerds, the chiptune music genre took off and is still going strong today. For some, the only way to make this music happen is to record from the original hardware itself. For others, it’s good enough to cheat and use VSTs which recreate the sound. Today I want to share one method of writing microtonal chiptune music using a VST called One-SF2.

OneSF2 - SNES Secret of Mana gamelan tuned to slendroOne-SF2 is a free soundfont player VST for Windows, and it has microtuning features baked right into it. Actually, it supports the MIDI tuning standard, so it can load all of the crazy scales I’ve been collecting in my tuning packs.

  1. Download One-SF2 and extract it to your VST folder. It’s about 30MB because it comes with a bank of sounds.
  2. Download the top soundfont “Famicom” from this collection. The Famicom soundfont contains many sounds recorded from the NES. Save it to your One-SF2 folder.
  3. Load up One-SF2 in your DAW!
  4. Let’s get a nice NES synth sound first. Look for a button that says “SF2” and click it. Now you can load the Famicom soundfont downloaded earlier.
  5. This soundfont contains multiple instruments. Find “SF2 Patch Name” and click the left and right arrow icons to scroll through the available sounds. I quite like #2 “Square Wave 25%”
  6. Switch the synth to mono mode. Now when you play a melody, it will sound more like the actual hardware and less like a polysynth. To do this, find the menu labelled “Control Edit”. Select “MIDI” from the list. Now you will be able to find an option called “Mono Mode”, turn this on.
  7. Here’s the key step, let’s make it microtonal! Find the button that says “MTS”. Clicking this will let you load a scale file.
  8. Write some dope xenharmonic chiptunes.

Remember the NES only had 5 sound channels. 2 are pulse/square channels, 1 is triangle, 1 is noise, and the last was used for low-quality digital sampling. You could recreate this capability by using 4 instances of One-SF2 (each using the Famicom soundfont), plus one audio channel with a bitcrusher effect. Read the technical specifications of the Famicom/NES sound chip if you want to strive for the most realistic result.

Here’s some xen chiptune drum & bass I cooked up a few years ago, in a game boy style.

Now, if only someone would make a version of Clotho from Columns tuned to a beautiful meantone, I could die a happy man…


Where to find more video game soundfonts

Here’s a collection of soundfonts from various game systems.
And here’s a mother lode of soundfonts ripped from SNES games.


Alternative pathways to microtonal chiptune music

Plogue Chipsounds supports Scala tuning files, emulates several oldschool chips, and opens the door to microtonal chiptune on Mac OS X and Windows (32/64-bit). Costs about 95 USD (as of early 2017).

Plogue Sforzando is a free and simple soundfont player much like One-SF2, but it works with the SFZ file format instead.

Pick up a second-hand console system and do it the old fashioned way, with tracker software and a soldering iron. Some trackers support microtones natively!

One-SF2 has a big brother, XenFont. This free, 32-bit Win-only VST adds heaps of synthesis functions on top of the basic soundfont player. A plethora of options exist for creating deep sound designs, so my own work always features XenFont instead of One-SF2.

How to play microtonal scales on a Max/MSP synth

Those of you who have built synths in Max/MSP or Max 4 Live will have used the mtof (MIDI-to-frequency) object. This clever little object waits for you to send it a MIDI note number (0-127), then it spits out a frequency (Hz). Perfect if you’re working within the confines of 12-tone equal temperament—or rather limiting if you wish to use all kinds of expressive intonation systems outside of the Western common practice.

A simple sine wave generator using mtof: MIDI to frequency

There is a very simple way to get microtonal scales out of your Max/MSP synths. We simply replace the mtof object with coll.

The coll object


What is the coll object, anyway?

Coll can be used to store and edit collections of data. The data is stored in a text file. Each item of data contains an index followed by some content. For example, we could use coll to remember the release years for various killer synths.

Example of coll's use

Above, the coll object is waiting to receive an index (either YamahaDX7 or Theremin) before it spits out the data we want. I just clicked the “YamahaDX7” button, so “1983” was sent via the first outlet of coll.

To see and edit all the data inside the coll, just double-click on the coll object. It will bring up the data entry window. Here’s what’s inside the above coll object:

OndesMartenot, 1928;
RolandTB-303, 1982;
Theremin, 1920;
YamahaDX7, 1983;

Neat trick. Mind you it’s not very useful for our goal of exploring crazy scales.

Here’s how we can use coll as a replacement for mtof. First we need to understand our data structure. We send a MIDI note number (0-127) to the coll object. We want coll to spit out a frequency in Hz. So we double click coll, and we start inputting data for what frequency corresponds to what MIDI note number.

# Lines that start with a # symbol are comments.
# This is a simple scale which starts at 100 Hz on MIDI note 0.
0, 100.0;
1, 200.0;
2, 300.0;
3, 400.0;
4, 500.0;
5, 600.0;
6, 700.0;


127, 12800.0;

(Interesting note: This scale is a harmonic series with a fundamental of 100Hz. Kinda trippy if you’ve never heard this kind of scale before, so try it out).

To test this out, let’s send the number 0 to the coll. This is the lowest possible MIDI note number, and according to our data we should receive the float value 100.0 from coll’s first outlet.

Testing the coll object

A success! It’s pretty simple to get it to work, but the only problem is that the tuning data took us a looooong time to type… 128 lines in total! Luckily coll can read .txt files, and there is a much better way to generate tuning data in this format. For this tutorial, we’ll be using Scala tuning software to create .txt files that coll can read.


First create or load some tuning data into Scala. (For now we’ll just load a file from Scala’s huge database)

Loading a scala file from the huge Scala database

Then type the following command into Scala:

set synth 135

Scala will say “Synthesizer 135: Max/MSP coll data, via text file”. You’re doing just great.

Now click File → Export synth tuning as shown below.

How to export a .tun file from Scala

This will bring up a familiar save file dialog, and you can save your .txt file anywhere. Once your .txt file is saved somewhere convenient, your can load it into your coll object.

Create a message button which contains the word “read”. Connect this up to the coll object (as shown below). You can click the “read” button to bring up an open file dialog. Use this to load the file you just exported from Scala.

Load .txt file into coll but using a message box titled "read"

Once you’ve loaded the .txt file into coll, you can check that the data went in correctly by double-clicking the coll object.

# Tuning file for Max/MSP coll objects created by Scala
# Sean "Sevish" Archibald's "Trapped in a Cycle" JI scale
0, 8.1757989;
1, 8.4312926;
2, 9.1977738;
3, 9.5384321;
4, 10.2197486;
5, 10.7307361;
6, 11.2417235;
7, 12.2636984;


Congrats, you’ve just replaced the mtof object with your very own, microtunable coll! Enjoy playing microtonal scales in Max/MSP.

Big up to Manuel Op de Coul, the creator of Scala, who added support for Max/MSP coll files on my request. Much appreciation that his project is still being maintained.



  1. Recreate my sine tone generator above, using coll.
  2. Download and install Scala, then get to grips with creating your own scales.
  3. Max 4 Live users—download my device Boom. Look at the source and see how I used coll to load tuning data.
  4. Make your own simple synth and have a jam in 5-EDO.
  5. The mtof object will accept float values in its input. Find a way to abuse this feature to microtune Max/MSP without using coll at all.