Pitch Wheel and Tuning Module

Pitch Wheel and Tuning Module

A few months ago @jersmi started working on an update to his Pitch Wheel, and what seemed like a few simple improvements grew into quite an extensive process, that I happily found myself roped into. Figuring out how to display the correct note names for all the scales in all their transpositions. That included double sharps and flats, which led to the next step of figuring out how to make suitable symbols for them in the canvas, which ended up with investigations into Bézier curves and the like – quite some rabbit holes, stretching what’s possible in the canvas. And then questions of how to tackle modulation vs. keyboard input, how the note names displayed correspond to the (up to 4 voice) inputs, mappings for each scale, headaches with tracking MIDI input, and so on.

It’s still hasn’t reached a final version – there’s still some internal cleaning up and optimisation that needs to take place – but I’ve been thinking that it’s reached a stage where it’s a good idea to share it on the Discord, and now here on the forum, in the hope of getting some feedback.

Following on from the Pitch Wheel I’ve also updated the Tunings tile that I’d worked on earlier this year to include a visual display – and I’m really happy how that turned out. Being able to see the details of each tuning layed out visually helps get a grip on what is going on with the module, especially with those tunings that have ‘split’ keys – i.e. upper and lower parts that are selected via an ‘Alt’ button (that can be externally modulated). The visual additions help clarify how the module works.

Many of Jeremy’s Pitch Wheel details have been transported over to the Tunings module, with (externally modulatable) fine tuning of a selected scale degree for easy personal customization of the included tunings. The overall output can be ‘fine-tuned’ up or down by up to 50 cents, and there’s also a ‘detune’ mode which adds that fine-tune shift alongside the unaltered version of the output – this doubles the voice count, which means that one also needs to double the polyphony of the gate pulse when used in conjunction with an Envelope or VCA, for example, and so the module also includes a gate in and out to that end.

There are so many details that have been worked on over the past few months that I’m not sure exactly what to try and cover here. The module description field isn’t working on iPad, but there’s otherwise some info collected there if you’re on a Mac.

In any case here are a few demo patches that I’ve come up with while figuring and testing things out. Some of them simply messing around. Hopefully they give an idea of how the modules work. Don’t hesitate to ask, should anything be unclear.

Pitch-Tuning-Wheel_Demo-Flam_JS-RM.audulus4 (624.5 KB)

Pitch-Tuning-Wheel_Demo-Keyboard_JS-RM.audulus4 (622.2 KB)

Pitch-Tuning-Wheel_Demo-Slow-Chords_JS-RM.audulus4 (622.0 KB)

Pitch-Tuning-Wheel_Demo-Meandering_JS-RM.audulus4 (650.3 KB)

Pitch-Tuning-Wheel_Demo-Seq-Mod_JS-RM 2.audulus4 (586.6 KB)

Pitch-Tuning-Wheel_Demo-Note-Mod_JS-RM.audulus4 (629.8 KB)

Pitch-and-Tuning-Wheels_v2_JS-RM.audulus4 (415.4 KB)


Mostly I love the Tuning Wheel module. I think it opens a door to the vast world of microtonal/alternate tunings in an approachable way. This tool makes it fun to explore the sounds of different tunings, makes it more immediate and physical, shifting moods with settings.

Quantizer + Tuning Wheel is a great combination!

I say quantizer because the Pitch Wheel is a quantizer in spirit, with extra features, and the Tuning wheel will work with any signal, designed to receive quantized 12-tine notes and apply the tuning shifts.

This project has been an unexpected deep dive into the canvas node for displaying proper musical key signatures, allowing midi and modulation signals, 4 note poly input in the canvas node, 1-3 octave display on the wheel. The “wheel” originally was just trying addressing a knob for transposing the signal (with the thought of modulating the wheel in mind).

1 Like
1 Like
1 Like
1 Like
1 Like
1 Like