What is Wmidi ?

Wmidi transforms your graphic tablet into a musical instrument and a MIDI controller. It is able to generate notes, but also control change messages depending on the position, pressure, Z angle and tilt of the stylus on the tablet. It was initially written and tested for Wacom tablets but since it is using the WinTab API, it should be compatible with all kinds of tablets.

How does it work ?

The colored area corresponds to the graphic tablet. The position of the stylus on the tablet is represented by a cross. A line is drawn to show the orientation of the stylus, as well as a plain circle, which corresponds to the pressure.

In order to generate music that does not sound totally random, Wmidi only plays notes from a chosen scale (amongst a list of 270 available scales). The notes are automatically triggered while moving the stylus on the tablet. If your stylus has an eraser, you can use it to trigger chords instead of single notes (24 types of chords are available).

If you click on the first button of the stylus, the current note or chord is locked and moving the stylus on the tablet will send control change messages. Control change numbers can be selected for the X and Y coordinates, the pressure, the angle and the tilt of the stylus. For each of them, you can also specify the range of values that will be generated, and a mapping curve.

Starting with version 1.3 of Wmidi, it is possible to load a background picture. When moving the stylus on the tablet, the color of the pixel under the cursor will be analyzed. Then the corresponding control change messages will be sent for the hue, saturation and brightness or the red, green, and blue components. There is plenty of room for experimentation. For example, you could load a stone / rocky texture, and use the brightness to drive the friction parameter of a physical modelling synthesizer.

How to use Wmidi ?

Directly with a MIDI synthesizer
Wmidi lets you select the MIDI port to which the messages are sent. You can connect a synthesizer directly to that MIDI port. For example, I have been using the Nord Modular from Clavia. Its modular architecture allows you to create elaborated patches that will evolve in time, and every parameter can be assigned to a MIDI controller.

Through a virtual MIDI device
You can also route the MIDI out port selected in Wmidi to the MIDI in port of any other MIDI program (sequencer, softsynth, etc...). A way to do that is to use a virtual MIDI device such as Hubi Loopback Device. For example, you can record the control change messages generated by the stylus movements on the tablet, and add them to a pre-existing track. It's a good way to add life to a static part.


Click here to download Wmidi. You just need to unzip the file and the program is ready. Make sure you read the documentation.

What's new ?

New in version 1.3

  • added possibility to load a background image, and to send control change messages based on color, saturation, and brightness or red, green and blue components.

  • added buttons to copy / paste settings between the 12 configurations.

  • New in version 1.2
  • added a way to edit and to switch between 12 configurations.

  • added an option to trigger notes by vertical or horizontal move.

  • added a nicer documentation in PDF.

  • New in version 1.1
  • added a checkbox to enable / disable note generation.

  • added minimum and maximum values for the controller messages.

  • added mapping curves for controller messages.

  • added buttons to load / save a configuration.

  • added reset button.

  • added chromatic scale.

  • What is next ?

    Future improvements could include:

  • a "speed" parameter to send controller messages.

  • different zones on the tablet area.

  • in addition to control changes, generation of pitch bend, aftertouch and NRPN.

  • use of a different MIDI channel / patch for the chords.

  • speeding up the processing of the packets sent by the tablet.