Combo organ: Top octave emulation

Given the scarcity of combo organ top octave generator ICs, what’s a hack supposed to do? Emulate!

I posed a “bar bet” against myself — can I emulate a top octave generator chip with an Arduino? The Arduino is a bit slow and I wasn’t sure if it would be fast enough for the task. Good thing I didn’t best against it…

If you browse the Web, you’ll find other solutions. I chose Arduino UNO out of laziness — the IDE is already set-up on my PC and the hardware and software are easy to use. Plus, I have UNOs to spare. Ultimately, one can always cobble together a barebones solution consisting of an ATMEGA328P, a 16MHz crystal and a few discrete components, if small size is an issue.

A simple passive volume control

There’s not much ancilliary hardware required. A few jumper wires bring out ground and audio signals from the UNO. I passed the audio through a trim pot volume circuit in order to knock the 5 Volt signal down to something more acceptable for a line level input. The trim pot feeds a Sparkfun 3.5mm phone break-out board which is connected to the LINE IN of a powered speaker.

That’s it for the test rig. The rest is software.

I assigned a “root” pitch to Arduino digital pins D2 to D13:

#define CnatPin 13 
#define BnatPin 12
#define AshpPin 11
#define AnatPin 10
#define GshpPin 9
#define GnatPin 8
#define FshpPin 7
#define FnatPin 6
#define EnatPin 5
#define DshpPin 4
#define DnatPin 3
#define CshpPin 2

Thankfully, the Arduino has just enough available pins to do the job while avoiding pins D1 and D0. D1 (TX) and D0 (RX) carry the serial port signals and it’s best to let them do that job alone.

My basic thought algorithm-wise was to implement 12 divide-down counters (one per root pitch) that decrement during each trip through a non-terminating loop. Each counter is (pre-)loaded with the unique divisor which produces its assigned root pitch. Whenever a counter hits zero, the code flips the corresponding digital output pin. If the loop is fast enough, we should hear an audio frequency square wave at the corresponding digital output. This approach is (probably) similar to the actual guts of the Mostek MK50240 top octave generator chip, except that the MK50240 counters operate in parallel.

Each root pitch needs:

  • A digital output pin
  • A note count variable
  • A divisor
  • A state variable to remember if the output is currently 0 or 1

For the highest pitch, C natural, we need declarations:

    #define CnatPin 13 

byte CnatCount ;

#define CNAT (123)

byte CnatState ;

and count down code to be placed within the loop body:

    if (--CnatCount == 0) { 
digitalWrite(CnatPin, (CnatState ^= 0x01)) ;
CnatCount = CNAT ;
}

These are the basic elements of the solution. The rest of the pitches follow the same pattern.

Now, for the fun — making the loop fast enough to be practical. This was a bit of a journey!

First off, I tried the MK50240 divisor values which require at least 9 bits for representation. Using INT (16-bit) counter variables, everything worked, but the final note frequencies were too low — not much “top” in top octave. I cut the divisor values in two, switched to BYTE (8-bit) counter variables, and doubled the output frequencies. Yes, AVR (Arduino) BYTE arithmetic is roughly twice as fast as INT arithmetic. That was the first lesson learned.

The next lesson had to do with how the counters were stored (register vs. memory). If I were writing the code in assembler language, I would have stored all of the counters in AVR CPU registers. (AVR has 32 CPU registers, after all.) Register storage would provide the fastest counter access and arithmetic. However, this is where C language and the Arduino setup()/loop() structure fight us.

Ultimately, I put all code into setup() and ditched loop(). I declared all twelve counters as register BYTE variables in setup():

    register byte CnatCount ; 
register byte BnatCount ;
register byte AshpCount ;
register byte AnatCount ;
register byte GshpCount ;
register byte GnatCount ;
register byte FshpCount ;
register byte FnatCount ;
register byte EnatCount ;
register byte DshpCount ;
register byte DnatCount ;
register byte CshpCount ;

The compiler allocated the counter variables to AVR CPU registers. This enhancement doubled the output frequencies, again. Now we’re into top octave territory!

The third and final lesson was tuning. The Mostek MK50240 is driven by a crystal-controlled 2000.240 kHz master clock. The emulated “master clock” is determined by the speed of the non-terminating loop (cycling at the so-called “loop frequency”):

    for (;;) { 
if (--CnatCount == 0) {
digitalWrite(CnatPin, (CnatState ^= 0x01)) ;
CnatCount = CNAT ;
}

...

delaySum = delaySum + 1 ;
}

My original plan was to tune all twelve pitches by changing the speed of the non-terminating loop. I discovered that such timing was too sensitive to code generation to be controllable and reliable. The biggest delay that I could add to the non-terminating loop was “delaySum = delaySum + 1 ;“. In the end, I manually tuned the individual note divisors.

A fine point: I chose the divisors to achieve a wide resolution in 8 bits. Eight bits is “close enough for rock and roll,” but not really enough for accurate tuning.

As usual, the path to the solution was zig-zaggy and not straight. Here is a ZIP file with all of the code and my working notes. I included source code for the intermediate experiments so you can re-trace my steps. Have fun!

Copyright © 2021 Paul J. Drongowski

Review: zplane deCoda

A recent thread on the Keyboard Forum (“What was the first song you figured out by ear?”) brought up memories of high school and combo organs. One of the most popular tunes of the time was “Space Rock Part 2” by The Baskerville Hounds. Air play on Ghoulardi was a big boost to its popularity and it really brought people onto the dancefloor. “Space Rock” is pretty much a rip of The Stones’ “2120 South Michigan Avenue,” albeit way up-tempo than the Stones’ version. Sly Stone knocked out his own titled “Buttermilk.” If you’re wanting a modern update, listen to the 2015 Jerry Cortez cover.

The “Space Rock” organ solo was the solo to know as a teen. At the time, I was paying off my Farfisa and didn’t have any money for records, so the old “drop the needle until you got it” method wasn’t for me. My bandmates were always on my back about it and they didn’t accept my “Guys, they’re just jammin'” excuse. I tried to cover the head and then improvise. Oh, well.

I’m pulling together a backing track for “Space Rock/2120” and it seemed like the time to transcribe the solo. Enter zPlane deCoda. In a nutshell, zplace have deployed their time/pitch stretching and DSP expertise to the problem of picking out tunes from audio. (See the Sound On Sound review for more information.) It’s not an audio-to-MIDI converter, so you still need to use your ears and eyes.

First, ya drag (or open) an audio file in deCoda. deCoda gives you two views: a standard (amplitude) waveform view of the audio and a spectrographic plot. The spectrographic plot is like a DAW piano roll. Instead of notes, however, it displays the sonic energy present at each pitch. You can (kind of) see the notes in the song — pitch and duration. I spent most of my time in the spectrographic display.

zplane deCoda in action

Optionally, you can turn on an XY panel (at right in the image above) that lets you focus playback and analysis on a particular “region” of the stereo field and audio frequency spectrum. Thanks to the XY panel, you can eliminate the bass and high-end sibilance. Blobs light up in the XY panel during playback as notes come and go.

deCoda offers a number of playback controls. You can playback at 1/4, 1/2, 3/4 and full speed. You can transpose up and down. You can change the tempo. My recommendation is to get the best mix of key, tempo and XY region before deep diving transcription.

Like Yamaha’s Chord Tracker, deCoda discovers key, tempo, chords and song sections. As mentioned, you can modify deCoda’s decisions. Compared against Chord Tracker, I would give Chord Tracker the edge. (Yamaha have invested a pile ‘o’ cash into music analysis.) Both tools handle simple chords OK, but forget jazz chords (no 11th and 13th chords) or gospel voicings.

After quickly munching “Space Rock”, deCoda had the key right, but half the actual tempo. The Hounds played “Space Rock” at a blistering 156 BPM. deCoda says 78 BPM. That’s OK, but…

One of the coolest deCoda features is the ability to draw notes on top of the spectrographic display. The notes play back through a simple synthesizer (think Casiotone). A mixer controls the relative level of song audio and synthesized tones. Once I got a little more skilled with deCoda, I found myself changing the relative levels quite often in order to A/B the original audio and the drawn notes. I wish deCoda offered a few different synth voices as the simple tones blended with the organ notes making it difficult to sort out the sounds by ear.

With a little practice, you can begin to pick out the notes by sight as well as ear. 1/4 playback is good for checking note start and duration. “Space Rock” is a mono mix and a mess of frequencies with that danged 60’s ring-y reverb. Thus, there are many false positives — places where you think there is an organ note, but it’s actually the frapping guitar. I wish deCoda could color notes according to timbre. Man, that would be quite the time-saver.

To compensate, I found myself playing the notes on keyboard, mainly to check fingering. “Space Rock” is one of those lazy blues tunes where the keyboardist just rocks his or her fingers around in one basic hand position. It’s difficult to read piano roll notes in real-time; I’d love to have even a simple staff viewer.

Now for the “but…”. deCoda can export the notes as a Standard MIDI File (SMF). Very good. deCoda produces MIDI notes that follow the identified tempo. When the SMF is imported into a DAW or notation tool, it arrives with the identified (or tweaked) tempo. Note play back sounds right, but if you change to the correct tempo in the tool, note starts and note durations are off (i.e., half of what they should be). I had to fix the note starts and durations in Sonar, save another SMF and import the modified SMF into Sibelius. Bummer.

I discovered the tempo and note export gotcha downstream. I also found that I wanted to work and play in G Major, not F# Major, AKA “that frapping guitar key.” I had already started a draft in Sibelius and it became a question of how much work I wanted to throw away. It’s better to get these considerations right from the start before export and downstream work.

Speaking of Sibelius, I really longed to have the identified notes in notation form, not piano roll. Under Windows 10, I couldn’t work in Sibelius and deCoda simultaneously. They did not work together — some kind of MIDI or audio system conflict. One or the other tool wouldn’t play when they were both open at the same time. In a few cases, I had to resort to notation paper and pencil to transfer identified notes into Sibelius, exit Sibelius, then re-start deCoda. Painful.

After all is done, I arrived at a decent transcription in Sibelius. (See image below; click to enlarge.) After seeing and playing the solo against a rough backing track, I think deCoda is about an eighth to a quarter note ahead of the beat. I’m not sweating it too much as playing “Space Rock” comes down to feel. However, it might be a factor when an accurate score is needed for chart-driven players.

Space Rock Part 2 (solo)

zplane deCoda is a worthwhile tool. It won’t automatically transcribe, but it is a decent assistant. The note editor and MIDI export are a real boon as I a keep a book of charts for reference. The XY plot is also a worthy mix visualization tool and has been repurposed in zplane peel. I hope that deCoda continues to invest in deCoda as I would love to have timbre coloring. That’s a tough technical problem, but cracking that nut would put zplane way out in front competetively.

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


Winter NAMM 2021: Do you believe?

Whew! Writing articles about ARM Cortex-A72 took quite a bit of time and effort (Part 1: Fetch and branch, Part 2: Execution and load/store).

If you drop by my site for music tech and synth info, never fear, I’m still playing with musical toys. The holiday gift return season is upon us and there are bargains popping up every day. Mint or lightly used open box items are available at a discount — a great way to stretch scarce cash. I hope to post mini-reviews as toys and time allow.

Even though the pandemic (sadly) rages on, Winter NAMM 2021 is next week (18-22 January 2021). Like many other events, Winter NAMM 2021 is virtual. Brick and mortar NAMM is replaced by NAMM Believe In Music Week. It doesn’t cost anything to register, so “Why not?”

I took a quick spin through the Believe In Music site and the organizers have done a terrific job. There, you will find the latest information about existing products and new products as they are announced. Some companies, like Yamaha, have placeholders for information to be released once the press (publication) embargo expires.

However, teasers sneak through! On Wednesday, January 20, Yamaha have four sessions scheduled:

  • New Yamaha Synth Product First Look (10AM)
  • New Yamaha Synth Product Integration (12PM)
  • New Yamaha Synth Product Playthrough (2PM)
  • New Yamaha Synth Product (3PM)

Definitely something to look forward to. So, register now and start looking for Easter eggs like this!

BTW, Yamaha have already published many Winter NAMM 2021 press releases on PR Web. Seach for “Yamaha” — or any other big-time vendor. That’s how I found the new Yamaha MSP3A compact reference monitor ($199 USD MAP). Before Christmas, I was shopping for a pair of mini monitors and would have consider these had I known about them. Went with Eris 4.5 which are more in line with my budget.

Given the NAMM Believe In Music Week site, there isn’t much need to preview products here on my site. (Time is precious and is not fungible.) However, if you’re a doting grandparent, I do recommend checking Soundbops. 🙂

Soundbops

In toys we trust. Go Browns!

Copyright © 2021 Paul J. Drongowski

Back In The Day

A Keyboard Corner member asked what people did for keyboard amplification before PA. Man, that question really kicked off some memories.

Back in the day (1966), I played a Farfisa Mini Compact Deluxe through an Ampeg SB-12 bass amp. It was all I could afford. Mom and Dad lent me the money and I mopped floors at the local donut shop to pay them back. The shop had a wooden floor that was impregnated with grease. I still can’t face donuts to this day. 🙂

Farfisa Mini Compact Deluxe

While packing for the house move, I found an original Farfisa brochure from the 60s era.

The Portaflex was pretty cool with its flip top. The amp was mounted to a covered board which acted as a base for the head and, when flipped over, it became the cabinet cover. The clamps held the base/cover board in place and did double-duty as the speaker connections to the cabinet.

Ampeg SB-12 bass amplifier

The SB-12 had a 12″ Jensen speaker powered by a 25 Watt tube amp. It weighed 47 pounds — the first of a long line of heavy schleps.

Being the 1960s, of course, that wasn’t enough. Since I started playing with electronics and DIY at an early age, I tried my hand at an extension cabinet. I somehow came into a 15″ JBL speaker with a small tear in the cone. Impedance be damned, I just hooked it up in parallel with the Jensen via the clamps. Before building a cabinet, I would carry the JBL around in a suitcase which doubled as a “cabinet.” (!) The tear in the cone lent more bad-itude. [Why fizzy digital distortion doesn’t cut the mustard.]

In the R&B band, the guitars and vocals went through matching Ampeg guitar amps (probably Gemini’s). Only the top local bands could really afford PA for vocals (typically Fenders). Nobody put instruments through PA. The bass player had a Guild ThunderBass amp with that funky head. The bass player was quite good and laid down decent grooves. Can’t remember too much about the psychedelic band…

My failed experiments at extension and PA speaker cabs wound up as end-of-gig props. When we saw The Who trash their gear, we thought “What the heck!” I’d pull one of the legs off of the Farf and ram it through one of the prop cabinets.

My dream rig would have been a Vox Continental through a Fender Twin Reverb or Fender Super Reverb. I copped the Fender tilt-back idea and built a tilt-back stand for the SB-12. That got the speaker pointing up toward my ears.

Both the Connie and the Fenders were out of my financial reach. It took me three years to pay back my folks. By then, I had to sell the whole rig in order to make the college tuition nut. Given the rigors of college math, physics and computer science, it was the end of playing for quite a while. I can’t believe how much a vintage SB-12 fetches on the market these days!

The Farfisa Mini Compact Deluxe left me with no delusions about 1960s electronics. I tried tuning the F# oscillator and bunged the tuning coil. That was an unnecessary repair expense. That’s why I’m happy as a clam to play the Yamaha Reface YC today. The YC does a good job nailing the Farfisa and Vox.

A few other memories stick out like playing music fairs on stage/demo gear with the psychedelic band. One stage was incredibly small and I had a horn driver literally right in my ear. We played Doors, Steppenwolf, Vanilla Fudge, etc. at phenomenally loud volume, attracting every biker within earshot. They loved us. I think I still suffer hearing loss from those jobs.

Before signing off, I want to plug “Classic Keys: Keyboard Sounds That Launched Rock Music” by Alan Lenhoff and David Robertson. I received a copy yesterday and gave it a quick browse. The photography is excellent and the example gear is in tip-top shape. The book is long on history — less on playing technique and artistis, so some may be disappointed. Discount and used copies are coming onto the market and you may be able to save a few bucks if you can’t pony up the full $60USD. Recommended.

Copyright © 2020 Paul J. Drongowski

Modding the PSS series

I promised a few thoughts about modding the new Yamaha PSS series keyboards. Here goes…

As shown in my PSS-E30 Remie tear-down, a PSS family keyboard consists of four major parts:

  • Mini keybed
  • Digital logic board (DM)
  • Front panel board
  • Plastic skin and parts

For comparison, I recommend this excellent PSS-A50 demo and tear-down on YouTube.

Product personality is determined by the plastic skin/parts, software in the embedded serial ROM, and the addition/absence of the USB interface integrated circuit (IC). There may be a few other minor differences, but it would be difficult to pin them down without the service manuals. Speaking of which, if you start a mod project, I strongly recommend reading the PSR-F50 Service Manual because the F50’s guts are very similar to the PSS series.

Unless you really want the F50 or E30 voices and functionality, the A50 is the best choice for a mod. The A50 has the USB interface IC and the necessary firmware supporting MIDI over USB. The A50 has a higher street price than the other models, but USB MIDI is worth it.

At the 100,000 foot level, there is plenty of empty space inside for a small microcontroller (e.g., Arduino) or sound mangling analog electronics. You could choose to either keep the speaker if you want portable sound or ditch the speaker and go solely with the headphone output to external amplification.

If keep the speaker, you could easily add some sound mangling circuits like a filter or effects. The littelBits filter might be a good start and is certainly small enough to fit in the empty space. Should be easy to tap into battery power as the battery leads are exposed.

If you ditch the speaker, you have a lot more space to work with. I’d be tempted to add the Korg NTS-1 once it’s available. The NTS-1 can process external audio and has digital effects. Previews have given the digital effects high marks. Unfortunately, the NTS-1 is spec’ed 12.9cm by 7.8cm by 3.9cm, which won’t fit directly into a PSS case. A lot depends upon the size of the NTS-1 electronics board. Even if we can’t fit the NTS-1 into a PSS case, the NTS-1 would be a nice complement to the A50.

Without the speaker, one could use the front panel real estate for additional controls. With all of the arpeggios and such, manual control over filtering and effects would be welcome (in addition to the A50’s fixed motion effects).

At the 50,000 foot level, any one of the PSS models could be stripped down for parts. The case and front panel may or may not float your boat, but you could use the shell and front panel for a keyboard project of your own. It would be easy to apply new graphics to the front panel. The front panel buttons are a switch matrix which can be easily mapped out and then scanned by your code. The front panel has a three digit 7 segment display that needs to be multiplexed and driven.

The keybed is quite useful. The keys are affixed to the bottom of the case, so unless you’re reusing the case, too, you probably will need to cut the keybed out of the case, leaving everything as a unit. The keys sit above a printed circuit board (PCB) with the rubberized switch contacts.

Reface YC switch matrix

I’ll make a leap of faith here and assume that it’s the same keybed as Reface. The schematic above is taken from the Reface YC Service Manual. The key matrix has seven select lines (BK0 to BK6) and twelve sense lines (MK10 to MK21). Your software needs to drive one of the select lines and immediately read the sense lines. There are two sense lines per switch for the “lower” and “higher” key contacts. Software can determine key velocity by measuring the time between contact closures for an individual key.

The most tasty enchilada is the digital logic (DM) board. The A50 board, in particular, could form the basis of a USB MIDI tone module. One could add 5-pn MIDI by bridging a 5-pin DIN and the USB micro-B port. The DM board is quite small: 13.5cm by 4.5cm. And clearly, the DM board can be battery powered. Even if you re-housed the DM board and front panel board, you still would get a very compact module.

Modding at the 10,000 foot level gets difficult. There are the usual difficulties tracing signals and soldering surface mount (SMT) devices and signal paths. Even if you strip out the SWLL (YMW-830) integrated circuit, I’m not sure what you would do with it!

Nor am I confident that the firmware can be easily by re-engineered. Yamaha have never documented wave chip internals, so you don’t have much guidance. There isn’t much code — firmware and waveforms reside together in the 2MByte serial ROM. I would guess that the firmware is SH architecture. Even so, reverse engineering would be a difficult task. I have my doubts about repurposing the code. At best, one might be able to add or change the waveforms?

Personally, I’m inclined to go the sound mangling route.

A few more thoughts before closing.

The A50 is not a General MIDI module. If you want a (mostly) GM/XG compatible Yamaha tone module, I suggest the Pocket Miku NSX-39. Also, while stumbling around the web, you might want to check out the Yamaha YMF-825. It’s a 4-op FM chip which Yamaha released for makers.

Copyright © 2019 Paul J. Drongowski
Except service manual excerpts which are copyright Yamaha.

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

Just like starting over

I’m playing with a new group of liturgical musicians and am having great fun.

The two biggest challenges when playing with a new group are 1. listening and 2. picking up new music. Both challenges are opportunities for growth.

Listening is always key. As a synth player, I’m a bit of a frustrated orchestrator. Instruments like the Yamaha MODX and Genos offer a wide palette of acoustic and electronic sounds. The challenge is to listen carefully and find the right sound and part in the musical context. The context, of course, is the song and the other players — what the song needs, the instrumentation, what instrumentalists are playing, what singers are singing, dynamics and so forth. My goal is to select an instrument and improvise a part to complement the other instrumentalists while making the song stronger.

My last group was small: piano, acoustic guitar, sometimes drum, and me. That left a lot of musical space including exposed solos, fills, left-hand bass (as long as it didn’t interfere with the pianist) and foundation (e.g., pads, B-3 organ, etc.)

The new group is much larger: piano, guitar, drums, two flutes, viola, trumpet and trombone. There’s a lot going on! I’ve played with woodwinds and strings before; full-on brass is a new situation for me. There is still space, but careful listening is needed in order to find it. Obvious ideas include double reeds (oboe), French horn, woodwind ensemble, ensemble strings, cello, contrabass, pipe organ and B-3 organ (when the music calls for it).

With all of that going on already, it’s important to be part of the blend and to not overemphasize existing parts. Nor do I want to step on anyone’s part! For example, the flutists and viola contribute introductions and musical interludes such as an instrumental verse of a hymn. It’s going to take listening, time and experience to find the find complementary part(s). Conventional wisdom in scoring claims that acoustic instruments make it easier to fool the ear with electronic emulations. Thus, it makes sense to keep the real-deal acoustic instruments front and center.

Last Sunday, we did a rendition of “When the Saints Go Marching In” in remembrance of All Souls Day. Playing with the brass was a genuine kick. Challenge #2 — new music — I’ve never played New Orleans-style traditional jazz before. Although there are a lot of blue notes, the phrasing is unlike the gospel or Chicago-style blues that I’m used to playing.

So, hey, what to play? Clarinet and euphonium. New Orleans jazz is “lead and fill” or “call and response.” I downloaded a MIDI file to study and cop a few clarinet licks. I wrote out a simple clarinet part with a few fills and lines to harmonize what I thought the brass would play, assuming that the trumpet would take the lead. Euphonium-wise, an oom-pah alternating root (1 and 3) and fifth (2 and 3) was good enough to get started.

Try as I might, I just couldn’t get the two parts and hands going at the same time and settled for the clarinet line alone at the gig. Maybe next time… I think I may ditch the harmonization idea and play (around) the melody, too.

Patch-wise, you can’t always get what you want. I practiced the clarinet part on Genos using its Super Articulation 2 (SA2) clarinet which is darned sweet. I programmed a clarinet/eupohonium split on Yamaha MODX, but the MODX clarinet is not in the same league as the SA2. Compared to Genos, it sounds cheap. MODX (Montage) does have a decent euphonium, however, and maybe it’s better to go low than go high next time!

Yamaha, how ’bout a euphonium on Genos and SA2 on MODX?

That won’t stand in the way of the fun. In the meantime, there’s more than enough to keep me busy.

Copyright © 2019 Paul J. Drongowski

Another tiny toy from Yamaha: SHS-300

Yamaha keeps cranking out mini-keyboards!

The SHS-300 Sonogenic is squarely in the musical toy category. The SHS-500 keytar is a solid, well-built instrument with 28 melodic instruments, 2 drum kits (House and Power), and DSP effects. The SHS-300, on the other hand, is a plastic, reduced rendition.

Both keyboards interface with Yamaha’s ChordTracker app and implement Jam mode. Jam mode lets an untrained user flail at the keyboard while the software maps the played notes to the musical scale determined by ChordTracker.

The SHS-300 has just 12 instruments organized into four categories:

  • Synth: Saw Lead, Square Lead, Synth Brass
  • Piano: Piano, Electric Piano, Organ
  • Guitar: Electric Guitar, Acoustic Guitar, Electric Bass
  • Other: Strings, Synth Bass, Dance Kit

The Dance Kit is the sole drum kit. The sounds are definitely entry-level PSR quality with no real effects. The nice solid controls of the SHS-500 are replaced by plastic buttons. Buttons control vibrato and sustain; Pitch bend is the sole wheel.

Street prices should be quite low as Yamaha are aiming for a super-casual, impulse-buy customer base.

Of course, the SHS-300 does not provide 5-pin MIDI out, an alphanumeric display or other niceties. I think I would stick with the bigger sibling SHS-500.

Boston Music Expo 2018

After having so much fun last year, I couldn’t pass up the 2018 Boston Music Expo (Saturday, June 9). Music Expo brings people together — artists, producers, engineers, composers, tech companies — the whole panoply of folks at the intersection of musical art and technology.

Sound On Sound Magazine is the chief sponsor. This year’s gold sponsors are Yamaha and Steinberg. Of course, both Steinberg and Yamaha were showing their wares along with many other companies big and small.

Loïc Maestracci — the founder of Music Expo — was at the door with the chance for a quick “Hello!” Let’s get started and go in.

Boston Music Expo 2018 was hosted by The Record Co., located in Boston’s South Bay. The Record Co. has the ambitious mission “to build a sustainable, equitable music scene in Boston.” Although Boston already has a busy scene, it isn’t easy for all artists to grow, collaborate and record. The Record Co. provides subsidized studio space, gear and production resources, thereby lowering the financial barrier for artists looking to record.

The Record Co. has two studios, both kitted out with top-notch gear. Rates are very reasonable. The Studio A live room is quite large and was the venue for one of the two parallel seminar tracks running at Music Expo. Studio A held 40 to 50 seats with space to spare. Studio B is smaller and more intimate.

The thing that I like best about Music Expo is the surprises. While getting my bearings, I was blown away to find people soldering! I had stumbled into the Audio Builders Workshop sponsored by the Boston Chapter of the Audio Engineering Society (AES).

The Audio Builders Workshop offers seminars and group builds to encourage and inspire people to make their own audio electronics. I had a great chat with Brewster LaMacchia (Clockworks Signal Processing) who was leading the group build. The workshop participants were building a small metronome kit ($10 donation). The kit consists of a circuit board, 555 timer, speaker, battery connector, and a handful of discrete components. It’s all through-hole construction and looks like a great way to get started with soldering. If you’re in the Boston area and have an interest in audio electronics, then I definitely recommend getting in touch with this organization.

I bought one of the kits and will eventually build and review it. Sometimes I just like to soldering something up on a rainy day.

Another organization at Music Expo that deserves recognition and support is Beats By Girlz. BBG is a “music technology curriculum, collective, and community template designed to empower females to engage with music technology.” BBG sponsors workshops and other events (hardware and software provided!) to get women and girls into music production, composition and engineering.

That last “E” for “engineering” gets me fired up! Music technology, for me, is the gateway drug to Science, Technology, Engineering and Mathematics (STEM) education and careers. Women are so woefully underrepresented in STEM that I wholeheartedly support groups like Beats By Girlz. In addition to Boston, BBG has chapters in Minnesota, Los Angeles, New York and Chicago. I recommend Women In Music, too, BTW.

I arrived at Music Expo a little later than expected due to a traffic tie-up on the expressway. (Saturday morning? Really?) However, I did manage to catch the two sessions in which I was most interested.

Since it was first announced, I wanted to see and hear Audionamix Xtrax STEMS in action. I’ve tried to spice up my backing tracks with vocal snippets and found center extract (and center cancel) techniques lacking. My first “must-hear” session at Music Expo was an Xtrax STEMS plus Ableton Live presentation by Venomisto. Venomisto used Xtrac STEMS to pull a vocal stem from an existing song and then inserted the vocals into his own remix. Xtrax STEMS is not perfect, but it’s darned good for the money ($99 USD).

I really dug Venomisto’s latin remix, Havana. Toe tappin’, head noddin’. I love this stuff on a Saturday in the city! [I’m listening to it right now and can’t get back to work.] Cruise over to his site and you’ll hear Xtrax STEMS in action, too.

My second “don’t miss” session was “From Score To Stage” by Paul Lipscomb joined by Pieter Schlosser via Skype. Paul ran through the process of sketching and delivering the “Destiny 2” game soundtrack (Bungie Software). Wow, this session could have been a full day.

Although Paul wanted to show people that there are many ways to work and create as an artist, we’re talking “Production” here with a capital “P”. The Destiny 2 soundtrack is a AAA (big) budget production with multiple composers, orchestrators and an orchestra. All I can say, if you want to do this kind of work, be good at the hang and collaboration. Be prepared to work in a geographically dispersed team: client (Bellevue/Seattle), co-writers (Los Angeles, Seattle), orchestrator (The Berkshires in Massachusetts).

Paul classifies music (and the process of getting there) as either linear or interactive. Music for film or video is linear, having a start point, several intermediate points one after another and an end. Game music is interactive and must adapt and re-structure itself to fit the actions of the player.

He demonstrated how one can start with a simple motif (or two) and build your way to a 250 track behemoth. Thanks to the wonderful orchestral libraries available today, composers can put together a rather complete mock-up to present to a client for approval. Even on a big budget job, some of the parts in the mock-up may make it to the final mix simply because there isn’t enough money available to fund everything live (e.g., you can have the orchestra, but not the choir).

Paul uses Steinberg Nuendo and swears by it. Pieter uses Cubase. Nuendo is the bigger brother to Cubase and is geared for post-production and scoring. Paul exports MIDI tracks and provides them to the orchestrator for notation. Yep, good old MIDI.

Paul and Pieter’s presentation was thought provoking, especially about the current state/direction of orchestral music for film, video and games. A discussion about clients and aesthetics would be more appropriate for the “Notes From The Deadline” column in Sound On Sound. [My favorite SOS column, BTW.] However, I’m pondering the age-old question of how to raise our clients to a higher level of musicality. Like Paul, many of us listen to a wide range of music including traditional and modern classical music. (Paul’s advice: “Listen to everything!”) How can we move our clients beyond the limited scope of their own musical experience?

Well, shucks, that’s just two of the fifteen Boston Music Expo sessions on offer. Several sessions dealt with the business side — promotion, social media and collaboration — in addition to the artistic side.

I spent time cruising the exhibitor booths. Here’s a few short-takes and shout-outs:

  • Scott Esterson at Audionamix demonstrated Instant Dialog Cleaner (IDC) as well as XTrax STEMS. He humored a lot of my crazy questions and comments. Thanks.
  • The Yamaha folks had Montage6, MX88, MOXF8 and a clutch of Reface keyboards available for trial. Friendly as ever, it was good to touch base. I had an extended conversation with Nithin Cherian (Product Marketing Manager, Steinberg) and I quite appreciate the time that he spent talking with me.
  • The IK Multimedia iLoud Micro Monitors are excellent for the price. Not quite up to the Genelec studio monitors on show in the room next door, but much more affordable. A definite covet.
  • Speaking of IK, the iRig Keys I/O have a decent, solid feel and touch. The 25 key model is seriously small and still has full size keys. Suggestion to IK Multimedia: Please bring out a 5-pin MIDI dongle for us dinosaurs with old keyboards. I’d love to hook up an iRig Keys I/O 49 to Yamaha Reface YC.

A special shout-out to Derrick Floyd at the IK Multimedia booth. He epitomizes “good at the hang.”

I said it last year and I’ll say it again, Music Expo bridges the widening gap between customers and technically advanced products. On-line ads and videos just aren’t the same as playing with a product and experiencing it for one’s self. Brick and mortar stores cannot devote much space, inventory or expertise to the broad range of fun tools and toys that are up for sale. With on-line sales as perhaps the dominant sales channel, whoof, tactile customer experience is utterly lost. Music Expo closes the gap.

If Music Expo is coming to your corner of timespace, please don’t hesitate to attend and participate. I’m sure that you will enjoy the experience and will make valuable connections.

Copyright © 2018 Paul J. Drongowski