Announcing: Sapphire Tube Unit
https://raw.githubusercontent.com/cosinekitty/sapphire/main/images/tubeunit.png
I’m excited to announce a fun new gadget for you to play with. My latest VCV Rack module Sapphire Tube Unit has just been released.
Tube Unit is primarily an effect synthesizer, although it can be used as a filter also.It is a simulation of a resonant tube as shown in this schematic:
Sounds are generated by air flowing through a spring-loaded piston valve. The resulting vibrations of air pressure feed into a tubular waveguide, and the sound waves reflect back and forth in the tube.
Although inspired by physics, the simulation departs from realistic physics in an interesting way. Instead of modeling air pressure as a scalar field, Tube Unit uses a complex-valued field. That means the air pressure at any time and place inside the tube has both a real part and an imaginary part. In some ways the signal is more like an electromagnetic wave with circular polarization than a pressure wave, but moving at sonic speed and oscillating at audio frequencies.
Using a complex-valued signal provides two interesting opportunities:
- The output is stereo. The real part of the output signal becomes the left channel, and the imaginary part becomes the right channel.
- Complex arithmetic operations like addition and multiplication have interesting effects when applied as variable parameters in the feedback path. For example, multiplication with a variable value e^{i \theta} when reflected from the open end of the tube causes a rotation in the returned wave’s “polarization”, causing interesting spectral effects. (See the VORTEX and ANGLE parameters in the documentation for more about this topic.)
The Tube Unit documentation page has a more detailed explanation of the physics and control parameters.
Here are some demo videos. Headphones are recommended to best experience the stereo field.
First, a basic demo showing the controls and how they affect the sound. It also shows using Tube Unit as a filter.
Tube Unit is polyphonic across all inputs. Here is a demo of processing CV inputs across 8 simultaneous channels.
As always, I’m eager to hear what you think. Please post any questions or comments below. I always receive constructive feedback on this forum about what is confusing, what can be improved, or what needs to be fixed.
And above all, I hope you have a great time making some wild sounds with this thing!

