SHS-300: The PSS keytar?

I made a little more progress delineating Yamaha’s mini-key product lines. The PSS series is built for low manufacturing cost. Thanks to PSS-E30 (Remie) and PSS-A50 tear-downs, we know that the PSS series is based on the ultra-small, relatively inexpensive SWLL (YWM-830) processor.

So, what to make of the Yamaha SHS-300 and SHS-500 keytars?

The SHS-300 shares the same basic spec as the PSS series: 32 voice polyphony, 8cm speaker, only one effect (reverb), no MIDI, no Bluetooth, etc. Sound quality is comparable to the PSS series. I suspect that the SHS-300 is based on the SWLL, too.

The SHS-500, however, has a much better spec: 48 voice polyphony, MIDI and audio over USB, MIDI over Bluetooth BLE, 9 DSP effects, Master EQ, chorus, reverb, etc. A glance at the SHS-500 service manual shows that the SHS-500 has much in common with the current PSR E-series keyboards, including the SWX03 processor.

If I get the time, I’ll write a quick post about SHS-500 internals.

The SHS-500 is definitely a cut above the SHS-300 in build quality, sound, MIDI capability and tweak-ability. I’m sorely tempted to take a bite of the apple. NAMM, however, is fast approaching (16-19 January 2020) and good sense tells me to wait. Yamaha’s pre-show press release promises 75 new products including a new family-oriented home keyboard.

SHS-500 Sonogenic voices

With Yamaha PSS-E30 Remie at hand, I’m still comparison shopping the PSS series against the Yamaha SHS-500 Sonogenic. The Sonogenic has better build quality, has 5-pin MIDI as well as MIDI over USB/Bluetooth, and integrates with Chord Tracker.

Then there is the issue of sound quality. Remie and the rest of the PSS series (PSS-F30 and PSS-A50) have only one main DSP effect: reverb. With the exception of the A50’s motion effects, there aren’t the means to tweak sounds.

As to preset voices, I would love to play Remie and Sonogenic side by side. However, in this day and age when brick and mortar stores do not stock inventory or demo units, that’s impossible. Gosh, I ordered Remie from the UK — I live in the big Seattle USA metro area — with the intention of gifting it to our grandson. (A good excuse. 🙂 ) The PSS series keyboards are so inexpensive that even an impulsive purchase is justifiable. I still haven’t seen a Sonogenic alive in the wild and don’t have hand-on experience with it (yet).

First some tech-head stuff. Remie has 32 voice polyphony and my teardown shows that it is based on the tiny Yamaha SWLL (YMW-830) system-on-a-chip (SOC). It stores its program and waveforms on a 2MByte ROM. Right away, I expect Remie’s sound quality to be compromised with respect to the current PSR E-series.

The current PSR E-series is based on the proprietary Yamaha SWX03 processor. The SWX03 is a much larger SOC with external RAM, ROM, digital to analog conversion (DAC), analog to digital conversion (ADC), and LCD display interface. The program/wave memory is 32MBytes (Spansion S29GL256) much larger than Remie. The SWX03 supports 48 voice polyphony and 10 DSP effects in addition to the usual PSR E-series reverb and chorus. Thus, I expect better sound quality from the E-series.

The SHS-500 also has 48 voice polyphony and 10 DSP effects. These characteristics alone make a strong case for the SWX03 as the main engine within the Sonogenic.

Hearing is believing, however. Without access to Sonogenic in the stores, I’m forced to compare Remie and PSR against YouTube videos. One of the best Sonogenic voice demonstrations is in Japanese by a laid-back jazzer. I also recommend this Sonogenic demonstration in Russian.

The Japanese demo gets rolling roughly 3:30 in. Our jazzer compatriot plays through the presets without a backing track or lots of effects. This is as close to factory stock as one can get. Thank you! Here are direct links to some of the Sonogenic instruments in the video:

These sound pretty good and much better than Remie. The electric piano can bark! The jazz guitar is decent. Many of the brass and woodwind instruments have vibrato sampled in.

The Sonogenic program change table gives us a major clue about the origin of the Sonogenic voices. Most of the Sonogenic voices match up with the PSR series:

 SHS-500            Bank  Bank
Sonogenic MSB LSB PC# PSR/Genos voice
----------------- ---- ---- --- -----------------------
Saw Lead 1 104 20 91 Gemini
Saw Lead 2 0 104 82 RS Saw Lead1
Quack Lead 0 112 85 Portatone
Bright Decay 104 21 85
Square Lead 0 112 81 Square Lead
Under Heim 104 51 88 Under Heim
Analogon 104 52 82 Analogon
Synth Brass 0 113 64 Ober Brass
Electric Piano 104 28 5
DX Electric Piano 0 112 6 DX Modern
Electric Guitar 104 3 31
Jazz Guitar 104 0 27 Cool! Slide Jazz Guitar
Acoustic Guitar 0 117 26 Steel Guitar
Electric Bass 104 6 34
Slap Bass 0 112 37 Slap Bass
Synth Bass 0 112 39 Resonance Bass
DX Bass 0 118 40 DX100 Bass
Piano 0 112 2 Bright Piano
Piano & Strings 104 39 1
Piano & Pad 104 40 1
Air Choir 0 112 55 Air Choir
Strings 0 116 49 Bow Strings
Brass 0 117 63 Pop Brass
Trumpet 0 115 57 Sweet! Trumpet
Flute 0 115 74 Sweet! Classical Flute
Alto Sax 104 2 66
Tenor Sax 104 3 67
Harmonica 0 112 23 Sweet! Harmonica

I verified the matches by comparing the YouTube video against the same voices on Genos. (Removing the Genos effects, of course.) The blank spots in the table are voices which Yamaha re-sampled from PSR or elsewhere. That’s why the electric piano is so darned good. The piano layer voices have a warmer, mellower timbre than the Bright Piano (which really lives up to its name).

So, there you have it. On the basis of sound quality, the Sonogenic SHS-500 wins over the PSS family. Yes, the Sonogenic is more expensive, but you do indeed get more for the money. If Sonogenic had even a single organ voice, it would be a no-brainer and I would have bought one by now. Oh, Yamaha, why do you leave these things out?

Copyright © 2019 Paul J. Drongowski

Inside Yamaha PSS-E30 Remie

Now let’s take a first look at Yamaha PSS-E30 Remie inside.

My Remie is a seasoned world traveller. It was designed in Japan, made in India, distributed by Rellingen, Germany, sold by Amazon UK and played in Washington state, USA. Physics and electrons are indeed universal.

The PSS-E30, PSS-F30 and PSS-A50 are essentially the same physical product. They are part of a family like Reface. The Reface family, BTW, is two pairs of fraternal twins: YC/CP and CS/DX. The PSS family are fraternal triplets and share the same printed circuit board (PCB). In fact, the PCB has three little check boxes. A mark in a check box denotes the specific product personality.

Yamaha PSS-E30 Remie digital logic board (DM)

Product personality is determined by four things: front panel graphics, software, content (voices, styles, etc.) and USB interface.

Line up the three PSS keyboards and you see that they all have the same panel layout. The buttons are all in the same physical place. Everything else that is external is just skin (case color and stick on panel graphics). The panel connections to the digital logic board (DM) are the same in all three products.

Next up, each member of the family has different code and content. The software and content are stored in a Winbond 2MByte serial ROM. The main CPU (SWLL) reads the binary code and waveforms from ROM at boot time. The ROM components are stamped with a product specific code: “2H” for Remie and “2I” for the PSS-A50.

The 2MByte ROM holds both code and waveforms. The small ROM harkens back to the day of the Yamaha QY-70 when XG voices and drum kits fit into 4MBytes. Given the small ROM, one shouldn’t expect super high voice quality in any of the models.

The SWLL is reminiscent of the YMW-820 NSX-1 integrated circuit. The NSX-1 is the engine behind Pocket Miku and eVocaloid.

Finally, the PSS-A50 is the only sibling with an active USB interface. Remie has an unpopulated IC site as you can see in the upper left corner of its PCB. This site is populated with a USB chip in the A50. Without the chip, Yamaha can build and sell Remie at a lower cost than the A50. Even if one carefully soldered the correct USB IC into the unpopulated site in Remie, I doubt if Remie’s software has the code to recognize it.

The PSS-F30 is a shrunken PSR-F50. For the rest of this discussion, I’m using the Yamaha PSR-F50 Service Manual as my guide to the electronics. As to the keybed, I’m using the Reface YC Service Manual.

Remie circuit boards and ribbon cables

Inside, each member of the PSS family consists of three circuit boards: the main logic board (DM), the front panel board and the keybed. The front panel board and keybed are each a switch matrix. The CPU scans both the front panel and keybed separately. It scans each board by asserting a switch group select signal and then reading the current state of each switch in the group.

There are twelve switches in a keybed group, two switches per key. The switch contacts are at two different heights and close at two different times when struck. The CPU measures the closure time between the first contact and the second conent in order to sense key velocity.

The panel PCB and the keybed PCB are each joined to the digital logic board by short ribbon cables. The loudspeaker signals hitch a ride through the front panel ribbon cable.

The main CPU and tone generator is a Yamaha proprietary integrated circuit — the YMW830-V or “SWLL”. The SWLL is the ultra-small brother to the SWL01. The chip is housed in an 80 pin surface mount quad pack which is only 1.3cm on a side. That’s tiny. The entire PCB is a tidy 13.5cm by 4.5cm.

The SWLL is a true system on a chip (SOC) containing the CPU, RAM, tone generation circuitry, UART, ADCs and DACs. Amazing. The chip inside is small, too, and Yamaha can print these like postage stamps in large volume. Everything about the SWLL screams “low cost”.

Using the PSR-F50 Service Manual, here is the SWLL pin-out:

     1   DACLPP    Left channel DAC output (positive)
2 DACLMM Left channel DAC output (minus)
3 DAC_VDD DAC Vdd
4 DAC_VSS DAC Vss
5 DACRMM Right channel DAC output (minus)
6 DACRPP Right channel DAC output (positive)
7 VSS Vss
8 KYN11 Key sense (input)
9 KYN12 Key sense
10 KYN13 Key sense
11 KYN14 Key sense
12 KYN15 Key sense
13 KYN16 Key sense
14 KYB1 Keyboard key group select (output)
15 KYB2 Keyboard key group select
16 KYB3 Keyboard key group select
17 KYB4 Keyboard key group select
18 KYB5 Keyboard key group select
19 KYB6 Keyboard key group select
20 KYB7 Keyboard key group select

21 KYB8 Keyboard key group select
22 KYB9 Keyboard key group select
23 KYB10 Keyboard key group select
24 KYB11 Keyboard key group select
25 IOVDD
26 VSS
27 LDOTSTO
28 KYN21 Key sense (input)
29 KYN22 Key sense
30 KYN23 Key sense
31 KYN24 Key sense
32 KYN25 Key sense
33 KYN26 Key sense
34 SWIN0 Panel scan input
35 SWIN1 Panel scan input
36 SWIN2 Panel scan input
37 SWIN3 Panel scan input
38 VSS
39 SDQ2 Serial ROM WP# (DQ2)
40 SDO Serial ROM DO (DQ1)

41 SCSN Serial ROM chip select (CS#)
42 IOVDD
43 SDQ3 Serial ROM NC (DQ3)
44 SCLK Serial ROM clock (CLK)
45 SDI Serial ROM DI (DQ0)
46 VSS
47 PORTB0 PSW0
48 PORTB1 (7seg_e0)
49 PORTB2 (7seg_e1)
50 PORTB3 (7seg_e2)
51 PORTB4 (7seg_lat)
52 PORTE0 /PSWI
53 PORTC0 (Sustain input)
54 TXD UART transmit data (output)
55 RXD UART receive data (input)
56 PLLBP
57 TEST
58 LDOTST
59 IC_ (Voltage detector)
60 VSS

61 ADC_VDD (+3.3V)
62 ADC_VSS (Ground)
63 AN0 Analog input
64 AN1 Analog input (battery check)
65 VSS
66 PLLVSS
67 PLLVDD
68 LDOC
69 LDOVDD
70 LDOVSS
71 VSS
72 XI Crystal input
73 XO Crystal output
74 VSS
75 IOVDD
76 TDO Test data out
77 TCK Test clock
78 TMS
79 TDI Test data in
80 TRST_ Test reset

I determined pin function by tracing signals in the PSR-F50 Service Manual. Yamaha may have changed things a bit in Remie and A50. I have not determined how the USB interface is connected to SWLL in the A50 nor have I even identified the component.

Yamaha PSS-E30 Remie LSI components

For the PSR-F50, the SWLL internal clock is 33.8688MHz and the master clock is 67.7376MHz. The clocks are generated from a 16.9344MHz crystal. All clocks are a multiple of 44,100Hz, the sample frequency. I can’t read the marking on Remie’s crystal, but there isn’t any reason to believe that it differs from F50.

The three digit LED display is both retro and cheap. Remie has the same eleven transistors driving the time-multiplexed seven segment display.

  • Under software control, transistors Q301 to Q303 (7seg_e0 to 7seg_e2) select one of the three digits.
  • Transistors Q304 to Q311 drive the individual segments.

Segment status is latched into an eight flip-flop SN74LV273 from the SWL KYB1 to KYB8 pins. The latch clock is produced by SWLL pin PORTB4 (7seg_lat). Note that the KYB pins do double duty as inputs from the keybed.

Whew! That leaves us deep in the weeds! Next time, I’ll outline a few ways to mod the new PSS keyboards.

Update: Compare Remie against my Yamaha PSS-A50 teardown.

Copyright © 2019 Paul J. Drongowski

Genos sound alike voices on MODX

I love kicking back in the afternoon and playing some old classic tunes from the 60s and beyond. The Yamaha Genos™ is a great machine for producing backing tracks and for jamming against them.

I spent a fair amount of time selecting the appropriate instrument for each cover tune. Now, I’d like to play the MODX over the same backing tracks and perhaps keep the same voices.

Time to play “What’s that voice?”

The Yamaha arranger keyboards and synthesizers share a lot of the same sonic DNA. This is a theme that I’ve written about in earlier blog posts. Sometimes the arranger voice and the MODX Performance share the same name. Sometimes you need to find a sound-alike. And, as I’ve learned, sometimes I need to do some MODX programming to get what I want.

The table below is a quick, rough correspondence between my favorite Genos voices and a MODX Performance (or two, or three). In the case of multiple mappings, the preferred Performance is marked with a star (“*”).

    MODX Performance         Genos Voice
    -----------------------  -----------------------
    TC Clean Pick            SingleCoilClean
    Clean Ballad Pick        SingleCoilClean
    TC Clean Pick            VintageAmp (BRITISH LEGEND CLEAN)
    Dual Coil Slap Vel       Slapback (ROCKABILLY))
    Clean Fingers            50sVintagePure (MULTI FX OLDIES DELAY)
    Melodic Jazz             JazzGuitarClean
    Fat Oil Jazz AF1&2       JazzArtistGuitar
    Jazz Blues               JazzGuitarAmp (MULTI FX OLDIES DELAY)
    Jazz Guitar              JazzGuitarClean (JAZZ COMBO)
    Crunchy Guitar           MetalMaster
    Hard Drive               MetalMaster
    Hard Ramp                MetalMaster

    Tenox Max                Rock Sax
    SoftTenorSaxLegato       SmoothTenorSax
    Sweet Flute AF1          JazzFlute
    Concert Flute            OrchestralFlute
    Latin Flutist*           OrchestralFlute
    Oboe1 AF1                OrchestralOboe
    Oboe2*                   OrchestralOboe
    Clarinet 1 AF1           OrchestralClarinet
    OrchClarinet             BalladClarinet
    Flute & Clari            Clarinet&Flutes
    Bluz Distort             BluesHarp
    FM Accordion 1           JazzAccordian

    Dynamic Brass            DynamicBrass
    Mixed Sax Section        SaxSection
    FM JP Brass              80sSynthBrass
    Simple Saw Brass         80sSynthBrass
    Flugelhorn               Flugelhorn

    Soft Case                70sSuitcaseTrem (E-PIANO TREMOLO)
    Rd Old                   70sSuitcaseClean
    Contempo*                SuitcaseEP
    Hard Vintage             SuitcaseEP
    Wr Rock                  70sVintageEP

    Vibraphone               Vibraphone
    Vibes                    JazzVibes

    Soft RnB                 SoftR&B
    Singleline 1             WireLead
    SingleLine 2*            WireLead
    WindSynth                WireLead
    VeloMaster               VelocityMaster
    Bleep Lead AF2           BleepLead
    Detuned Vintage          DetunedVintage
    FM Syn Lead 2*           FusionLead
    Straight RB              FusionLead
    Saw Lead                 FusionLead
    Dynamic Mini             BrightMini
    Whistle                  Whistle
    Early Lead               Oxygen
    Saw Lead                 Oxygen

    Big Strings              ButterStrings
    Analog                   AnalogPad
    Dark Light               DarkFatSaw
    VP Soft                  VPSoft
    Feeling                  LightPad
    Dark Atmo Pad            NewAtmosphere
    Angel Eyes               DarkAngelPad
    NighttrainToMunich       NightMotion
    Gospel Hmm               Mmh, GospelVoices
    Boy Choir MW Xfade       GothicVox

    All Out None             AllBarsOutFast
    Fully                    AllBarsOutFast
    Bowed Bars CV            CurvedBars, UpsideDownSmile
    Draw Organ               BalladOrgan
    Whiter Bars              WhiterBars
    Jazz 2nd Perc + C3       RotarySwitch
    Vx Full Bars*            60sOrgan, Italian60sOrgan
    Clean                    60sOrgan
    1967 Keys                60sOrgan

Even when the name matches (e.g., Bleep Lead), you’ll find slight differences in programming. The basic sound is there, but maybe one implementation will open up the filter dynamically, or maybe it will have a longer portamento time. These differences are easy to iron out, if they’re important at all.

Occasionally, a Performance and its corresponding Genos voice responds differently due to Expanded Articulation vs. Super Articulation programming. Such differences are fundamental to the arranger or synthesizer design. I’ll just need to keep mental notes about what to do where when playing, that is, push an assignable function button or some other gesture. If a Super Articulation voice is based on a Mega Voice, then chances are good that one can find a way to get a similar result on MODX using Expanded Articulation (XA).

Of course, the Super Articulation 2 (Articulated Element Modeling) technology does not carry over to MODX (Montage). Super Articulation 2 (SArt2) stitches successive notes together, blending tone heads, tails and bodies in real time depending upon the playing gesture. SArt2 requires additional samples and computation which are not implemented in MODX (Montage).

Not so easy are a few of the electric guitar voices. Electric guitar tone depends heavily upon the DSP effect chain. The Genos VintageAmp voice is a good example. It’s a single coil guitar driving the British Legend Clean effect. I couldn’t find a MODX preset to match. However, I quickly cooked up a Performance starting with the TC Clean Pick Performance (a single coil Telecaster). It was a piece of cake to put the British Legend clean effect into the signal chain. Voila — a new sound-alike Performance!

Copyright © 2019 Paul J. Drongowski

Genos/PSR organ registrations

I’m deep in another one of those “cross-platform” projects in which I share voice programming between Yamaha Genos™ and Yamaha MODX. In this case, I’m recreating some of the PSR/Genos “organ flutes” registrations on MODX.

“Organ flutes” is Yamaha-speak for drawbar organ emulation. Genos and S-series PSR arranger workstations implement two kinds of drawbar (Hammond B3) organ voices: normal sample playback voices and organ flutes voices. The organ flutes have their own drawbar user interface where the user can move virtual footage drawbars, including percussion. Organ flutes voices make use of a rotary speaker DSP effect while sample playback organ voices may have the rotary effect sampled-in instead of using a DSP effect. The chief disadvantage of sampled-in is the inability to smoothly change rotary speaker speeds (i.e., ramp up or ramp down between speeds). The abrupt speed change is very unrealistic. Of course, you can’t change the drawbar setting of a sampled-in voice either.

Everyone loves new organ registrations, so here is my go-to table of Yamaha presets. Vibrato is OFF in all cases.

Preset         Drawbars     VOL  RESP  4' 2 2/3'  2' LENG  Rotary effect
-------------- -----------  ---  ---- --- ------ --- ----  -------------
OrganFlutes    78 6600 000   8     0   8     0    0    6   DUAL ROT BRT
USDSmile       87 4323 468   8     0   0     0    0    0   DUAL ROT BRT
ReggaeBars     70 0000 008   8     0   0     0    0    0   DUAL ROT BRT
WarmTheatre    80 0605 000   8     0   0     0    0    0   DUAL ROT WRM
OrganPops      70 8000 000   8     0   8     0    0    8   DUAL ROT BRT
RockOrgan      65 5444 644   8     0   0     0    0    0   DUAL ROT BRT
SoulPercussion 70 0000 530   8     0   0     7    0    0   DUAL ROT BRT
GospelTruth    87 6000 568   8     0   0     0    0    0   DUAL ROT BRT
PadOrgan       00 8520 000   8     0   0     0    0    0   DUAL ROT WRM
FullOrgan      88 7677 788   8     0   0     0    0    0   DUAL ROT BRT

StringBars     48 0787 532   8     0   0     0    0    0   DUAL ROT BRT
LatinSpin      70 0003 443   8     0   0     0    0    0   DUAL ROT BRT
ShadyBars      68 8600 000   8     0   0     0    0    7   DUAL ROT BRT
FunkOrgan      83 5035 788   8     0   0     0    0    7   DUAL ROT BRT
BalladOrgan    86 7300 000   8     0   0     0    0    7   DUAL ROT WRM
RichBars       63 8457 530   8     0   0     0    0    0   DUAL ROT BRT
TrumpetBars    06 0786 540   8     0   0     0    0    0   DUAL ROT BRT
SoulBars       80 0050 578   8     0   0     0    0    0   DUAL ROT BRT
ClariBars      08 0080 760   8     0   0     0    0    0   DUAL ROT BRT
JazzSquabble   80 0008 888   8     0   0     0    0    0   DUAL ROT BRT

These are the registrations for Yamaha’s preset organ flutes voices.

The RESP, 4′, 2 2/3′, 2′ and LENG columns control envelope and percussion. The manual describes these parameters in the following way:

  • Response (RESP): Affects both the attack and release portion of the sound, increasing or decreasing the response time of the initial swell and release, based on the Footage controls. The higher the value, the slower the swell and release.
  • 4′, 2 2/3′, 2′: 4′ is second harmonic percussion level and 2 2/3′ is third harmonic percussion level.
  • Length (LENG): Controls the length of the percussion sound.

There is also an Attack switch to apply percussion to the first note or each note. For realism, I apply first note. Always.

The registrations above use the older rotary speaker effect algorithm which had two PSR/Genos presets: DUAL ROTARY BRIGHT and DUAL ROTARY WARM. I recommend trying the “new” rotary speaker algorithm if you got it (Montage, MODX, Genos).

Here are a few bonus registrations, just for grins:

Preset      Drawbars     VOL  RESP   4'  2 2/3'   2'  LENG  Rotary effect
----------- -----------  ---  ----  ---  ------  ---  ----  -------------
SmithPlus   88 8800 000   8     3    0      4     0     0   DUAL ROT WRM
Simmerin    83 0000 378   8     0    0      0     0     0   DUAL ROT WRM
MellowDee   80 4600 000   8     4    0      0     0     0   DUAL ROT BRT
Shoutin     66 8848 588   8     4    0      0     0     0   DUAL ROT WRM
WhistleStop 88 8000 008   8     3    0      0     0     0   DUAL ROT WRM
WhiterShade 68 8600 000   8     0    4      0     0     8   DUAL ROT WRM

If you want to ditch the sampled-in voices and use organ flutes instead, many of the Yamaha organ flutes presets are equivalent to a sampled-in voice. You just need to decode the names: WhiterBars → ShadyBars, Curved Bars → USDSmile, GospelOrgan (Legacy) → GospelTruth, etc. Save the registrations as Genos or PSR USER voices and use them in place of the sampled-in voices. Then, enjoy the rotary speaker ramp up and down!

Copyright © 2019 Paul J. Drongowski

PSR-EW410: Tour of its electronics

Last August, I took an in-depth look at the internal design of Yamaha’s entry-level, low-cost keyboards.

Up until the last few years, Yamaha’s low-end keyboards were based around its proprietary SWL01 processor. The SWL01 is a high volume LSI part which combines a microprocessor, tone generation and DSP resources into a single integrated circuit. The embedded software program and sound waveform data (AKA “the samples”) are stored together in a single flash memory device. Polyphony is limited to 32 voices due to the relatively low memory transfer bandwidth between the SWL01 and flash memory.

Newer entry-level keyboards, such as the Piaggero NP-32 and the PSR-EW410, have received a boost in polyphony (and DSP effects) over their respective predecessors. This boost in spec is due to a new central processor, the SWX03:

  • SH RISC instruction set architecture (ISA)
  • Internal clock: 135.4752MHz (external 16.9344MHz crystal)
  • System/CPU bus interface
    • Bus clock: 67.7MHz
    • 24-bit address bus
    • 16-bit data bus
  • Parallel digital inputs and outputs
  • USB to Host interface (USB1.1 full speed)
  • USB to Device interface
  • Low resolution analog-to-digital conversion (ADC)
  • Serial I2S interface for incoming and outgoing digital audio

The digital I/O pins sense the key and front panel switches and encoders. They also send data to the LCD panel via an LCD driver. Yamaha designs typically sense the presence of AUX IN and PHONE connections, too. The ADC pins sense the front panel knobs, pitch bend wheel, master volume and battery condition. The SWX03 microarchitecture is shown in the block diagram below. [Click image to enlarge.]

The internal clock and bus clock are derived from an external 16.9344MHz crystal. 16.9344MHz is a multiple (384) of the sample word clock (44,100Hz). Digital audio is transfered serially in I2S format (24-bits per sample word). Thus, the CPU operates in lock step with the serial audio input and output interfaces.

The earlier generation SWL01U typically has a 33.8688MHz internal clock. Thus, the SWX03 is quite a bit faster. Yamaha must be taking advantage of fabrication process improvements that allow a higher clock speed while keeping power low enough for battery operation. The higher clock speed of the SWX03 supports greater voice polyphony and the addition of new features such as Quick Sampling and audio playback/record over USB (See the Yamaha PSR-EW410 site for details).

The USB interfaces are clocked by an external 48MHz crystal resonator. The USB interfaces operate at full USB 1.1 speed. The SWL01 required an external USB interface component. The SWX03 integrates the USB interfaces on chip and eliminates the external USB component. This change reduces cost, board real estate and wiring.

The I2S digital audio converters are external. Entry-level products typically use the Asahi Kasei AK4430ET 24-bit DAC followed by an RC filter.

The NP-32 and PSR-EW410 implement audio conversion and amplification differently. The NP-32 sends serial audio data to an AK4430 DAC. The analog signal is then sent to a TDA7266 analog power amplifier (2 x 6Watt). The PSR-EW410 sends serial audio data to a Yamaha YDA176 digital power amplifier, which handles conversion as well as amplification. The EW410’s AK4430 produces an analog signal for both the PHONES output and the stereo line out (OUT L/L+R, OUT R).

While on the subject of audio, the PSR-EW410 has, in addition, a PCD1803A 24-bit stereo ADC which converts the buffered, analog AUX IN signal.

Both the NP-32 and PSR-EW410 store the embedded software and waveform data in a single flash ROM device. The flash ROM device communicates with the SWX03 CPU on the system bus provided by the SWX03. Physical storage devices are quite small by today’s mega standard:

  • NP-32: 8M x 16-bit words (64Mbits)
  • PSR-EW410: 16M x 16-bit words (256Mbits)

The CPU runs code and fetches waveform sample data from the same flash storage device. Thus, code and samples share the available transfer bandwidth. The EW410’s PROG/WAVE memory is twice as large as the earlier PSR-E443 (128Mbits). Hopefully, Yamaha are using the extra space for better instrument samples.

The NP-32 is dirt simple. The only memory attached to its SWX03 is the PROG/WAVE ROM. The EW410 is more sophisticated having an 8MByte SDRAM and a 16MByte flash ROM.

I’d love to take a look inside the SWX03 and see how it ticks. The internal design of the Yamaha NSX-1 may have some clues and I need to revisit the NSX-1 documentation.

Copyright © 2019 Paul J. Drongowski

The PSR-EW410 block diagram — in all its glory — appears below. Click the image to enlarge it.

Yamaha piano voice programming

Most of my live playing adds orchestral instruments or B-3 organ to our liturgical church group (synth plus 12-string guitar plus grand piano). Thus, I don’t dip into either acoustic piano or electric piano too often.

Recently, we prepared a number of gospel tunes in honor of Dr. Martin Luther King. Rather than jump to B-3, I decided to practice a few songs on electric piano. The release of the new Yamaha CP73/CP88 was nearly coincident, and naturally, I became curious about the implementation of acoustic and electric piano on MODX, the closest cousin to the CP73/CP88. It also gave me a chance to explore EP on Genos™ and to try using Genos as a controller for MODX.

MODX acoustic pianos

First, a dive into MODX acoustic pianos. Montage and MODX essentially have the same sound engine, modulo differences in polyphony and a few other details that aren’t relevant to this discussion. Therefore, anything I say about MODX should apply to Montage, too.

The basic voice programming unit in MODX is a Performance. A Performance is a versatile “container” for up to 16 Parts. Parts can be split, layered, mixed and so forth. Each Part is itself a powerful programming unit consisting of up to eight Elements, where each Element is a mini, sample-playback synthesizer. (Yeah, yeah, or it could be FM.) That, in a nutshell, is the hierarchical programming breakdown. In Yamaha-speak, each Element plays back a Waveform.

The deal is, contemporary high-quality piano voices need several levels of velocity switching in order to generate the wide dynamic range and timbre of an acoustic or electric piano. These voices are sometimes called “multi-strike” because each note is struck and sampled at several, carefully controlled velocities.

In the Yamaha voice architecture, each strike level is encoded in a Waveform. One Waveform (i.e., the samples associated with a single strike level) is assigned to an Element.

Let’s say that you want to create a highly detailed acoustic piano (e.g., Yamaha CFX) with nine strike levels and key-off sounds. Right away, you need more Elements than a single Part can provide! Thus, Yamaha implement the piano as a Performance consisting of multiple Parts.

Take the Montage/MODX CFX Concert Performance, for example. This Performance consists of four Parts:

Part 1 (six elements)

    El#  Waveform       VLo  VHi  NLo  NHi
    ---  -------------  ---  ---  ---  ---
     1   CFX ppp St       2   25  C-2   G8
     2   CFX pp St       20   35
     3   CFX p St        36   45
     4   CFX mp St       46   59
     5   CFX mf St       60   74
     6   CFX f St        75   92

Part 2  (three elements)

    El#  Waveform       VLo  VHi  NLo  NHi
    ---  -------------  ---  ---  ---  ---
     1   CFX ff St       93  110  C-2   G8
     2   CFX fff St     111  125
     3   CFX ffff St    126  127

Part 3 (eight elements)

    El#  Waveform       VLo  VHi  NLo  NHi
    ---  -------------  ---  ---  ---  ---
     1   CFX pp St        2   35  C-2   G8
     2   CFX p St        36   45
     3   CFX mp St       46   59
     4   CFX mf St       60   74
     5   CFX f St        75   92
     6   CFX ff St       93  110
     7   CFX fff St     111  125
     8   CFX ffff St    126  127

Part 4 (one element, XA control: Key Off)

    El#  Waveform       VLo  VHi  NLo  NHi
    ---  -------------  ---  ---  ---  ---
     1   CFX KeyOff St    1  127  C-2   G5

That’s 18 Elements total. The Elements in Part 3 are a layer on top of the Elements in Parts 1 and 2. The Elements in Part 3 have different filter programming (and maybe something I haven’t discovered yet…)

Perhaps the voice programmer could have squeezed everything into three Parts, but in for a penny, in for a pound. In terms of versatility and re-usability, it makes sense to split the Elements (and their Waveforms) into four Parts.

By the way, the Montage/MODX CFX Concert Performance employes the Damper Resonance DSP effect, which is the same algorithm (effect type) as Genos. Damper Resonance is [u]not[/u] the same as Clavinova’s Virtual Resonance Modeling (VRM). VRM is a step up. This is another topic which comes up frequently in forums.

On the other hand, the single part MODX CFX Stage Performance consists of eight elements:

    El#  Waveform       VLo  VHi  NLo  NHi
    ---  -------------  ---  ---  ---  ---
     1   CFX pp St        2   35  C-2   G5
     2   CFX mp St       36   59  C-2   G5
     3   CFX f St        60   92  C-2   G5
     4   CFX fff St      93  125  C-2   G5
     5   CFX ffff St    126  127  C-2   G5
     6   CFX mf St        2   59  G#5   G8
     7   CFX fff St      60  127  G#5   G8
     8   CFX KeyOff St    1  127  C-2   G5

Please take note of the key ranges. Up to G5, the CFX Stage has five strike levels. Above G5, the CFX Stage is a two strike piano. Good enough for rock and roll.

The Genos voice programming structure is more restricted than MODX. Each Genos voice has eight Elements. Thus, there is a fundamental limit to the number of strikes in a single Genos voice. I wouldn’t be surprised if the Genos CFX Concert Grand voice has similar programming. Proving this hypothesis would require carefully controlled experimentation and A/B listening.

Using Genos as a controller

Genos has a rather nice FSX action keybed which is better suited for acoustic and electric piano than MODX6 or MODX7. A weighted action is even better, of course. [I did rather enjoy playing the MODX8.] I don’t play piano often enough to deal with the extra physical weight of a hammer action keybed. You make your own bed and have to lay it in! With Genos on hand, it’s worth exploiting its FSX action as a controller.

MODX assigns a MIDI channel to each Part. The CFX Concert Performance has four Parts on MIDI channels 1, 2, 3 and 4. [This assignment is sometimes a source of frustration when sequencing with multi-Part Performances, but that’s a topic for another day.]

If we want to use Genos as a controller, we need to know the MIDI transmit channel assignments. By default, the Genos sends RIGHT1, RIGHT2, RIGHT3 and LEFT on MIDI channels 1, 2, 3, and 4 respectively, all on Port1 (AKA “MIDI A”).

First, connect the Genos MIDI A OUT to the MODX MIDI IN using a standard 5-pin DIN MIDI cable. Select the MODX Performance. Next, turn on the Genos Parts (RIGHT1, etc.) which will send MIDI data to the MODX, using the PART ON/OFF buttons in the left right corner of the Genos front panel. Finally, play.

If you get surprised by what you hear, i.e., sounds are missing, then check the Genos MIDI transmit settings and the MODX MIDI receive settings. Use the Transmit Monitor on the Genos side to make sure that you are transmitting on the correct channels via MIDI A (Port 1).

When I connect Genos to MODX, I can the first three MODX Parts in the CFX Grand Performance by sending RIGHT1, RIGHT2 and RIGHT3 on MIDI channels 1, 2 and 3. You get a pretty decent concert grand. You won’t hear any of the key-off sounds because the Genos is not transmitting on channel 4.

MODX electric piano

Let’s take a brief look at one of my favorite MODX Rhodes piano Performances: Case 73 Soft. The Case 73 Soft Performance has two Parts:

Part 1 (eight elements)

    El#  Waveform       VLo  VHi  NLo  NHi
    ---  -------------  ---  ---  ---  ---
     1   Rd73 p           1   49  C-2   G8
     2   Rd73 mp         50   85  C-2   G8
     3   Rd73 mf         86  108  C-2   G8
     4   Rd73 f         109  119  C-2   G8
     5   Rd73 ff        120  127  C-2   G8
     6   Rd73 KeyOff      1  127  C-2   E3
     7   Rd73 KeyOff      1  127   F3   C7
     8   EP2 Hard1+     107  127  C-2   G8

Part 2 (five elements)

    El#  Waveform       VLo  VHi  NLo  NHi
    ---  -------------  ---  ---  ---  ---
     1   Rd KeyNoise p    1   84  C-2   G8
     2   Rd KeyNoise mf  85  116  C-2   G8
     3   Rd KeyNoise f  117  127  C-2   G8
     4   Rd KeyOff mf    86  116  C-2   G8
     5   Rd KeyOff f    117  127  C-2   G8

Part 1 produces the main Rhodes sound while Part 2 adds the key noises. Part 1 is probably good enough by itself for sequencing. Performance Rd73 has similar programming, but adds bark when struck hard.

In order to play this two part MODX Performance from Genos, turn on RIGHT1 and RIGHT2 in order to send MIDI data on Port 1 channels 1 and 2.

Just for grins, here’s the basic programming for the Neo R&B Clean Performance — another favorite.

Part 1 (five elements)

    El#  Waveform       VLo  VHi  NLo  NHi
    ---  -------------  ---  ---  ---  ---
     1   EP3 Soft1        2   80  C-2   G8
     2   EP3 Soft2       81  101  C-2   G8
     3   EP1 Med        102  127   F2   G8
     4   EP3 Hard1      102  127  C-2   E2
     5   EP Key Off       2  127  C-2   G8

Part 2 (five elements)

    El#  Waveform       VLo  VHi  NLo  NHi
    ---  -------------  ---  ---  ---  ---
     1   Rd KeyNoise f  119  127  C-2   G8
     2   Rd KeyNoise mf  76  118  C-2   G8
     3   Rd KeyNoise p    1   75  C-2   G8
     4   Rd KeyOff f    119  127  C-2   G8
     5   Rd KeyOff mf     1  118  C-2   G8

You can see that Part 2 is essentially a ready-made patch for dropping in key noises. I love the shimmering auto-pan coupled with the ensemble detune effect.

Genos commentary

These experiments invite comparison between Genos and MODX, of course.

The featured Genos electric piano is a Rhodes Suitcase. You get the same Rhodes in darker and brighter timbres, and processed by a variety of effects (tremolo, phaser, etc.) You need to dig back into the Legacy EPs to find other Rhodes-like variations. The MODX effects give it the edge over Genos; Montage/MODX allow a longer effects chain. The Genos Suitcase EP is good, but sounds like a one-trick pony after a while. The MODX offers a broader range of Rhodes sounds immediately.

Piano aficionados on the PSR Tutorial Forum sometimes complain about a “lack of depth” in the Genos CFX grand voices. Their complaints may be grounded in fact. A Genos voice is equivalent to an eight Element MODX Part. (Warning, the mix of product terminology may becoming confusing here.) Thus, Genos is limited to the complexity of the single-Part CFX Stage Performance, lacking the “beauty layer” (Part 3) of the CFX Concert Performance. This layer would add depth to the sound as it unrolls dynamically.

Given what we know about the CFX Concert programming, Yamaha could release a full CFX expansion pack for Genos. The full CFX voice would need RIGHT1, RIGHT2 and RIGHT3 to handle all of the extra elements and their layering. Only three parts are needed if the CFX key off waveform is moved to the second part which currently has only three active elements. The Genos player would need to enable RIGHT1, RIGHT2 and RIGHT3 to make all parts active, but this is a small price to pay and could be easily configured into a registration.

Summary

Well, there you have it. I hope that my analysis will help you to understand and better appreciate both MODX and Genos piano voices. The MODX waveform set is quite rich in EP sounds, so get cracking!

Copyright © 2019 Paul J. Drongowski

MODX: Quick thoughts

The Yamaha synth folks recently posted an IdeaScale appeal for people willing to participate in a phone interview concerning Montage and synths. Fortunately, I was able to snag an interview slot.

Here’s just a few thoughts that are on my mind. I’m quite happy with both the MODX sound and user interface (UI) although I think there are a few ideas that they could take from the Yamaha Genos™ workstation.

First biggie. Both the Montage/MODX and Genos/PSR instruments would benefit from tighter integration and better direct support from Cubase, and especially, Cubasis. Quite a few users were upset when Yamaha dropped the relatively full featured Motif/MODX sequencer in favor of the Performance Recorder. The likely presumption is that most musicians will use a DAW instead of a built-in sequencer. Well, maybe Yamaha went to far for some users.

I’m not quite so bummed out about the Performance Recorder. But, I often get the impression that Steinberg and Cubase are marching in their own direction. When I spoke with Nithin Cherian at Music Expo Boston, he explained how Yamaha product groups need to come to Steinberg with requests in order to create the overall customer experience with a product. Perhaps it’s a matter of making requests to Steinberg? Yamaha have quite a good asset in Cubase and I’m surprised that it isn’t exploited more strategically across product lines.

Seems like Cubasis (yes, Cubasis) could be an important part of the solution for both synths and arrangers. [The arranger sequencer is showing its age and is sometimes difficult to work with.] Tight coupling with Montage/MODX could eliminate the need for a full-featured built-in sequencer. At the very least, users should be able to select Performances easily and to configure effects from Cubasis. It should be special to use a Yamaha synth or arranger via Cubasis (or Cubase, for that matter). The existing Montage/MODX UI covers much of the same territory as the old Motif/MOX iPad apps and that functionality doesn’t need to be duplicated.

Speaking of iPad (tablet-based) apps, Yamaha app development seems to be stalled. This is just a personal, subjective impression, of course. Mobile Music Sequencer has not been updated for Montage/MODX or Genos, for example. I understand that development resources (e.g., engineers) are limited, so maybe Cubasis is the right platform to invest in going forward?

BTW, when it comes to apps, I feel like there are too many islands and not enough bridges between islands. For example, I should be able to transfer a MIDI file developed in Cubasis to some other app without making a trip through iTunes or Dropbox.

Second biggie. The Montage/MODX Live Set concept, Scenes and Motion Control are wonderful tools for live performance. In a few cases, however, the flow on Genos is smoother than the synths. Here’s an example. Many musicians play in a single or duo with backing tracks. Currently, it takes several steps to select a Performance, load a WAV file, set the audio volume level, and start play back. This is a very streamlined flow on an arranger thanks to the arranger registration concept. I’d love to see Live Set buttons be extended in a similar way. [Arranger registrations get to be a dumping ground for parameters that rightfully belong in a Performance, so a careful separation of concerns/features is appropriate here.] Perhaps Live Set buttons can be extended to remember the path to an audio file on a USB flash drive and the initial volume setting? Then, a user can select a Performance and load an audio file in one button touch.

I prefer WAV audio for backing tracks. For the past 3 to 4 years, I produce the backing track on an arranger and then record (freeze) the track to WAV. It simply is soooooo much easier to massage commercial tracks on an XG-based arranger. Yamaha Musicsoft is my favorite source for commercial tracks.

Here are several smaller suggestions.

  1. The MODX doesn’t have the big bank of front panel selection buttons like Montage. The Live Set buttons are too small and sometimes the touch screen isn’t responsive enough during live performance. I’ve got to switch Performances in a hurry when I play. (Please don’t suggest a foot switch. 🙂 )
  2. The front panel buttons have a nice positive feel. I may experient with Live Set button layout such that I can use cursor buttons to change Performance on the fly.
  3. I compensate for the loss of selection buttons (somewhat) by using Scenes. The sound cuts out when switching scenes. [Maybe this is something I need to fix in my Scene programming.] I would love to have Scene titles (i.e., a text name in a 24-point font) that is displayed on the screen — positive visual feedback that I’ve selected the correct Scene.
  4. The placement of some fields on control assignment pages is confusing. Usually I think of source first sending to a destination. Plus, I always mistake the control filter fields for actual parameter fields.
  5. Control Assign makes it very easy to set up new control relationships. However, it takes a lot of effort to deconstruct (reverse engineer) existing control relationships and edit them.
  6. In Live Set, SHIFT+INC and SHIFT+DEC change the Live Set page. This is a little awkward when making fast changes. Perhaps a way to change the page which doesn’t require SHIFT?

Third biggie. Sound.

Montage/MODX sound quality is excellent. What can be done to make it better?

It would be great if the Montage/MODX adopted Articulation Element Modeling (AKA Super Articulation 2). I realize that it may be difficult to fully edit AEM through the synth UI. Maybe a computer-based application? I love AEM/SArt2 on Genos.

With respect to articulations (and control), here’s two wild ideas:

  1. In addition to assignable buttons for articulation control, add key switching similar to what’s found in VST-land.
  2. Allow user scripting. What else is a synth, but a MIDI controller and a tone generator. Why not make MIDI control programmable through user scripts?

To my ears, Yamaha have clearly invested effort in B-3 organ and rotary speaker emulation. However, musicians on both synth and arranger forums still regard the Neo Instruments Vent II as the “gold standard” for rotary speaker emulation. If the next Montage is to be a clone-killer, it needs to beat the Vent II. [Will Yamaha exploit U.S. Patent 9,899,016?]

I would love to take a MODX Performance and automatically turn it into a Genos voice. Yeah, probably isn’t a problem for the synth people to solve. However, the voice editing in Yamaha Expansion Manager (YEM) really, really lags.

Fourth biggie. Sequencing multi-part Performances via MIDI.

I’m sure you’ve heard this one before. 🙂 I haven’t deep dived MODX sequencing (yet), but I understand there is an issue with sequencing multi-part Performances from a DAW. Perhaps the solution is a map from MIDI channel to one-or-more Parts? This solution breaks the hard binding between MIDI channel and Part.

Final Biggie. People love getting updates! Updates are truly a hit with the user base — including me. 🙂 Social media forums always chatter about the next update and updates are a great way to create continuing interest in Montage/MODX. Please keep the updates coming!

Whew! A longer and discussion than I thought! None-the-less, I really enjoy the MODX. It’s light weight and sound make it a terrific gig machine.

P.S. The last time I participated in an interview, I wrote an MOX retrospective. It describes some of my use cases, flow and general concerns.

MULTI FX: It’s for organ, too!

Every now and again, a question pops up on a forum that is worth reposting here. A member of the YamahaSynth.com MODX forum inquired about distortion effects for drawbar organ.

Yamaha has introduced new DSP effects with every generation of synth and arranger. Unless you don’t have a life (and I resemble that remark), you’re probably not steeped in the history of Yamaha effect algorithms (AKA “effect types”.) Some of the amp simulations (e.g., AMP SIM 1) have been around a loooooong time.

When it comes to distortion or overdrive, I start with the effects added with the Motif XF version 1.5 update:

    US COMBO
    JAZZ COMBO
    US HIGH GAIN
    BRITISH LEAD
    MULTI FX
    SMALL STEREO
    BRITISH COMBO
    BRITISH LEGEND

Of course, you’ll find these effects on Montage and MODX, too. BTW, These same effect types (algorithms) are available on Genos, Tyros 5 and a few other Yamaha arrangers. On arrangers, they are called “Real Distortion.” The arranger presets are voiced differently to fit the needs of arranger styles.

The “All 9 Bars!” Performance insert effects perform distortion and rotary speaker emulation. The effect routing is:

    Insert B --> Insert A

where Insert B is MULTI FX and Insert A is Rotary Speaker 1.

MULTI FX is effectively a chain of guitar pedal effects and is quite versatile. The effect parameters for “All 9 Bars!” are:

    1  Comp. Sustain   2.0
    2  Wah SW          Off
    3  Wah Pedal       0
    4  Dist SW         Clean
    5  Dist Drive      1.8
    6  Dist EQ         Hi Boost
    7  Dist Tone       1.5
    8  Dist Presence   5.0
    9  Output Level    100
   10  --
   11  Speaker Type    Twin
   12  LFO Speed       7.738Hz
   13  Phaser SW       Off
   14  Delay SW        Echo 1 St
   15  Delay Ctrl      40
   16  Delay Time      48

The Compressor Sustain stage is always on. Here, the Wah and Phaser are turned off. So, after the compressor, the rest of the chain applies distortion, amp simulation (Twin) and delay. Arranger people might want to try the MULTI FX with these parameter settings in order to spice up the rather polite drawbar organ voices. Then, crank the parameters!

There’s plenty to tweak here. I recommend reading Phil’s blog covering the new effects in Motif XF version 1.5:

https://yamahasynth.com/blog/exploringmotifxf15guitareffects

If MULTI FX doesn’t get the sound that your looking for, then maybe one of the other “Real Distortion” effects will get the job done.

Copyright © 2018 Paul J. Drongowski

MODX Theatre Orchestra

Today’s project is reconstructing one of my favorite voices stolen from Genos/PSR: TheatreOrchestra. This voice first appeared in Tyros 3, using waveforms that are roughly contemporaneous with Motif XS (MOX).

The following table summarizes the eight voice elements in TheatreOrchestra. The voice parameters are pulled from the Genos UVF file for the voice.

Element  Low  High Low  High    Vol  Shift  Waveform
-------  ---  ---- ---  ----  -----  -----  -----------------------
   0      C3   G8    1   127   -7.9      0  Flute2 Soft St L (5623)
   1      C3   G8    1   127   -9.8     12  Flute2 Soft St L (5623)
   2      C3   G8    1   127  -12.0      0  [Flute] (4951)
   3     C-2  F#3    1   127   -3.0    -12  Bassoon Hard (5626)
   4      E3   G8    1   127   -6.0    -12  Oboe2 Med V3 (5627)
   5      C5   G8    1   127  -21.4     24  [Glocken] (5124)
   6     C-2   G8    1    68   -9.0      0  p (5248)
   7     C-2   G8   69   127   -9.0      0  f (5249)

The volume (element levels) look a little bit curious and I conjecture that element levels are set relative to 0dB. We’ll need to convert these levels to the range [0:127] with 127 corresponding to 0dB. Naturally, we’ll let our ears be the ultimate judge.

The overall sound is dominated by the woodwinds: 3 flute elements, bassoon and oboe. The bassoon and oboe are transposed down one octave. This imparts a unique reedy character to the sound. However, the lower notes (left hand) get somewhat murky, so in the final voice, I leave the bassoon and oboe in their natural ranges to either side of middle C (approximately).

The string component is not strongly stated. Any old string ensemble would do. The waveform names in the UVF files are not super informative although I suspect use of the OrchStrgs waveforms which were introduced in Tyros 3 and Motif XS.

The glockenspiel adds a nice chime to the high end. The glock always sounds in the original Genos/PSR voice, becoming rather tiresome after a while. I prefer to switch the glock in and out. Also, piccolo is a good alternative, again, being switched in and out.

The next table summarized the eight voice elements in Theatre, a similar voice that I constructed for the MOX6.

Element   Low  High Low  High  Level  Shift  Waveform
-------  ----  ---- ---  ----  -----  -----  ----------------
   1       C2   G8    1   127     90      0  Flute2 Soft St
   2       C2   G8    1   127     80     12  Flute2 Med St
   3       C3   G8    1   127     40    -12  Flute Non-Vib Of
   4      C-2   B2    1   127    100      0  Contrabass R
   5       C3   G8    1   127     50      0  Solo Combi St
   6       C3   G8    1   127     80     24  Glockenspiel  AF2
   7       B2   G8    1   127     65     24  Piccolo       AF1
   8      A#2   G8    1   127    100      0  Oboe 1

The piccolo and glockenspiel are controlled by the Assignable Function buttons AF1 and AF2, respectively. The corresponding element sounds when an AF1 and/or AF2 button is enabled (turned on).

Contrabass and the Motif XS/MOX string Solo Combi replace the string ensemble. The contrabass lends a nice bottom to hold down the bass. It should be played sparsely in the left hand (i.e., no close clusters).

Finally, here is the TheatreOrch voice for MODX. On MOX, I tended to work exclusively in voice mode. MODX is modeless and all programming is made in a Performance. Thus, on MODX, I comp’ed several Performances into a single TheatreOrch Performance, then tweaked the individual Parts. [Click images to enlarge.]

Although Performances are the first class citizens, I still dove into the Parts to make changes at the element level. The string Part is based on the Almighty Performance; I changed the waveforms to OrchStrgs Soft St and OrchStrgs Med St, splitting the patch into two velocity ranges: 1 to 68 and 69 to 127.

The new glockenspiel and piccolo waveforms are much better than Motif XS (MOX). The old glock sounded like a not very well cared for, used instrument bought in a pawn shop. The new glock rings nicely. A sweet alternative is the FM Glockenspiel. If I wasn’t such a traditionalist (!), I would have used it. Maybe in a future variation?

The flute Part (Part 1) is based on the 2 Flutes Performance. I employed older Performances for the oboe and bassoon, too. Since this voice is a blend, detailed isn’t too important and older, simpler voice programming doesn’t cut into polyphony as much as the newer detailed Performance. I prefer the new Performance for exposed solos when high quality is needed and polyphony is not likely to be an issue.

Instead of AF1 and AF2, I created four scenes. Scene 1 mutes both the glock and piccolo, Scene 2 enables the piccolo, Scene 3 enables the glock, and Scene 4 enables both the piccolo and glock. The MODX Scene buttons are close at hand and are an easy gesture away when making changes. The MODX assignable buttons, A.SW1 and A.SW2, are a longer reach.

As I work with MODX, I realize that I need to think more about building block Performances which can be combined (comp’ed) into bigger Performances. For example, it might have been better to start with 2 Oboes & Bassoon in one Part instead of separate oboe and bassoon in two Parts. Similarly, it might have been better to start with Wood Winds + Strings, which combines flutes and strings. By cutting two parts, I could have implemented the voice in four Parts, thereby making Seamless Sound Switching (SSS) possible. I may try this approach as a learning exercise.

Hope you enjoyed this brief dive into MODX Performance programming.

Copyright © 2018 Paul J. Drongowski

Bonus voice: Tutti

Let’s take a quick look at another interesting voice from arranger-land: Tutti. Tutti is a string and horn layer with Timpani in the left hand. High velocity left hand notes trigger a crash cymbal, too.

The following table summarizes the Genos voice programming.

El#  Low  High Low  High    Vol  Pan  Waveform
---  ---  ---- ---  ----  -----  ---  ------------------------
 0   C-2    G8   1   127  -25.9   -1  (4081)  Allegro Strings
 1   C-2    G8   1   127  -25.9    1  (4082)  Allegro Strings
 2   C-2    G8   1   127  -22.9    0  (4102)  French Horn
 3   C-2    F1   1   127  -14.6    0  (4222)  Timpani
 4   C-2    F1 106   127  -20.6    0  (4223)  Crash cymbal

I constructed a similar voice for MOX:

El#  Low  High Low  High    Vol  Pan  Waveform
---  ---  ---- ---  ----  -----  ---  -----------------------
 1   C-2   G8    1   127    105  L63  508  OrchStrgs Soft L
 2   C-2   G8    1   127    105  R63  511  OrchStrgs Soft R
 3   C-2   G8    1   127     90    0  621  French Horn St
 4   C-2   B1    1   127    127    0  137  Timpani Sw St        AF1 ON
 5   C-2   B1  106   127     85    0  2479 Hand Cymbal Open St  AF1 ON
 6   C-2   B2    1   127    101    0       Snare Drum           AF2 ON

     AF1 ON: Enable element 4 Timpani and element 5 Hand Cymbal
     AF2 ON: Enable element 6 Snare Drum

The timpani and hand cymbal are enabled when Assignable Function button 1 (AF1) is on. I added a snare drum hit which is enabled by AF2.

The screenshots below are a quick attempt to implement Tutti on MODX. I haven’t quite figured out the snare drum yet. First world problem: I love the Highland Snares kit and would like to use all of them!