Synth : Easy DX7
Fast and easy shortcut for creating Yamaha DX-7 voice patches with little programming knowledge needed
When the DX7 was new in 1983, it was fine to sit for 2 hours making up a Voice-Patch. Conceptually, the DX7 is quite easy to understand but the time taken to do anything is exasperating and demoralising. Despite myself loving FM & enjoying playing the DX7 sounds, there comes a point where I just dread having to programme it... and I end up using the Presets.
Well, I've had enough of it's user-unfriendliness and this is my Fast & Easy DX7 programming guide.
FAST & EASY SHORTCUT for creating DX7 voice-patches
Brief explanations are in this column.
What you need to know.
To make this a quick and easy shortcut method, I have had to make some generalised assumptions about what and how you would want to programme voice-patches for DX-7.
Detailed or verbose explanations are in this column.
More than you need to know. Much much more.For a good understanding of FM Synthesis, visit my Synthesis: FM page. More detailed information can be found in FM Pt.2 - DX Supplement.
It's all very detailed and informative.
Crash Course in FM Synthesis
► When you press your keyboard, you get a note being played at a certain frequency. For example, the note "A4" is at 440 Hz.
In Frequency Modulation (FM) synthesis, you have 2 sine-waves: A Modulator which modulates the pitch of the the Carrier (the other).
► We get to choose the Frequency multiple of M (the Modulator) and C (the Carrier). So for the note "A4", frequency of 1 would be 440 Hz, frequency of 2 would be 880 Hz, frequency of 0.5 would be 220 Hz.
► We use the ratio M:C to describe this relationship. So M:C of 7:2 means the Modulator is at the frequency of 7 while the Carrier is at frequency of 2.
► We also get to choose the Modulation Amount which is the output of M. The output of C is the loudness volume.
► How it works - Let's look at M:C of 3:7. At M output=0, we get a sine-wave at frequency 7 (the carrier frequency). As we increase M output, Side-bands of sine-waves appear at a intervals of M; meaning sine-waves appear at frequencies of 10, 13, 16, 19 etc as well as 4, 1, -2, -5 (we'll treat negative numbers as side-bands which are "reflected" back at F=0).
M : C + Sidebands 3 : 7 ┬ 10 13 16 19 22 25 └ 4 1 (2) (5) (8) (11)Knowing "the One" Algorithm
Meet Algorithm 7, the only algorithm you will need (see diagram on right)... for now.
► An algorithm is how the Modulators and Carriers are wired up. There are 32 algorithms but just learn this one.
► Carriers are the "Operators" in orange (at the bottom).
► Modulators are the "Operators" in turquoise (above carriers).
► As a bonus, one Operator has a Feedback loop to modulate itself.
In our "Grand Plan", we focus on the main Basic Tone:-○ Think of Op [1]+[2] as waveform Oscillator-A○ Think of Op [3]+[4] as waveform Oscillator-B
Together, these make the main Basic Tone.
The Grand Plan
● We only use Op [1], [2], [3] & [4] to create the main Basic Tone.
● We only use operators [5] & [6] to create the Attack portion of a sound.
We do not mix these roles.
We select:-
a) the Frequency of each Op (operator).b) the Output Level of each Op....and that is FM Synthesis.
Modulators [2] & [3] (in turquoise): Treat these s your waveform selector.● "M" = Modulator Frequency: Higher "M" gives you higher timbral overtones.● Output Level of "M" is like a Filter. Higher output gives higher harmonic content.
The Attack portion is completely separate using Op [5] & [6] only.
The "Shortcut" Methodology
-:Set-Up:-
● Set one Algorithm, alg-7
● Assign Op [1], [2], [3], [4] for Basic sound.
● Assign Op [5], [6] for Attack portion.
● Everything that affects the Envelope must be preset.
This applies to Velocity, Kybd Rate Scaling and Kybd Depth.
● Set an open Envelope for Carrier Op [1] & [3]
● Set a decay Envelope for Modulator Op [2] & [4]
● Set a spike Envelope for Attack portion Op [5] & [6]
The DX7 Envelope Generators are very accurate in use but are unnecessarily infuriating to programme. The interface is mostly to blame. Also, the Envelope design to too flexible such that many different settings end up with similar sounding results.
The most important step is to create a "Set-Up" Voice Patch with all the necessary parameters ready to go.
Once the basic Tone has been selected, we can (if we want to) use other Algorithms which have Op [1], [2], [3], [4] in the same position. This won't affect the selected Basic Tone and allows for a some variations of Attack Portion sound creation.
-:Method:-
► Create Basic Tone - Op [1], [2], [3], [4]
▪ Select M:C Frequency for Ops
▪ Adjust M:C Output Level for Ops
▪ Test with alg-9, if you need Feedback
▪ Adjust the Detune of Ops
► Create Attack Portion - Op [5], [6]
▪ Choose from compliant Algorithms (see diagram)
▪ Select Frequency for Ops
▪ Adjust Output level for Ops
► Fine-Tuning of Envelopes
▪ Adjust EG of Basic Tone Ops
▪ Adjust EG of Attack Portion Ops
Alg-9, alg-2, alg-12 & alg-15 have Feedback on Op [2]. Alg-8 has Feedback on Op [4].
The rest of the Algorithms have Feedback for the "Attack portion" Operators.
Creating "the One" Set-Up Voice-Patch
Make this Voice Patch:
► Do a "Voice Init" to reset patch
▪ set Algorithm = 7
▪ set Feedback = 5
► Settings for the different Operator types
Operator # [1,3] [2,4] [5,6]▪ Frequency = 1.00 1.00 9.00▪ Velocity Sens = 2 4 6▪ Kybd Rate Scale= 2 3 0▪ Output Level = 99 90 80► Settings for Envelopes (EGs)
- Level L1 L2 L3 L4 Rate R1 R2 R3 R4▪ [1,3] Carriers Lv 99 85 70 00 Rt 99 15 05 45
▪ [2,4] Modulators Lv 99 85 70 00 Rt 90 40 25 50
▪ [5,6] Attacks Lv 99 70 00 00 Rt 95 75 60 60
► SAVE (several copies) because you will use this as your starting-point for FM sound creation.
Using the Set-Up Voice-Patch
► Setting your Frequencies
▪ Select your Basic Tone M:C
▫ Test with alg-9, if you need Feedback
▪ Select your Attack portion M:C
▫ Adjust Algorithm selection (from compliant list)
▪ Select the Detune of Ops
► Setting your Output Levels
▪ Adjust the main Output Levels
▪ Adjust the Envelopes of Ops
Everything can be quite fast except for adjusting Envelopes.
TIPS & TRICKS for creating DX7 Voice-Patches
Basic Tone - Frequencies
Carrier Frequencies:-
Generally you should set Carriers just like you would normally on any synth. It'd be mostly C=1, sometimes with C=0.5 or occasionally with C=2. You would probably do this 90% of the time.
Modulator Frequencies:-
▪ Use random twiddling, or
▪ Copy from the standard presets (see table on right), or
▪ Choose from a Series.
Carrier & Sidebands are parts of Series:-
▪ You start with "C". Each side of "C" are SideBands separated at multiples of "M". Basically, M modulating C creates side-band harmonics (at intervals of M).
▪ Using higher M means wider gaps between the harmonics which gives more high treble timbres. It's these gaps in the frequency spectrum which makes FM have interesting tones.
▪ Treat silence (F=0) as a mirror which reflects the negative frequency SideBands.
▪ Move "C" to any one of those SideBands & it's still the same Series of harmonic bands.
For more on M:C Series, see Bonus Section below.
Does your Basic Tone need more "sizzle" or "zing"?:-
▪ If so, switch algorithms to alg-9 so you have FeedBack on Op-[2].
Operator# E.Piano 1 Vibe 1 [2] [4] m14 m1 m3 m14[1] [3] c1 c1 c1 c1 - - - - - - - - - - - - - - -[2] [4] ¤58 ¤89 ¤72 ¤57[1] [3] ¤99 ¤99 ¤99 ¤99
Marimba Tub Bells Kotom3 m5 m3½ m3½ m4 m5c½ c½ c1 c1 c1 c1- - - - - - - - - - - - - - -¤79 ¤70 ¤78 ¤75 ¤99 ¤75¤95 ¤99 ¤95 ¤99 ¤90 ¤99
Bass 1 Strings Brass m½ m4½ m1 m2 m½ m1c½ c½ c1 c1 c½ c1- - - - - - - - - - - - - - -¤80 ¤93 ¤83 ¤70 ¤86 ¤99¤99 ¤99 ¤99 ¤99 ¤98 ¤99
Piano m2 m1c1 c1- - - - -¤87 ¤82¤99 ¤99
Attack Portion
Decide on whether the basic Tone needs Feedback. Beyond that, the Algorithm selection is only for the Attack portion. Using alg-7 (or alg-9) is a good way to implement the Attack portion.
For alg-7 (or 9), for creating Attack portion, typically Op-6 would use a high output level (85-95) and then use Op-5's output level as the overall fine control.
You can also look at how other patches or presets have done this.
What if you don't need the Attack portion?:-
Basically, then use the extra 2 Ops for more Basic Tone.
Strings and Brass may not need an Attack portion so perhaps switching algorithm to alg-2 would give more saw-like tones.
-Or- for Basic Tones needing 3 carriers (VCOs), choose alg-5 or alg-6.
1 - Harmonica 1 & 2, Syn-Lead 5, Syn-Clav 3
2 - Strings 1 & 2 & 4 & 5 & 7 & 8, Orchestra, Koto, Bassoon, Brass 5 & 5ths, Strg Qrt1, Strgs Low, High Strgs, Pizz Stgs, Stg Crsndo, Strg-Chime
5 - E. Piano 1 & 3 & 4, Harpsich 1, Orch-Chime, Tub Bells, Piano 5ths, E. Organ 4, Honky Tonk, Piccolo, Voice 3, Vibe 2, Syn-Piano, Bell-Flute, E.P-Brs, T.Bl -Exp A, Chime-Strg, Harpsi-Stg
6 - Pipes 3 & 4, Recorder, Chimes, Cow Bell
7 - Marimba, Voice 1 & 2, Glokenspl, Xylophone, Flexatone, Syn-Clav 2, Lead Guitr,
8 - Guitar 1, Sitar, Banjo, Jazz Guit 1 & 2, Prc Synth 1, Brass 7, Solo Tbone,
9 - Syn-Bass 2, Strg Ens 2, Clav-E.Pno, Clv-Brs
12 - E. Piano 2
13 - none
14 - Guitar 3 & 4 & 5, Lute, Harp 1, HeavyMetal, SpanishGtr, Folk Guit, Log Drum
15 - Strings 3 & 6, Steel Drum, Strg Ens 1, Bright Bow, Clas.Guit, Viola Secn, Stgs 5ths, Strg-Marim, Strg-Pizzt
28 - none
Detune & more Detune
DeTuning the Operator Frequencies creates a lot of shimmering interference. Due to FM's enharmonic nature using high "M" frequencies, this can add a lot of allure to your sounds. Sadly, the standard Detune range of only ±7 is insufficient. As such, you have to use a combination of Coarse frequency and Fine frequency to achieve more Detune.
A simple Detune Table can be found below in the Bonus Section. A more complete version can be found in DX Supplement article.
Output Levels & Envelopes
Carrier Ops:-
Adjusting the Carrier Envelopes is fairly intuitive, much like on other synths.
Modulator Ops:-
Envelope Levels need to be biased quite high, for Modulator Ops. The lower values of Output Levels are a dead zone. For a lone Modulator, Output at 55 is still quite dull-sounding with hardly any harmonics. You could use L4=40 as your envelope-zero and it would not change much.
To use an analog-synth analogy, the filter section would have a Cut-off and an Envelope. The Cut-off sets the base of the filter and the filter envelope operates above that. For the DX7, there is only the Envelope so you will want to set the Env.Levels fairly high -or- use L4 as the base level (maybe L4=50).
See Bonus Section: DX7 Modulation Index for more insight or more details at DX Supplement.
Strings Lv 99 80 60 00 Rt 50 30 25 40
Brass Sweep Lv 75 99 50 00 Rt 75 30 25 40
Slow Sweep Lv 50 99 50 00 Rt 70 25 20 40
BONUS SECTION
Detune Table
Using Coarse frequency and Fine frequency to get more Detune. Full table is found at DX Supplement article.
M:C Series Table
The M\C chart shows what Series is generated by a "M:C" combination. The Series charts below shows the possible harmonic content in the frequency spectrum for each Series. For more complete tables of "M:C" and Series, see Synthesis: FM.
M \ C. _0.5___ __1____ __2____ __3____ __4____0.5 = 1:1 x½ 1:1 x½ 1:1 x½ 1:1 x½ 1:1 x½ 1 = 2:1 x½ 1:1 1:1 1:1 1:1 2 = 4:1 x½ 2:1 1:1 x2 2:1 1:1 x2 3 = 6:1 x½ 3:1 3:1 1:1 x3 3:1 4 = 8:1 x½ 4:1 2:1 x2 4:1 1:1 x4 5 = 10:1 x½ 5:1 5:2 5:2 5:1 6 = 12:1 x½ 6:1 3:1 x2 2:1 x3 3:1 x2 7 = 14:1 x½ 7:1 7:2 7:3 7:3 8 = 16:1 x½ 8:1 4:1 x2 8:3 2:1 x4 9 = 18:1 x½ 9:1 9:2 3:1 x3 9:4 10 = 20:1 x½ 10:1 5:1 x2 10:3 5:2 x2 11 = 22:1 x½ 11:1 11:2 11:3 11:4 12 = 24:1 x½ 12:1 6:1 x2 4:1 x3 3:1 x4 13 = 26:1 x½ 13:1 13:2 13:3 13:4 14 = 28:1 x½ 14:1 7:1 x2 14:3 7:2 x2 15 = 30:1 x½ 15:1 15:2 5:1 x3 3:1 x5 16 = 32:1 x½ 16:1 8:1 x2 16:3 4:1 x4For example, for M=3 and C=4, the Series is named "3:1".In the Series chart 3:1, we can see the Carrier C=4 position marked with "}".
The symbols "}" and "{" only differentiate between reflected Bands (or not).If "C" appears on any "}", then "{" will be a reflected Band (and vice-versa)."║" denotes where the non-reflected and reflected are on the same frequency.
DX7 Modulation Index table
DX7 Modulator Output Level -converted to- Bessel components. See DX Supplement for more details. Bessel components are the amplitudes of the Carrier & SideBands but without any reflections. Amplitude values are in Percent (% values). All values below 1% have been excluded.
OUT, index, J0, J1, J2, J3, J4, J5, J6, J7, J8, J9, J10, J11, J12, J13, J14,J15,J16,J17,J1899, 13.122731, 21, -4, -22, -2, 21, 15, -9, -24, -16, 4, 22, 29, 27, 20, 13, 7, 4, 2, 1 98, 12.033598, 6, -22, -9, 19, 19, -7, -24, -18, 4, 23, 30, 27, 20, 12, 7, 3, 1, 1, 97, 11.034858, -16, -18, 13, 23, -1, -23, -21, 1, 22, 31, 28, 20, 12, 7, 3, 1, 1, 96, 10.119009, -25, 1, 25, 9, -20, -24, -4, 20, 31, 30, 22, 13, 7, 3, 1, 1, 95, 9.279172, -15, 20, 20, -12, -27, -12, 15, 31, 32, 24, 15, 8, 4, 1, 1, 94, 8.509039, 4, 27, 2, -26, -21, 6, 29, 34, 27, 17, 9, 4, 2, 1, 93, 7.802823, 21, 20, -16, -29, -6, 23, 35, 31, 20, 11, 5, 2, 1, 92, 7.15522, 30, 4, -29, -20, 12, 33, 35, 25, 14, 7, 3, 1, 91, 6.561366, 27, -14, -31, -5, 26, 37, 31, 19, 9, 4, 1, 90, 6.016799, 16, -27, -25, 11, 36, 36, 25, 13, 6, 2, 1, 89, 5.517429, 0, -34, -12, 25, 40, 32, 19, 9, 3, 1, 88, 5.059505, -16, -33, 3, 35, 39, 27, 14, 6, 2, 1, 87, 4.639586, -29, -27, 17, 41, 36, 21, 10, 4, 1, 86, 4.254519, -37, -16, 29, 43, 32, 16, 7, 2, 1, 85, 3.901411, -40, -3, 39, 43, 27, 12, 4, 1, 84, 3.57761, -39, 10, 45, 40, 22, 9, 3, 1, 83, 3.280683, -34, 23, 48, 36, 17, 6, 2, 82, 3.008399, -26, 34, 49, 31, 13, 4, 1, 81, 2.758714, -17, 42, 47, 27, 10, 3, 1, 80, 2.529752, -6, 49, 45, 22, 8, 2, 79, 2.319793, 4, 54, 42, 18, 6, 1, 78, 2.12726, 15, 57, 38, 15, 4, 1, 77, 1.950706, 25, 58, 34, 12, 3, 1, 76, 1.788805, 35, 58, 30, 10, 2, 75, 1.640341, 43, 57, 27, 8, 2, 74, 1.5042, 51, 56, 23, 6, 1, 73, 1.379357, 58, 54, 20, 5, 1, 72, 1.264876, 64, 51, 17, 4, 1, 71, 1.159897, 69, 49, 15, 3, 70, 1.06363, 74, 46, 13, 2, 69, 0.975353, 78, 43, 11, 2, 68, 0.894403, 81, 40, 9, 1, 67, 0.820171, 84, 38, 8, 1, 66, 0.7521, 86, 35, 7, 1, 65, 0.689679, 88, 32, 6, 1, 64, 0.632438, 90, 30, 5, 1, 63, 0.579948, 92, 28, 4, 62, 0.531815, 93, 26, 3, 61, 0.487676, 94, 24, 3,