Aug 272017

Xen-Arts is pleased to announce the publication of an article on the MIDI Association site at

Microtuning and Alternative Intonation Systems

Microtuning virtual and electronic hardware instruments: An overview of formats and methods for using alternative intonation systems

The article covers, encapsulates and extrapolates on topics featured in the Xen-Articles, Microtuning Virtual Instruments series on this site, but features a more in depth examination and PSA about the implementation of the Scala SCL and linear KBM format in software virtual instruments, in an effort to draw attention to why it’s crucial to have the KBM part of the specification available for serious microtonal and xenharmonic music composition.

Please feel free to share your impressions in the comments below, or otherwise on the MIDI Association article page. It would be great to hear from you.

 Posted by at 7:07 pm
May 122012
New VSTi Announcement


The Microtonal Virtual Analog Synthesizer
by Xen-Arts
IVOR is a two-oscillator subtractive synthesizer that features full-controller MIDI Pitch Microtuning using MTS (MIDI Tuning Standard), where any MIDI Note Number can be freely microtuned to any desired pitch across the MIDI range, thereby enabling musicians and composers to explore the vast expressive possibilities of composing music with alternative intonation systems.
IVOR is a microtonal sound-designer’s virtual analog synthesizer with a carefully designed ergonomic workflow for quickly creating powerful sounding and musical useful timbres.
IVOR excels at making categories of timbres that include bass, distortion, keys, pads, broken, weird, leads and other analog synthesis types of sounds.
IVOR is an educational tool for learning about subtractive sound synthesis and musical instrument intonation (aka microtuning and xenharmonics).
IVOR embodies a design philosophy of simplicity for microtonal music sound-design…
  • A ‘knob-less’ design featuring slider controls only, which enables intuitive direct control with a computer mouse.
  •  A dedicated control signal system mapped to the most important synthesis functions.
  • Settings are made by typing values into fields, dropdown lists, left-and-right arrows, switches and sliders.
  • Enables musicians to specify precise microtonal pitch-bend settings.
  • Features arbitrary microtonal oscillator transposition settings.
  • Velocity modulation of harmonics enables dynamically playing harmonics of the fundamental pitch.
Oscillator Section
  • Two Oscillators with 22 Waveforms
  • Microtonal, Harmonic Series and Subharmonic Series Oscillator Transposition
  • LFO (with Rate Sequencer) and Envelope Generator for Phase, Pulse-Width and Pitch Modulation
  • LFO and Envelope Generator features both Unidirectional and Bidirectional Modulation
  • Analog Pitch Drift Emulator with both Unidirectional and Bidirectional Modulation
  • Velocity-to-Harmonics Modulation enables oscillators to dynamically sound harmonics of the fundamental pitch
  • Ring Modulation with 23 RM Types
  • Oscillator and Ring Modulator Mixer
Filter Section
  • Pre-Filter Saturation Stage with 20 Saturation Types
  • Two Independent Filters with Six Filter Types: LP4, LP2, HPF, BPF, BRF, APF
  • One and Two Stage Filter Cascade
  • LFO (with Rate Sequencer) and Envelope Generator for Filter Cutoff Frequency Modulation
  • LFO and Envelope Generator enables both Unidirectional and Bidirectional Filter Modulation
VCA Section
  • Dedicated Envelope Generator
  • Switchable Velocity Sensitivity and Fixed Volume Control
Performance Control
  • MIDI Pitch Microtuning with MTS (MIDI Tuning Standard)
  • MTS Support for both Single Note and Bulk Dump
  • Loads MTS Microtuning Format Files Internally and Receives MTS Externally
  • Local (Per-Patch) and Global Microtuning (Static Microtuning for All Patches)
  • Microtunings can be loaded from any directory on hard drives or storage devices connected to the computer
  • Ten Note Polyphonic
  • Monophonic Legato Mode
  • Polyphonic Portamento with Three Glide Modes
  • Microtonal Pitch Bend
  • Vibrato
  • Effects include Warm Filter and Stereo Ensemble 

IVOR is a freeware 32-bit VSTi for Windows XP or higher and includes a detailed instruction manual, 98 factory patches and 54 microtonal tunings.

Download from Xen-Arts 4shared premium account:

Download  |  Ivor – Piano’s Ghost:

[43 mg]

[11 mg]
 Posted by at 12:57 pm
Dec 062011
 Xenharmonic FMTS VSTi
An FM Synthesis VSTi for the Creation of Microtonal and Xenharmonic Music
Has been updated to Version 1.1
Enhancements and bug fixes:
  • Added exponential response to the Filter 1 Cutoff Frequency control slider.
  • Added 60 total automation targets for host DAW automation. Automation targets are included for: ADSR, FM-RM Oscilllator Algorithm, Effects Section, Filter Section, Global and Local Microtuning, Operator Waveforms and Oscillator Section.
  • Added Phase Center slider for the Phase/Pulse Width Oscillator LFO.
  • Added more presets.
  • Added more microtunings.
  • Added more partials files.
  • Update to manual.
  • Improvement to FM-RM oscillator quality, especially in the bass range.
  • Changed name of Detune effect to Ensemble.
  • Enhancement to UI graphics to make visually crisper.
  • New Plugin ID. Due to the number of internal enhancements, patches created with v.1.0 are not compatible with 1.1
  • Fixed Operator Keyboard Tracking Slider bug.
  • Fixed Frequency Limit bug that could cause clipping under certain circumstances.


Please note that Xen-Arts software never has been, and never will be, infected with computer viruses – this we promise. If your virus software ever indicates that our microtonal music software has a virus, this is what is known as a False Positive. Contacting the developer of your virus software to make them aware of the false positive is the best solution.

For visitors who may be new to Xen-FMTS, below are the features of the VSTi that were published back in January 2011.

Xenharmonic FMTS is a 4 Operator FM Synthesis VSTi with a specialized set of features for musicians interested in exploring the expressive possibilities of microtonal and xenharmonic music making.

Microtuning Features

  • Internally loads and externally receives both MTS (MIDI Tuning Standard) Bulk Dump and Single Note Microtuning Files.
  • Operator ratios can easily be set to values that are coincident with the microtuning being used, thereby producing tuning related FM sidebands in the timbre of the instrument.
  • Isoharmonic spacing of the operator ratios.
  • Precise values may be set for microtonal pitch-bends.
  • Arbitrary microtonal period shifting makes it possible to pitch transpose in both octave and non-octave increments.

FM-RM Oscillator

  • 4 Operator FM Synthesis with Ring-Modulation.
  • 57 Operator Algorithms.
  • 11 different Operator Waveforms.

Phase & Pulse-Width Oscillator

  • 22 Waveforms.
  • Phase & Pulse-Width LFO Modulation.
  • Envelope Generators
  • 6 independent Envelope Generators dedicated to modulating Operators A-D, Filters and VCA.
  • Velocity sensitive.
  • Keyboard tracking.


  • 2 State Variable Filters with 12 and 24 dB response.
  • Cutoff frequencies modulated by Velocity, Envelope Generator, LFO and Keyboard Tracking.
  • Low Frequency Oscillators can be set to modulate the cutoff frequencies of the filters at audio rates, thereby producing sidebands in the signal.


  • Saturator for subtle to extreme distortion.
  • 6 dB LPF Warm Filter.
  • 4-Voice Stereo Ensemble Detuner.

This VSTi is a gift to the xenharmonic and microtonal community, as well as to musicians and composers who are interested in exploring the exciting possibilities of microtuning in their music. It is being offered as freeware.


 Posted by at 1:57 am
Dec 042011

Back in 2005 I wrote a short TUN tutorial that was published on the Scala home page, which was originally written for the manual of the LinPlug CronoX VSTi. Since that time, Manuel Op de Coul (the developer of Scala) has added many new and helpful features that make it easier than ever to create the microtuning format files for retuning electronic hardware and software musical instruments.

This new article greatly expands upon the information in the original TUN tutorial and presents a sequence of exercises for the creation of the TUN microtuning format files used for exploring alternative intonation systems in many popular microtunable virtual instruments, and covers how the frequencies of microtonal tunings are mapped to specific MIDI Note Numbers, as well as demonstrating many important new features and functions of the Scala application.  

Microtuning Virtual Instruments – Part 4 | Creating TUN Files

The TUN microtuning format was invented by Mark Henning who is also the developer of the AnaMark VSTi synthesizer, which was first published with TUN support on February 19, 2003, making it one of the earliest VSTi supporting full-controller microtuning tables. The TUN format is an elegant solution for retuning MIDI controlled virtual instruments to alternative intonation systems, because both the MIDI Note Number on which the 1/1 starting note of the microtuning will be placed – and – the MIDI Note Number on which the Reference Frequency will be placed, can be freely specified, and is embedded within a single text file that is read by the instrument.

When creating a tuning table microtuning – of any kind – for a virtual instrument, there are three essential parameters that will be configured:

1.    The Microtuning itself, which, considered alone, typically has no specific pitches assigned to it.

2.    The MIDI Note Number on which the 1/1 Starting Note of the microtuning will be placed.

3.    The MIDI Note Number on which the Reference Frequency will be placed. This is the parameter which directly determines the way specific pitches are mapped to a musician’s MIDI controller.

These three parameters can be easily specified using the popular Scala application which can be used for the creation of most of the microtuning format files used in virtual instruments.

As an obvious first step in following this tutorial, musicians will need to have Scala installed on their computer. Go to the Scala Downloads page, download and install the application. Just in case there are some who may be new to Scala, here is some background information derived from the ’05 tutorial:

“Scala is a freeware utility developed by Manuel Op de Coul in the Netherlands, which can be used for the creation and analysis of historical, ethnic and contemporary microtunings. A powerful capability of Scala is that it enables the user to create the proprietary tuning data required for microtuning a wide range
of hardware and software synthesizers and samplers.”

OK – Let’s get started…

When you first run Scala, you will see the below UI.

Scala is a rather deep application with many features beyond merely creating microtuning format files for retuning virtual instruments. In this, and the other Scala tutorials that will follow, most all of the features that we will focus on will be found under the File and View menus, and by using the functions that are found in the dialog that is presented when clicking the Opts button on the tool bar, all of which are shown above within a red rectangle.

The functions under the File menu are used for creating, saving and exporting new microtunings. There is a feature found in the View menu for viewing the way the frequencies of microtunings are mapped to our controller’s MIDI Note Numbers. The Opts button opens a User Options dialog within which we will specify the keyboard mapping parameters for our microtunings.

As has been repeatedly stressed throughout this series of articles, a crucial part of setting up a full-controller microtuning is being able to freely and arbitrarily configure MIDI Note Numbers to have specific pitches across the entire range of the instrument by defining the Microtuning (the intonation system itself), the MIDI Note Number on which the 1/1 Starting Note will be placed, and finally, the MIDI Note Number on which the Reference Frequency of the microtuning will be placed, which is actually what determines how and where the specific pitches will fall on a musician’s keyboard.

The reasons why musicians and composers will need to be able to specify these parameters in their microtuning tables are many, but here are a few of them:

  • To bring ensembles of instruments into tune with each other so that they all will be able to play in a common intonation.
  • For ethnomusicological studies, musicians may want to tune their instruments to recordings or acoustic instrument intonations that do not use Western music ‘concert’ pitches.
  • To change the sonic character of the music by specifying atypical reference frequencies that may have nothing in common with the twelve-tone-equal-temperament.

All this may sound a bit complicated at first, but don’t worry, because now we will systematically go through three different microtuning scenarios which will endeavor to completely demystify the process of setting up a full-controller microtuning for your TUN-enabled virtual instrument of choice. Go through these exercises if you are new to working with microtonal tunings, and upon completion, you will gain a deeper understanding of how tunings are mapped to instruments and how to work with Scala to get results required of your music.

Scenario 1
Microtuning: Eight Tone Equal Temperament
MIDI Note Number and Reference Frequency: 69.A @ 440 Hz
MIDI Note Number for 1/1 Starting Note: 60.C

As above, our goal in this particular exercise will be to create a TUN file for 8-TET, with the 1/1 on 60.C and our Reference Frequency on 69.A @ 440 Hz.

1. Specifying the Microtuning
Click on the File menu and choose New / Equal Temperament, or use keyboard command Shift+Alt+E (learn keyboard commands to work faster).

This will open the New Equal Temperament dialog.

In the New Equal Temperament dialog type 8 into the Division field, then click the OK button.

Next, click the Show button (shown in red rectangle below) on the tool bar to view the microtuning. 

As you can see, at this point the microtuning is shown in cents and has no mapped pitches associated with it. If you are unfamiliar with the measurement of musical intervals in terms of cents, read this article for clarification: Cent (music).

2. Specifying the Reference Frequency for the microtuning and the MIDI Note Number on which it will be placed.


3. Specifying the MIDI Note Number on which the 1/1 Starting Note of a microtuning will be placed.

Now click the Opts button on the toolbar, which opens the User Options dialog; containing some of the most important features in Scala for specifying the way the specific pitches of microtunings will be mapped to our MIDI controllers.

In the leftmost column there are navigation buttons for selecting various User Options. Click the button labeled MIDI to access the functions for specifying the Keyboard Mapping Parameters. Now perform the following steps:

1.  In the Reference Frequency field, type 440. This will set our Reference Frequency to 440 Hz.

2.  In the Reference Note field, either type, or use the up and down selectors, to enter MIDI Note Number 69. What this does is specify that our Reference Frequency will be placed on MIDI Note Number 69.A and will have a pitch of 440 Hz.

3.  And finally, in the Note for 1/1 field, either type, or use the up and down selectors, to enter MIDI Note Number 60. What this does is specify that our microtuning will start on MIDI Note Number 60.C.

4.  In the Synthesizer Tuning Options (SEND) section, set the Tuning Model to: 112: TUN standard .tun format for many softsynths, via text file.

At this point we have completed the process of specifying the way our microtuning will be mapped to the MIDI controller as well as that we will create a TUN format file for our instrument. Next, click Apply, and then OK to close the User Options dialog.

It’s crucial to recognize that becoming familiar with this User Options / MIDI / Keyboard Mapping Parameters dialog is one of the most important steps in mastering how to configure full-controller microtunings with Scala, and the functions that are found here are relatively new additions which were not available when I wrote the original TUN tutorial in ’05. This dialog has greatly streamlined the process for setting up keyboard mappings by consolidating these features into an easy-to-use GUI-based group.

[Note: Being that 8-TET has equal steps of 150 cents, where the 1/1 is placed will not have an impact on the mapping in the way that it will with microtunings that have non-equal step sizes and more interval classes. We’ll examine these matters more as we progress through the other scenarios.]

4. Viewing the results of the Keyboard Mapping
Another powerful Scala feature is the ability to view the results of the settings we made in the User Options / MIDI / Keyboard Mapping Parameters dialog.

From the View menu, choose Keyboard Mapping (keyboard command Shift+Ctrl+K) to see the keyboard mapping parameters that will be applied to our TUN files.

We can also examine the entire Keyboard Mapping by using the View menu and choosing Tuning Dump Numbers (keyboard command Shift+Ctrl+V).

As you can see, this shows all of the MIDI Note Numbers from 0-127, the Cents Values and the associated Specific Pitches (Hz) that are mapped to each note. Since the creation of microtuning files for virtual instruments gives musicians and composers a repeatable, and therefore verifiable result, it is possible to use this mapping information to insure that an instrument is indeed playing the correct frequencies when a new intonation system is loaded.

Compare this frequency data to the 12-TET pitches that were discussed in the first article in this series – MIDI Notes, Pitches and Notation Standards – to see how we have now configured a completely new intonation system for our instruments.

5. Exporting the TUN File
Now that we have completely configured our microtuning and its keyboard mapping parameters, it’s time to export our TUN file.

1. Under the File menu, choose Export Synth Tuning (keyboard command Shift+Ctrl+T).

2. Using the Save File dialog, navigate to a directory on your computer where you want to save your TUN files.

3. Name the TUN file. In this case, name it “8-TET-Ref-69A-440.tun“.

4. Click OK and now we’ve completed the process of creating a TUN file for 8-TET with a reference frequency of 69.A @ 440 Hz. Now the TUN file can be loaded into the instrument.

As mentioned above, creating microtuning table files gives us a repeatable and verifiable result. Try setting your synth to a sine-waveform and place a software tuner after the instrument such as GTune, and using the frequency information from Step 4 above, start playing on middle 60.C and check the results of the tuning. It’s very informative to see and hear how different this is from 12-TET. Check the first couple of octaves, and you should see that your instrument is producing the below frequencies beginning with 201.7409 Hz and terminating on 806.9636 Hz:

    60.C  3: 5550      201.7409 Hz  !  0.0 cents      C.0
    61.C# 3: 5700      220.0000 Hz  !  150.0 cents  
    62.D  3: 5850      239.9117 Hz  !  300.0 cents    Eb.0
    63.Eb 3: 6000      261.6256 Hz  !  450.0 cents  
    64.E  3: 6150      285.3047 Hz  !  600.0 cents    F#.0
    65.F  3: 6300      311.1270 Hz  !  750.0 cents  
    66.F# 3: 6450      339.2864 Hz  !  900.0 cents    A.0
    67.G  3: 6600      369.9944 Hz  !  1050.0 cents 
    68.G# 3: 6750      403.4818 Hz  !  1200.0 cents   C.1
    69.A  3: 6900      440.0000 Hz  !  1350.0 cents 
    70.Bb 3: 7050      479.8234 Hz  !  1500.0 cents   Eb.1
    71.B  3: 7200      523.2511 Hz  !  1650.0 cents 
    72.C  4: 7350      570.6094 Hz  !  1800.0 cents   F#.1
    73.C# 4: 7500      622.2540 Hz  !  1950.0 cents 
    74.D  4: 7650      678.5728 Hz  !  2100.0 cents   A.1
    75.Eb 4: 7800      739.9888 Hz  !  2250.0 cents 
    76.E  4: 7950      806.9636 Hz  !  2400.0 cents   C.2

If your instrument is accurately reproducing these frequencies, then you have configured your microtuning correctly for this particular scenario.

[Note: The other scenarios that were originally intended to be a part of this article will be published at a later date.]


 Posted by at 9:36 pm