USER MANUAL
2024-01-08
– CHANGE LOG –
Date |
Description |
2024-01-08 |
MIDI, velocity, and oscillator noise EQ changes. |
2023-11-02 |
Preview mode & tone, velocity sense, multi-mode filter xmix changes. |
2023-10-02 |
Velocity, Drop (& Lift), Ofs+/- changes. Ring modulation addition. Q & A grounding discussion. |
2023-07-26 |
Noise generator & librarian changes. |
2023-06-20 |
Pitch changes. |
2023-05-24 |
Preview & Librarian changes. |
2023-01-31 |
Preview mode, vmod, and pmod changes. Pitch cvol addition. Added serial and MIDI port troubleshooting sections. Fixed typos in the librarian (now v6) examples. |
2023-01-01 |
Resonator mode, formant phase, noise vmod, librarian v5 changes. |
2022-12-16 |
Preset load & stor [-124:124] => [0:249]. Profile Load & Stor [-3:3] => [0:5]. |
2022-12-14 |
Preset load & stor [-120:120] => [-124:124]. Profile Load & Stor [-7:7] => [-3:3]. Formant levl[0:63] => levl[-63:63] (phase control). |
2022-09-15 |
All librarian instructions updated for the new command line version. Credits to Roger Hess for the D-Lev logo design, and to the font designers. Moved “Remote Control” section to Appendix C. Moved “Q & A” section to Appendix F. Latest changes now appear at top of this change log. |
2022-07-20 |
Pitch correction vloc[-63:63] => vmod[-31:31], levl => corr (rename). New logo artwork on manual cover. |
2022-07-04 |
Moved “Q & A” “Quick Start” and “Electrical Interfaces” to Appendices A:C. Added Appendix D “Knob Table”. Added Appendix E “File Anatomy”. Updated MIDI info to reflect latest SW load (bend[0], bank). |
2022-07-02 |
Added “Remote Control” section. |
2022-07-01 |
Renamed & expanded Preset & Software Management section. Added “Is it a real Theremin?” to Q&A. Added “mono amplification” to Q&A. Many minor formatting changes. |
2022-06-26 |
New load, stor, Load, Stor, Auto, Wait knob limits. |
2022-05-28 |
P_FIELD:Sens[48 => 64] for pitch field calibration starting point (to match kit profile). |
The D-Lev is a (mostly) digital Theremin with many unique features. The primary achievement is the linearity of the pitch and volume fields, which are much more linear than anything you've likely experienced. Field sensitivity can be configured to best suit your playing style, and the volume field has an adjustable knee. True pitch correction, full-featured pitch preview, and real-time visual pitch feedback via the LED "tuner" all provide much welcomed assists to performance.
The synth is sufficient to emulate human vocals, strings, brass, woodwinds, bells, percussion, crazy sounds, etc. The variety of voices encourages the development of different playing techniques, and helps maintain an interest in playing itself. MIDI out lets you control almost any outboard synth for further sonic explorations.
The D-Lev was designed from the ground up using FPGA technology, and incorporates my Hive soft processor core and phase locked peripherals into a highly responsive, tightly integrated whole. Boot time and null calibration are almost instantaneous, so you won't lose any ideas or inspiration waiting to play.
Exactly like a traditional analog Theremin, the D-Lev employs oscillators that vary in frequency with the capacitance of the player's hands. The exact same electrostatic interaction is at work, but in the D-Lev the oscillator frequencies are now represented by digital numbers, and the heterodyning process used to develop a difference frequency in the analog theremin is now replaced by a simple arithmetic subtraction. Musicians who are accustomed to traditional analog Theremins won't have to alter their fundamental style or techniques in order to play the D-Lev.
How a digital Theremin works.
The variable oscillators in the D-Lev are almost entirely digital, which makes them quite stable. The operating frequency and volume are therefore just a series of numbers that are fed to an internal DSP (digital signal processing) based music synthesizer in order to produce audio.
Separating the process of sensing hand capacitance (related to hand position) from the generation of sound opens up a new world of exciting possibilities for both the designer and the player. The pitch and volume numbers are extensively digitally filtered to dramatically reduce environmental noise and hum. The responses of the fields, which are key to making the D-Lev comfortable and predictable to play, are linearized mathematically and stored in any of four system profiles. The octave and timbre of preset voices are entirely defined by the synth, with presets to easily switch among a variety of very different voices. In terms of technology and features, the D-Lev stands out among Theremins, both past and present.
•Nearly perfect pitch & volume field linearity, tailored by the user — right up to the antennas!
•Adjustable field sensitivities and offsets to accommodate any playing style.
•Volume field has two fully configurable / defeatable knees (to reduce "hand flapping").
•Wide gestural bandwidth precisely tracks your every hand movement.
•High antenna voltage swings provide large fields immune to most forms of interference.
•Simultaneous auto-calibration of both pitch & volume fields via foot pedal or button.
•Zero lag LED visual tuner for real-time pitch & volume feedback during play.
•Full-featured chromatic pitch correction from none, to unobtrusive, to full hard quantization.
•Highly configurable pitch preview with extensive options.
•Inharmonic resonator produces drums, bells, gongs, human vocals, room ambiance, and pseudo stereo.
•Envelope generator with velocity sense for plucked and percussive effects.
•+/-3 octave register bank switch for instant access to a wide pitch range.
•MIDI out with CC, pitch bend range, trigger location, velocity, and octave controls.
•Sculpture mode for automated stand-alone operation over an extended period.
•250 voice presets and 6 system profiles.
•ALL parameters fully adjustable via the front panel interface.
•Easy to own, no internal adjustments (except for LCD contrast).
Technology
•Low-drift, high Q / high voltage, single layer, hand wound air core coils.
•Rock steady, high resolution, dithered phase locked digital oscillators.
•22nd order pitch & volume field digital filtering kills mains hum dead (50/60Hz).
•FPGA-based logic with custom 8 thread Hive soft processor core.
•Internal digital signal processor (DSP) 32 bits @ 48kHz; digital audio outs 24 bits @ 48kHz.
•LED visual tuner employs PWM to intuitively display high-res real-time pitch and volume.
•Subtractive / modal synthesis engine with pitch and volume hand modulations.
•User interface: 8 rotary encoders (knobs); 20x4 line backlit LCD.
•Outputs: Stereo monitor out (S/PDIF, TOSLINK); Stereo line out (S/PDIF); MIDI TX (DIN); Mute LED.
•Inputs: RS-232 over USB; ACAL & Mute momentary switches.
•Preset librarian software (Windows, Mac, Linux).
The D-Lev is controlled by two columns of four knobs (rotary encoders) each. These directly correspond to the two columns of text on the four line LCD display:
Each knob controls one associated value on the LCD display.
For example, on the main D-LEV screen above: turning knob 3 adjusts the Pcal parameter, and pressing knob 6 zeros out load.
How the knobs and LCD work:
•Knob 7 selects one of 20 screens, or pages. Knobs 0 through 6 adjust the associated display values on the current page.
•Turning a knob quickly changes the displayed value in larger steps, so you can make big edits with less work.
•Pressing a knob cycles through => 0 => maximum => minimum (with a few exceptions). Use this to defeat or maximize a function, or to examine the range of the knob. For example, press knob 7 to move quickly to the first page, and between the first and last pages.
Mon 63 Out 0 Vcal 32 Pcal 32 stor 0 bank -1 load 0 D-LEV |
Mon 63 Line 63 prev 0 Treb 0 osc 46 Bass 0 nois 20 LEVELS |
vmod 0 pmod 0 prev 0 mode 0 harm 0 tone 0 oct 0 PREVIEW |
vloc 0 velo 0 cloc 0 cc 2 bend 64 chan 1 oct 0 MIDI |
kloc 50 rise 0 knee 6 fall 36 velo 0 damp 36 dloc 0 VOLUME |
vmod 0 cmod 12 rate 12 cvol 0 corr 24 span 31 Post 0 PITCH |
vmod 7 pmod -10 nois 20 treb 0 puls 5 bass 0 duty 0 NOISE |
vmod 0 pmod 0 freq 1357 nois 20 mode -2 xmix 31 reso 0 FLT_NOISE |
vmod 20 pmod 0 harm 18 treb 0 odd 0 bass 0 oct -1 0_OSC |
offs 0 offs 0 hmul 0 hmul 0 fm 0 sprd 0 xmix 0 1_OSC |
vmod 0 pmod 0 freq 27 osc 46 mode 0 xmix 0 reso 0 FLT_OSC |
freq 46 tap 42 hpf 659 harm 35 mode 2 xmix 11 reso 0 RESON |
vmod 0 pmod 0 freq 905 levl 58 freq 27 levl 0 reso 10 0_FORM |
vmod 0 pmod 0 freq 1357 levl 58 freq 27 levl 0 reso 13 1_FORM |
vmod 0 pmod 0 freq 3623 levl 57 freq 2960 levl 46 reso 11 2_FORM |
vmod 0 pmod 0 freq 320 levl 48 freq 27 levl 0 reso 7 3_FORM |
Vcal 32 Drop 16 Lin 0 Dith 2 Ofs- 64 Ofs+ 120 Sens 50 V_FIELD |
Pcal 32 Lift 0 Lin 0 Dith 2 Ofs- 64 Ofs+ 190 Sens 45 P_FIELD |
LED 1 Cent 0 LCD 24 Note 0 Qant 1 Oct 0 Post 0 DISPLAY |
Wait 10 Auto 0 P<>V 0 50Hz 0 Stor 0 Erev 0 Load 0 SYSTEM |
The 20 D-Lev screens / pages.
•Pressing the Out knob on the D-LEV page page initiates an ACAL (auto-calibration of the fields) which blinks the center tuner LED during the period set by the Wait knob on the SYSTEM page and automatically mutes the audio. To undo the auto-mute, move your hand to turn off all of the volume LEDs.
•Pressing the stor knob on the D-LEV page or Stor on the SYSTEM page initiates a two step preset / profile write. After the first press the screen label will change to ?WR? and the center tuner LED will start blinking. Press it again to actually perform the write and return things back to normal. If you want to abort the write, turn any knob, or press any knob other than stor / Stor.
To tell them apart on the screen, system profile controls begin with a Capital Letter (Title Case) and voice preset controls are all lower case.
Most knob values have binary limits (such as 0 to 31) as opposed to decimal (such as 0 to 9) which may seem unusual at first. These give finer grained ranges and are a better fit to the underlying hardware and software.
In this manual these knob ranges are represented by bracketed values. For example, the Vcal range of -127 to 127 is shown as Vcal[-127:127], and setting load to 45 is shown as load[45].
D-Lev main modules.
The D-Lev architecture consists of many interconnected functional modules as shown above.
The player’s hands interact with the pitch and volume fields which are generated by the digital oscillators and resonant circuits. After extensive filtering and mathematical manipulation, this pitch and volume information is fed to a digital audio synthesizer to generate sounds. The LED visual tuner displays highly responsive pitch and volume information to visually assist setup and playing. Pitch preview provides a means for the player to personally monitor pitch even when in full volume cutoff. And the D-Lev sound palate is easily expanded by connecting it to an external MIDI synthesizer.
This section discusses the D-Lev modules in some detail, and is followed by a focus on the DSP music synthesizer and the sub-modules within it.
Pitch & volume field generation and processing.
As the pitch or volume hand approaches the antenna, the capacitance increases slightly, which slightly lowers the frequency of the oscillator connected to the antenna. The oscillator frequency is translated into digital data representing hand location, which is then used to control the pitch and volume of the music synthesizer.
Pitch & volume digital phase-locked loop (DPLL) oscillator topology.
The D-Lev oscillators are almost entirely digital and employ air core inductors, which makes them exceptionally stable. In each oscillator, a numerically controlled oscillator (NCO) drives a coil, which resonates with the antenna capacitance. The phase difference is fed back to keep the NCO frequency locked at the coil & antenna peak resonant frequency. This produces a high voltage (though harmless) radio frequency on the antenna, which generates a large playing field and drowns out environmental interference.
Pitch & volume field filtering (and sampling rates).
The oscillator forms a 1st order low-pass filter for phase noise. Following this is a 1st order low-pass pre-filter, then four more 1st order low-pass filters. These hardware filters reduce noise, increase resolution, and allow the software to more accurately sample the oscillator frequency. In software, this is passed through an 8th order low-pass tracking filter, followed by four 2nd order notch filters to filter out AC mains hum. All together, these stages effectively form one gigantic 22nd order filter which removes the vast majority of interference while remaining highly responsive.
Following the oscillators and filters are mathematical stages that linearize, scale, and offset the oscillator frequencies. With minor exceptions, the entire oscillator / filtering / mathematical processing gauntlet is identical for the pitch and volume fields.
All controls are on the V_FIELD, P_FIELD, and SYSTEM pages. These are all system controls, and so can be saved to and recalled from any of four system profiles.
Vcal[-127:127] Drop [0:31] |
Lin [-15:15] Dith [0:7] |
Ofs- [0:255] Ofs+ [0:255] |
Sens[-127:127] V_FIELD |
V_FIELD page controls.
Pcal[-127:127] Lift [0:31] |
Lin [-15:15] Dith [0:7] |
Ofs- [0:255] Ofs+ [0:255] |
Sens[-127:127] P_FIELD |
P_FIELD page controls.
Wait [0:99] Auto [0:249] |
P<>V [0:3] 50Hz [0:1] |
Stor [0:5] Erev [0:1] |
Load [0:5] SYSTEM |
SYSTEM page controls.
Vcal & Pcal correct the far-field linearity, and are identical to the “null” type controls found on analog Theremins. Increasing the value reduces far-field sensitivity (moves the “null point” farther behind your body). These are offsets to the ACAL process, and you will need higher settings here to compensate if you hold your body or hands closer to the antennas during ACAL than during normal play. Once Vcal and Pcal are properly set, save the system profile, and the next time you do an ACAL you should have little need to adjust them. Once you develop the correct technique for holding your arms in a retracted position during ACAL you may find that you never need to touch Vcal or Pcal.
Lin tweaks the near-field linearity. This is an “advanced” feature and the effect on linearity is complex but modest, so if you are uncertain as to how to tune it, simply set it to zero. Lin interacts strongly with some of the other knobs, so expect some back and forth when adjusting it.
Ofs- moves the field around. Increase the value to move the field away from the antenna, decrease the value to move it closer. This control should be used to center up the operation of the Sens and Lift controls, and not to position the final playing field.
Sens sets the sensitivity of the field, and acts as a sort of gain control to your hand gestures. For typical analog Theremin pitch sensitivity, set this so that an open hand / closed fist gesture produces about 2/3 of an octave. You can use the Sens knobs to reverse the responses of the fields, e.g. negative values of Sens on the V_FIELD page will give a traditional “hand farther away is louder” response; positive values give a non-traditional “hand closer is louder” response.
Ofs+ moves the field around in a manner similar to Ofs-. You may be wondering why there are two controls which essentially do the same thing? Ofs- should be used to center up the pivot point of Sens in the mid-field. Ofs+ should be used to position the field where you want it to be when playing.
Dith sets the amplitude of a 48kHz triangular dither signal injected into the field oscillator. Dither is used to break up small non-responsive “sticky points” in the field. Higher values can cause instability, so use the minimum necessary to fix a sticky situation. Otherwise Dith[2], which injects a nominal amount of dither, is recommended. The tuner is particularly useful for catching any pitch or volume transitions that appear to jump or stick, perhaps indicating the need for a higher dither setting.
Drop applies a 2nd order non-linear curvature to the volume field – a secondary and global soft knee. It is used to make the volume go more directly to silence, which can fix “sound leakage” or “ghost gliss” issues – if you play with a traditional volume field (Sens<0; farther=louder) it can eliminate the need for hand travel too near the volume antenna. At higher settings, the curvature near maximum volume can model the behavior of an analog Theremin. The Drop knob obviously magnifies the effect of the knee knob on the VOLUME page.
Lift applies a 2nd order non-linear upward curvature to the pitch near-field which models the (non-ideal IMO) behavior of an analog Theremin. It may be used to compress the near-field in order to make it easier to reach the upper registers with less hand / arm movement. Higher settings will produce the typical “squealing” sound when the hand is very near the pitch antenna. Set Lift[0] to defeat it unless you have a specific use case. The point at which the non-linearity gradually starts to kick in can be adjusted by manipulating Ofs- and Ofs+.
50Hz selects the mains hum filter frequency. Use 50Hz[0] in areas that have 60Hz AC power, and 50Hz[1] in those that have 50Hz AC power.
P<>V swaps the pitch & volume antennas. P<>V[0] is normal; P<>V[1] sets both to the volume antenna, which can be useful when setting up the volume field; P<>V[2] sets both to the pitch antenna. Left handed players should use P<>V[3] which swaps the pitch and volume antennas. Always perform an ACAL after changing this setting.
Wait sets the ACAL wait timeout in 1/10 second increments, so for example Wait[20] gives a timeout of two seconds. This gives the player time to press and release the calibration button, and to move hands & arms to a retracted position before the calibration is actually performed. Wait[0] disables auto muting during ACAL.
Pitch corrector block diagram.
The pitch corrector is chromatic (all 12 notes in the octave are corrected identically) and employs multiple mechanisms to mask audible functioning even with fairly aggressive settings. The correction rate can be sped up to produce hard pitch stepping quantization, slowed down to give unobtrusive pitch correction, or anything in-between. A key innovative feature is modulation of the correction rate based on pitch hand position within the note, which accentuates note centers and blends note transitions. A bi-modal filter enables smooth glissando. Since it corrects to absolute pitch, it is most effective when used actively in conjunction with the tuner during play.
All controls are on the PITCH page.
vmod [-31:31] cmod [0:31] |
rate [0:31] cvol [0:31] |
corr [0:31] span [0:31] |
Post [0:1] PITCH |
PITCH page controls.
corr sets the pitch correction strength. To enable pitch correction, both the span and corr knobs must be non-zero. If you experience phasing effects with external audio sources due to overly perfect pitch correction, reduce corr to intentionally introduce some minor pitch tracking error. corr[0] will disable pitch correction, and this provides a quick and simple means of disabling correction.
rate sets the correction rate. Larger values will cause faster correction, and for maximum correction this should be set as high as possible for the piece you are playing. Use rate[31] for hard quantization. The basic corrective action is linear (to the ear) slewing of pitch to the note center, which can be dynamically altered by the other knobs.
cmod modulates the correction rate with the location of the pitch hand. Higher settings speed up the correction rate when the pitch hand is near the center of a note, and slow down the correction rate near the note edges. This enables slower note transitions with higher rate settings, imparts a “magnetic” feel to the note centers, and softens the otherwise constant correction rate pulling the pitch this way and that at the note boundaries. Note that the rate knob sets the nominal correction rate here.
vmod modulates the correction rate with the location of the volume hand. Positive values of vmod increase the correction rate with increasing volume, with the upper limit set by rate; negative values increase the correction rate with decreasing volume, with the lower limit set by rate. When the volume is so low that the audience can’t hear anything, it might make sense to speed up correction so that the next note to be played is quickly centered.
span sets the distance from note center over which pitch correction is applied. Typically span is maxed out to cover the entire note, but lower values will limit correction to a narrower span centered on each note. span[0] will disable pitch correction.
Influence of the span control.
Post selects the LED tuner pitch and volume inputs (please see the table in the tuner section for what the settings do). Post-correction is useful for visualizing and adjusting the often quite subtle sounding pitch correction controls. Otherwise use pre-correction so that the pitch hand position is displayed on the tuner – this helps you better hit the note centers when playing, which enables the pitch corrector to operate optimally.
Envelope generator block diagram.
The envelope generator is used to alter the static and dynamic response of volume hand movements. It consists of a knee unit and a velocity detector unit in parallel, followed by a peak hold / envelope generator. The knee unit is used to introduce a secondary linear response to the volume hand location – which sounds bad but is actually highly desirable when done in a controlled manner. The velocity detector enables more nuanced staccato / percussive play. The peak hold and envelope generator together create rapid – or very slow and smooth – volume changes that would be difficult or impossible to accomplish with hand movements alone.
Most controls are on the VOLUME page.
kloc [0:63] rise [0:63] |
knee [0:31] fall [0:63] |
velo [0:31] damp [0:63] |
dloc [0:63] VOLUME |
VOLUME page controls.
knee causes the volume, when it is below a certain volume threshold – set by kloc – to react more strongly to the location of the volume hand. This is known as expansion, and the volume response above kloc is unaffected. Most natural sounds quickly ramp up to a certain loudness, with a more expressive region above that. Moderate settings of knee facilitate this with smaller, slower, and more natural hand movements, while retaining good control over dynamics. Very high settings of knee cause the volume to instantly “pop” to the kloc loudness, which can be used percussively. knee[0] defeats the knee.
kloc sets the knee location in the volume field. The range is -48dB to 0dB (kloc[0] to kloc[63], respectively). An upper expressive region of 12dB or so (kloc[48]) works well for most voices.
velo controls the volume hand velocity gain, where the speed of the volume hand is sensed and added to the overall volume. Velocity sensing is bi-directional and continuous over the full range of hand movement (sensing is not restricted to a threshold point). Adding velocity to a high gain knee provides nuanced control to percussive presets.
rise and fall set the volume rise and fall time, with higher settings giving slower volume ramping rates. Rise will continue until the output matches the peak hold value, after which it falls to the current hand location volume.
damp is a global modulator of fall and all filter reso settings. If the volume hand is before the location given by dloc then damp is active, reducing fall and all reso values. Step modulating the decay and resonance rates this way provides increased control over ringing and percussive presets. Setting damp to a non-zero value causes the MIDI note-off location to be the position set by the dloc knob.
dloc sets the damp switching location in the volume field. The range is -48dB to 0dB (dloc[0] to dloc[63], respectively) before the velocity and knee are applied. Also sets the MIDI note-off location if damp is non-zero.
cvol (located on the PITCH page) modulates the volume down between notes. It automatically reduces the volume at note transitions.
Tips & TricksThe application of some knee is almost essential if you play with traditional volume field sense and with your body close to the D-Lev. Without it, your body capacitance will be a confounding factor, and large arm movements will be required to produce the full range of audio. Please see the section on setting up the volume field for a full discussion of these issues. Use some velo to speed up and shape pizzicato type playing. High rise values together with low fall values will generate reverse envelopes. Moderate settings of cvol can add realism to preset voices that don't generally gliss well by making chromatic runs automatically more discrete sounding. Imagine quickly operating the valves of a trumpet or a keyboard run. Envelope generation can be fully defeated by setting rise[0] and fall[0]. Once defeated it will not interfere in any way with normal play. Some typical settings:
Percussive with damping Reverse envelope |
MIDI module block diagram.
The MIDI module takes the pitch and volume hand information and sends serial MIDI OUT data to the MIDI IN of an external music synthesizer. This is strictly a MIDI transmit module, there are no MIDI IN or THRU connections nor processing.
Most controls are on the MIDI page.
vloc [0:63] velo [0:31] |
cloc [0:63] cc [-127:31] |
bend [0:127] chan [-16:16] |
oct [-7:7] MIDI |
MIDI page controls.
chan selects the MIDI channel. MIDI channels are sort of sub-synthesizers with their own independent controls. Valid channels are 1 through 16. chan[0] disables the MIDI module, which can be handy when changing cc. Negative values of chan insert 2ms gaps between MIDI data “clumps” which might help with MIDI “flooding” situations.
velo controls the note-on velocity gain. The speed of the volume hand as it crosses the vloc threshold (to play a new note) is converted into MIDI note-on velocity. Higher velo settings make it easier to play higher velocities. Some special modes here are velo[0], which transmits a fixed velocity of 64 (the MIDI standard for non-velocity instruments) and velo[31], which transmits a fixed velocity of 127 (this may work better for some synths / patches).
vloc sets the note-on velocity sense point and note on / off trigger location in the volume field. The range is -48dB to 0dB (vloc[0] to vloc[63], respectively). Setting vloc below that of cloc can help hide note on/off trigger events, which can make the voice being played sound less percussive and more Theremin-y. Setting damp on the VOLUME page to a non-zero value causes the MIDI note-off location to be the position set by the dloc knob on the VOLUME page, which can be useful for triggering drones.
bend sets the MIDI pitch bend span in terms of half steps. bend[12] will produce a +/- 1 octave pitch bend range, and so on. Pitch bend is re-centered whenever a note is played (when the vloc threshold is exceeded), and when playing exceeds the pitch bend range the note will be re-triggered with pitch bend re-centered on the new note. In order to track correctly, the value of bend needs to match the pitch bend span setting in the external synthesizer. bend[0] defeats pitch bend and note re-triggering, so notes just stick at the center of where they were played at until done.
oct sets the relative octave of the signal; this is an offset to the bank octave setting.
cc selects the MIDI control change manipulated by the volume hand. Knob values [1:31] transmit 14 bit data to cc[1:31]. Knob values [-127:-1] transmit 7 bit data to cc[127:1]. Setting cc[0] disables control change transmission. Here are some common MIDI CC’s:
CC |
Control |
+/- 1 |
Modulation Wheel |
+/- 2 |
Breath Controller |
+/- 4 |
Foot Pedal |
+/- 7 |
Volume |
+/- 8 |
Balance |
+/- 10 |
Pan |
+/- 11 |
Expression |
-71 |
Filter Resonance |
-74 |
Filter Frequency |
-91 |
Reverb |
-92 |
Tremolo |
-93 |
Chorus |
-94 |
Detune |
-95 |
Phaser |
Some MIDI cc values.
cloc sets the cc start location in the volume field. The range is -48dB to 0dB (cloc[0] to cloc[63], respectively). The full range of control is scaled to fit into the selected volume range. For example: cloc[32] will set the cc start point to -24dB; when the volume is below this the CC data is zero; above this the CC data goes smoothly from 0 to maximum.
Out (located on the D-LEV page), when switched from 1 to 0, sends current MIDI note-off (note-on with velocity=0), as well as MIDI Channel Mode Messages 123 (All Notes Off) and 120 (All Sound Off) for the current MIDI channel (set by chan).
Tips & TricksSet bend as high as possible to get the largest smooth and continuous pitch range. This value will likely be limited more by the external synth than by the range of bend (which can accommodate a pitch bend range of up to +/- 10.5 octaves). MIDI controls usually remember where you last set them, which isn’t always desirable. To get around this use Out[0] or chan[0] to disable MIDI transmission when changing cc. Radically mismatched pitch bend ranges can be used as a special effect. MIDI CC data can be 7 or 14 bits. 7 bits are usually sufficient for volume type control, but 14 bits provide increased resolution for pitch type control. When the MIDI module sends 14 bit data it is transmitted MSB first (as per the MIDI standard) in a contiguous running status block to minimize LSB glitching (a major technical blind spot in the MIDI standard). The D-Lev’s internal sound generator still functions even if an external MIDI synthesizer is used, which may be useful for creating blended voices. |
LED tuner display.
The LED visual tuner provides zero lag real-time pitch and volume feedback during play. The pitch circle indicates the note within the octave being played, the octave is shown on a 7-segment display, and the volume level is indicated with a 4-LED thermometer type bargraph with 12dB graduations. Pulse-width modulation (PWM) dimming is employed to dramatically increase the resolution by using peak brightness to indicate volume shading and exact note centers.
All controls are on the DISPLAY page.
LED [0:31] Cent [-99:99] |
LCD [0:31] Note [-11:11] |
Qant [0:4] Oct [-15:15] |
Post [0:3] DISPLAY |
DISPLAY page controls.
LED sets the brightness of all of the tuner LEDs. If you find the tuner distracting, LED[0] turns all the LEDs off.
LCD controls the LCD backlight brightness. LCD[0] turns off the backlight.
Qant controls the tuner pitch brightness quantization. Higher quantization settings cause the brightness to be more centered on one LED, rather than smeared out among two or three LEDs, which makes it easier to see at a glance the note being played in the presence of pitch inaccuracies and/or vibrato. Try Qant[1].
Post selects the tuner pitch and volume inputs:
Post |
Volume |
PItch |
0 |
pre |
pre |
1 |
pre |
post |
2 |
post |
pre |
3 |
post |
post |
Post knob functionality.
Post pitch is useful for visualizing and adjusting the often quite subtle sounding pitch correction controls. Otherwise use pre pitch so that the pitch hand position is displayed on the tuner – this helps you hit the note centers when playing, which helps the pitch corrector operate optimally. Pre volume is with the knee and velocity applied, but not the envelope generator. Post volume includes the envelope generator response.
Cent offsets the global frequency in cents (1/100 note). This is a system-wide offset for the entire D-Lev including all oscillators and filters and MIDI, not just the tuner.
Note offsets the tuner pitch display and doesn’t affect the pitch. It’s handy if you prefer to view one key pattern while actually playing in another key. For instance, Note[-4] displays the key of C pattern on the tuner while the key of E is being played.
Oct also simply offsets the tuner octave display number and doesn’t affect the pitch.
Tips & TricksThe pitch circle is composed of staggered inner and outer rings. Within a ring the notes are spaced a whole step apart, and the rings are offset from each other by a half step. So sequential notes within a ring are whole steps, and switching rings produces a half step. The pitch circle LEDs form two distinct patterns when playing in major or natural minor keys, which are dubbed the “Crown” and “House” patterns: C / Am “Crown” pattern. C# / A#m “House” pattern. It’s easy to infer the key of the music you are playing by recognizing these two patterns and their rotation. Once recognized, the patterns can be a powerful aid to improvisation. The location of C on the pitch circle was chosen mainly to give a vertically symmetric pattern on the pitch circle with C lying on the outer ring. Conveniently, this also places C near the octave display, the value of which morphs over the B/C interval. Clockwise rotation is used to indicate increasing pitch, which follows the convention of the controls. The point at which all volume bargraph LEDs just turn off is -48dB. Similarly, the bottom LED fully on with the others fully off is -36dB; two bottom LEDs fully on is -24dB; three LEDs on is -12dB, and all four LEDs on is 0dB, or the loudest possible audio. -48dB (1/256) is right at the edge of audibility, so when all the volume bargraph LEDs are off the volume is almost certainly low enough that the audience won’t hear anything. Actual volume control continues on to -96dB to ensure inaudibility, but this isn’t displayed. The octave is displayed in hexadecimal format, where the values 10 thru 15 are represented by the letters a through f – don’t confuse these letters with note names! Minimum and maximum pitch are represented by A8, so when you play the highest note possible, or when you step away from the D-Lev, it is normal to see this value “pegged” on the tuner. The D-Lev tuner is sort of the inverse of a guitar tuner (where the note is displayed as a character and the sharp/flat information is displayed graphically). Guitar tuners are often quite sluggish, and their displays aren’t really designed for real-time intuitive feedback during play. |
Pitch Preview block diagram.
Pitch preview is a separate oscillator that provides a way for the player to more effectively monitor the pitch during play, particularly during passages of low volume and silence. This is a feature sometimes found on professional Theremins, but this implementation offers much more control to better tailor it to your needs.
All controls are on the PREVIEW page.
vmod [-63:63] pmod [-63:63] |
prev [0:63] mode [0:12] |
harm [-31:31] tone [-31:31] |
oct [-7:7] PREVIEW |
PREVIEW page controls.
prev sets the volume of the preview signal.
vmod modulates pitch preview volume with the volume hand. Positive values of vmod increase pitch preview volume with increasing volume; vmod[32] makes the pitch preview volume perfectly track the volume of the preset voice. Negative values increase pitch preview volume with decreasing volume and produce a “ducking” effect where the pitch preview signal fades out as the preset voice is fading in, and vice-versa. Some find this useful, others may find it confusing. vmod[0] is a safe starting point as it replicates the behavior of more basic pitch preview implementations on other Theremins (i.e. a constant tone).
pmod modulates pitch preview volume with the pitch hand. Positive values of pmod increase pitch preview volume with increasing pitch. Negative values increase pitch preview volume with decreasing pitch, which can help when higher notes seem much louder than bass notes. Depending on the timbre of the preset, pmod[-15:-25] may give the perception of more balanced pitch preview loudness over the full pitch range. The modulation pivot point is A440.
harm sets the fixed harmonic level; negative values here give odd rather than all harmonics and have a hollow sound, which may make pitch identification a little more difficult. Use higher harmonic levels (positive or negative) to better hear the pitch, and consider using odd harmonics to make the pitch preview timbre more distinct from the preset voice.
oct sets the relative octave of the signal; this is an offset based on the oscillator octave setting. oct[1] will shift the octave up one and may enhance pitch perception of low notes by making the pitch preview signal more distinct. The bank knob offsets it.
tone boosts / cuts the lows and highs together. Rather like the “loudness” knob on some stereos, increasing tone may enhance pitch perception and allow lower settings of prev. Be aware that adding bass and treble may push a preset into digital distortion at high volumes; it maybe be necessary to decrease prev to compensate and stay safely below any distortion level. In mode[12] the tone knob controls treble boost / cut only.
mode controls the mixing of the pitch preview signal, as well as the pitch correction and quantization of it. The pitch preview signal is injected into the L&R (left & right) monitor output only (not the L&R line output). The 4th oscillator modes instead inject the preview oscillator into the synthesizer oscillator section for special effects and the like. Any applied pitch correction is the same as that applied to the preset voice; any hard pitch quantization (note stepping) is entirely separate from pitch correction. Special mode[12] injects a DC signal for stimulus for bells and such.
mode |
Left Synth |
Right Synth |
Left Preview |
Right Preview |
4th Osc |
Pitch Correct |
Hard Quantize |
0 |
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
3 |
|
|
|
|
|
|
|
4 |
|
|
|
|
|
|
|
5 |
|
|
|
|
|
|
|
6 |
|
|
|
|
|
|
|
7 |
|
|
|
|
|
|
|
8 |
|
|
|
|
|
|
|
9 |
|
|
|
|
|
|
|
10 |
|
|
|
|
|
|
|
11 |
|
|
|
|
|
|
|
12 |
|
|
|
|
DC stim. |
|
|
mode knob settings.
Applying either no pitch correction (in the case where the preset voice uses pitch correction) or hard quantization to the pitch preview signal will produce phasing between the pitch preview and preset voices, providing further pitch cues.
Tips & TricksIf you don’t use pitch preview as an aid to playing on pitch, its output can be employed as a fourth independent oscillator. Use mode[0], mode[4], or mode[8], to add timbre, subsonics, or phase / beating effects to the preset voice. For fixed percussive stimulus, set mode[12] and vmod[32]. Adjust the stimulus strength via prev knob and the high frequency content via the tone knob. Use very high knee and midrange velo on the VOLUME page, and a moderate amount of fall can help prevent double triggering. You may hear quantization switching in at low volume if the vmod control on the PITCH page is negative and you are using a preset voice with pitch correction. This is normal behavior and may actually be useful. Different preset voices benefit from different pitch preview settings, and this is why pitch preview settings are saved with each voice preset, rather in the system profile. Some players are able to use a single earpiece to monitor the pitch preview signal, but for others using a single ear makes accurate pitch identification difficult. Placing a small powered monitor behind or to one side of the playing position and aimed away from the audience allows the player to hear the pitch preview audio without the audience hearing it. This eliminates the need use an earpiece and can be less distracting. The use of open headphones for monitoring are another option here. |
DSP synthesizer modules.
The synthesizer section uses digital signal processing (DSP) to produce sounds via a combination of FM, subtractive, and modal synthesis. A group of digital oscillators and a digital noise source feed a variety of digital filters.
The oscillators and noise source each have their own bass and treble controls, as well as dedicated multi-mode filters. Following this are global bass and treble controls, a formant filter bank, and the inharmonic resonator.
The formant bank is used to mimic human vocals, but it’s equally useful at providing the resonances found in wind and stringed instruments, as well as bells and other percussion.
The inharmonic resonator provides resonance fill, pseudo stereo, and ambiance effects, but it can also do passable drums and gongs, and can even human vocals all by itself.
The following sections discuss these synth modules in more detail.
Triple oscillator block diagram.
The triple oscillator consists of a bank of three oscillators, an EQ section, and a multi-mode filter. The oscillators generate reduced-alias harmonic content via phase modulation, with a blend of all and odd harmonics on tap. The harmonic level can be modulated via the pitch and volume hands, and the oscillator phase modulation inputs and outputs can be interconnected for more complex timbres. Oscillator 0 is the “center” and always on the pitch being played, 1 & 2 can be offset from it in multiple ways to give a thicker sound, harmonies, etc.
Most controls are on the 0_OSC, 1_OSC, and FLT_OSC pages.
vmod [-63:63] pmod [-63:63] |
harm [-31:31] treb [-31:31] |
odd [0:31] bass [-31:31] |
oct [-7:7] 0_OSC |
0_OSC page controls (common to all oscillators).
harm sets the static harmonic level. vmod and pmod can be used to modulate this level up or down. Unmodulated harm[0] gives sine waves. Negative harm makes oscillators 1 & 2 outputs sine waves.
vmod modulates the harmonic level with the volume hand. Positive values of vmod increase harmonics with increasing volume; negative values increase harmonics with decreasing volume. Harmonics for most natural sounds increase with increasing volume (i.e. positive vmod). Setting harm[31] and vmod[31] will give sine to full harmonics over the -24dB to 0dB volume range; vmod[42] reduces this range to -12dB to 0dB. harm[18] and vmod[16] are typical for human vocals.
pmod modulates the harmonic level with the pitch hand. Positive values of pmod increase harmonics with increasing pitch; negative values increase harmonics with decreasing pitch. The modulation pivot point is A440.
odd crossfades between all and odd harmonic content. odd[0] gives all harmonics, odd[31] gives only odd harmonics.
oct sets the octave of the oscillators; this also affects pitch preview, but does not affect any filter cutoff frequencies, MIDI, nor the tuner. It is offset by the bank knob.
bass and treb EQ the lows and highs.
offs[-127:127] offs[-127:127] |
hmul[-127:127] hmul[-127:127] |
fm [0:31] sprd [0:63] |
xmix [-31:31] 1_OSC |
1_OSC page controls (mostly oscillators 1 & 2).
offs are used to offset the pitches of oscillators 1 & 2 (+/- 1 octave). These are multiplicative offsets, so pitch ratios are maintained. They are cubic scaled to increase the resolution around the unison (offs[0]) and octave (offs[-127, 127]) regions:
Cubic plateau scaling of offs and hmul.
Steps |
C |
A |
Ratio |
Interval |
offs / hmul |
0 |
C |
A |
1 |
unison |
0 |
1 |
C# |
A# |
1.0595 |
minor second |
35 |
2 |
D |
B |
1.1225 |
major second |
44 |
3 |
D# |
C |
1.1892 |
minor third |
51 |
4 |
E |
C# |
1.2599 |
major third |
56 |
5 |
F |
D |
1.3348 |
perfect fourth |
60 |
6 |
F# |
D# |
1.4142 |
diminished fifth |
64 |
7 |
G |
E |
1.4983 |
perfect fifth |
68 |
8 |
G# |
F |
1.5874 |
minor sixth |
72 |
9 |
A |
F# |
1.6818 |
major sixth |
77 |
10 |
A# |
G |
1.7818 |
minor seventh |
84 |
11 |
B |
G# |
1.8877 |
major seventh |
93 |
12 |
C |
A |
2 |
octave |
127 |
Some useful offs and hmul values for various musical intervals.
hmul are multiplicative pitch offsets of the phase modulation units within oscillators 1 & 2 (+/- 1 octave) and are relative to their associated offs values (offs offsets hmul). They are scaled the same as offs, and are useful for introducing pitch-dependent beating and ring-modulation type harmonics.
sprd introduces an additive pitch offset to oscillator 1 and a subtractive pitch offset to oscillator 2; the pitch of oscillator 0 is unaffected. This is useful for unison and beating type effects when you want the beating rate to be independent of pitch.
fm cross-fades the phase modulation input with the output of the phase modulation (PM) unit within each oscillator:
Single oscillator block diagram.
The phase modulation outputs of oscillator 1 & 2 are combined and sent to the phase modulation input of oscillator 0, and the phase modulation output of oscillator 0 is sent to the phase modulation inputs of oscillators 1 & 2. With fm[0] all oscillators only use their internal phase modulation units to create harmonics; fm[31] makes them fully cross-coupled.
Triple oscillator phase modulation cross-coupling.
fm can radically transform the timbre and introduce some fairly wild harmonics, particularly when offs and/or hmul are non-zero. Use it to produce scratchy records, trumpeting elephants, UFO invasions, and other sonic mayhem.
xmix cross-fades the audio output of oscillators 1 & 2 with that of oscillator 0. xmix[0] gives only oscillator 0; xmix[31] only 1 & 2. Similarly, it cross-fades phase modulation outputs of the oscillators, the mix of which is used to pulse width modulate the noise generator. It is linearly scaled, so xmix[21] produces an equal mix of all three oscillators / noise modulation. Negative settings of xmix cross-fade between oscillator 0, and the multiplication of it with the sum of oscillators 1 & 2, which produces a ring modulation effect. In this mode, oscillators 1 & 2 are set to A440, which can be offset via the offs, sprd, and oct knobs, but not the bank knob on the main page.
vmod [-63:63] pmod [-63:63] |
freq [27:7040] osc [0:63] |
mode [-4:4] xmix [-31:31] |
reso [0:63] FLT_OSC |
FLT_OSC page controls (multi-mode filter).
osc sets the oscillator audio output level. Reduce this if the filter is overloading.
freq sets the center or corner frequency of the multi-mode filter. The frequency is displayed in Hz, and the increments are 50 cents. It is offset by the bank knob.
vmod modulates the filter frequency with the volume hand. Positive values of vmod increase the frequency with increasing volume, and negative values increase filter frequency with decreasing volume.
pmod modulates the multi-mode filter frequency with the pitch hand. Positive values of pmod increase the filter frequency with increasing pitch, and negative values increase filter frequency with decreasing pitch. The modulation pivot point is where the pitch hand normally plays an A440, so setting freq[440] and pmod[32] will make the filter frequency track the oscillator frequency (this is only true if oct[0]; if oct[1] then use freq[880], etc.).
reso sets the resonance of the multi-mode filter. This is analogous to Q (or the inverse of damping) but is scaled to give useful range of resonance behavior, from highly damped to infinite sustain. Higher reso increases peak gain, so you my have to reduce osc to keep the filter from overloading.
mode selects the filtering mode and order of the multi-mode filter:
mode |
function |
order |
-4 |
notch |
2 |
-3 |
low-pass |
2 |
-2 |
band-pass |
2 |
-1 |
high-pass |
2 |
0 |
bypass |
n/a |
1 |
high-pass |
4 |
2 |
band-pass |
4 |
3 |
low-pass |
4 |
4 |
notch |
4 |
Filter mode functionality.
Higher orders are more effective at filtering in general and tend to sound “synthy.” When constructing a more natural sounding preset a second order filter is usually what you’re looking for.
The hollow “phasey” sounding notch filter modes benefit from lower reso settings, otherwise they can be hard to hear.
xmix cross-fades the filter input and output. xmix[0] completely bypasses the filter (as does mode[0]); xmix[31] gives full filter output. Mixing some input into the output can be useful when you need milder emphasis, but you usually want xmix[31] when using the filter. Negative xmix settings invert the mixed signal, which might be useful for phasing effects.
Tips & TricksA little odd can sometimes add realism to a preset. Here are some basic starting points (with all 1_OSC controls zeroed out):
Vocal Cello To reset the relative oscillator phases, save and then reload the preset after messing with any controls that might influence multiple fixed phases. The settings offs[-127,0,127], hmul[-127,0,127], and sprd[0] are guaranteed to have no phase drift, so any preset voice that relies on multiple oscillators using these settings should sound the same even over long periods of time. Use damp and dloc on the VOLUME page to dynamically damp the multi-mode filter reso resonance. For milder sounding “classical” ring modulation, set harm to a negative value, which causes oscillators 1 & 2 to be sine waves. To make the ring modulation zero beat on a certain note, set the offs knobs as per the musical intervals table shown previously. The reference zero beat is A4 unless offset. For instance, offs[51] sets the zero beat to C5. In ring modulation mode, the offs knobs can offset oscillators 1 & 2 up to 1 +/- octave from A4. For larger offsets, use the oct knob to offset all oscillators, then compensate only oscillator 0 for this via the bank knob on the main page. For example, to have oscillators 1 & 2 run at A2, set oct[-2] and bank[2]. |
Noise generator block diagram.
The noise generator consists of a Voss-McCartney pink noise source which can be amplitude modulated (turned on and off) by the phase modulation output of the triple oscillator. This is followed by an EQ section and a multi-mode filter.
Most controls are on the NOISE and FLT_NOISE pages.
vmod [-63:63] pmod [-63:63] |
nois [0:63] treb [-31:31] |
puls [0:31] bass [-31:31] |
duty [0:31] NOISE |
NOISE page controls.
nois sets the noise audio level. nois[0] turns off the noise section and also routes the oscillator through the noise EQ and multi-mode filter. Reduce this if the noise multi-mode filter or bass and treble EQ are overloading.
vmod modulates the noise level above the knee point set by kloc – the noise level below kloc is unaffected. Positive values of vmod make the noise level increase more than the oscillator level; negative values make the noise level increase less, or even reverse. vmod[‑32] gives a constant noise level above the knee, and more negative values of vmod cause the noise level to dip back down.
pmod modulates the noise level with the pitch hand. Positive values of pmod increase the noise level with increasing pitch; negative values increase the noise level with decreasing pitch. The modulation pivot point is where the pitch hand normally plays an A440 (with oscillator oct[0]).
puls and duty modulate the noise level with the triple oscillator phase modulation output mix. puls controls the depth of modulation: puls[0] turns modulation entirely off giving constant noise; below puls[8] or so the noise doesn’t turn fully off; above this the noise is fully modulated and higher puls values will tend to decrease the on time. Whereas increasing duty will increase the on time. These controls interact quite a bit, so you may have to play with them to find a setting you like. The oscillator harm level will influence modulation depth too.
bass and treb EQ the lows and highs.
vmod [-63:63] pmod [-63:63] |
freq [27:7040] nois [0:63] |
mode [-4:4] xmix [-31:31] |
reso [0:63] FLT_NOISE |
FLT_NOISE page controls (multi-mode filter).
nois is a copy of the same control on the NOISE page (for your convenience).
freq, vmod, pmod, reso, mode, xmix – same as the triple oscillator multi-mode filter (see that section for descriptions).
Tips & TricksWhen exploring the effects of puls and duty it can be helpful to turn the oscillator volume off and maximize the harmonic level while listening to subsonic pulses: osc[0], harm[31], and oct[-7]. A good place to start with human breath and vocal noise is to roll off the highs and set noise filter cutoff to 2nd order band-pass at a mouth resonance:
Female vocal noise settings. The settings are similar for human humming, but with the noise filter cutoff set to a nasal resonance:
Male humming noise settings. This makes for a good cello bowing noise:
Cello bowing noise settings. |
Formant bank block diagram.
The formant bank is a parallel combination of eight second order band-pass filters. Each filter has its own center frequency and level control, but the filters are paired up in order to share common center frequency modulation and resonance controls.
All controls are on the 0_FORM, 1_FORM, 2_FORM, and 3_FORM pages.
vmod [-63:63] pmod [-63:63] |
freq [27:7040] levl [-63:63] |
freq [27:7040] levl [-63:63] |
reso [-63:63] 0_FORM |
0_FORM page controls (other pages are the same).
freq sets the center frequency of the filter. The frequency is displayed in Hz, and the increments are 50 cents. Each freq is associated with the levl to the right. Offset by the bank knob.
levl sets the audio input level. levl[0] turns off the filter. Reduce this if the formant filter is overloading. Setting all eight levl[0] will completely bypass the formant filter bank. Negative values will invert the phase of the filter, which can be used to eliminate the anti-resonance notch between adjacent formants or to produce a steeper filter skirt.
vmod modulates the filter center frequency with the volume hand. Positive values of vmod increase the frequency with increasing volume, and negative values increase filter frequency with decreasing volume.
pmod modulates the filter center frequency with the pitch hand. Positive values of pmod increase the filter frequency with increasing pitch, and negative values increase filter frequency with decreasing pitch. The modulation pivot point is where the pitch hand normally plays an A440, so setting freq[440] and pmod[32] will make the filter frequency track the oscillator frequency.
reso sets the resonance of the filter. This is analogous to Q (or the inverse of damping) but is scaled to give useful range of resonance behavior, from highly damped to infinite sustain. Higher reso increases peak gain, so you my have to reduce levl to keep the filter from overloading.
Tips & TricksYou must set all eight levl[0] in order to bypass the formant filter bank. If any levl is non- zero then the bank will not be bypassed. Use damp and dloc on the VOLUME page to dynamically damp formant reso resonances. A spooky effect is to space out all eight high reso formants and pmod them so that the lowest formant modulates in one direction, the next modulates in the opposite direction, etc. You can create resonant beating effects (e.g. like real bells do) by setting up two identical formants on two different pages, and applying a small amount of pmod or vmod to only one of them. Strings and bells have lots of resonances, certainly more than 8! Use the formant bank for the lowest prominent resonances, then fill in the top resonances with the inharmonic resonator.
A set of (lower) cello formants. Human vocals consist of (in order of increasing center frequency): throat radiation, two mouth resonances, and several nasal resonances. All have similar reso settings except for the throat radiation, which should have a lower reso setting to spread it out. Here too, the inharmonic resonator can be used to back-fill additional nasal resonances.
A set of female vocal formants. |
Inharmonic resonator block diagram.
The inharmonic resonator is a delay-based filter which consists of an absorptive all-pass reverberator in series with a simple delay. The output is recirculated to form a nested comb filter, which increases the Q / decay time and accentuates the resonant peaks and anti-resonant valleys. The all-pass reverberator is used to break up the strict harmonic resonance locations, which enables the resonator to produce realistic string body resonances, drums, bells, gongs, and even human vocals. With longer delay times it can provide ersatz small room ambiance, and a pseudo stereo effect which can considerably pep up a preset.
Most controls are on the RESON page.
freq [46:9600] tap [-63:63] |
hpf [27:7040] harm [-63:63] |
mode [-2:2] xmix [-31:31] |
reso [-63:63] RESON |
RESON page controls.
freq sets the inverse of the total delay time, where the lowest resonance roughly corresponds to the displayed frequency (Hz) if reso is positive. If reso is negative the frequency of the lowest resonance drops by an octave. Not offset by the bank knob.
tap sets the ratio of absorptive all-pass reverberator delay time to simple delay time. tap[0] divides the total delay time equally between them; positive values make the all-pass delay longer than the simple delay; negative values make it shorter. Non-zero values can help jumble the resonance peaks.
harm sets the all-pass internal feedback, and is used to jumble the otherwise evenly spaced resonances. harm[0] disables all-pass feedback and converts the all-pass section into a simple delay. Some settings of harm drive the lowest resonance even lower, which can dramatically boost the bass.
reso sets the overall feedback. High positive and negative values will cause the resonator to “ring” like a high Q filter. Negative values invert the feedback and provide a more hollow sound. reso also controls a mild low-pass filter that tames “zinging” with low to moderate feedback levels.
hpf sets the cutoff frequency of the 4th order high pass filter at the input of the resonator. Quite often you don’t want the resonator processing lower frequencies, such as when blending it with the formant bank or generating pseudo stereo. Not offset by the bank knob.
xmix cross-fades the resonator input and output. xmix[0] completely bypasses the resonator; xmix[-31,31] give full resonator output. The input / output mix directly sets the height of the resonance peaks, and is also critical to getting a good pseudo stereo effect. Negative values of xmix invert the output, which may help when blending with the formant bank.
mode selects a number of useful input/output mixing modes:
mode |
I/O mix |
-2 |
Series stereo |
-1 |
Series mono |
0 |
Parallel high pass filter |
1 |
Parallel mono |
2 |
Parallel stereo |
Resonator mode functionality.
Series modes place the resonator in series with the formant bank, which is useful for ambiance. Parallel modes place the resonator in parallel with the formant bank, which combines all the resonances together and is generally used for formant fill.
mode[-2,2] are pseudo stereo modes where the resonator output is added and subtracted from the input to produce L & R; the rest of the modes are mono (where the output is combined identically with L & R).
mode[0] bypasses the resonator, but does not bypass the high pass filter at the input, so you can still use the hpf and xmix knobs if desired.
Tips & TricksChanging freq or tap during play may produce clicks, pops, or “boing” sounds. The lower you set freq the more resonances you will get, more tightly packed together. When using parallel modes for high frequency resonance fill, set hpf at or somewhat above the highest formant frequency. Experiment with positive and negative xmix to get the proper blend. freq, tap, and harm can also strongly affect the blend. mode[2] high frequency fill can simultaneously provide pseudo stereo, though the resonance frequencies and blend region will be different for L & R. Some useful starting points:
Male vocal Cello fill
Bell Room ambience To better understand exactly what the inharmonic resonator is doing to the signal and how the various parameters behave, choose a voice preset or create one that has a harmonic-rich single oscillator. Set oct to lower the pitch until it is about 1 or 2Hz with your arm in the rest position, so that you hear a tick, tick, tick impulse sound. Now you can experiment with the various parameters on the RESON screen and easily hear the resulting changes. You may note that having the inharmonic resonator in the signal path can make the impulses sound like the beat of a drum with adjustable tension, brightness, and sustain. Use damp and dloc on the VOLUME page to dynamically damp the reso decay time. |
These are a few miscellaneous controls that weren’t covered in the previous sections.
Most controls are on the LEVELS page.
Mon [0:63] Line [0:63] |
prev [-63:63] Treb [-31:31] |
osc [0:63] Bass [-31:31] |
nois [0:63] LEVELS |
LEVELS page controls.
Mon controls the volume of the MONITOR output. This is a digital control, so reducing it also reduces the resolution of the audio output. For your convenience this control also appears on the main D-LEV page.
Line controls the volume of the LINE output. This is a digital control, so reducing it also reduces the resolution of the audio output.
Bass and Treb EQ the lows and highs. Use these to compensate for sonic deficiencies of your PA / amplifier / speaker setup, not to EQ any specific voice.
Out (located on the D-LEV page) when set enables all audio and MIDI output, and when pressed initiates ACAL.
bank (located on the D-LEV page) is a bank control which offsets the global pitch reference up to +/- 3 octaves. This control offsets the LED tuner, the triple oscillator, pitch preview, MIDI, filters, and any parameters being actively modulated via pmod.
Erev (located on the SYSTEM page) reverses the rotational sense of all encoders (knobs). This is set at the “factory” and you’ll never have reason touch it unless you replace the encoders. (There unfortunately doesn’t seem to be an industry standard here).
Tips & TricksMon and Line control the digital levels presented to the digital-to-analog converters right at the very end, so you can’t use them to address internal filter overloading, though they can help to prevent overloading in the external DAC box. In general, best practices dictate that you should keep the digital level as high as possible and use any analog volume controls to reduce the volume. But, even though they reduce the audio resolution, it’s acceptable to use Mon and Line to control the volume levels. Indeed, the osc, nois, prev, levl, xmix, etc. controls do this too. The D-Lev internal resolution is 32 bits, with 24 bits presented to the digital-to-analog converters, so there are plenty of bits to go around. And any reduction in resolution is accompanied by a reduction in volume, so the quantization noise should remain relatively constant. If you want the D-Lev muted at power-up, set Out[0] and save your system profile. Use the bank knob to transpose a voice preset while retaining the proper alignment of all pitch-based elements that make it up. |
Many parameters in the DSP synthesizer can be modulated or controlled by the locations of the hands in the pitch and volume fields. Understanding the sources of these inputs can help to remove some of the mystery behind their functionality and use.
Volume field processing – modulation sources / taps.
The processing of the volume field has four different tap points:
1.The first tap is used to set the point in the volume field for damping the envelope generator and damping all filters. It employs the most linear form of the volume hand response so the damping point can be located far away from more dynamic elements such as velocity and the knee, thus avoiding accidental damping during play.
2.The second tap is after the velocity has been applied, and this sets the location of the knee in the volume field.
3.The third tap point is after the knee has been introduced. This is used to locate the MIDI thresholds for note on/off and control change in the volume field, as well as for pre-monitoring of the volume level on the LED tuner.
4.The final tap point is after the envelope generator and pitch center modulation. This is used to modulate the pitch correction rate, as the vmod modulation source for all filters and such, and for post-monitoring of the volume level on the LED tuner.
Pitch field processing – modulation sources / taps.
Pitch field processing has only two tap points:
1.The first tap is used for pre-monitoring of the pitch on the LED tuner.
2.The second tap point is after pitch correction has been applied. It is employed as the pmod modulation source for all filters and such, as well as for post-monitoring of the pitch on the LED tuner.
Synth voice presets (left) – System profiles (right; note upper case Stor & Load).
A preset or profile is a group of knob settings stored in a memory slot. The preset / profile system manages this memory, and enables you to quickly and easily store and recall presets / profiles. So if you want to switch to a clarinet sound you can simply load its preset rather than twiddle all the knobs until you finally get a clarinet sound. If you’ve created a violin sound you really like, you can save all the knob settings at once as a preset. If someone else is using your D-Lev and prefers different pitch / volume field settings than you do, those can be stored in a separate profile.
System profiles and voice presets are managed by two separate systems. System profiles store basic setup settings that that can be considered global player preferences, and once set they usually don’t change very often, while voice presets store settings that change with the chosen synthesizer sound. To tell them apart on the screen, system profile knobs begin with a Capital Letter (Title Case) and voice preset knobs are all lower case.
There are 6 system profile slots and 250 voice preset slots. System profile 0 and voice preset 0 are loaded at power-up.
All system profile and voice preset slots can be read, written, backed up, and restored via the USB serial port and the D-Lev librarian software running on a Linux, Windows, or Mac PC.
All controls are on the D-LEV and SYSTEM pages.
Mon [0:63] Out [0:1] |
Vcal[-127:127] Pcal[-127:127] |
stor [0:249] bank [-7:7] |
load [0:249] D-LEV |
D-LEV page preset system controls.
Wait [0:99] Auto [0:249] |
P<>V [0:3] 50Hz [0:1] |
Stor [0:5] Erev [0:1] |
Load [0:5] SYSTEM |
SYSTEM page profile system controls.
Load & Stor — All voice presets are managed via the load and stor knobs on the D-LEV page. All system profiles are managed via the Load and Stor knobs on the SYSTEM page. The behavior described below applies to both sets of controls.
Turning the load knob immediately loads the preset / profile, and automatically sets the store knob value to match the load value.
Pressing the stor knob once “arms” the write process, blinks the center pitch LED, and displays the screen label !WR! instead of stor. Pressing the stor knob a second time performs the actual preset / profile write, which automatically sets the load slot to match the stor slot.
While the write process is armed, turning any knob, or pressing any knob other than stor, will disarm and cancel the write process.
So stor follows load when loading slots, and load follows stor when writing slots.
Tips & TricksTo copy a preset to a different slot, on the D-LEV page set the load knob to the voice you want to copy, then set the stor knob to the slot you want to copy it to, then press the stor knob twice. The procedure is the same for copying profiles, but you would of course use the Load and Stor knobs on the SYSTEM page. Whenever you significantly alter your system profile, consider saving it to at least one other additional slot for safekeeping. Periodically back up all of your voice presets and system profiles using the librarian software to prevent the loss of those that you really care about. The safest procedure if you wish to experiment and develop your own voices is to load a desired starting preset and immediately store it to a slot that you don’t mind overwriting. Now you can safely modify the new preset without the risk of altering the original. When developing a new voice or modifying an existing voice, consider using successive voice preset slots to store intermediate variations as you work. Not all changes are improvements, and the ability to easily go back makes the editing process less risky. Write your favorite voice preset to slot 0 so it’s ready for you immediately after at power-up. The value of load following stor when writing to a slot is confirmation that the write actually took place. The value of stor following load when loading a slot is a convenience for safety purposes. Unless you are copying from one slot to another, you almost always want to write to the slot that is currently loaded (because you edited the preset). Use the librarian to trade voice preset files with other D-Lev owners! |
In order get the most out of any Theremin, the fields must be properly aligned. The D-Lev is uniquely capable of being calibrated to exhibit ideal playing characteristics for virtually any playing style, but this capability necessitates a fair number of parameters to adjust and knobs to twiddle. But the good news is that once set, these parameters can be saved to a system profile, and then rarely if ever need to be touched again.
The main goal is to linearize the fields, which is accomplished by adjusting the field controls until you get the same pitch / volume change with an open & closed hand gesture everywhere in the playing zone. Aligning the fields doesn’t require any special equipment, just the built-in LED tuner and your hand. And it isn’t particularly difficult, though it can be a bit confusing the first time through.
Unlike an analog Theremin, the D-Lev near field is linear. So the main take-away for adjusting the fields is this: hand capacitance very much dominates in the near field, so the near field is the standard, and we adjust the rest of the field to match it.
Taken as a whole, the D-Lev field adjustments can be rather daunting as there are quite a few more options and knobs than Thereminists usually encounter. But they can be adjusted one by one in a systematic and orderly fashion, and with a minimum of interaction. The influences of the pitch field knobs are presented below, but the following applies equally to the volume field as the knobs and internal processing are largely identical.
The goal: high, mid, and low pitch sections equally sized and correctly located in the full field.
Left: The Pcal knob is set too low, compressing the lower pitch sections. Right: The Pcal knob is set too high, expanding the lower pitch sections.
The Pcal knob is exactly like the pitch null knob on an analog Theremin, and so is naturally the most critical adjustment in terms of field linearity. It affects the far-field the most, the mid-field some, and the near-field very little (and because of this, the near-field sets the standard for linearity and sensitivity!). To set Pcal, compare open/closed hand gestures in the near- and far-fields, and adjust Pcal until you get the same number of note steps on the LED tuner. Whenever you perform an ACAL, an internal offset is calculated and combined with Pcal (and Vcal).
Left: A lower setting of the Sens knob. Right: A higher setting of the Sens knob.
The Sens knob controls the sensitivity, or overall note spacing of the field. Adjust the Sens knob until you feel comfortable with the note spacing, which you can observe directly on the LED tuner. To minimize the influence of Pcal, do this in the near-field right at the antenna. In particular, if you have played an analog Theremin for a long time and have developed an elaborate fingering technique, appropriate adjustment of the Sens knob will enable you to adapt quickly to the D-Lev pitch field – and it to you!
Left: The Ofs+ knob is set too low, shifting all pitches too close to the antenna. Right: The Ofs+ knob is set too high, shifting them too far away.
The Ofs+ knob shifts the entire pitch field. If you find yourself reaching for the bank knob and consistently turning it in one direction a lot, you should instead adjust the Ofs+ knob to better locate the pitches in the field. Proper adjustment of this knob will also help you to feel more comfortable playing the D-Lev.
ACAL is a process that simultaneously auto-calibrates both the pitch and volume fields. With your body in the playing position, initiate an ACAL by pressing and releasing the Out knob on the main D-LEV page. Use the time from the press (set by the Wait knob on the SYSTEM page) to position your arms and hands (but keep your body fixed in the playing position) into an easily repeatable orientation – it usually work best to keep your arms and hands back at your body and away from the antennas. A loose arms-crossed pose works well, though Pcal and Vcal can be adjusted to compensate for just about any consistent positioning of your body, hands, arms, legs, etc.
Suggested “casual cadaver” pose to keep arms & hands retracted during ACAL.
The Wait timer starts when you press the Out knob, not when you release it. The internal ACAL event happens in an instant at the very end of the Wait timeout, so feel free to squirm around until then. The center pitch LED blinks at a 2Hz rate during the Wait interval, so you can count the blinks to know exactly when the time period will end.
To confirm that the ACAL was good, or is still good, simply perform another one. If the tuner doesn’t jump at the end you’re golden.
As a convenience, the audio will automatically mute during the Wait period. To unmute it, move your hand to turn off all of the volume LEDs. This behavior may not be obvious if you play with a non-traditional volume field, i.e. if V_FIELD Sens is positive and closer=louder, because the unmuting happens naturally at the end of ACAL.
ACAL isn’t comprehensive as it only offsets the Pcal and Vcal values, but these are the primary environmental capacitance adjustments.
Pitch field setup open & closed hand gesture.
1.Stand (or sit, if that is how you play) in your normal playing position and keep your body stationary throughout the steps below. Perform an ACAL like you normally do. It may actually be beneficial to turn off the audio via Out[0] and just watch the tuner for pitch feedback as the field calibration procedure is largely mechanical until the end.
2.On the DISPLAY page set Post[0] so the pitch LEDs show your hand position. On the P_FIELD page set Lift[0] to disable this non-linearity. If you are starting from total scratch, set everything on the P_FIELD page like this:
Pcal 32 Lift 0 |
Lin 0 Dith 2 |
Ofs- 64 Ofs+ 190 |
Sens 64 P_FIELD |
3.Fully open your hand and extend your arm, your fingers pointing at the center of the antenna, your fingertips near but not touching the antenna. Watch the tuner and try not to move your arm as you fully close your hand to make a fist, and then fully open your hand, doing this several times. It helps to open and close your hand quickly and repeatedly rather than slowly. The change in pitch (count the number of half-steps or semitones between the two hand gestures) is the near-field sensitivity.
4.Fully open your hand and retract your arm so your hand is back near your body, with fingers still pointing at the antenna. Watch the tuner and perform the same open / closed hand gesture. The change in pitch here is the far-field sensitivity. Adjust Pcal until this is the same as the near-field sensitivity. Then use the open / closed hand gesture to check the entire field for the same sensitivity everywhere.
5.Adjust Sens until the note step size best matches your playing technique. It’s best to do this adjustment with your hand in the near-field.
6.Play some tunes with various voices and adjust Ofs+ until the pitch field is comfortably positioned, with A440 somewhere in the mid-field and where you like it. Don’t forget to save your system profile!
Optional: Do the open / closed hand gesture at various distances from the antenna while watching the tuner. Some adjustment of Lin may improve minor near-field and mid-field sensitivity inconsistencies, but Pcal should be your go-to control for balancing near-field and far-field sensitivity. Lin strongly interacts with the other controls, so this is the most tedious adjustment. If it all seems too confusing, just leave Lin at zero as it only mildly affects linearity. If you actually prefer a non-linear near-field, try increasing Lift somewhat. By adjusting Ofs- and then compensating with Ofs+ you can move the point at which the Lift non-linearity starts to ramp in.
The procedure for setting up the volume field is mostly the same as setting up the pitch field, though the open / closed hand gesture must be performed vertically, which can be a bit awkward.
Volume field setup open and closed hand gesture.
1.Stand (or sit, if that is how you play) in your normal playing position and keep your body stationary throughout the steps below. Perform an ACAL like you normally do.
2.On the DISPLAY page set Post[0] so the volume LEDs show your hand position. On the VOLUME page set knee[0], and on the V_FIELD page set Drop[0] to disable these non-linearities. If you are starting from total scratch, set everything on the V_FIELD page like this:
Vcal 32 Drop 0 |
Lin 0 Dith 2 |
Ofs- 64 Ofs+ 120 |
Sens -50 V_FIELD |
3.Fully open your hand and extend your arm, your fingers pointing down at the center of the antenna, your fingertips very near but not touching the antenna. Adjust Ofs+ until all of the volume LEDs just go out.
4.Watch the tuner and try not to move your arm as you fully close and open your hand. Adjust Sens (and Ofs+ as necessary to stay near the antenna) until this causes only the bottom LED to turn fully on and off. Move your entire arm up and down slightly to check if the LED is fully on or off.
5.Work your way up the LEDs, adjusting Vcal so that your open / closed hand gesture causes exactly a one full LED change anywhere in the volume field.
6.If you play with non-traditional volume sense (nearer = louder) at this point note the negative value of Sens and turn the knob CW to make it positive (e.g. -52 => 52).
7.Turn any knee back on (reload your voice preset) and play some tunes with various voices. Adjust Ofs+ until the loudest portion of the volume field is comfortably positioned where you like it. Adjust Drop to non-linearly shape the loudest and quietest portions. Drop can also be used provide more comfortable clearance between your hand and the antenna if you play with traditional volume sense and a plate antenna.
Don’t forget to save your system profile!
Linearity of the volume field is much less critical than that of the pitch field. So it’s absolutely fine to simply set the volume field Lin to zero. You can experiment around with Lin if you like, but it isn’t necessary at all, and any perceived effect will be exceedingly subtle.
Believe it or not, you really don’t want a perfectly linear volume field. It sounds super desirable, but you would be flapping your arm like a bird to achieve even mild dynamics. No, what you want is a field with higher sensitivity at lower volumes, a field that quickly ramps up to a certain loudness, with an expanded highest volume region. The goal is to keep hand movements to a comfortable and controllable minimum, and expressiveness to a maximum.
So why go to all the trouble to linearize the volume field? To make it non-linear in very controlled and predictable ways – which is precisely what Drop, knee, and kloc do. Lower volumes are affected most, so these knobs are used to make the volume go more directly to silence. They can fix “leakage” or “ghost gliss” issues, and if you play with a traditional volume field sense they can eliminate the need for hand travel too near the volume antenna.
Drop[5], Drop[16], and Drop[31] volume field response (with knee[0]).
The Drop knob applies a 2nd order downward curvature to the volume field, high settings of which form a non-linear soft knee, similar to the response of an analog Theremin.
knee[3], knee[10], and knee[31] volume field response with kloc[48] (and Drop[0]).
The knee and kloc knobs apply a secondary downward linear slope or “gain break” to the volume field. For volume levels louder than kloc there is no change to the response, but for volume levels softer than kloc a higher sensitivity kicks in, with the increase set by knee. The volume field in both sections remains linear, but hand movements at lower volumes will cause larger volume changes.
Drop and knee settings can also minimize the influence of your body near the volume antenna. Without them, it may be difficult to reach the extremes of full volume or silence due to the nearby bulk capacitance of your body.
Analog Theremins usually have a volume response that is quite non-linear near the antenna and “baked in” to the design. The Drop, knee, and kloc knobs set this to wherever and however strongly you like, allowing you to keep your hand farther away from the volume antenna at all times, making play more comfortable, and accidental contact during play much less likely.
Tips & TricksKeep in mind that the near-field is the "sweet spot" in terms of responding mainly to your hand capacitance, and less to your body's capacitance as well as to other external disturbances. This region is also the least dependent on Pcal and the ACAL process. And this region isn't non-linear like on most analog Theremins. For all of these reasons it is recommended that you set up the pitch field so that you generally play nearer to the pitch antenna than farther from it. Not as sexy for an audience to watch unfortunately, but it will give you much better pitch control because your hand capacitance will tend to swamp environmental interference. Similarly but somewhat less critically, the near-field is the “sweet spot” for playing the volume field. Playing it farther out can introduce problematic interaction with one’s body capacitance, particularly when playing in a seated position. Over years of playing an analog Theremin, some players become highly acclimated to a very non-linear volume field, which can be emulated by the Drop knob. You should experiment a lot with knee and kloc too, as the knee strength and location can profoundly alter the volume field response. For most types of voice presets, a good rule of thumb is to set Drop, knee, and kloc to require approximately the same hand movement distance going from inaudible to moderate volume (all LEDs dark to bottom 3 LEDs fully lit), and from moderate to full volume(bottom 3 LEDs fully lit to all LEDs fully lit). The Lift knob on the P_Field page applies a non-linear second order rise to the pitch near-field. If you prefer an analog type a response, use this knob to “tighten up” the field near the antenna. Higher settings will produce the classic “squealing” sound of touching the pitch antenna, but of course linearity will go out the window. If you use traditional volume sense (negative Sens on the V_FIELD page) you can use the auto-muting feature of the ACAL process to temporarily mute and unmute the D-Lev. Note that Drop processing is applied first, with knee and kloc afterward. So the Drop knob obviously magnifies the effect of the knee knob on the VOLUME page. To provide more resolution when setting up the volume field, on the SYSTEM page set P<>V[1] followed by an ACAL. This will display the volume hand position on the tuner pitch circle as well. Set P<>V[0] and do another ACAL when you’re done. The onset of action of Lift can be adjusted by altering the associated Ofs- and Ofs+ knobs. To increase the region over which it operates, increase Ofs- some, then decrease Ofs+ to position the field back to where it was. |
There are situations where it’s desirable for the D-Lev to operate unattended for long periods of time. The D-Lev may be part of an interactive sculpture, or it could be sitting in a merchant’s showroom or on a trade show floor, or the musician may be investigating electrical noise.
Regardless of the Theremin technology, one will encounter the general problem of oscillator drift due to environmental factors that are beyond one’s control. Over time the calibration will go out of whack, and take the response of the unit along with it.
To accommodate these scenarios, the D-Lev software has a so called "sculpture mode." The mode is engaged and controlled via a single Auto[0:249] knob on the SYSTEM page. Auto[0] disables the mode; Auto[x] cycles through x voice presets [0:x-1] with a pitch hysteresis range of [A0:A2]. Auto[1] is slightly special in that it only uses preset 0 (as expected) but never reloads it.
To use this mode, set Auto to however many voices you want to cycle through, where the sequence starts at voice preset 0 and proceeds in a positive direction through the presets. Perform an ACAL and then walk away from the D-Lev. The field null points will automatically float to a pitch of A0 and a volume of -48dB. Moving closer will cause the null adaption rate to dramatically lower, so interaction with the unit won’t cause too noticeable of a droop in pitch and volume over a short period of time. If one gets close enough for the pitch to reach A2 then preset cycling is armed. If one then moves away until the pitch drops below A0 the voice preset will increment.
Tips & TricksUse positive Sens on the V_FIELD page to silence the unit when no one is around. Lower settings of Sens on the V_FIELD page will give a larger volume field. You can also use Sens[0] along with high Ofs+ to permanently enable maximum volume. Sculpture mode Auto[1] is generally useful for observing electrical interference and grounding issues via the pitch circle LEDs.. Using P<>V, sculpture mode can operate using a single field rather than the usual two separate pitch and volume fields.
Typical sculpture mode field settings.
Some Auto settings. Left: preset 0 only; Right: cycle through presets [0:8]. |
Use the provided librarian software and the following procedures to manage the software and presets / profiles in your D-Lev. With the librarian you can:
•Save and restore snapshots of the entire system state.
•Reset the D-Lev to the original “factory fresh” state.
•Update or roll back the software.
•Save / restore / arrange presets and profiles, in bulk or individually.
CAUTION: These procedures can overwrite any and all editing and customization that you have performed! It is strongly suggested that you take a system snapshot (see below) before making any changes to your system.
There are a variety of file containers and commands associated with them:
Type |
Extension |
Contains |
Commands |
Snapshot |
*.eeprom |
Software, presets, profiles |
pump -f *.eeprom dump -f *.eeprom |
Software |
*.spi |
Software |
pump -f *.spi dump -f *.spi |
Presets |
*.pre |
All presets |
pump -f *.pre dump -f *.pre |
Profiles |
*.pro |
All profiles |
pump -f *.pro dump -f *.pro |
Preset |
*.dlp |
Individual preset |
pump -f *.dlp -s # dump -f *.dlp -s # |
Profile |
*.dlp |
Individual profile |
pump -f *.dlp -s # -pro dump -f *.dlp -s # -pro |
This installs the librarian software on your PC. You can skip step 1 if running the librarian from the provided thumb drive. For Linux the executable is d-lin, for Windows d-win, for Intel Macs d-mac, and for M1 Macs d-mm1. The Windows version of the librarian is shown here with a port of 2. Example program names, serial port numbers, and file names should be substituted with real numbers / names.
1.Unzip d-lib_*.zip to a convenient directory.
2.Open a command console in the directory.
3.Connect the D-Lev USB serial dongle to your PC. This may also provide +5V power to the D-Lev, as well as field ground if your PC is grounded at the mains outlet.
4.If your PC is Windows run the d-win.exe file. If your PC is Linux run the d-lin file. If your PC is a Mac with M1 processor run the d-mm1 file, otherwise run the d-mac file.
5.List the available serial ports (e.g. Windows):
d-win port -l
6.From the serial port list, select a port. The D-Lev port may be the only one, the highest, or contain the text “usb” in the ports list (e.g. 2):
d-win port -s 2
You can save a “snapshot” of your entire system, including software, all voice presets, and all system profiles, to a single *.eeprom file (e.g. snap_2022-08-19.eeprom):
d-win dump -f snap_2022-08-19.eeprom
To restore your entire system state from a snapshot file (e.g. mybackup.eeprom):
d-win pump -f mybackup.eeprom
A factory reset restores the original voice presets, system profiles, and system software to the state it was at the time of manufacture. The procedure is to simply upload the system snapshot file that came on your D-Lev thumb drive.
A software update can provide your D-Lev with new or enhanced functionality. Consult the CHANGE_LOG.txt file inside the zip file for details.
1.Unzip the *.spi (software) file to your librarian directory.
2.If you like you can backup the current software to a file (e.g. myoldsw.spi):
d-win dump -f myoldsw.spi
3.Upload the new software file (e.g. 93152c8b.spi) to your D-Lev:
d-win pump -f 93152c8b.spi
Beyond changes to the preset / profile spaces and knob assignments, there are generally no dependencies / restrictions when going from one software load to another, though to ensure operability use factory snapshots for updating whenever possible.
You can download all voice presets to a single *.pre file (e.g. mypres.pre):
d-win dump -f mypres.pre
To upload all voice presets from a *.pre file (e.g. somenew.pre):
d-win pump -f somenew.pre
You can download all system profiles to a single *.pro file (e.g. oldpros.pro):
d-win dump -f oldpros.pro
To upload (and overwrite!) all system profiles from a *.pro file (e.g. toms.pro):
d-win pump -f toms.pro
You can micro-manage the contents of your preset slots by uploading / downloading them one at a time. Individual presets are contained in *.dlp files.
To download the preset in slot 2 to a file (e.g. pennywhistle.dlp):
d-win dump -s 2 -f pennywhistle
To upload a preset file (e.g. dog_bark.dlp) to e.g. slot 4:
d-win pump -s 4 -f dog_bark
It’s a good idea to backup your main system profile once in a while, particularly before preforming software / preset / profile updates. Individual profiles are also contained in *.dlp files.
To download the profile in slot 0 to a profile file (e.g. _sys_0.dlp):
d-win dump -pro -s 0 -f _sys_0
To upload a profile file (e.g. ronnie.dlp) to profile slot 3:
d-win pump -pro -s 3 -f ronnie
You can upload one or more presets / profiles automatically by using a bank file, which is a simple text file with the extension *.bnk. Inside the file is a list of file names of the presets / profiles, one per line, in the order that they will be uploaded. The bank file and all of the files listed in it need to be in the same directory.
For example, if the contents of the text file weird.bnk are the following:
ufo
buzz_saw
zing
train
cropdust
crooner
abrupt
Then the command:
d-win bank -f weird -s 32
will upload the preset file ufo.dlp to preset slot 32, buzz_saw.dlp to preset slot 33, and continue until all of the presets listed in the file are uploaded.
Tips & TricksUse the help -v command for a full list of commands and some typical examples of their use. Before monkeying around with any uploading, for safety’s sake you should backup your system to an *.eeprom file. It’s quick and easy, and it removes all risk. Use the match command to view / confirm the contents of all slots at once. If there is no exact match, the match command with flag -g will return a best guess for the contents of the slots. A question mark follows a guessed filename, along with a deviation score in parentheses. The lower the score the better the match. To confirm that the software has been uploaded, use the ver command and compare the stored checksum to the *.spi filename. This command can also be used to identify the current load version via the checksum, as well as to check the integrity of the uploaded software via the CRC. Preset / profile *.dlp file names don’t require file extensions when used in commands, but it’s OK to include them too – extensions will be checked and automatically added as needed. The other file types require a file extension in order to know what to do. Copy and edit the provided bank files to create custom voice preset “playlists” of your own. All files are text files and so can be edited with a text editor. You can learn about some of their contents in Appendix E. You can split an *.eeprom file into *.dlp, *.pro, *.pre, and *.spi file types contained within using the split command. You can also split *.pro, *.pre files into numbered *.dlp files. You can construct an *.eeprom file from the various *.dlp, *.pro, *.pre, and *.spi file types using the join command. Or you can upload them to the D-Lev and then download the resulting *.eeprom file. For Windows powershell, the librarian executable may need to be prefaced with “.\” in order to run it e.g. .\d‑win. In Linux, if the librarian software is copied to /usr/bin, it might fail with a permissions error if it tries to update / create the d-lib.cfg file in the same directory. If you experience weird trouble when trying to set the port, delete the config file d-lib.cfg and the librarian will create a new one the next time you run it. If the D-Lev is non-responsive or somehow booting incorrectly: press and hold the lower right knob during power-up to use the default software load built into the FPGA firmware, then upload fresh software. Very early units (serial numbers 1 thru 9) may become unresponsive for hours if the software load is corrupt, but should wake up again on their own at some point (a boot code sequencing issue, sorry about that!) after which you should be able to upload fresh software. |
Ancient computers relied quite heavily on the serial port to intercommunicate with dumb terminals, and as a result there is more legacy cruft than usual surrounding them in modern PCs. On top of this, USB serial bridge IC manufacturers like FTDI and Prolific have intentionally monkey-wrenched their drivers in a counterfeit IC turf war, catching many otherwise innocent victims in the crossfire.
Anyway, here are some steps you might use to diagnose serial port connectivity issues:
1.Using the librarian software, list the available ports with the port -l command, both with and without the D-Lev USB dongle plugged into your computer. The difference will indicate which port is the D-Lev.
This is what I see on my Linux PC with the D-Lev plugged in:
> port list
[0] /dev/ttyS0
[1] /dev/ttyUSB0 <= ACTIVE
And this is what I see when it is unplugged:
> port list
[0] /dev/ttyS0
> Active port /dev/ttyUSB0 doesn't exist!
So the D-Lev dongle is clearly on port 1, and the operating system can see it. Set the librarian port if necessary with the port -p command and go to step 3. If the port on a Mac is listed twice you should pick the /dev/tty one.
2.If there is no difference in the ports command listing between the USB dongle plugged and unplugged, the most likely cause is lack of an operating system driver for the USB serial bridge IC inside the dongle, and you will need to install an appropriate driver. This could also be caused by poor USB connectivity, or a faulty bridge IC inside the dongle body.
3.Try the ver command, which should return the software version. If it just hangs, there may be connectivity issues with the green and white RX and TX wires. There is no industry standard here, so if you have deviated from the stock kit dongle, try swapping these two wires (NOT the red and black wires!) and see if that does it.
4.To test the dongle by itself, disconnect it from the D-Lev and use a small piece of wire to connect the green and white RX and TX wires. Use the librarian loop command followed by a short string of alpha-numeric text after it, e.g. d-win loop "some junk". The text received should match the text sent e.g. some junk. Be very careful when plugging the dongle leads back into the expansion port.
5.If you are on a Windows box and commands return the message “A device which does not exist was specified” the Prolific PL2303 bridge IC is old or counterfeit, and you should roll back the driver or install an older one (best here is v3.3.2.102).
6.If all of the above doesn’t bring you joy, try a different PC. If that’s a dead-end too, replace the dongle, preferably with one containing the Silicon Labs CP2102 (check out the Adafruit offerings here). USB connectivity can get pretty flaky after a while. Again, be very careful when plugging the dongle leads back into the expansion port, particularly with the red and black wires that supply +5V power and ground.
MIDI ports are also ancient serial ports, but happily they seem to have more in the way of operating system standardization and support. They are also very much a go / no‑go type thing, and the no‑go situation can be quite cryptic. Follow these steps to diagnose MIDI port connectivity issues:
1.Consult the Electrical Interface section of this manual for instructions on how to wire the up a MIDI jack to the J10 Expansion Port.
2.Obtain a USB MIDI interface for your PC. I use and can recommend the Tbox M3. Perhaps look for units with LED activity indicators, which might come in handy when diagnosing connectivity issues.
3.Install MIDI monitor software on your PC. I use and can highly recommend ReceiveMIDI (https://github.com/gbevin/ReceiveMIDI) which is a terminal application that you can run without installation if you prefer.
4.Plug the USB MIDI interface into your PC and make sure the MIDI monitor software can see it. With ReceiveMIDI the command to use here is receivemidi list.
5.Run your MIDI monitor and set it to the correct port. For ReceiveMIDI, if the port is listed as e.g. Midilink MIDI 1, use the command receivemidi dev midilink (it automatically picks the closest name match).
6.On the D-Lev go to the MIDI page and set chan[1] and bend[2]. Go to the main D-LEV page and set Out[1] (the D-Lev must be unmuted to transmit MIDI data). If all is well, positioning your hands in playing position near the D-Lev antennas should now produce a steady stream of MIDI data in your monitor software. Turning the Out knob from 1 to 0 should also generate three lines of data to mute any externally connected synth:
channel 1 note-off B2 0
channel 1 control-change 123 0
channel 1 control-change 120 0
If the above steps produce no results, the most likely culprit is an electrical problem:
7.Try reversing the MIDI jack wires. If that doesn’t do it, carefully put the wires back the way they were.
8.MIDI will light an LED (indeed this is how it electrically isolates the receive port). Get your hands on a bare LED and stick the leads the MIDI jack like so (the lead next to the flat on the LED should go to pin 5):
If the D-Lev is set up like in step 6, the LED should light up and flicker when your hands are in playing position. If not, reverse the LED leads and try again. You can test a plugged-in MIDI cable this way too, all the way to your MIDI device input.
Like anything containing a processor, the D-Lev is susceptible to software errors, which can be caused by power drooping, an electrostatic discharge event, corrupt preset / profile data, rogue data from the serial port, the phase of the moon, etc. These errors don’t happen often, but when they do:
THE FIX FOR MOST ERROR CONDITIONS IS: — POWER CYCLE THE D-LEV — |
Some typical symptoms of software trouble:
•Weird characters / odd data on the LCD.
•Unresponsive knobs / LCD / tuner.
•No audio or strange audio issues.
•Unresponsive pitch / volume fields.
•ER! or SW! error indicators on the main D-LEV screen:
Mon 64 Out 0 |
|
Mon 64 Out 0 |
Vcal 15 Pcal 32 |
|
Vcal 15 Pcal 32 |
stor 0 bank 0 |
|
stor 0 bank 0 |
load 0 ER! D_LEV |
|
load 0 SW! D_LEV |
Error indicators on the main D-LEV screen.
The ER! error indicator means the software has gone into the weeds. The processor has either experienced a stack fault, or an interrupt routine has exceeded its real-time allotment. Time to power-cycle!
The SW! error indicator means the EEPROM software image failed the error check, and the default FPGA software image is being used instead. If a power cycle doesn’t clear this error then you will have to upload new software via the librarian. You probably shouldn’t operate the D-Lev in this state for too long as it is likely running an older software version (in particular you may want to avoid writing presets / profiles).
Having a default software image in the FPGA means it’s impossible to permanently “brick” the D-Lev by uploading bad software. But there are rare situations (caused by boot code / software mismatches) where the D-Lev just won’t boot. In this scenario you can force the D-Lev to bypass the EEPROM image testing and use the default FPGA software image instead.
1.Press and hold down knob 7 (located at lower right).
2.Do a power cycle.
3.Release knob 7.
After this you should see SW! on the main D-LEV screen. If it is unresponsive and serial 0-9 leave it on for several hours and it should eventually wake up. Now use the librarian to upload new software.
Certain control settings can produce what might initially seem like incorrect behavior, but they’re actually doing what they’re supposed to do. These and some other rascals to watch out for:
Symptom |
Check / Cause / Solution |
Seems to be working but no sound. |
Mon[0]; Out[0]; osc[0]; nois[0]; mode on PREVIEW page; high rise on VOLUME page; low levl on FORM page; low freq on a filter; no power to DAC box / bad optical connection; needs a power cycle; ACAL auto-mute. |
Incessant screeching sound. |
Filter oscillation: reso / osc / nois / bass / treb too high and overloading filter input; reload the preset. |
Sound won’t stop. |
High fall on VOLUME page; high filter / resonator reso settings; reload the preset; employ damp. |
Tuner LEDs all dark. |
LED[0] on DISPLAY page. |
LCD dark. |
LCD[0] on DISPLAY page. |
LCD washed out. |
Low 5V supply voltage (poor USB connection); internal contrast potentiometer needs adjustment (unlikely). |
Reversed volume field. |
Sign of Sens on V_FIELD page. |
Reversed pitch field. |
Sign of Sens on P_FIELD page. |
Non-linear pitch near-field. |
Lift on P_FIELD page. |
Sticky points in pitch field. |
Bad ground; Dith on P_FIELD pages too low. |
Bobbling pitch / volume fields. |
Bad ground; Dith on V_FIELD / P_FIELD pages too high; 50Hz on SYSTEM page; low 5V supply voltage (poor USB connection). |
Tuner acting weird. |
Qant, Post on DISPLAY page. |
Out of tune. |
Cent on DISPLAY page. |
ACAL too short / long. |
Wait on SYSTEM page. |
Swapped / wrong fields. |
P<>V on SYSTEM page. |
Reversed knob rotation. |
Erev on SYSTEM page. |
Knob reverses with very fast spin. |
Don’t spin the knobs ultra fast. If some single clicks don’t register then the encoder is wearing out. |
Interacting fields. |
Bad ground. |
Audio hum. |
Ground loop. Try inserting an inexpensive ground loop isolator in the audio connection. |
Hit the ground running with your D-Lev “Clarabox” kit by following this handy guide!
UNBOXING
•Open the shipping box at the top indicated by the “UP” arrows.
•Remove all of the items in the shipping box including all loose bubble-wrap.
•Unwrap all of the cables and the DAC box, which you should find taped to the back of the white corrugated plastic panel.
•Optionally remove the blue masking tape on the pitch and volume boxes. The tape is there for shipment, but if you prefer you can leave it in place as it won’t affect performance.
CONNECT THE PLATE ANTENNAS
•Locate one of the loose short wires that has an alligator clip on one and a banana jack on the other end. Plug the banana jack into the volume box on the left side. Clip the alligator clip to the wire loop protruding from the smaller cardboard volume plate.
•Locate the other loose short wire and plug the banana jack into the pitch box on the right side. Clip the alligator clip to the wire loop protruding from the larger cardboard pitch plate.
SETUP FOR PLAYING
•Lay the white plastic corrugated panel back in the shipping box face-up, pulling the antenna plates and all loose wires around to the front so you have easy access to them. Place the box on a table, and lean the bottom of the box against something at the back to angle the display and controls for comfortable viewing.
•Position the volume and pitch plates for comfortable play, and affix them with tape or similar to the open shipping box flaps to keep them from moving around. Try to keep the plates at least a few inches away from substantial metal objects.
Suggested kit first setup (photo courtesy John Thom).
SUPPLY POWER & GROUND
•Plug the blue USB serial dongle into a USB port to supply power to the D-Lev box. The LCD and tuner LEDs should illuminate.
•If the USB port supplying power to the blue USB serial dongle is ungrounded (e.g. laptop, AC charger, etc.) you will need to provide an earth ground for proper operation of the D-Lev fields. Do this by clipping the alligator clip on the end of the red and black wire to a known good grounding point. An extension cord can be used to bring the ground over from an AC outlet.
CONNECT THE DAC BOX
•When the D-Lev is powered you will notice red light coming out of the end of the black TOSLINK optical cable. Plug the optical cable into the DAC box.
•Plug a pair of stereo headphones into the DAC box, or plug an external stereo amplifier into the RCA jacks.
•Locate the USB power cord with the large barrel connector. Plug the barrel connector end into the DAC box, then plug the USB end into a USB port to supply power to the DAC box.
•Turn the DAC box volume control up. Depending on the model, this may also turn the DAC box on.
PLAY IT SAM!
•If your mains AC power is 50Hz, turn the lower right “D-LEV” knob to the “SYSTEM” screen. Set “50Hz” to 1 and press the “Stor” encoder twice, then return to the “D-LEV” screen.
•Sit or stand in front of the D-Lev in your normal Theremin playing position. Initiate an ACAL by pressing and immediately releasing the upper right “Out” knob while quickly retracting your arms back to your body (but don’t otherwise move your body). Remain in this pose until the center LED has stopped blinking.
•If the value of the “Out” knob is 0 then the unit is muted. Turning the “Out” knob clockwise will set it to 1 and unmute the audio.
•Play! Cycle through the various voice presets by turning the “load” knob. If the pitch field feels non-linear, try adjusting the “Pcal” knob some – for those who are familiar with analog Theremins, this is exactly the same as adjusting the pitch null control.
DIVING DEEPER
There are many resources to help you to learn more about how to optimally set up and operate the D-Lev. This manual is one such resource, and there are many short videos on various topics at the D-Lev web site (https://d-lev.com/video.html) that you can peruse as well.
In case it falls out or something, here is a diagram of how the blue USB serial dongle plugs into the J10 expansion port. The RED +5V wire plugs into the upper right pin. The BLACK ground wire plugs in directly below it, with the GREEN and WHITE serial communication pins to the left of power and ground. There are markings on the PWB to guide you.
Be very careful when plugging it back in!
The main PWB (printed wiring board) connects the FPGA board to the other components. It also includes additional circuitry, such as the EEPROM which contains the software and presets / profiles, MIDI output buffer, and LCD backlight driver.
View of main PWB.
At the top is the LCD display interconnect, and to right of this is the LCD display contrast trim potentiometer, which is the only internal adjustment. The digital audio TOSLINK transmitter is located at the lower right, and J11 is a 5V power and ground JST connector located at the lower left.
There are six IDC ribbon cable connectors on the main PWB:
J4 and J5 are 2x4 pin connectors for the pitch and volume boxes, each of which contain an AFE (analog front end) PWB and a hand-wound high Q / voltage coil.
J7 and J8 are 2x16 pin connectors for the left and right encoder (knob) assemblies.
J9 is a 2x4 connector for the LED tuner.
J10 is a 2x16 pin Expansion Port.
Please note that it is possible to plug the wrong ribbon cable into the wrong connector (e.g. an AFE cable into the J9 Tuner connector) which could cause damage!
The expansion port can be used to connect additional switches and devices. The D-Lev kit comes with all of the basic wiring pre-connected, but there are more options to explore in terms of powering and grounding the unit, and expanding the functionality.
Pin(s) |
In / Out |
Active |
Use |
Description |
3 (& 1) |
in |
low |
Mute switch |
Connect a momentary push-button or foot switch to toggle the mute state on/off. |
4 (& 2) |
out |
low |
Mute LED |
Connect an LED to display the mute state: on=muted; off=unmuted. Internally current limited (no need for a series resistor). |
6 (& 5) |
in |
low |
ACAL switch |
Connect a momentary push-button or foot switch to initiate the ACAL process. |
7 & 8 |
out |
- |
MIDI TX |
Connect a 5-pin DIN jack or plug, pin 7 to DIN[5] and pin 8 to DIN[4]. Use the D-Lev to control an external MIDI music synthesizer. The internal synthesizer is not disabled by the use of the MIDI output port. |
10 (& 9) |
out |
- |
Monitor SPDIF |
Connect an RCA jack or plug, and connect this to an external stereo SPDIF DAC (digital to analog converter) box. This is the electrical version of the optical TOSLINK output. 48KHz sample rate with 24 bits resolution. |
12 (& 11) |
out |
- |
Line SPDIF |
Same as Monitor SPDIF but contains no pitch preview, for routing to a mixing board and the like. |
13 |
out |
- |
Serial TX |
Connect a TTL logic level serial RS232 (non-inverted, 3.3V, 230400 Baud, N81) to upload new software, upload and download presets, and control the D-Lev remotely via a serial USB dongle and the librarian software running on a Windows or Linux PC. |
14 |
in |
- |
Serial RX |
Receive side of above, same electrical characteristics and protocol. |
2, 16 |
in / out |
- |
Power |
+5V |
1, 5, 9, 11, 15 |
in / out |
- |
Ground |
Ground |
J10 Expansion Port connector pins & functionality.
J10 Expansion Port connectivity.
Earth ground is essential to proper Theremin operation. Without it, the pitch and volume fields may be small or unstable. Any ground connection on the main PWB can be used to ground the D-Lev, and often adding a ground connection will improve operation, but multiple grounds can also cause ground loops, which could introduce ground noise. You should experiment with grounding to find the best arrangement for your setup.
Similarly, any +5V connection on the main PWB can be used to power the unit, but be careful not to apply power from more than one source or you could cause damage. The D-Lev requires a supply of +5V DC at around 0.5A, which is within the capabilities of a standard USB port. Indeed, the kit is powered via the supplied serial USB dongle which has its +5V power (red) and ground (black) wires plugged into pins 16 and 15 of the J10 expansion port connector. If the dongle is plugged into a grounded USB port, then the D-Lev will be grounded as well (desktop PCs usually have grounded USB ports, laptops usually don’t).
If you don’t want to power the D-Lev via the serial USB dongle you should unplug the red wire from pin 16 of J10. The four single connectors are held together by a piece of heat shrink tubing which can be removed with a knife. Be extremely careful with the USB serial dongle connections to the main PCB, they are not keyed and so are very easy to plug in incorrectly.
+5V power and ground can also be accessed at the JST connector J11. The kit has a wire plugged in here with a clip on the black ground wire for easy grounding, and the end of the red power wire is insulated to prevent electrical shorts. Also provided with the kit is a USB cable with a 3.5mm barrel connector which can be plugged into the FPGA board should you wish to provide power / ground that way — otherwise leave it unplugged!
The D-Lev serial port can be used to remotely control any knob, load presets / profiles, and initiate an ACAL. This may be useful when editing presets, and the interface may be employed to form the basis of custom control pedals and such.
The librarian can be used to control the D-Lev:
1.Connect the D-Lev USB serial dongle to your PC.
2.In a console, list the available serial ports (e.g. Windows version):
d-win ports
3.From the serial port list, select a port. The D-Lev port may be the only one, the highest, or contain the text “usb” in the ports list (e.g. 2):
d-win ports -p 2
4.Use the knob command to read the value of a knob (e.g. RESON:mode):
d-win knob -k re:4
5.Use the knob command to set the value of a knob (e.g. 1_FORM:reso to 4):
d-win knob -k 1_f:6 -s 4
6.Use the knob command to offset the value of a knob (e.g. FLT_OSC:xmix -2):
d-win knob -k flt_o:5 -o -2
7.Use the knob command -v flag to see all the knob values (e.g. FLT_OSC:xmix +3):
d-win knob -v -k flt_o:5 -o +3
8.Use the hcl acal command to perform an ACAL auto-calibration:
d-win acal
The knob command page name matches first characters, and is case agnostic. The knob flag -k value is 0 thru 6, with 0 at upper left, 1 at upper right, etc.
Other hardware / software can also be used to control the D-Lev. The serial port settings are as follows:
Setting |
Value |
Baud rate |
230400 |
Data bits |
8 |
Parity |
none |
Stop bits |
1 |
Flow control |
none |
Local echo |
none |
New-line RX |
AUTO |
New-line TX |
CR |
Serial port settings.
The D-Lev interface is ready for new input when the prompt character ‘>’ is returned on a new line. All commands should end in a space, rather than enter / return.
If the USB dongle is bypassed, the electrical interface standard is the usual TTL serial (3.3V, not inverted) – consult Appendix B for details on Expansion Port connectivity. There are 1k resistors in series with the FPGA pins which can help prevent damage due to ESD or other over-voltage / back-powering / power sequencing scenarios.
knob |
hex |
range |
label |
page |
0 |
00 |
0:63 |
Mon |
D-LEV |
1 |
01 |
0:1 |
Out |
|
2 |
02 |
-127:127 |
Vcal |
|
3 |
03 |
-127:127 |
Pcal |
|
4 |
04 |
0:249 |
stor |
|
5 |
05 |
-3:3 |
bank |
|
6 |
06 |
0:249 |
load |
|
7 |
07 |
0:19 |
- |
|
8 |
08 |
0:63 |
Mon |
LEVELS |
9 |
09 |
0:63 |
Line |
|
10 |
0A |
0:63 |
prev |
|
11 |
0B |
-31:31 |
Treb |
|
12 |
0C |
0:63 |
osc |
|
13 |
0D |
-31:31 |
Bass |
|
14 |
0E |
0:63 |
nois |
|
15 |
0F |
0:19 |
- |
|
16 |
10 |
-63:63 |
vmod |
PREVIEW |
17 |
11 |
-63:63 |
pmod |
|
18 |
12 |
0:63 |
prev |
|
19 |
13 |
0:12 |
mode |
|
20 |
14 |
-31:31 |
harm |
|
21 |
15 |
-31:31 |
tone |
|
22 |
16 |
-7:7 |
oct |
|
23 |
17 |
0:19 |
- |
|
24 |
18 |
0:63 |
vloc |
MIDI |
25 |
19 |
0:31 |
velo |
|
26 |
1A |
0:63 |
cloc |
|
27 |
1B |
-127:31 |
cc |
|
28 |
1C |
0:127 |
bend |
|
29 |
1D |
-16:16 |
chan |
|
30 |
1E |
-7:7 |
oct |
|
31 |
1F |
0:19 |
- |
|
32 |
20 |
0:63 |
kloc |
VOLUME |
33 |
21 |
0:63 |
rise |
|
34 |
22 |
0:31 |
knee |
|
35 |
23 |
0:63 |
fall |
|
36 |
24 |
0:31 |
velo |
|
37 |
25 |
0:63 |
damp |
|
38 |
26 |
0:63 |
dloc |
|
39 |
27 |
0:19 |
- |
|
knob |
hex |
range |
label |
page |
40 |
28 |
-31:31 |
vmod |
PITCH |
41 |
29 |
0:31 |
cmod |
|
42 |
2A |
0:31 |
rate |
|
43 |
2B |
0:31 |
cvol |
|
44 |
2C |
0:31 |
corr |
|
45 |
2D |
0:31 |
span |
|
46 |
2E |
0:3 |
Post |
|
47 |
2F |
0:19 |
- |
|
48 |
30 |
-63:63 |
vmod |
NOISE |
49 |
31 |
-63:63 |
pmod |
|
50 |
32 |
0:63 |
nois |
|
51 |
33 |
-31:31 |
treb |
|
52 |
34 |
0:31 |
puls |
|
53 |
35 |
-31:31 |
bass |
|
54 |
36 |
0:31 |
duty |
|
55 |
37 |
0:19 |
- |
|
56 |
38 |
-63:63 |
vmod |
FLT_NOISE |
57 |
39 |
-63:63 |
pmod |
|
58 |
3A |
0:192 |
freq |
|
59 |
3B |
0:63 |
nois |
|
60 |
3C |
-4:4 |
mode |
|
61 |
3D |
-31:31 |
xmix |
|
62 |
3E |
0:63 |
reso |
|
63 |
3F |
0:19 |
- |
|
64 |
40 |
-63:63 |
vmod |
0_OSC |
65 |
41 |
-63:63 |
pmod |
|
66 |
42 |
-31:31 |
harm |
|
67 |
43 |
-31:31 |
treb |
|
68 |
44 |
0:31 |
odd |
|
69 |
45 |
-31:31 |
bass |
|
70 |
46 |
-7:7 |
oct |
|
71 |
47 |
0:19 |
- |
|
72 |
48 |
-127:127 |
offs |
1_OSC |
73 |
49 |
-127:127 |
offs |
|
74 |
4A |
-127:127 |
hmul |
|
75 |
4B |
-127:127 |
hmul |
|
76 |
4C |
0:31 |
fm |
|
77 |
4D |
0:63 |
sprd |
|
78 |
4E |
-31:31 |
xmix |
|
79 |
4F |
0:19 |
- |
|
knob |
hex |
range |
label |
page |
80 |
50 |
-63:63 |
vmod |
FLT_OSC |
81 |
51 |
-63:63 |
pmod |
|
82 |
52 |
0:192 |
freq |
|
83 |
53 |
0:63 |
osc |
|
84 |
54 |
-4:4 |
mode |
|
85 |
55 |
-31:31 |
xmix |
|
86 |
56 |
0:63 |
reso |
|
87 |
57 |
0:19 |
- |
|
88 |
58 |
0:127 |
freq |
RESON |
89 |
59 |
-63:63 |
tap |
|
90 |
5A |
0:192 |
hpf |
|
91 |
5B |
-63:63 |
harm |
|
92 |
5C |
-2:2 |
mode |
|
93 |
5D |
-31:31 |
xmix |
|
94 |
5E |
-63:63 |
reso |
|
95 |
5F |
0:19 |
- |
|
96 |
60 |
-63:63 |
vmod |
0_FORM |
97 |
61 |
-63:63 |
pmod |
|
98 |
62 |
0:192 |
freq |
|
99 |
63 |
0:63 |
levl |
|
100 |
64 |
0:192 |
freq |
|
101 |
65 |
0:63 |
levl |
|
102 |
66 |
0:63 |
reso |
|
103 |
67 |
0:19 |
- |
|
104 |
68 |
-63:63 |
vmod |
1_FORM |
105 |
69 |
-63:63 |
pmod |
|
106 |
6A |
0:192 |
freq |
|
107 |
6B |
-63:63 |
levl |
|
108 |
6C |
0:192 |
freq |
|
109 |
6D |
-63:63 |
levl |
|
110 |
6E |
0:63 |
reso |
|
111 |
6F |
0:19 |
- |
|
112 |
70 |
-63:63 |
vmod |
2_FORM |
113 |
71 |
-63:63 |
pmod |
|
114 |
72 |
0:192 |
freq |
|
115 |
73 |
-63:63 |
levl |
|
116 |
74 |
0:192 |
freq |
|
117 |
75 |
-63:63 |
levl |
|
118 |
76 |
0:63 |
reso |
|
119 |
77 |
0:19 |
- |
|
knob |
hex |
range |
label |
page |
120 |
78 |
-63:63 |
vmod |
3_FORM |
121 |
79 |
-63:63 |
pmod |
|
122 |
7A |
0:192 |
freq |
|
123 |
7B |
-63:63 |
levl |
|
124 |
7C |
0:192 |
freq |
|
125 |
7D |
-63:63 |
levl |
|
126 |
7E |
0:63 |
reso |
|
127 |
7F |
0:19 |
- |
|
128 |
80 |
-127:127 |
Vcal |
V_FIELD |
129 |
81 |
0:31 |
Drop |
|
130 |
82 |
-15:15 |
Lin |
|
131 |
83 |
0:7 |
Dith |
|
132 |
84 |
0:255 |
Ofs- |
|
133 |
85 |
0:255 |
Ofs+ |
|
134 |
86 |
-127:127 |
Sens |
|
135 |
87 |
0:19 |
- |
|
136 |
88 |
-127:127 |
Pcal |
P_FIELD |
137 |
89 |
0:31 |
Lift |
|
138 |
8A |
-15:15 |
Lin |
|
139 |
8B |
0:7 |
Dith |
|
140 |
8C |
0:255 |
Ofs- |
|
141 |
8D |
0:255 |
Ofs+ |
|
142 |
8E |
-127:127 |
Sens |
|
143 |
8F |
0:19 |
- |
|
144 |
90 |
0:31 |
LED |
DISPLAY |
145 |
91 |
-99:99 |
Cent |
|
146 |
92 |
0:31 |
LCD |
|
147 |
93 |
-11:11 |
Note |
|
148 |
94 |
0:4 |
Qant |
|
149 |
95 |
-15:15 |
Oct |
|
150 |
96 |
0:3 |
Post |
|
151 |
97 |
0:19 |
- |
|
152 |
98 |
0:99 |
Wait |
SYSTEM |
153 |
99 |
0:249 |
Auto |
|
154 |
9A |
0:3 |
P<>V |
|
155 |
9B |
0:1 |
50Hz |
|
156 |
9C |
0:5 |
Stor |
|
157 |
9D |
0:1 |
Erev |
|
158 |
9E |
0:5 |
Load |
|
159 |
9F |
0:19 |
- |
|
All of the files associated with the D-Lev librarian are text files, so they can be viewed, changed, and broken apart / combined via a text editor.
There are five types of files that contain EEPROM data: *.dlp, *.pro, *.pre, *.spi, *.eeprom. Each line of these files specifies 4 bytes of data in hex format.
The *.eeprom file type is the mother of all containers as it holds all of the state in the D-Lev:
Non-volatile memory spaces and file type containers.
A single preset / profile requires 256 bytes, so the associated *.dlp file contains 256 / 4 = 64 lines.
A *.pre file contains 250 presets covering the range [0:249]:
Preset |
Line |
preset[0] |
1 |
preset[1] |
65 |
preset[248] |
15873 |
preset[249] |
15937 |
Some preset starting points in a *.pre file.
A *.pro file contains 6 profiles covering the range [0:5]:
Profile |
Line |
0 |
1 |
1 |
65 |
2 |
129 |
3 |
193 |
4 |
257 |
5 |
321 |
Profile starting points in a *.pro file.
A *.spi file contains the D-Lev software, which 16384 bytes, or 16384 / 4 = 4096 lines.
An *.eeprom file contains all 250 presets, all 6 profiles, and all software. The first part of the file is arranged exactly like the *.pre file described above, followed by the *.pro file contents, and the software *.spi file contents section starts immediately afterwards on line 16385.
Is the D-Lev a TRADITIONAL Theremin?
No. A traditional Theremin heterodynes (non-linearly mixes) the outputs of two radio frequency analog oscillators. One oscillator operates at a fixed frequency, and the frequency of the other oscillator varies with the capacitance of the pitch hand. Mixing generates sum and difference frequencies at F1+F2 and |F1-F2|, and low-pass filtering removes the upper sum frequency, leaving only the lower difference frequency, which is within the range of human audibility. Even though the frequency of the variable oscillator only changes a few percent over the full range of pitch hand movement, the difference frequency varies over many octaves.
How a traditional analog Theremin works.
Traditional volume control can take many forms. Similar to the pitch side, the frequency of the volume oscillator varies with the capacitance of the volume hand. One common technique to produce a large change in signal over a relatively short range of hand movement is to sharply filter the oscillator output, rectify and filter it (not shown), and use the result to control the audio volume.
Note that the heterodyning process links the pitch and timbre of the resulting audio, which ties the Theremin designer's hands when it comes to altering the basic (non)linearity, sensitivity, timbre, octave, etc. Pitch field sensitivity can't be altered without negatively impacting overall linearity. Coupling the fixed and variable oscillators can enrich low end timbre, but this also negatively impacts far-field linearity.
It's pretty amazing that you can make a traditional Theremin that works fairly well with only a handful of parts, but the engineering constraints present at the lowest level will remain almost no matter how fancy any additional circuitry gets. The near- and far-fields will always be somewhat cramped, and the mid-field will always have the same sensitivity.
Is the D-Lev a REAL Theremin?
Them’s fightin’ words! I would say yes, definitely, it’s a real Theremin, but some purists might disagree – this entire subject is an eye of the beholder type thing. The D-Lev is a real Theremin in the sense that the player interacts with two capacitive fields, and to me this is the very heart of what a real Theremin is. The sound generation is via a DSP synth rather than via heterodyning, which isn’t anything new as the Ethervox, the Theremini, the Open.Theremin, and even the recent Claravox in modern mode all do this. Decoupling audio generation is necessary in order to linearize, size, and locate the fields, and it also enables a larger variety of voices.
With the various pitch and volume field options, what should I be considering?
If there is a particular player whose technique you find attractive and really want to emulate, then one obvious approach is to set up the fields to be like their instrument, which probably means like a traditional analog Theremin.
I've been thinking about this for a while, and I believe it to be generally true: you want to maximum control with minimal movement. You want to use the smallest movements that still allow full control over your performance, and this applies to both the pitch and volume fields. When I say "full control" I'm also including stability factors, so even if you could easily play octaves by cricking your pinky finger, you wouldn't be able to just casually stand and play at the thing because your body, arm, or even hand would need bracing of some sort to keep the pitch steady. So stability seems to dictate the upper end to sensitivity – clearly someone who sits to play is literally in a better position to manage the typically overly tight (IMO) analog pitch field, and those who like to stand may benefit from a looser pitch field.
The volume field situation is more complex, here the application of appropriate non-linearities such as a gain-switching "knee" and second order drop allow one to go from total silence to significant audibility (say -12dB) with a relatively small movement of the hand, and from there to full volume (0dB) with a similarly small to medium sized hand movement, thus devoting more detailed movements to the meaningfully expressive region by compressing the inexpressive region.
In conclusion, I think most analog Theremins require too much volume hand movement and too little pitch hand movement, and these contribute in large part to making the instrument notoriously difficult to play.
Can you give me an example of traditional analog field settings?
A traditional 2/3 octave (8 half-steps) open / closed pitch hand, and farther is louder non-linear volume hand setup:
Vcal 32 Drop 16 |
|
Pcal 32 Lift 0 |
Lin 0 Dith 2 |
|
Lin 0 Dith 2 |
Ofs- 64 Ofs+ 123 |
|
Ofs- 64 Ofs+ 190 |
Sens -45 V_FIELD |
|
Sens 64 P_FIELD |
Traditional field settings example.
These should only be taken as a rough guide. Your own settings will likely vary somewhat, and ideally would be the result of you personally performing the field setup procedures given in this manual.
How do you set up the fields on your own D-Lev?
I use a reversed volume field and 1/3 octave (4 half-steps) open / closed hand pitch field sensitivity:
Vcal 32 Drop 16 |
|
Pcal 32 Lift 0 |
Lin 0 Dith 2 |
|
Lin 0 Dith 2 |
Ofs- 64 Ofs+ 120 |
|
Ofs- 64 Ofs+ 190 |
Sens 50 V_FIELD |
|
Sens 45 P_FIELD |
My current field settings.
I don’t want to give anyone the impression that non-traditional field setting are a cure-all, but I would encourage as much experimentation as you can possibly stand here.
What’s so important about the linearity of the pitch field?
No matter how you generate / acquire / filter / process / etc. analog or digital Theremin fields, the closer your hand is to the antenna the higher the quality of the information / signal. On the D-Lev (which, unlike analog Theremins, has a highly linear near-field) this "sweet spot" goes from right at the antenna to maybe a foot (300mm) away.
Beyond that the capacitance of the player's body starts to intrude and confound the response. The field can still be made highly linear farther out (I can make it so the open / closed hand gives the same response with my hand retracted entirely to my body) but the calibration of it becomes more and more dependent on the exact position of the body.
This effect is quite obvious, so I tend to set up the fields so that my volume hand is around 8" (200mm) away, and my pitch hand is maybe 10" (250mm) or so away nominally. Analog Theremins generally don't have ways to position and shape the fields, so you sometimes see a player’s hand much farther away to reach low notes, which is impressive looking, but it must be uncomfortable for them because any null calibration error will significantly alter the pitch field sensitivity out there.
How exactly does the D-Lev linearize the pitch and volume fields?
I’m hoping more Theremin designers will adopt the remarkably simple mathematical linearizing procedure that I’ve stumbled upon. What’s really great about this process is that it seems to be almost entirely independent of environmental capacitance and antenna geometry. Best of all, it boils down to one single knob that is very non-critical to set – and forget! You really can’t ask for more than that. Here’s how it works:
D-Lev field linearization.
A)We see that the frequency of the oscillator attached to the pitch antenna decreases as the hand moves closer, and that it isn’t linear at all.
B)We subtract the oscillator frequency from the sum of Pcal and an internal value obtained via the ACAL procedure, which flips the sense and brings it down to the x axis. This is exactly analogous to the heterodyning going on in an analog Theremin, except we are dealing digitally with frequency numbers rather than analog waveforms, so it consists of simple math rather than diode mixing of two oscillators. Unlike analog circuitry, math is noiseless and doesn’t generate undesirable intermodulation byproducts. The result is quasi-exponential, which is how it is used directly in analog Theremins. So far nothing really new, though we have also chopped off the negative part to keep the field from reversing past the null point – a nice feature that is essentially free in the wonderful world of maths.
C)This where the miracle occurs: we raise the previous result to a power somewhere between -1/8 and -3/8 (the range of the Lin knob) and et voila! - out pops an almost straight line!
What do the other field knobs do?
I thought you would never ask! Let’s take a look:
The other D-Lev field knobs.
D)Continuing on from the linearity discussion above, the Ofs- knob moves the linearized hand response down to the X-axis via mathematical subtraction. The X-axis intersection forms a pivot point, rather like a teeter-totter.
E)The Sens knob alters the slope via mathematical multiplication, rotating the response about the pivot point at the X-axis. We also multiply the result by -1 to reverse the response, which gives us increasing pitch as the hand nears the antenna.
F)Finally, the Ofs+ knob moves the response back up into the unsigned range via mathematical addition. From here it can be pitch corrected, exponentiated, etc.
Having knobs for both Ofs- and Ofs+ may seem superfluous, but this allows us to move the pivot point around, which can be handy when setting up the volume field.
What is it with you and plate antennas? Are you just a rod hater or what?
During the course of demoing the D-Lev, likely to the dismay of the audience, I find myself delivering “the sermon" (Nearer My Plate To Thee, Spare The Rod, etc.). To me, plates are integral to the design because they have many engineering and playability advantages over rods. I'm probably coming on too strong when advocating for them, but I feel it must be done and there is no one else to do it.
Plate capacitor (left) and plate antenna / hand capacitor (right).
First, a tiny bit of physics. Theremins work by detecting the capacitance between the hand and the antenna. Capacitance is a function of two things: 1) the area of the plates, and 2) the distance between them. Increasing the area increases the capacitance, and decreasing the distance between them also increases the capacitance.
Rod antenna far-field and near-field capacitive response.
Rod antennas make a lot of sense for analog Theremins where the near-field is so compressed and non-linear. When the hand is far away it is interacting with the entire rod, but as the hand approaches it interacts with less and less of the rod, which helps somewhat to relieve the field tightness near the antenna. But rods have rather low surface area, so they aren't a great engineering fit for digital Theremins because they don't form the best possible capacitor with the area of the hand.
Rod antennas are problematic near-field horizontal targets.
Rod antennas also have a "targeting problem" in the horizontal plane. The closer you get to the rod, the more precisely you must position your hand horizontally to address the antenna. Some players utilize this and play off to one side of the rod in the near-field to help linearize it geometrically. Some players likely alter their fingering technique depending on how close to the antenna they are playing.
Plate antenna far-field and near-field capacitive response.
In contrast, plates form a more ideal capacitor with the hand, both in the far-field and the near-field. Because a digital Theremin can linearize the near-field to match the mid- and far-fields, players can use the same fingering techniques anywhere.
Plate antennas are more forgiving near-field targets.
And a plate is a much softer horizontal target; correct targeting in the near-field is greatly eased due to the width of the plate. Though of course vertical targeting is somewhat reduced over that of a long rod, but vertical alignment is generally about as easy to maintain as horizontal alignment, so this isn't a terribly significant issue.
Due to the non-linear near-field tightness and the targeting issues, I imagine a lot of analog rod players simply avoid the near-field whenever possible. This is unfortunate in the extreme because the near-field is the best possible playing position! When the hand is near the antenna its capacitive signal is quite large, swamping the otherwise confounding environmental and body capacitance. Playing a Theremin from a distance looks impressive as all get-out, but it becomes exponentially more difficult to control once the hand leaves the antenna and nears the body, where body position and movements start to dominate the total capacitive response. So as a player you should want to play as close to the antenna as practicable, and the field linearity and antenna geometry should accommodate you as much as possible in doing so.
There is a legacy expectation of the sight of rods on a Theremin that I don't really know how to respond to. If history were somehow reversed and digital Theremins came into existence before analog, this argument would go the other way and people would be hollering at the analog guys for using rods instead of plates. I'm not a big retro fan so I see these expectations as impediments to development and forward movement of the instrument, though I fully understand the value of accommodating someone's years of training on rods. I'm not saying plates are for everyone, but for the die-hard rod crowd I'd recommend they give plates a fair shot, and if they can't acclimate to them after a month or so maybe try plates with taller aspect ratios, or larger diameter rods before completely throwing in the towel.
What are your recommendations in terms of plate antenna geometry?
One might think a round plate would be the ideal shape for a plate, but if you are off center vertically then the horizontal target width is reduced, and vice-versa. A rectangular plate doesn't have this geometric interaction, and is therefore somewhat superior.
I also believe that the difficulties in vertical and horizontal targeting precision for the player are roughly equivalent, which means we should use a square plate. To get roughly the same surface area as the hand, the plate should be somewhere around 6” (150mm) on a side.
To increase intrinsic capacitance, as well as far-field capacitive interaction, one can extend two opposite, or all four, sides of the square plate back in space away from the player, forming a U or open back box type 3D shape:
I'm currently using U type shaped plate antennas in my lab unit, formed out of heavy aluminum foil, with the coil mounted smack dab in the middle of the back. The D-Lev kit antennas are simple 6” (150mm) squares of heavy aluminum foil wrapped in corrugated cardboard.
Why do you advocate insulating the antennas?
For two very good reasons. Contacting a bare metal antenna with your bare hand can:
1.Unlock the oscillator phase detection feedback loop and cause it to “hunt” for a bit. Even a thin layer of insulation will prevent this generally non-musical behavior.
2.Subject the oscillator to a huge voltage spike. There is an active ESD (electrostatic discharge) protection device within each oscillator, but insulation is your first line of defense against ESD damage. The sensitive high Q electronics need all the protection they can get.
Other than maybe not looking “cool” or something, there are no downsides to insulating the antennas. The insulation itself will likely have different capacitive properties (i.e. a different relative permittivity and perhaps some slight electrical resistance) than the air around it, but this isn’t a factor at all to the way the fields will “feel” to the player, nor to the optimal operation of the oscillators.
You can take this to extremes and encase pitch and volume plate antennas entirely within the main enclosure itself, and then there would be no need to make them removable (electrical connectors another likely ESD entry point). But that would likely negatively impact portability.
Do you have any advice regarding case ergonomics?
Do I! I strongly encourage serious musicians to take every opportunity to gain control of and personalize all aspects of their musical lives. Thereminists in particular should explore the various factors associated with their design and construction. Think about it: when you purchase a Theremin, very little thought or effort has gone into how people actually play the thing, so you usually just get a copy of the antenna shapes and positions of past instruments, which may or may not be ideal for you (or anyone else for that matter).
Electronic instruments routinely have many more degrees of freedom than their acoustic counterparts as there are no strings / soundboards / resonant chambers or pipes with their attendant sizing, support, and location constraints. Theremins are almost completely wide open in this regard, and the D-Lev even more so. Having the sky as the limit is actually kind of a problem (though a good problem to have!) as there are no real constraints to channel one’s creativity. Add to this the fact that the D-Lev oscillators work optimally with plate antennas (and I would – and did! – argue that plates have playing advantages as well, particularly in the near-field). So where do you even start?
•Start with a versatile support. I recommend a boom microphone stand, which can provide convenient height and angle options. Use a threaded female flange to connect it to your monstrosity. Another option is a wooden music stand, as this can give height and angle adjustment too.
•Experiment with discarded cardboard boxes and tape, with maybe a scrap of wood or two as a sort of backbone. Cookin’ cheap.
•Make it as comfortable to play as you possibly can. This includes antenna geometry and the locations and angles of all of the various elements (antennas, control unit, tuner). For instance, if you use the tuner actively during play for feedback, setting it too low might lead to a cricked neck; if the LCD isn’t perpendicular to your line of sight it may be difficult to read; if the controls aren’t handy they may be awkward to adjust.
•Don’t even think about portability until the very end. The demands of portability run largely counter to those of good ergonomics, so it is basically your enemy during this exploration. Keep in mind that lightness can also profoundly enhance portability.
•Beauty is another unexpected enemy when researching ergonomics, and similarly should be given zero thought until the very end. Make your test bed as painless as possible to modify, or to even completely toss out and start over. You don’t want want to hesitate to e.g. cut yet another hole on a whim that might pay off even in a minor way. Small changes often have big impacts. Ugly is your best friend here.
•You want the exact same setup every time to keep your muscle memory from having to adapt or relearn anything. Portability is generally working against you here too, as it tends to lead to variation in setup.
•It’s an evolution, don’t try to shoot it into the can. Perhaps it is counter-intuitive, but when it comes to ergonomics it’s often impossible to know whether you will like or hate a particular arrangement without actually trying it out, possibly for a very extended period. Keep an open mind, and be prepared to play your Franken-Lev for months or even years if necessary before committing to a final cabinet. The longer you experiment the more sure you will be that the end result is optimal for you.
With most products you’re thinking about the final appearance and issues like portability way in advance. It’s just the opposite with electronic musical instrument ergonomics – pretty weird!
What are your thoughts regarding traditional and reversed volume field sense?
Traditional volume sense (farther = louder) has always felt completely alien to me – it was one of the major factors that turned me off to the Etherwave I once owned. The pitch increased as my hand approached, why didn’t the volume increase in that direction as well? Had to split my brain in two and have one side think backwards from the other and just couldn't get into it – this coming on top of all the noob pitch control difficulties. But I think the piano damper pedal operates backwards too, so it’s probably me.
Some say the traditional sense on your typical analog Theremin is the way it is because an orchestra conductor’s hands move up to signal higher volume from the orchestra (or at least that’s the rationale behind the movements they make). But it’s my belief that traditional sense exists because it leverages the basic non-linearity of the near-field. It creates a natural knee that ramps up the volume quickly as the player’s hand moves away, with more nuanced dynamic control above this. I feel Theremin's design motives tend to get somewhat romanticized, but it was probably just physics dictating the obvious and simplest (for the designer, not necessarily for the player) solution.
Well, what’s so wrong with that? As stated previously, critical responses (higher pitch, higher volume) are best assigned to a well defined linear near-field, with less critical (lower pitch, lower volume) relegated to a necessarily less certain far-field, so traditional sense exploits basic physics in one way but goes against basic physics in another. Higher volume in the far-field will be less controlled, and external capacitances like the body will interact more, particularly if the player is sitting at the instrument. Whereas a linear field with reversed sense and a software knee can “expand away” the influence of the body.
Also, 0dB or the loudest point is a very well defined thing, whereas the silence “point” is actually an indistinct region – is it -36dB? -48dB? -64dB? Of course it depends on the pitch, timbre, background noise levels, age of the player, etc. With traditional sense this hazy region is placed in the near-field, so if you need more silence you may end up hitting the antenna, and indeed this is probably why it is a loop. Reversed sense places 0dB in the near-field, so there is no need need to get any closer when playing – and if you need more silence you just move your hand farther away.
Traditional sense also goes somewhat against human anatomy. Hand movements toward the antenna use stronger and quicker muscles, and also get a gravity assist, so percussive attack should go in that direction, not the opposite (witness the playing of drums, pianos, xylophones, triangles – literally anything percussive). Granted, traditional sense helps with the “stab & slow release” operatic vocal phrasing technique many Thereminist employ, but it hinders most others.
Then there’s the just awful “crying baby” syndrome. I’ve noticed that traditional sense requires muting before an ACAL and unmuting afterward, otherwise it makes a bunch of noise during the ACAL timeout, and extra software is required to reduce the fussiness of this sequence. Analog Thereminists have to be vigilant “babysitters” between numbers by keeping a hand on or near the volume loop, and they often have to drape a grounded audio cord over the volume antenna when they walk away in order to shut the thing up. And touching the bare volume loop of some analog Theremins ironically causes weird noises and such (touching the bare D-Lev volume antenna can cause the DPLL to unlock and make noise). Reverse sense (with insulation) has none of these issues, my lab unit is on 24/7 and I almost never encounter the need to mute it.
So the only real positives I can think of for traditional sense are that silence is less influenced by body capacitance, and between note volume shaping is perhaps a little more natural.
Anyway, if traditional sense is driving a person away from learning the Theremin in the first place, then I don't see a lot of harm in reversing it.
How should the D-Lev be amplified?
Most of the presets employ the Inharmonic Resonator to supply a pseudo-stereo effect, which enhances the listening experience by providing movement and/or ambience, as well as resonances. For this reason I recommend the use of stereo speakers during play / performance.
I personally use open-air headphones during practice – even decent quality headphones can easily beat the sound quality of very high end speaker systems, and headphones can be simply plugged into the DAC box. Any external effects should obviously also be stereo if at all possible, and if you use external reverb you really want a stereo monitoring setup in order to maximize the overall spacial effect.
How does one best handle mono amplification scenarios?
The pseudo-stereo effect provided by the Inharmonic Resonator is rather basic, and can sometimes collapse into a weird sort of ambient-delay sound when using a single channel. if you are hearing objectionable delay artifacts, here are some things to try on the RESON screen:
•If the preset uses mode[-2] then set xmix[0] to completely bypass the Resonator.
•If the preset uses mode[2] then set mode[1] to make the Resonator mono.
You could also mix the left & right channels together with an external mixer, but this can kill some of the brightness of presets that use mode[2] (e.g. violins, cellos, etc.). Mixing left & right is equivalent to setting xmix[0]. So if you play in mono situations a lot, the best solution is to edit the presets you use and save them.
Is Theremin grounding a big deal?
Proper grounding is a huge, huge deal! Theremins need a firm electrical footing on which to establish their fields, insufficient grounding can produce contracted and/or unstable fields. Also, the Theremin antennas and your hands form capacitors – they must be electrically connected together somehow for this mutual capacitance to work, and grounding provides the return path.
There are many ways in which Theremins may be grounded. The most obvious path is by attaching the D-Lev grounding clip directly to the ground at an AC outlet. AC ground should terminate on a true earth ground at the electrical box and doesn’t normally carry any current, so the ground should be relatively clean, though other devices that are plugged in could possibly interfere. An indirect route to this AC ground is via audio cabling between the Theremin and any amplification / mixing / computing devices which are plugged in and AC grounded. Some say that a long wire lying on the floor can provide sufficient Theremin grounding, but haven’t investigated that myself. If your Theremin is supported by a metal stand, grounding that might help too.
Just as there can be insufficient grounding, there can also be too much grounding. If connecting the D-Lev grounding clip to a known good ground produces an audio hum, that could be due to multiple grounds forming what is known as a “ground loop” where magnetic fields induce currents in the audio cabling. There are inexpensive ground lift devices one can purchase that allow one end of the audio cable to float. Multiple grounds via different AC outlets could possibly have slightly DC offset voltages, and using a series capacitor of 0.1uF or so between the D-Lev grounding clip and the AC ground might help in that situation.
Can anyone learn to play the D-Lev in a day?
Becoming proficient on any musical instrument takes time and dedication, though the learning curve can inflect in various ways depending on ease of use. My own playing technique consists largely of an assortment of what many Thereminists would consider to be tricks, cheats, and/or crutches. I don't really care because I'm having fun, I’m an incurable musical dabbler with few aspirations to playing greatness, and I have absolutely no desire to perform publicly. But everyone is different!
My sleight of hand (!) list:
•The pitch field is linearized and the pitch antenna is a plate, so I don’t have to adapt my “technique” (such as it is) to various different regions in the field.
•I play with an extremely relaxed note spacing of 1/3 octave per open/closed hand so I don't even have a fingering technique to speak of, and my vibrato is just waving my hand around like a dead mackerel.
•I use fairly aggressive though subtle sounding (IMO) pitch correction.
•I watch the LED tuner like a hawk.
•I use a non-traditional volume field (closer=louder) which feels much more intuitive (IMO).
With all of these gimmicks together, honestly just about anyone could be playing simple tunes pretty passably in a couple of months without everyone cringing. I can play a cappella all day long while remaining firmly anchored to absolute pitch. And with the relaxed pitch field I don't have to use a special sit/stand chair to dawdle at the thing and stay in tune without a frozen statuesque pose.
But you won’t find many (or any!) of the above listed features on any other Theremin, past or present, so becoming highly acclimated / dependent on them may chain you to the D-Lev from this day forward, for better, for worse, for richer, for poorer, etc.
Can you recommend any good first songs for beginners?
Slow songs that consist mainly of stepping back and forth through a major or minor scale, and with a minimum of short duration notes or large quick jumps in pitch, are the easiest to play on the Theremin. Even if you aren’t particularly religious, familiar hymns and popular holiday songs are a good source to mine as they tend to have limited range and simple timing so as to be easy for lay singers to sing, which makes them easy to play, and you probably know more of them than you think.
Try The First Noel in the key of C, starting on E. A bit more difficult is Joy to the World in the key of C, starting on C. Play slowly, later add vibrato on longer duration notes, along with some volume expression / feeling.
If your first songs are too much of a stretch (to fast, too complex, etc.) it can be discouraging and can distract from / delay the development of expressive phrasing. On any instrument, speed will come with sufficient practice, there’s no need to push it – indeed doing so can be counter-productive and lead to bad habits.
Huge thanks to Roger Hess for throwing his entire life into this labor of love for an extended period of time, taking on the task of alpha / beta tester, spearheading the PCB initiative, exploring exotic cabinetry design, making the first demo units, editing this manual, and being just an all around incredibly good friend and collaborator. Many features in the D-Lev owe their existence / refinement to his equally keen musical and engineering insights.
Giant thanks to Jeff La Marca for his constructive suggestions to improve the software and this manual, setting up the “D-Lev Groupies” Facebook page, his encouragement to undertake an initial kit offering, and his unwavering trust in the project to buy kit S/N 0000001! ;-)
Special thanks to Jason Barile for hosting the fantastic Theremin World web site (www.thereminworld.com) where the D-Lev was conceived, born, and grew up. Many incredibly nice and interesting folks there helped guide the journey.
Everyone who took the time and effort to openly document and post their research into Theremin technology and sound synthesis. This very long list includes (but is not limited to):
•Vincent Dhamelincourt’s excellent MIDI implementation code on the Open.Theremin project (D-Lev MIDI TX module) and his super helpful beta testing and suggestions.
•Ilya Mamontov’s meticulous experiments characterizing hand & antenna capacitance, and his clever Theremin response simulation programs.
•Vadim Lopatin’s tireless and inspiring investigations into digital Theremin design.
•Norio Tomisawa’s patent US4249447 Tone Production Method for an Electronic Musical Instrument (D-Lev reduced alias audio oscillators).
•Hal Chamberlin’s book Musical Applications for Microprocessors (D-Lev filters).
•Richard F. Voss and James McCartney’s pink noise generator (D-Lev noise source).
•Musical Applications Of Nested Comb Filters for Inharmonic Resonator Effects by Jae hyun Ahn and Richard Dudas (D-Lev inharmonic resonator).
•DAFX — Digital Audio Effects edited by Udo Zölzer (D-Lev bass & treble EQ).
•Chet Singer’s Physical Modeling on the Nord Modular G2 (D-Lev preset inspiration).
•Jon Dattorro’s Effect Design papers (D-Lev original white noise source).
•Julius O. Smith’s many papers and web references.
The LibreOffice development team. This manual was written in Writer, and many critical engineering tasks were performed with Calc – you’ve come a long way, OpenOffice!
Most of the illustrations in this manual were generated by the excellent diagrams.net (aka draw.io) program. The human models were generated by https://setpose.com/.
The font hd44789-regular.ttf from fontsov.com was used for the LCD illustrations. The ASL font GallaudetRegular.ttf by David Rakowski was used for the hand illustrations, specifically the characters S, 5, and F, which were edited slightly in InkScape.
The D-Lev logo was designed by Roger Hess; it uses the fonts Neuropol.ttf by Ray Larabie and Space Age.ttf by Justin Callaghan.
This project is dedicated to Fred Mundel, who was always up for a new Theremin circuit design. Fred inspired everyone with his passion, infectious curiosity, and sincere kindness, and he left us way too soon.