ChordPro for Yamaha accompaniment

Time to take the wrapping paper off my current development project.

It starts with ChordPro. ChordPro Format is perhaps the most popular notation for rock, pop, soul and folk tunes. A ChordPro format song contains lyrics and chords, usually formatted for easy display and reading. Strummers and plinkers everywhere use ChordPro songs as lead sheets.

It ends with Yamaha Genos, Tyros and PSR accompaniment. Genos — and other recent Yamaha arrangers — play MIDI files containing chords and lyrics. Genos displays either a running score or lyrics (plus chords) during playback.

What is missing is the bridge between ChordPro and Genos. My current project is the bridge. It translates an extended ChordPro file to a MIDI file which is compatible with Genos and other mid- to high-end Yamaha arranger keyboards. So far, I have a prototype up-and-running.

I emphasized the word “extended” because ChordPro format by itself is not sufficient for playback. The format does not have a precise notion of time. ChordPro relies on the musician to interpret the song on the fly. It assumes that the musician has heard the song before and knows when to change chords. As usual with computer stuff, playback needs more precise semantics. That’s where the extensions come into play.

Since there are a gazillion ChordPro songs on the Interwebs, I wanted to play back ChordPro files with as few modifications as possible. Thus, the first rule is “Each notated chord is held for one measure.” Of course, many songs change chords within a measure, too. (Even “Louie, Louie”!) Enter the first extension. A notated chord may have an optional beat count which specifies the number of beats to hold the chord, or more precisely, the number of time divisions (quarter notes or eigth notes) to hold the chord.

As I discovered during testing, existing ChordPro song files have a fair number of warts. Sometime the chord progressions are whack. The files often have random playing directions which ChordPro happily snarfs up as lyric text. ChordPro is very forgiving as it is primarily a formatting representation and tool. The initial goal — playing a ChordPro song with just a few additions — is unrealistic; expect to do some clean-ups.

Plain, unchanging accompaniment is pretty boring after a short while. Therefore, I added annotations for section changes, fills and breaks. Certain ChordPro directives are optional, but strongly recommended: key, tempo, and time signature. Tempo and time signature obviously guide playback speed and the interpretation of chord hold time. The key signature will set the arranger’s score display to the appropriate key.

Stylecode is an extension. It is a decimal number that selects the arranger accompaniment style, .e.g., 60sVintageRock, Oldies R&R, etc. A style name would be more convenient, but then I would need to develop a style name to code database for each arranger. Forget it; keep it simple. Besides, the PSR Tutorial site has such spreadsheets — just look up the style code yourself.

Start_accomp and stop_accomp are extensions, too. Start_accomp should (must) appear after all the basic playback settings are made. When the MIDI file is played back, the arranger will start or stop the accompaniment engine as directed. Start_accomp begins playback from the second measure; the first measure is reserved for set-up.

The translation program does not implement every and all ChordPro directive. It ignores formatting related directives and it doesn’t handle tablature (tab).

Let’s put all of this together and look at an example. Here is a snippet of “It’s Too Late” by Carole King.

{t: It's Too Late } 
{key: Am}
{artist:Carole King}
{time: 4/4}
{tempo: 104}
# Style: Cool8Beat
{stylecode: 5635}
{start_accomp}

[Am7][*IA]
# Introduction (intro riff)
[Am7][*MA] [D6] [Am7] [D6]

{c: Verse 1}
[Am7] Stayed in bed all morning just to [D6] pass the time.
[Am7] There's something wrong here there can [D6] be no denying.
[Am7] One of us is changing
Or [Gm7] maybe we've just stopped [Fmaj7] trying. [Fmaj7][*FA]

{start_of_chorus}
And it's too [Bbmaj7][*MB] late baby now [Fmaj7] it's too late
Though we [Bbmaj7] really did try to [Fmaj7] make it.
[Bbmaj7] Something inside has [Fmaj7] died
And I can't hide [Dm7] and I just can't [Esus4:2][*FB] fake it.[E7#9:2]
{end_of_chorus}

Lines beginning with ‘#’ are comments. Lines beginning with ‘{‘ are directives. Each directive must have a closing ‘}’ and consist of one line only. My translation tool supports the following simple directives:

  • title (or ‘t’): Song title
  • key: Song key
  • artist: Performing artist
  • composer: Song composer
  • copyright: Copyright information
  • comment (or ‘c’): Comment to be ignored
  • time: Time signature
  • tempo: Song tempo in BPM
  • stylecode: Yamaha style code (a decimal number)
  • start_accomp, stop_accomp: Starts and stops the accompaniment

As I mentioned, time, tempo and stylecode are optional, but necessary — unless you are willing to roll with the defaults. Start_accomp must be the final directive before the first chord and lyric in the song. Start_accomp generates the magic message needed to start accompaniment.

Chords look like regular ChordPro chords. Chord names are surrounded by square brackets, e.g., “[Am7]”. Nothing looks amiss until the end of the chorus, e.g., “[Esus4:2]” and “[E7#9:2]”. “:2” is a beat count. Each chord is held for two quarter notes — quarter notes because the number of divisions per bar (the “denominator”) of the time signature is four. It’s our job to make sure that the counts add up to a full measure in order to keep everything synchronized to measures.

The translation program (yet unnamed!) is very forgiving when it comes to chord spelling. However, it only recognizes and generates the 34 Yamaha chord types which are supported by Yamaha arrangers:

    Maj        7        min        minMaj      aug      dim 
Maj6 7sus4 min6 minMaj7 aug7 dim7
Maj7 7b5 min7 minMaj7-9
Maj7#11 7-9 min7b5
Maj9 7#11 min9
Maj7-9 7-13 min7-9
Maj6-9 7b9 min7-11
7aug 7aug
8
5
sus2
sus4

If the chord is not recognized, you will get a major or minor triad.

ChordPro allows annotations, that is, constructs beginning with “[*” and ending with “]”. Annotations ordinarily are playing instructions that are displayed in a pretty-printed ChordPro song. Annotations are extended with accompaniment section control commands:

  • Introduction: [*IA] [*IB] [*IC] [*ID]
  • Main section: [*MA] [*MB] [*MC] [*MD]
  • Fill in: [*FA] [*FB] [*FC] [*FD]
  • Break: [*BR]
  • Ending: [*EA] [*EB] [*EC] [*ED]

A section control command usually follows a chord and takes effect at the same time as the chord change.

ChordPro supports paired formatting directives like:

    {start_of_chorus} 
...
{end_of_chorus}

I am currently experimenting with these directives to control lyric and chord formatting. Yamaha’s lyric display allows line breaks and page breaks. Start of chorus (abbreviated “{soc}”) generates a page break. I added a new directive pair for handling long instrumental breaks, e.g.,

    {start_of_instrumental} 
[Cmaj7][*MC] [Fmaj7] [Fmaj7] [Am7] [Gm7] [Fmaj7]
[Dm7] [Esus4:2][*FC] [E7#9:2]
{end_of_instrumental}

Yamaha’s lyric display runs chords together when no lyric text is present. The new directive provides some separation between chords by generating filler lyric text (dashes, to be exact).

That’s the story. Testing continues. I will make the Java source code available as soon as possible. So far, so good. The concept works.

Copyright © 2021 Paul J. Drongowski

Critique: Genos™ drawbar organ

I like the Korg Module Pro “GospelOrgan” patch, so I tried to create a sound-alike voice on Yamaha Genos. Genos and MODX share the same waveforms and DSP effects, and I may port the result to MODX, too.

The experience recalled my previous misgivings about the rotary speaker simulation and limitations of the Genos DSP effect implementation. I will amplify those comments here.

Mid- to upper-level Yamaha arranger workstation have long had a drawbar organ feature which Yamaha calls “Organ Flutes.” This feature dates back to 1999, appearing in the PSR-9000 keyboard. Although a few details have changed over the years, Yamaha has not substantially overhauled Organ Flutes. It’s time, Yamaha — the world has moved on. I’d love to see the new YC organ technology in Genos. It’s the flagship of the arranger line and YC organs would definitely differentiate Genos from its lower-cost brethren.

Yamaha Organ Flutes main voice editing screen

The main, tweakable organ parameters are:

  • Nine drawbars
  • Percussion (first note/each note, length)
  • Percussion pitch (4′, 2-2/3′, 2′)
  • Response (onset delay of drawbar and percussion sounds)
  • Vibrato (on/off, depth, speed)
  • Rotary speaker speed (slow/fast)
  • Volume level (1 to 8)
  • DSP effect (e.g., rotary speaker)

For B-3’ers, the 4′ percussion pitch is the 2nd harmonic setting and the 2-2/3′ percussion pitch is the 3rd harmonic setting. The 2′ pitch supports non-Hammond organs which require it.

Compared with a contemporary clonewheel, one immediately notes a few missing features:

  • Vibrato only, no chorus
  • No key click
  • No rotor noise
  • No leakage

Overall, the Genos B-3 is super clean and polite — not vintage. MODX (Montage) provides key click, rotor noise (grit) and rotor whistle waveforms. Why does Genos lag behind? Although MODX is AWM2, not modeling, these extra waveforms are better than nothing at all.

The Genos synthesis engine is also AWM2 sample-playback and AWM2 provides the Organ Flutes vibrato. Organ Flutes does not simulate the one-of-a-kind Hammond vibrato/chorus scanner. The Korg Module “Gospel Organ” voice incorporates C-3 chorus and the AMW2 vibrato just doesn’t cut it (head-to-head comparison). I had to substitute Genos’ V-2 setting and move on.

Simplified, graphical rotary speaker interface

If you want to change the rotary speaker type, you need to dive through the effect setting button at the top of the Organ Flutes screen. After selecting the insertion effect, Genos displays a skeuomorphic (graphical) rotary speaker cabinet with a few knobs. In the screenshot above, we get rotary speed, horn and rotor balance, and microphone left/right angle. Like many (most?) rotary speaker simulations, the rotary effect emulates the sound of a mic’d up, stereo recording of a Leslie, not a horn and rotor moving air in a room.

Additional rotary speaker (DSP) parameters are changed by tapping the “Detail” button in the lower right corner. deep-diving reveals a few more deficiencies:

  • Missing parameters due to a limitation on the number of DSP effect parameters (16 parameters maximum)
  • Only one insert effect (typically the rotary speaker)
  • Volume control is post-effect and does not affect overdrive

Here is a little more information about each issue.

First page of rotary speaker parameters

At heart, the Genos (PSR, Tyros) sound engine implements the Yamaha XG synthesis and effects architecture. The XG architecture allows up to sixteen (!6) parameters per DSP effect unit. Unfortunately, Yamaha’s DSP engineers are creating effect algorithms (AKA “effect types”) with more than sixteen parameters! The MODX ROTARY SPEAKER 2 algorithm has eighteen (18) parameters. The Genos REAL ROTARY effect type is the same algorithm as MODX. However, only 16 parameters are accessible or stored on Genos. The two missing REAL ROTARY parameters are:

  • Slow-Fast Time of Rotor
  • Fast-Slow Time of Rotor

You cannot change these rotor ramp times on Genos, yet, you can change them on MODX.

This issues affects the Genos UNI COMP compressor algorithm (MODX: UNIVERSAL COMPRESSOR DOWN). Dare I mention the inability to specify a side-chain part, too? People are trying to create EDM on arrangers.

The XG architecture allows only one insert effect per part. The Organ Flutes insertion effect is typically a rotary speaker simulator. The MODX effect architecture, on the other hand, allows two insert effects per part. Yamaha synths take advantage of the second insert effect to add overdrive or vintage EQ:

  • Rotary speaker 1 Multi FX (Distortion Solo)
  • Rotary speaker 2 VCM 501 EQ (Flat)
  • Amp Simulator 3 (Tube) VCM 501 (Flat)
  • Amp Simulator 1 (Stack 2) Rotary Speaker 1
  • VCM 501 EQ (Flat) Rotary Speaker 1

The rotary speaker drive alone is not enough to warm up the basic sound nor is it enough to get a sweet, realistic overdrive with guts. I experimented with the Genos REAL ROTARY effect and got some very squirelly results at high drive levels. The algorithm can be pushed in unexpected, undesirable ways while searching for true funk.

Unlike a real Hammond/Leslie combination, the Genos expression pedal controls post-effect part volume. This is like putting the volume control after the Leslie speaker. A Hammond B-3 pedal controls the level into the Leslie pre-amp. Thus, the pre-amp frequency characteristics and overdrive track the Hammond pedal. The Yamaha YC61 modeling gets this right. Putting the volume pedal before the pre-amp lets the player get clean or dirty in the same way a guitarist uses picking and/or the guitar volume knob to distort or clean up their tone.

If the Genos developers must work around the XG architecture, they should consider a new effect algorithm that combines overdrive with the rotary speaker simulation. The algorithm should allow foot pedal control over the Leslie pre-amp input level. Genos and other PSRs allow wah pedal control, so they obviously know how to achieve this capability within the current architecture.

Copyright © 2021 Paul J. Drongowski

PSS chorus: A dusty look back

Here’s a look into the past — and maybe, the present.

A PSR Tutorial Forum member inquired about the chorus effects in the PSR-E463. The PSR-E463 has the usual system chorus effect and the newer DSP chorus effect. I’m going to focus on the older system chorus effect.

The PSR-E series chorus system effect date back to the earliest days of Yamaha XG and arranger keyboards. These are low-cost entry-level keyboards and usually contain a single integrated circuit (IC) which integrates the main processor (CPU), tone generator and effect units. The most price- and cost-sensitive models integrate the wave memory (samples) on the IC, e.g., the SWLL (PSR-F51). Processors in the other models have an external wave memory, e.g., the SWL01 (PSR-E443) and SWX03 (PSR-E463).

Newer DSP effects aside, the E-series models share the same basic reverb and chorus effects. There are three chorus effects:

  • Chorus1 (MSB: 66 LSB: 17)
  • Chorus2 (MSB: 65 LSB: 02)
  • Chorus3 (MSB: 65 LSB: 00)

The LSB has varied, but they all refer to the same CHORUS (CELESTE) effect algorithm. The LSB just selects a set of preset effect parameters. Chorus1, BTW, falls into the XG CELESTE category, not CHORUS.

Due to hardware integration, the chorus effects likely share the same hardware. Since none of these processors have external DSP RAM, the chorus memory is integrated, too.

As far as chorus is concerned, this is the way it has been since the 1990s! Let’s look back to the Yamaha QY-70 XG implementation (1995). I suspect that the current chorus effects are the same or very similar to the good old QY.

The QY-70 had one chorus and celeste effect algorithm:

Param#  Parameter            Value range 
------ ------------------- --------------------
1 LFO Frequency 0.00Hz - 39.7Hz
2 LFO PM Depth 0 - 127
3 Feedback Level -63 - +63
4 Delay Offset 0 - 127
5
6 EQ Low Frequency 50Hz - 2kHz
7 EQ Low Gain -12dB - +12dB
8 EQ High Frequency 500Hz - 16.0kHz
9 EQ High Gain -12dB - +12dB
10 Dry/Wet D63;gt;W - D=W - D<W63
11 ...
15 Input Mode Mono, Stereo
16

These parameters are laid down by the Yamaha XG specification.

The XG specification does not define the preset values, however. Here are the QY-70 preset chorus values:

Param#  Parameter            Chorus1 Chorus2 Chorus3 Chorus4 
------ ------------------- ------- ------- ------- -------
1 LFO Frequency 0.25Hz 0.33Hz 0.16Hz 0.37Hz
2 LFO PM Depth 54 63 44 32
3 Feedback Level +13 +0 +0 +5
4 Delay Offset 106 30 110 104

QY-70 Chorus3 has the same MSB/LSB as PSR-E Chorus2. QY-70 Chorus 1 has the same MSB/LSB as PSR-E Chorus3. Confusing? Yes, but these are probably the PSR values or close to it.

Next are the QY-70 preset celeste values:

Param#  Parameter            Celeste1 Celeste2 Celeste3 Celeste4 
------ ------------------- -------- -------- -------- --------
1 LFO Frequency 0.50Hz 1.17Hz 0.16Hz 0.33Hz
2 LFO PM Depth 32 18 63 29
3 Feedback Level +0 +26 -20 +0
4 Delay Offset 0 2 2 0

None of the QY-70 presets have the same MSB/LSB as PSR, so your guess is as good as mine.

Now, the really bad news. The PSR-E series, at best, is XGlite. XGlite implementations typically don’t support the XG messages that set effect parameters. Therefore, what you hear is that you get. In other words, the effect presets are hardwired.

The Yamaha PSS series with its minimal SWLL processor implements exactly one chorus and exactly one reverb preset. You get what you pay for!

Copyright © 2021 Paul J. Drongowski

PSR-E473 speculation

Update: Yamaha PSR-E473 and PSR-EW425 announcement.

Yamaha have had a busy few years updating their entry-level models, most notably, the PSR-E373 and the DGX-670. We have yet to see the PSR-E473 and PSR-EW425 models which will replace the PSR-E463 and PSR-EW410, respectively.

No doubt, supply chain and global shipping problems have delayed product launch. Prior PSR-E4xx models employ digital-to-analog converters (DAC) including DACs from Asahi Kasei Microdevices (AKM). The AKM plant in Nobeoka city suffered a major fire on October 20, 2020. Japanese authorities just recently gave AKM permission to clean-up and rebuild. The AKM fire caused a mass shortage of its digital-to-analog and analog-to-digital converters. The shortage affects other major audio and digital musical instrument manufacturers, too, not just Yamaha.

In addition, Yamaha is ramping up production at its new OneHub Chennai (India) manufacturing plant. The Chennai plant products acoustic guitars and portable keyboards for the Indian market and for export. According to a May 2019 press release, the initial goal is to make 200,000 acoustic guitars and 150,000 portable keyboards, including the PSR-I500 and the PSS series. Yamaha eventually wants to raise the goal to 400,000 acoustic guitars and 300,000 keyboards per year. Roughly 50% of production will be for export.

My PSS-A50 was manufactured in India. Given kinship to the PSR-I500, I would expect Chennai to make the new PSR-E473 and PSR-EW425. Export data indicate that a few E473s already have been run off and exported. Prototypes? Development? Testing?

Of course, the delayed launch has intensified interest among enthusiasts. The E373 received substantial feature upgrades: Super Articulation Lite (S.Art Lite) voices and new DSP effect types which once could only be found on mid- and upper-range arrangers. A few of the new effects are top-of-the-line: dual rotary speaker, Real Distortion guitar amp effects, vintage stereo phaser, compression and harmonic enhancer. One fully expects to see the same upgrades in the E473 and EW425.

S.Art Lite voices behave somewhat differently than their mid- and upper-level cousins. A dedicated articulation button triggers the articulation effect. The cousins transparently employ software scripting which reacts to player gestures, e.g., legato, intervals, and so forth.

Is this the new Yamaha PSR-EW425?

My first thought was “That looks quite professional,” not just a home keyboard. The live control knobs are re-located to the upper left. This decision will be controversial! The lighted buttons look pleasant (light blue color) and the screen is black and white monochrome. Still only four registrations per bank.

Yamaha did majorly swizzle around a bunch of front panel controls with respect to the E463. The keypad to the right has been significantly redesigned.

The quadrant to the right of the display has a 3×4 button matrix for voice and style selection by category. The buttons above the data wheel control selection mode: voice or style. I wonder if one of the mode buttons turns the matrix into a numeric keypad? The FUNCTION and PORTABLE GRAND buttons are below the matrix along with some kind of BOOST button.

The control groups running above the keyboard are (left to right): master volume, SONG/STYLE control, TRACK control, registration memory, and quick sampling. The large light blue button between the volume knob and the SONG/STYLE control group may be the ARTICULATION button.

The Quick Sampling feature got more real estate. Quick Sampling has several buttons: LOOP HOLD, A, B, C, D, and CAPTURE. I wonder if it’s possible to capture four waveforms? Did Yamaha re-think sample control including sample zones? Do the lighted A, B, C, D buttons reflect sample status like a pad controller? Can we play the pads? Are they velocity sensitive?

The live control knobs are further away from the keyboard in the quadrant to the left of the display. I can’t tell if there is an additional row or not. E463 has five live control rows; EW425 has 6 or 7?

The rest of the buttons in the upper left quadrant must be record, metronome, tap tempo, melody suppressor, voice control and all that miscellaneous stuff. The legends in the picture are too distorted to read.

Yamaha is still using an LCD with pre-defined, fixed icons and legends. Do they really save that much money versus a full graphic, pixel addressable display? What do I know? It probably simplifies the software, but it seems so 90s.

Should be interesting finally to see the specs, and not just guess.

Copyright © 2021 Paul J. Drongowski

Free DJX-II styles: Version 2

I’m happy to announce version 2 of my DJX-II styles for Yamaha Genos, Tyros and PSR arrangers.

These DJ styles are converted from the original Yamaha DJX-II patterns. If you would like to know more about the conversion process, please see: Mining the Yamaha DJX-II.

These are DJ styles, so they only respond to changes in the root note. The chord progressions are cooked into the patterns (just like intros and endings in regular PSR styles). I tried to find the best mapping from DJX-II patterns to style sections. Therefore, some of the DJXII styles have auto-fill, some do not. Longer “fill” patterns are assigned to the intro and ending sections which can play more than one measure.

Feel free to edit, rearrange and customize the styles in order to make them your own. I recommend Jørgen Sørensen’s excellent tools. Jørgen’s site also has documentation and tutorials about styles and style creation to help you along. Please check it out and support his work!

Click on this link to download the ZIP file.

Version 2 includes all of the files in the first collection. Version 2 adds Drum ‘n’ Bass, Disco, House and Trip Hop styles. The ZIP file includes a README.TXT file which should help you get started with the styles. I have also included PDF notation files for people who read music and want to know about the chord progressions, bass lines, and so forth.

Enjoy! The DJX-II style collection is free.

Copyright © 2021 Paul J. Drongowski

Arpeggio to style conversion

Let’s get one out of the vault… 🙂

The Motif XS/XF (MOX/MOXF) and Montage (MODX) arpeggios and performances are a great source of inspiration. Unlike Yamaha’s arranger series, the built-in phrase library is rich in urban and chill patterns. For some odd reason, one of the classic XS/MOX performances — “Dresden At Night” — never made the leap to Motif XF. And, it’s missing from Montage/MODX, too.

A PSR Tutorial forum member sought help resurrecting Dresden At Night, albeit a recreation for the PSR-SX700 arranger. I thought I would help out since I wrote a series of articles about MOX performance to style conversion:

The end result of that work is a small collection of PSR (Tyros, Genos) styles based on MOX (Motif XS) performances.

If you would like to try Dresden At Night or experiment with a conversion of your own, download the free ZIP file.

MOX performances have four parts (voices). Each part has up to six musical phrases (arpeggios) associated with it. Six front-panel buttons select the currently playing set of arpeggios, i.e., button one selects the first arpeggio for each set and so forth. To get the basic MIDI data, I played each arpeggio (group) for four measures while recording in MOX performance quick record mode. I wrote out the MIDI data as a Standard MIDI File (SMF), transfered the SMF to PC, and imported the SMF into a DAW (Sonar).

Dresden At Night is a downtempo (91 BPM), urban-ish chill performance. It has four parts:

Part# Voice    Name              NoteLo NoteHi VelLo VelHi Level Pan
----- -------- ---------------- ------ ------ ----- ----- ----- ---
1 PRE8:070 8Z Heavy Hearts C-2 G8 1 127 81 C
2 PRE3:053 Dark Bass C-2 G8 1 127 51 C
3 PRE7:110 Ibiza Groove C-2 G8 1 127 127 C
4 PRE5:121 Smooth BPF Sweep C-2 G8 1 127 73 C

The first part is the rhythm voice and the second part is the bass voice. As we’ll see below, arpegiation is turned for these two parts. The third and fourth voices are a play-along pad layer and arpeggiation is disabled. Thus, the rhythm and bass parts provide a looped backing while the pad voices provide an atmospheric you-steer-it, right hand part.

Here are the arpeggio assignments:

Arp#1 Tempo:91              Arp#2 
----- -----
1 MA_8Z HeavyHrt1 1 MA_8Z HeavyHrt3 ON
2 MB_WestCoastPop _XS 2 MA_WestCoastPop _XS ON
3 MA_Space Arp 3 MA_Space Arp OFF
4 MA_Up Oct1 4 MA_Up Oct2 OFF
Arp#3 Arp#4
----- -----
1 MA_8Z HeavyHrt4 1 MA_8Z GatedBt3 ON
2 BA_Jazz Pop _XS 2 FB_WestCoastPop _XS ON
3 MA_Space Arp 3 MA_Space Arp OFF
4 MA_Up Oct4 4 MA_Down Oct1 OFF
Arp#5 Arp#6
----- -----
1 MA_8Z ChillBrk4 1 BA_Sp SFX ON
2 MB_WestCoastPop _XS 2 MA_WestCoastPop _XS ON
3 MA_Space Arp 3 Off OFF
4 MA_Down Oct2 4 Off OFF

The Arpeggiator is turned ON for Parts 1 and 2 only.

A big factor is the “8Z Heavy Hearts” drum kit. The “8Z” in its name means “eight zone”. Eight zone (8Z) voices are a Motif innovation beginning with the XS (MOX) family. If you would like more information, check out these earlier posts about eight zone voices:

8Z voices aren’t drum kits. They are implemented as synth voices and are just a clever way of using the eight elements which make up a voice. The eight zones (8Z) are divided across specific note ranges. 8Z Heavy Hearts assigns waveforms (zone sounds) in the following way:

Element#  Note Low  Note High  Waveform 
-------- -------- --------- --------------
1 C0 F#0 Bd T9-1
2 G0 C1 Bd Hard Long
3 C#1 D1 Sd Elec12
4 D#1 F1 Sd HipHop6
5 F#1 A1 HH Closed D&B
6 A#1 C2 HH Open T9
7 C#2 C4 Clap AnSm
8 C#4 C6 Shaker Hip2

Yamaha messes with each of the zones in crazy ways and ties keyboard notes to voice parameters (AKA “key follow”). For 8Z Heavy Hearts, the most notable effect is how the Clap AnSm pitch follows the keyboard.

Arrangers (even Genos!) don’t have 8Z voices. They have standard drum kits where each MIDI note is a separate drum instrument. In order to make a PSR style using a DAW, one must translate the 8Z MIDI notes to standard drum kit notes. You need to assign appropriate drum kits (e.g., DrumMachine, Analog T9, House, Break or HipHop) to style parts 9 and 10 (MIDI channels 9 and 10) and copy the Heavy Hearts MIDI data to both Parts. Then, delete the notes that aren’t needed in a style part, compress each zone into a single drum instrument, and map the resulting “compressed” notes to the appropriate drum instrument(s). So, for example, all of the notes in C0 to F#0 might be compressed into the Kick T9 1 instrument (B0) in the Analog T9 Kit, which is one of the target drum kits.

I found two PSR drum parts to be enough. However, styles are flexible and you could assign a third (fourth, …) drum kit to one of the other style parts. There’s nothing in Yamaha styles that prevents this. It’s just that parts 9 and 10 (MIDI channels 9 and 10) are conventionally assigned to drum parts in a style.

I went with two PSR drum kits: Analog T9 kit and Drum Machine kit. Here is one possible assignment:

Note Low Note High Waveform       Instrument        Note#   Kit 
-------- --------- ------------- ---------------- ------ -----------
C0 24 F#0 30 Bd T9-1 Kick T9 1 35 B0 AnalogT9Kit
G0 31 C1 36 Bd Hard Long BD Hard Long 24 C0 DrumMachine
C#1 37 D1 38 Sd Elec12 Snare Analog CR 63 D#3 DrumMachine
D#1 39 F1 41 Sd HipHop6 Snare Hip 1 86 F#3 DrumMachine
F#1 42 A1 45 HH Closed D&B Hi-Hat Closed Syn 91 A4 DrumMachine
A#1 46 C2 48 HH Open T9 Hi-Hat Open T9 46 A#1 AnalogT9Kit
C#2 49 C4 72 Clap AnSm Clap Analog Sm 27 D#0 AnalogT9Kit
C#4 73 C6 96 Shaker Hip2 Analog Shaker 57 A2 DrumMachine

A lot of detail, huh? Nobody said style conversion was easy. 🙂 In the end, I spread each zone across multiple drum instruments of the same type, i.e., assigning the Shaker Hip2 zone to a few different Analog Shaker sounds in the Drum Machine kit. Part of 8Z Heavy Hearts’ charm is the subtle sonic variation provided by each zone.

Trying to keep this all straight in the DAW piano roll is cognitively challenging. Did I say, style conversion isn’t easy? 🙂

Fortunately, one can loop four bar sections and play the MIDI through the arranger (Genos, in this case) just like a MIDI song. Then, it’s the usual tweak, listen, rinse, repeat edit process. When the MIDI is tweezed to your liking, you need to add MIDI markers to delimit the style sections. (BTW, leave a one bar MIDI set-up measure at the beginning.) Style section markers are:

    Set-up measure 1: SFF1 
Set-up measure 1: SInt
Main sections: Main A, ...
Fill sections: Fill In AA, ...
Break section: Fill In BA, ...
Introduction: Intro A, ...
Ending: Ending A, ...

At a minimum, you need a few MIDI set-up System Exclusive (SysEx) messages at the beginning of the SMF (measure 1, beat 1):

    F0 7E 7F 09 01 F7                 GM Reset 
F0 43 10 4C 00 00 7E 00 F7 XG System ON
F0 43 10 4C 02 01 00 01 16 F7 Reverb type
F0 43 10 4C 02 01 20 16 00 F7 Chorus type

Reverb is the “Light Hall” preset and chorus is the “Tempo Cross 1” preset. The tempo cross delay is an 8-beat echo.

Which brings me to a necessary ingredient: crunch. 8Z Heavy Hearts gets a lot of its appeal from the Lo-Fi effect:

#  Parameter                   Val  Hex   Meaning 
-- -------------------------- --- ---- --------
1 Sampling Frequency Control 4 0x04 8.82kHz
2 Word Length 98 0x62
3 Output Gain 7 0x07 0dB
4 LPF Cutoff Frequency 56 0x38 12kHz
5 Filter Type 1 0x01 PowerBass
6 LPF Resonance 63 0x3F 6.3
7 Bit Assign 4 0x04
8 Emphasis 1 0x01 On
10 Dry/Wet 88 0x58 D<W24
15 Input Mode 1 0x01 Stereo

Since we need Lo-Fi on both style parts 9 and 10, I configured the variation effect as an XG SYSTEM effect. Parts 9 and 10 also require variation send (MIDI CC#94) set to 127. Add a CC#94 message to parts 9 and 10 in the set-up measure. Here are the MIDI System Exclusive messages to add to the set-up measure:

F0 43 10 4C 02 01 40 5E 13 F7       Variation type 
F0 43 10 4C 02 01 5A 01 F7 Variation SYSTEM
F0 43 10 4C 02 01 56 40 F7 Variation return
F0 43 10 4C 02 01 58 10 F7 Variation send to reverb
F0 43 10 4C 02 01 59 10 F7 Variation send to chorus
F0 43 10 4C 02 01 42 00 04 F7 Variation parameter 1
F0 43 10 4C 02 01 44 00 62 F7 Variation parameter 2
F0 43 10 4C 02 01 46 00 07 F7 Variation parameter 3
F0 43 10 4C 02 01 48 00 38 F7 Variation parameter 4
F0 43 10 4C 02 01 4A 00 01 F7 Variation parameter 5
F0 43 10 4C 02 01 4C 00 3F F7 Variation parameter 6
F0 43 10 4C 02 01 4E 00 04 F7 Variation parameter 7
F0 43 10 4C 02 01 50 00 01 F7 Variation parameter 8
F0 43 10 4C 02 01 54 00 58 F7 Variation parameter 10
F0 43 10 4C 02 01 75 01 F7 Variation parameter 15

At this point, you could save the MIDI to “DresdenAtNight.sty” and load it into your arranger as an SFF1 format style. The arranger should create the style CASM segment. As an alternative, you can add a CASM segment to the SMF with Jørgen Sørensen’s CASM editor. You might as well download his OTS editor, too, and use it to add OTS voice settings to the new style as well. Or, you can do this sort of work on your arranger itself. Mid- and high-end Yamaha arrangers save styles as SFF2 format, which is one way to convert from SFF1 to SFF2. I highly recommend Jørgen’s site, tools and style creation tutorial.

BTW, you can recreate Dresden At Night on MODX (Montage). Create a new MODX performance with 8Z Heavy Hearts and Dark Bass. 8Z Heavy Hearts has the appropriate arpeggios by default. You’ll need to assign different arpeggios to the Dark Bass part. Modify effects as needed. Choose and add pad or lead voices to give your right hand something to do. Done! Use the Scene buttons to switch arpeggio groups.

Copyright © 2021 Paul J. Drongowski


Combo organ: Montage, MODX, Genos

Contemporary workstation instruments offer several options for combo organ emulation. Every workstation has at least a few internal combo organ waveforms. Korg Kronos, for example, has two Vox organ waves built in. Even the lowly Korg microKorg XL+ has two Vox waveforms (DWGS single cycle).

Yamaha MODX and Montage — my focus in this article — have a good variety of Vox and Farfisa waveforms. Yamaha Genos has a lesser endowment as we’ll see. Yamaha Reface YC shares sonic DNA (AWM2 and effects) with the Motif XF and will be the subject of a future post.

Motif, Motif ES and Motif XS

Models in the early Motif series primarily base combo organ patches on two waveforms:

  • Portable Electronic: Vox-y tone
  • Compact Electronic: Farf-y tone

You can hear these waveforms at work in the Tiny Combo Bars 1 performance and the Tiny Combo Bar 2 performance. The patches layer three are more elements playing Portable Electronic or Compact Electronic (respectively). Each element is filtered differently: low pass, band pass and high pass. The net effect is like several distinctive tab stops or drawbars pulled at once.

These waveforms are very old, going back to the original Motif (maybe S80) in the early 2000s. I’ll bet dollars to donuts that the Portable Electronic waveform is the basis for the 60’sOrgan voice (MSB: 0, LSB: 116, PC: 18) in PSR and Tyros keyboards. The 60’sOrgan voice was the sole combo organ mainstay in the arranger line for a loooong time.

Motif XF, Montage, MODX

Motif XF got a big shot of combo juice. Motif XF added several combo organ waveforms:

  • Fr All Tabs
  • Fr Bright Boost
  • Fr Flute
  • Fr String Lo
  • Fr String Hi
  • Fr Trumpet
  • Fr Piccolo
  • Fr Pedal
  • Fr KeyOff
  • Vx Drawbar1-3
  • Vx DrawbarIV
  • Vx KeyOff

The Farfisa (Fr) waveforms support emulation of specific Farfisa features: individual voice tabs (flute, string, trumpet and piccolo), the wicked Bright Boost knee lever, bass keys (pedal), and key off sound. The Fr All Tabs waveform covers one of the most common use cases — all of the tab stops turned on. Subtlety was not a hallmark of sixties combo organ music. 🙂

The Vox (Vx) Vx Drawbar1-3 waveform covers the three Continentel footage drawbars while the mixture drawbar is handled by the Vx DrawbarIV waveform. The Vox waveforms include a Vox key-off noise.

In terms of voice programming, one uses note shift to achieve different footage ranks. Passive filtering is emulated through filter type (low pass, band pass, high pass) and cutoff frequency. Of course, everything can be routed into insert effects for distortion, amp simulation, and other grunge.

Since Montage and MODX inherit all things Motif, these waveforms and the Motif performances are there for you. The Montage and MODX sliders allow control over individual voice elements. For example, choose the Raspy Tabs performance and assign slider control to element level. The Fr Raspy Tabs waveform-to-element assignment is:

El# Waveform     KeyLo KeyHi VelLo VelHi Coarse Level Cutoff XA Ctrl 
--- ------------ ----- ----- ----- ----- ------ ----- ------ -------
1 Fr String Lo C2 G8 1 127 0 97 255 Normal
2 Fr Trumpet C2 G8 1 127 0 82 255 Normal
3 Fr Flute C2 G8 1 127 24 120 236 Normal
4 Fr Pedal C-2 B1 1 127 0 127 160 Normal
5 Fr String Hi C2 G8 1 127 19 24 236 A.SW2 On
6 Fr KeyOff C2 G8 1 127 6 87 80 Key Off

Different tabs are brought in and out by moving the corresponding slider. Assignable switch 2 turns on additional brightness. The low keyboard octaves play the bass (pedal) tones. Overall, this is a fairly controllable representation of a wheezy Farfisa Compact.

Because the sliders are not discrete, you can probably make up Farfisa tones which aren’t entirely authentic. But, really, should one care? 😉

Vox performances have similar control-ability. Here is the waveform-to-element assignment in the Vx Full Bars performance:

El# Waveform      KeyLo KeyHi VelLo VelHi Coarse Level Cutoff XA Ctrl 
--- ------------- ----- ----- ----- ----- ------ ----- ------ -------
1 Vx Drawbar1-3 C-2 G8 1 127 0 75 255 Normal
2 Vx Drawbar1-3 C-2 G8 1 127 12 77 255 Normal
3 Vx Drawbar1-3 C-2 G8 1 127 24 91 255 Normal
4 Vx DrawbarIV C-2 G8 1 127 0 127 250 Normal
5 Vx KeyOff C-2 G8 1 127 4 68 85 Key Off

The first three sliders control the 16′, 8′ and 4′ Vox drawbar settings and the fourth drawbar controls the Mixture (IV) tone. Go ahead, just everything to eleven. 🙂

Montage and MODX FM

But, wait, there’s more! Montage and MODX have two FM combo voices: BOX FM Combo Organ and FM YC Combo Organ. Although these performances don’t sound authentic to my ears, they provide starting points for further programming. I haven’t heard the YC61 as yet, but I wonder if the YC61 combo emulations can be ported to Montage and MODX?

Genos

As I mentioned earlier, the arranger series has been historically short on combo organ sounds, relying on the old 60’sOrgan voice. Wheezy, raspy Farfisa tones are noticably absent. The 60’sOrgan voice sounds like the Portable Electronic waveform on which the Motif 1967 Keys performance is based.

Tyros 4 and Motif XF were introduced at approximately the same time. They certainly were together in the development lab during late 2009. Tyros 4 added four combo organ voices:

  1. 60sComboOrgan1: VoxContiComb1_Full_NoVib waveform
  2. 60sComboOrgan2: VoxContiComb1_Full_VibOn waveform
  3. 60sComboOrgan3: VoxCombi4NoVib waveform
  4. 60sComboOrgan4: VoxCombi4NoVib091117 waveform

Voices 1 and 2 capture one Vox Continental drawbar combination (Comb1) and voices 3 and 4 capture a second combination (Combi4).

Voices 1 and 3 are without vibrato. Voices 2 and 4, unfortunately, have an excessive amount of vibrato — almost painfully so. When I use voices 2 and 4 in a MIDI sequence, I dial down the vibrato depth using MIDI CC#77 messages. Vibrato frequency is about 5Hz. I also remove touch sensitivity by setting:

  • Velocity sensitivity depth to zero, and
  • Velocity sensitivity offset to 114.

An organ voice should not respond to touch (key velocity) — ever.

PSR, Tyros and Genos players shouldn’t forget the “hidden” Italian 60s organ voice (It60’sOrgan) in the GM2 sound set. On PSR and Tyros, you’ll find It60’sOrgan within the Legacy voices Organ subfolder. On Genos, you need to download GM2 and XG user voices to the USER voice folder. (See this thread in the PSR Tutorial Forum.) Of course, you can select
It60’sOrgan from a DAW (MSB: 121, LSB: 2, PC: 17) .

All-in-all, you can get a nice Vox tone out of Genos. Farfisa is still missing in action, tho’. Kind of an odd shortcoming of a keyboard with styles and a user base that want to play popular hits from days past.

In the next post, I’ll compare Reface YC combo organs against Montage/MODX (Motif XF). The result may surprise you.

Copyright © 2021 Paul J. Drongowski

Customizing the Sonogenic voice editor

Back to the Yamaha SHS-500 Sonogenic voice editor…

Thanks to Brent at Keyboard Corner for suggesting a different set of default voices in my MIDI Designer-based Sonogenic voice editor. Back when I released the editor, I was hoping that folks could customize the user interface, changing or adding their own buttons and controls. Brent downloaded the editor, got everything running, and hit a roadblock with MIDI Designer. That’s understandable because I doubt if anyone can dive right into MIDI Designer as easily as diving into the menu of a synth.

So, smart guy, how do you change bank select and program change? Here’s a sequence of screen shots that may help. [Not so easy a year later, is it? 🙂 ]

MIDI Designer ordinarily runs in its operational mode, that is, the buttons, sliders and other controls are live and send MIDI. In order to make changes, one needs to enter Design Mode (edit mode). With the Sonogenic voice editor loaded, tap the More menu button, then tap the Design button under “Tools”.

MIDI Designer More menu

You should see a floating button widget saying “Exit Design Mode”. If you see that, you’ll know that you’re in Design Mode.

MIDI Designer button (control) properties in Design Mode

Tap a button or other control to select it. MIDI Designer outlines the selected button (or control) in red. Double tap the button (or control) to display and change its properties.

In this case, I double tapped the “QuackLd” button. If you want to name the button something else, tap the “Label” field and change the button name.

Button MIDI properties

To send a different MIDI message, tap the MIDI icon in the lower left corner of the Properties dialog box. MIDI Designer should display the control’s MIDI properties. The Sonogenic QuackLd voice has the following bank select and program change values:

  • Bank select MSB: 0
  • Bank select LSB: 112
  • Program change: 84

Values for the other SHS-500 preset voices are listed in the Yamaha Sonogenic SHS-500 Reference Manual.

Tap the “MIDI Off → On” field to edit the program change value. Tap the “Channel – Bank #” field to change the MIDI channel, bank select MSB value and bank select LSB value. You should probably leave the channel value alone.

MIDI Designer channel and bank select dialog box

The “Channel, Bank MSB, LSB” dialog box displays three spinning number dials (kind of like a slot machine) where the first column is MIDI channel, the second column is bank select MSB and the third column is bank select LSB. Spin the dials to get the setting you want. Tap the return arrow in the upper left corner when you’re finished. To leave a dialog box, just tap a blank area in the user interface background.

MIDI Designer actions

Tapping the Actions icon in the lower right corner of the Properties dialog box displays MIDI Designer actions. Use the “Delete” action to delete the control. Use “Copy” and “Make Similar” to copy the control.

General MIDI voice example

The buttons for the Sonogenic General MIDI (GM) voices are similar. Here, I selected and double tapped the “Vibraphone” button.

General MIDI voice selection properties

Again, tapping the MIDI icon in the dialog box displays the MIDI message properties for the button. The GM voices adhere to the GM standard program change values. However, you must send zero for both bank select MSB and LSB to properly switch the Sonogenic.

Tap the Exit Design Mode button to leave Design Mode. Then test your changes with the Sonogenic. Also, you probably should save the modified MIDI Designer interface following the directions in my original article.

Hopefully, this tutorial is enough to get you started with customization!

Copyright © 2021 Paul J. Drongowski

What did you do in self-isolation?

Yes, this site still does music! 🙂

Several weeks ago, I decided to record the church tunes that I enjoy playing. It’s best to start with favorites, as most of you know how you come to detest a track after playing it over, and over, and over again during production. Energy quickly dissipates when micro-editing MIDI events or digital audio…

Before getting into production notes, here are links to the final tracks (all MP3). The goal was to crank out a new tune each week and send it to the folks in our music ministry. Some tunes are a little more polished than others. Please consider them “demo quality.”

Without going too far into the technical weeds, the primary sound source is Yamaha Genos™ and the primary vocalist is my spouse Fran. With the Mill Creek Chorale on hiatus — aren’t we all? — I was happy that she could contribute and have fun, too.

Production notes

So, how did all of this go down?

These demoes show off the Yamaha Genos as a sound source and production tool. I had two main subgoals:

  1. Learn how to record a demo with Genos in either audio or MIDI format.
  2. Learn how to mix down with Steinberg Cubase Artist and try out a few of the freebie plug-ins that I’ve collected.

By and large, Genos and Cubase were the main production tools although I back-slid into SONAR on a few occasions for MIDI editing. Old habits die hard. Workflow was not strictly linear from Genos to Cubase. In a few cases. MIDI and/or audio (stereo 16-bit 44,100 WAV) were slung back and forth between tools.

Yamaha Genos

Genos is the sound source with one big exception: drawbar organ. When you hear B-3, you’re hearing Yamaha MODX through an Electro-Harmonix Lester K. I wanted to hear Lester K in musical context. It sits in a song pretty well and has more guts than the Yamaha MODX Leslie simulator. By itself, though, Lester K has some high-end swirliness in the upper drawbars, but in a track, it seems to mesh. You be the judge.

Emphasis was on speed. Get the tracks down quickly and finish a song each week ASAP. The Beatles used to call this recording “on heat.” Even so, it’s amazing how modern technology will drag you into the dank chasm of production minutiae. Don’t you just love hearing the same three measures fifty times while tweaking and tweezing. Not.

All vocals were recorded directly to Genos using its microphone input. Full backing and raw vocal tracks were exported to Cubase via WAV. Everything was processed and mixed in Cubase. The final mix was exported from Cubase as WAV, and then trimmed and converted to MP3 using Sound Forge Audio Studio.

Our God Is Here This was the first demo in the series and the process doesn’t get any simpler than this. All was recorded into Genos Audio Multi Recording. Find a beat, turn it on, lay down the organ part. Unfortunately, I didn’t plan for the ending, which is quite ragged. The organ is Genos in this case (not MODX). Kinda plain, huh? The bass is an overdub.

Audio Multi Recording is a nicely done sound-on-sound recorder a la Les Paul, minus tape hiss. There are two stereo tracks: main and sub. You can record directly to either main or sub, and bounce (sub+main) to main. There are options for punch in and overdub. Audio Multi Recording provides WAV import and export, functionality which eventually got a true work-out.

Audio Multi Recording keeps digital audio in a persistent project. A project resides in the internal Genos 60GB user solid-state drive and is always ready. The project remembers audio and mix settings without requiring explicit save and load user operations. That makes for a clean workflow. Export is the way to get digital audio into a WAV file and it mixes the main and sub on the way to WAV. In order to export a solo vocal track from sub, one needs to dial down the main and then wait while Genos writes the WAV file in real time. I wish there was a simple, direct fast export to WAV supporting both main to WAV and sub to WAV.

In The Day Of The Lord I quickly realized that I do need to think ahead and assemble a basic skeleton on which I could build a tune. (Duh!) In this case, Toontrack EZDrummer provided the drum patterns which I pulled together in Cubase. Genos played the MIDI drum track while I recorded the flute as a melodic guide and layered in the bass and organ — all recorded as audio. We then did a few vocal takes to Genos. I transferred all of the Genos audio as WAV into Cubase for the final mix. Vocal processing typically was light: a little pitch correction, EQ, and maybe double tracking. A touch of reverb (Cubase Revelation) blends everything together here.

Stop By, Lord This tune makes use of the Genos rhythm accompaniment consisting of main patterns and one-bar fills. I recorded a basic guide track in MIDI using the “BigBandBallad” style as the drummer. This meant switching the main and fill patterns with my left hand while playing the melody with my right hand. I layered in the piano, bass and horns, discarding the guide melody along the way. I added the B-3 organ (MODX through Lester K) in an audio pass. Everything was recorded and produced on Genos since we didn’t record vocals.

Psalm 95 If Today “If Today” makes full use of the Genos arranger features. I played the basic accompaniment track using the “Sunny Reggae” style. Whoever built that style, it must have been a labor of love and it fits this song quite well. I vocoded my voice. Both the accompaniment and vocal tracks where exported to Cubase for final assembly and mix down. I had a lot of fun adding dub effects and tons of reverb, Long live King Tubby!

Rise Up With Him “Rise Up” was recorded to MIDI, again using the Genos rhythm accompaniment as the drummer. The electric piano went down first followed by the bass. The B-3 organ is MODX through Lester K. Backing and vocal audio were exported to Cubase for final mix down. Overall, a pretty simple demo to pull together.

O Sacred Head I recorded the MIDI for this tune a long time ago — in the early 2000s on a Roland XP-60. The guitar picking was carefully edited and assembled (years ago!) from Twiddly Bits. I imported the XP-60 MIDI into Cakewalk, choosing Genos voices and effects. The Genos result versus the original XP-60 is amazing. Fran encouraged me to leave it as an instrumental.

This Is The Day This psalm is long out-of-print. A few years agao, I transfered a scruffy copy of the piano score into Sibelius. So, to kickstart this tune, I exported MIDI from Sibelius, restructured the sections, and humanized the piano as much as possible. I tried to keep the accompaniment simple adding just bass and horns. Once again, the backing and vocal tracks were mixed in Cubase. This demo is a good example of Arturia’s Plate-140 reverb — a freebie that Arturia gave away during the Christmas holiday. I love it.

Lead Me, Lord Another simple turn-on-the-beat-box, sound-on-sound production. Everything was recorded to Genos with the backing and vocal tracks exported to Cubase. (Another example of Plate-140, BTW.) The vocal harmony was generated by a TC Helicon Play Electric added in real time. Recording and production was dirt simple although it took a while to get the TC Helicon configured.

Alleluia! Love Is Alive This was the penultimate demo in the series. The basic track is a stripped down Genos “6-8PopBallad” style. Yamaha tends to over-orchestrate styles, so I kept drum, bass and guitars, tossing the rest. Instead of playing the basic track, I created the accompaniment using chord step-record. This MIDI Multi Recording feature lets a musician enter chords and sections from a lead sheet, quickly creating the song skeleton. You can even try different styles if you haven’t chosen one already. Once the skeleton is set, you expand the chord track into MIDI events, thereby obtaining the full backing track in a Standard MIDI File (SMF).

I added the Celtic violin by playing it into a free MIDI track. Using Sonar, I tweaked the tempo in the full MIDI song in order to add energy as the song progressively builds to the end. Finally, with the MIDI finished, I froze the backing tracking to WAV audio. The backing and vocal tracks were mixed down in Cubase with a little automation here and there to add vocal depth and double tracking.

Conclusions?

The preceding discussion is already a lot to absorb and to process. I’ll take a step back in a future post and try to summarize. All the best to ya.

Copyright © 2020 Paul J. Drongowski

Sonogenic voice editor

The Yamaha SHS-500 Sonogenic is a good sounding syntheizer which lets you jam along with ChordTracker songs. The SHS-500 includes a General MIDI Level 1 multi-timbral tone generator that is accessible over MIDI (Bluetooth, 5-pin or USB). Yamaha doesn’t promote the General MIDI capability, but it’s there!

Update: I added a post showing how to customize the Sonogenic voice editor user interface.

The Sonogenic lacks three critical features that one finds in a typical desktop synth:

  1. Although the Sonogenic has 28 great voices and two drum kits built-in, it lacks many important instruments like organ, double reeds, tuned percussion and soft synth pads.
  2. Internal voices cannot be edited, e.g., attack, filter cutoff and so forth cannot be adjusted.
  3. The chorus and reverb types are preselected and cannot be changed.
  4. Edits and changes cannot be stored into and recalled from user memory slots.

This is the ideal situation for a tablet-based app.

MIDI Designer is an iPad-based tool which supports creation and use of MIDI voice editors and controllers called “layouts.” Users have built and shared layouts for many popular synths. Now, I’m pleased to add the SHS-500 Sonogenic layout. With this layout, you can play the General MIDI (GM) voices, change reverb and chorus types, edit General MIDI (GM) voices and save all of your work in MIDI Designer presets. If you turn Sonogenic LOCAL sound generation on, you can layer an internal voice with a GM voice.

This post describes the Sonogenic layout. I recommend reading my post about MIDI Designer to Sonogenic communications (MIDI flow) first. It will help you to understand the relationship between the SHS-500 and the MIDI Designer Sonogenic layout. The write-up may even inspire a new way of using MIDI Designer with Sonogenic.

One thing that’s nice about MIDI Designer and layouts — you can customize them. So, if you want to modify my layout, don’t hesitate. First, though, you should read my post describing Sonogenic’s MIDI implementation. Then you will know more about the MIDI messages behind the layout’s controls.

Click this link to download my Sonogenic layout for MIDI Designer. Use iTunes file sharing to install the layout in MIDI Designer. I plan to upload the Sonogenic layout to the MIDI Designer web site.

Connection

Although you could connect by USB or 5-pin MIDI, the Sonogenic, MIDI Designer and Bluetooth MIDI are made for each other.

midimittr Bluetooth connection to Sonogenic

First, launch the free midimittr app which acts as a bridge between Sonogenic, Bluetooth MIDI and MIDI Designer. midimitter lets MIDI Designer echo Sonogenic’s MIDI note on/off, modulation and pitch bend messages back to the Sonogenic. You should turn Sonogenic LOCAL off unless you intend to layer a Sonogenic voice with a GM voice.

MIDI Designer connection

Next, launch MIDI Designer and make connections to midimittr as shown in the screenshot above. Then load the Sonogenic layout into MIDI Designer. You should be ready to go at this point.

Voices and effects

The Sonogenic layout is separated into three tabs: Effects, Voice and Voice Edit. (See the screenshot below.) Effect-related controls are on the left-hand side of the screen and voice-related controls (tabbed pages) are on the right-hand side.

Effect and voice selection

Selecting a GM voice

The Sonogenic has a strict division between its keyboard sound and the General MIDI sounds over MIDI. You can think of the keyboard sound and GM sounds as two distinct tone generators, each with their own controls. The keyboard sound is selected and controlled through the Sonogenic front panel. The GM sound(s) is selected and controlled by the MIDI Designer layout.

The Voice page has an array of voice buttons. The 28 buttons at the top of the page select one of the preset “panel” voices. The two large buttons in the middle select one of the two preset panel drum kits. The buttons at the bottom of the page select a voice from the General MIDI sound set.

Please note: if you select a panel voice on the Voice page, you are changing the current General MIDI sound. The Sonogenic keyboard sound remains the same. The separation may seem artifical, but it lets us layer two sounds: the keyboard sound and a General MIDI sound.

The Sonogenic panel voices are generally better-sounding than the equivalent GM voice. The layout provides direct access to the panel voices while providing 12 buttons which can be customized for your own favorite GM voices. Of course, you’ll need to learn how to edit the GM buttons…

Effects

The large buttons on the Effects page choose the current reverb and chorus type. Like the voice buttons, the reverb and chorus effect type buttons are “radio buttons,” i.e., you can select only one effect type at a time within the reverb group or chorus group.

The reverb (Rev) and chorus (Cho) sliders adjust the reverb and chorus level for the General MIDI sound. [By the way, the GM voice and its effect levels are on MIDI channel 1.] Change the amount of reverb or chorus effect here. The sliders do not affect the keyboard sound — only the GM sound.

Changing the chorus and reverb type also affects the keyboard sound because the chorus and reverb units are shared by the keyboard sound and the GM tone generator. Reverb and chorus level only affect the GM sound [MIDI channel 1].

The four small buttons are utility buttons:

  1. XG On: Sends an XG System reset to the GM tone generator. This resets the voice (acoustic piano) and all internal MIDI controller values.
  2. Local: Turns Sonogenic LOCAL CONTROL on and off.
  3. All Off: Turns off all notes which may be sounding — a panic button.
  4. C3: Plays the MIDI note C3. Good for testing edits and changes.

Use the XG On button sparingly. The GM tone generator and layout do not automatically re-synchronize with each other.

Voice editing

The Voice Edit page is where you adjust basic voice characteristics like volume (Vol), attack time (Atk), release time (Rel), filter frequency (Freq) and filter resonance (Res). You can spruce things up with these controls. The attack, release, frequency and resonance controls behave like “quick edit” controls, that is, they are offsets from the preset voice parameter values. The middle position (64) specifies a zero offset leaving the original value unchanged. Higher values add an offset and lower values subtract an offset. So, if you want to increase attack time, move the attack slider up. If you want to shorten attack time, move the attack slider down.

Effects and Voice Edit pages

Portamento adds a glide between notes. Press “Porta On” to turn portamento on and press “Porta Off” to turn portamento off. The portamento time slider (Porta Time) sets the glide time.

The velocity sensitivity knobs change how the voice responds to MIDI note velocity (touch). The two voice parameters are:

  1. Velocity Sense Depth (VelDepth)
  2. Velocity Sense Offset (VelOffset)

Please see Yamaha’s explanation in the figure below.

Velocity Sense Depth and Offset

Organ voices, in particular, should not respond to velocity, i.e., a note is either on or off. To achieve this kind of touch response, set velocity sense depth to zero and set velocity sense offset to a value in the range 110 to 127.

The keyboard voices have a default volume which is louder than the General MIDI voices. You may need to set the volume slider (Vol) above 100 in order to get a better balance (mix) between panel and GM voices.

MIDI Designer presets

MIDI Designer itself implements preset storage and recall. A MIDI Designer preset is a snapshot of all the current values in a layout. Here’s a typical usage scenario:

  1. Select a voice.
  2. Select and adjust chorus and reverb effects.
  3. Tweak the voice (e.g., change filter cutoff, etc.)
  4. Save the finished voice as a MIDI Designer preset.

It’s easy to save a preset. Press the more button, press the “Save” button at the bottom of the drop-down menu, and then press one of the ten preset buttons. To recall a preset, simply press more followed by the desired preset button.

MIDI Designer has two groups of presets: regular and alternative. There are ten preset slots in each group, so you get twenty presets total. The Alt button selects the alternative group.

Potential issue: Portamento sometimes stays on (or off) after selecting a preset that changes portamento state. [I’m still investigating.]

Limitations

I experimented with several other controls of the kind normally found on a desktop synth. Unfortunately, the SHS-500 MIDI implementation is rather limited. Here are some known shortcomings:

  • Transpose and note shift
  • DSP effect control
  • Mono and poly mode selection

Should I make any progress with these deficiencies, I will issue an update.

Copyright © 2020 Paul J. Drongowski