What if CS and SK had a baby?

Got a PM from Jan, a long-time reader. Jan found a page on YamahaSynth about the Yamaha MX product line. The page features the phrase “CK — Classic Keyboards”. CK?

I suspect that CK61™ and CK88™ refer to a new line of keyboards, not a refresh of the MX series. I have to agree that the MX product line is in serious need of a refresh; It is based on the geriatric Yamaha Motif XS sound set.

Still, Jan’s comments got me thinking, especially about the early history of Yamaha synths.

The earliest Yamaha synths — SY-1 and SY-2 — Appeared in the mid-1970s. These 3-octave beasts provided a range of factory presets like trumpet, clarinet, guitar, piano, etc. and a small handful of sliders and knobs on a panel to the left of the keybed.

The SY-1 and SY-2 were quickly superceded by the more popular CS series. The CS series had monophonic and polyphonic models covering the range from the highly portable CS-01, through the Concertmate-like CS-5, to the revered altar of synthesis, the CS-80. The CS synths appeared in the late-70s and early-80s.

The Yamaha SK series appeared in roughly the same time-frame and were somewhat eclipsed by the CS synths. I remember playing both CS and SK keyboards in Salt Lake City, wearing out my welcome at local music shops around town. 🙂

Like the beefier end of the CS line, the SK keyboards sported beautiful — and heavy — wooden end-cheeks and cases. Yamaha have always found a way to spotlight their expertise in woodworking!

Yamaha SK-30 Symphonic Ensemble

Sonically, the SK series are an extension of digital organ technology. The SK-30, for example, had three independent sound generators: organ, poly synth and solo synth. The organ has footage tab stops and percussion. The poly synth is split into two subsections: string and poly synth. Each section is 7-note paraphonic. The monophonic solo synth consists of a VCO feeding a wave-shaper that sends a sawtooth or pulse into the VCF and VCA stages. The organ and poly synth sections each have their own timbre shaping circuitry akin to the tone shaping one finds in organ designs of the era.

Why two concurrent product lines, both ostensibly synthesizers? Engineers were fighting analog VCO pitch stability at that time. The SK series had better pitch stability overall than the CS series and offered polyphony to boot. Who knew that analog would be more popular than digital?

So, what if the CS series and the SK series had a baby? “C” from the “CS” series plus “K” from the “SK” series equals “CK”. Yamaha have been known to dip from their historic well for naming. Perhaps the new CK series are a poly/mono hybrid? Just guessing!

TMI

Looking at the service manuals for this old tech is a blast down memory lane. The SK series use several Yamaha proprietary chips from their electronic organ and CS synthesizer product lines.

A number of on-line resources claim that the poly-synth tone generators use FM synthesis. This is incorrect. Specifically, the poly-synth uses YM70400 GOA integrated circuits (IC) based on Yamaha’s Pulse Analog Synthesis System (PASS). The YM70400 (and the other tone generators) receive a serial 4-bit key code from a key scanner/assigner IC. The key codes tell the tone generator(s) which notes to produce and trigger. The SK-30 has dual poly-synth generators which are each 7-note polyphonic, producing 8’/16′ square waves and 4′ sawtooth waves. Each side is routed through analog filters tailored for strings on one side and an EG-controlled VCF on the poly synth side.

Yamaha SK-30 block diagram

The SK-30 organ section consists of a YM62200 top-octave tone generator (TGC) and two YM70200 organ generators, GF1 and GF2. The organ section is 7-note polyphonic. GF1 and GF2 generate sine waves which are sent through the drawbar tabs for mixing and filtering. GF1 and GF2 support all common organ footages and percussion.

All three sections can take advantage of a tremolo/ensemble effect and/or a multi-pin Leslie connector. The effect is a bucket brigade device (BBD) delay/vibrato generator. [The term “Tremolo” is abused here.]

Much is described in the excellent article “Yamaha Symphonic Ensemble SK20”, Electronics & Music Maker, March 1981. Back in the day, electronic music magazines occasionally gave a detailed glimpse inside — sadly lacking in today’s review articles. sandsoftwaresound.net tries to fill that void.

Copyright © 2022 Paul J. Drongowski

Akai MPK Mini beauty products

Well, at first, I was going to strip it for parts. Then I changed my mind.

My original plan was to mod and customize an Akai MPK Mini Play (Mk1), making it a stand-alone synthesizer. As to cosmetics, I wanted to jazz it up with colorful knobs and a reverse white-on-black keybed. I would either find replacement keys or I would buy an Akai MPK Mini White Edition (Mk2), bust it down, and swap in the white-on-black keybed.

Hopes were dashed when I discovered the limitations of the MPK Mini Play’s implementation. Akai’s firmware blocks full access to the Dream S.A.S. SAM2635 synthesizer. I made a MIDI IN/OUT mod, letting me communicate with the Dream through 5-pin DIN MIDI. My original goal of a stand-alone synth, though, went down the tubes.

While the mod was playing out, I bought an Akai MPK Mini White Edition (Mk2) on ebay, ostensibly, for parts. BTW, if you’re looking for an MPK Mini, there are scads of them available on ebay for much less than retail. [If you’re OK with used.]

Gratefully, the previous owner had not registered the MPK Mini and I was able to download Akai’s software bundle. I installed MPC Beats — Akai’s MPC-style DAW — and the five expansion packs included in the bundle. I gave MPC Beats a try. Lo and behold, it was a lot of fun! I found the MPK Mini to be a better companion for MPC Beats than the MPK Mini Play. Suddenly, all desire to strip the White Edition was lost.

Now I want to keep using the MPK Mini (Mk2) as an MPC Beats controller and treat the MPK Mini Play as a MIDI module. Time to beautify the White Edition. [Spared from the chopping block.]

As to appearance and use, my one major quibble is the short, skirted knobs on both the MPK Mini and MPK Mini Play. I find these knobs hard to grab — more appropriate for small hands than my mitts.

Adafruit knobs versus original Akai MPK Mini knobs

Short knobs mean short pot shafts. Due to the short potentiometer shafts and the front panel recess around the pots, any old knob will not due. Casting around on the Web, I found two candidate knobs at Adafruit:

  • Adafruit #5093 Slim rubber rotary encoder knob, 11.5mm by 14.5mm D-shaft
  • Adafruit #5532 Red micro potentiometer knob (4 pack)

The red knobs are part of a multi-colored family. If red isn’t your fancy, try blue, black, white, cream, green, etc. Individually, both knob types are about $.70 USD per knob — not bad. Adafruit’s shipping is a tad high (one pound weight minimum charge) and you should look around for a few other things to buy in the same order. If you’re thinking about a 5-pin MIDI mod, I suggest the Adafruit MIDI FeatherWing Kit.

First up, is the Adafruit #5093. These knobs are only available in black. They are rubber and have a very nice feel. They only fit D-shaft potentiometers (or encoders) and are not appropriate for knurled or round shafts. The rubber knobs just barely cover the panel holes, but should keep out dust.

Akai knobs (left) versus Adafruit rubber knobs (right)

The pointers are well-placed and hit the min and max positions exactly. The rubber knobs are twice as tall as the factory knobs and are easy to grab. They are just snug enough on the pot shaft and can be removed without much force. I like these knobs and recommend them. Buy ten and get a price break.

I tried a few different Yamaha knobs on the MPK Minis. Forget it. The pointers don’t align with the min and max positions. Avoid knobs where the inner opening or set screw is too high above the bottom. Such knobs will float above the darned short Akai shafts.

Next up, is the Adafruit micro pot knob family. I bought red, black, blue, white and cream. The cream knobs look especially handsome. Unfortunately, cream clashes with the White Edition. Better to go with bright white (which match the sharp keys) or best to go full contrast and a splash of color, red.

The micro pot knobs have a very small set screw. Adafruit recommend a 2mm hex wrench, but the 1.5mm hex wrench in my Craftsman set is the better fit. This set screw is freaking small! Fortunately, the set screw is down low enough to hit the flat face of the rather short D-shaft.

Akai knobs (left) versus Adafruit micro pot knobs (right)

The red knobs look great. The pointers align properly with min and max. The knobs are twice as tall as the factory knobs. The only down-side is the set screw. If you intend to open and close the MPK Mini case frequently, go with the rubber knobs. You will get tired for loosening and tightening the set screws on the micro pot knobs.

New knobs are a quick, inexpensive way to brighten up a front panel from dreary black. Tall knobs are easier to grab, too. There you have it.

Copyright © 2022 Paul J. Drongowski

MODX+: Glad that’s over!

Yamaha launched its MODX+ keyboards today. The MODX+ has a few modest improvements over the MODX (Mk1):

  • 1.75GB user waveform memory
  • Rubberized pitch and mod wheels
  • New livery (black end-cheeks)
  • 128 tone FM-X polyphony (maximum)

Seamless Sound Switching (SSS) is the same as MODX (limited to 4-part Performances). There are a few on-line videos that are incorrect. The USB audio spec has not changed either.

In case you missed it, Yamaha have a MODX+ Early Adopter Promo Rebate. Register your MODX+ and receive a free FC7 expression pedal and FC5 foot switch. The promotion ends 31 December 2022. That should take some of the sting out of the new prices: $1,499 MAP for the MODX6+ versus $1,399 for the MODX (Mk1). Look for a bundled gig bag, too.

Yamaha are promoting a downloadable Bösendorfer piano. Gotta fill up that expansion memory! Look for new additions to the Montage/MODX+ library in the future. Yamaha IdeaScale participants previewed a new CP-90 piano currently in development. Big multi-samples to drive MODX+ sales.

Anticipatory discussion was filled with wishful thinking and speculation concerning the addition of a second SWP70 tone generator chip and possibly AN-X™ virtual analog synthesis. Judging from the boost in FM-X polyphony, the MODX+ quite likely got the second SWP70.

Speculation about AN-X borders on fantasy. It is based on the premise that an SWP70 is even capable of virtual analog synthesis. Other than Yamaha, does anyone really know what is inside of an SWP70 tone generator?. I don’t.

Adding further doubt for the wet-blanket brigade, I offer the design decisions surrounding the Reface series. The Reface YC and CP are genetic sisters. Both are based on AWM2, both using the SWX08 processor with integrated AWM2 tone generation. Why then, did Yamaha deploy the SSP2 digital signal processor in the Reface CS? Surely, it would have been more cost effective to share the same logic board as Reface YC and CP. Thus, I have my doubts unless SWP70 has some hidden, yet-to-be revealed functional capabilities. Yamaha have the new SSP3 to play with, too.

Given the limitations of the Montage/MODX user interface, including relatively few front panel controls, AN-X on Montage/MODX+ is just putting a bag on the side of a fine product. [Apologies to Tracy Kidder.]

So, I don’t think Yamaha is finished with announcements. There are still CK61™ and CK88™ to account for. Marketing 101 says “Don’t muddy the waters with multiple product launches in a given lane.” Plus, Yamaha marketing is not that big and poor Blake needs to flog the MODX+ while it’s hot. Stay tuned, boys and girls.

Punters are trying to justify the small price increase in terms of component count, etc. Yamaha priced MODX+. Done. If they don’t shift boxes, Yamaha will drop the regional MAP. Currency fluctuation may have more to do with variations in price than component count. Unfortunately, the suits often win.

As to price, one more observation. MODX and MODX+ have crashed the psychological $1,000 USD barrier. Smash it. The MX series is the only sub-$1000 offering. (Reface don’t count with its mini-keys.) There is a big gap between MX and MODX. I don’t think Yamaha can raise prices on the current MX, so maybe something else is coming?

Copyright © 2022 Paul J. Drongowski

Where to put AN-X™?

Let’s not miss the forest for the trees…

Wishful thinking abounds — Let’s add an AN-X™ engine to the Yamaha Montage and/or MODX+. From the comments, you would think this is a done deal.

Well, the frenzied demand is certainly there. 🙂 With demand wafts the smell of money. How will Yamaha make money with AN-X?

Occasionally I see a forum comment that is so spot-on, it bears repeating. This comment comes from CyberGene on the Musicplayer Keyboard Corner:

The more I think about it (and knowing Yamaha of course, as well as owning and selling a MODX for being too awkward to work with) I have no high hopes for this hypothetical AN-X being integrated into anything intuitive and easy to use. 🙂 Most certainly it would need to be preprogrammed in advance rather then having a good hands on interface for real time manipulation. Yeah, you can route the knobs and faders to it as usual but still — I just think they should make a YC/CP type of instrument where they add the entire reface CS panel and engine. 😉 Why not add it to the YC73/88, so that it becomes a Nord Stage competitor. Call it a YCS73/88, bingo!

Amen. Could you imagine programming or controlling an AN-X engine within the context of the current Montage (MODX) user interface (UI)? Kill me now.

If Yamaha learned one thing from the YC and CP stage instruments, it’s “stage instruments with a focused user interface and engine (drawbar organ, piano, whatever) are desirable and sell.” [Ka-ching.]

Yamaha marketing folks are players as well as business people. The right way to do analog is to put the engine in a box that it is studded with knobs, buttons and analog controllers. Analog synthesis is meant to be interactive. Yamaha marketing surely knows this and the Reface CS — on a small scale –is proof.

So, AN-X on Montage and MODX+? How would that fit within a menu-based UI which many people find too complicated? In the case of MODX+, would you be happy with four sliders, four knobs and a Superknob for control? Would you enjoy menu-diving? [Sound of shrieking noises here.]

So, thanks, CyberGene for your insight. If Yamaha want to do AN-X right, they need to do it in a focused stage instrument. And make money.

Update: Yamaha have filed for a stylized (figurative) trademark in the European Union. See image below.

Yamaha trademark ANX (European Union, filing: 018741845)

Copyright © 2022 Paul J. Drongowski

Akai MPK Mini Play: GM/GS MIDI mod

In order to make your Aka MPK Mini Play (Mk1) into a GM/GS module, you must modify its hardware. As it is with all mods, modifications void the warranty, could damage the keyboard, and may affect resale value. The risk is yours alone.

That said, I’ve now thoroughly tested my Akai MPK Mini Play (Mk1) MIDI mod. Not only is a General MIDI module hiding inside, it does Roland GS, too!

Recapping, the MPK Mini Play main printed circuit board has a group of test pads for the internal synthesizer. The test pads are bigger than surface mount (SMT) traces, which makes soldering much easier. I tapped four signals and brought them out from the board on a ribbon cable:

  • SAM2635_RX: MIDI IN (white wire)
  • SAM2635_TX: MIDI OUT (black wire)
  • D Ground: Ground for external power (grey wire)
  • D +3.3V: +3.3V for external power (purple wire)

“SAM2635” refers to the Dream S.A.S. SAM2635 synthesizer chip — the MPK Mini Play’s tone generator.

Akai MPK Mini Play (Mk1) test pads (before and after)

I did a reasonably thorough analysis of the internal MIDI messages and the Mini Play’s MIDI over USB implementation. The Akai software is much too limiting and I became determined to unleash the Kraken within (the SAM2635).

Akai MPK Mini Play (Mk1) connected to UBLD.IT MIDI breakout board

I connected the other end of the ribbon cable to a UBLD.IT MIDI breakout board. The UBLD.IT board provides Akai MPK Mini Play 5-pin MIDI IN and MIDI OUT ports to the Dream SAM2635. I recommend turning INTERNAL SOUNDS off so controller messages do not interfere (collide) with incoming 5-pin MIDI messages. Don’t expect signals/messages to merge.

What else do you need to start using the SAM2635 as a MIDI module? Documentation! The Dream S.A.S. web site has:

You can skip the datasheet, but you will definitely need the firmware and sound bank guides.

The firmware guide describes the GM/GS implementation including, of course, the supported MIDI messages. You’ll find a few interesting and useful enhancements beyond General MIDI and Roland GS:

  • Several selectable reverb and chorus effect types.
  • 1-, 2- or 4-band equalization.
  • A spatial effect.

Near as I can tell, the microphone and CODEC are not connected in the MPK Mini Play electronics. Maybe you’ll discover a hack of your own…

The sound bank guide describes the available voices and drum kits:

  • 128 General MIDI instruments.
  • Nine drum sets and one sound effects (SFX) set.
  • 225 variation instruments.

The variation instruments are a true bonus. You get additional electric pianos, organs, guitars, synth basses and orchestral instruments. The variations are a little light on synth leads and pads, but I think you are expected to roll-your-own by programming amplitude and filter characteristics via MIDI CC messages. The GS implementation offers many options that way.

How does it sound? Here is an MP3 of my standard GM test: Traffic’s Feelin’ Alright. Compare with the Yamaha PSS-A50 rendition. There is a decent piano solo during the last 30 seconds or so, if you want to skip ahead.

I pulled together links to all of my previous articles about the Akai MPK Mini Play (Mk1):

All in all, this has been a successful hack!

Copyright © 2022 Paul J. Drongowski

Yamaha MODX+ madness

Thanks to a few pages posted from the Yamaha MODX+ user manual, the new MODX+ is a bit of a nothing-burger — a product spiff. The MODX+ got a few bumps over MODX (Mark 1): more expansion memory (1.75GB), FM-X polyphony on-par with Montage (128), and a way to add rhythm patterns:

Also, the MODX+ has a new feature for instantly adding rhythm patterns so that the players can take their music creation forward with dynamic rhythm parts. With this feature, creating rhythmic changes in the “Motion Controls” is easier than ever! [Yamaha]

Just enough to keep MODX+ competitive in its price bracket. The bump in FM-X polyphony indicates the likely addition of a second SWP70 tone generator IC.

I suspect Yamaha will use new downloadable libraries to drive a few pack-rat punters to upgrade to MODX+. Recently, IdeaScale participants had a chance to preview a new CP-80 voice (and waveforms). Yamaha were soliciting opinions as to which voices/waveforms had the most sonic appeal. A flood of must-have content might create demand among current MODX (Mark 1) players, making that 1.75GB a necessity.

The forums are filled with speculation about AN-X™. Again, a lot of wishful thinking about AN-X coming to Montage and/or MODX+. Only Yamaha know for sure.

As yet, however, no one has solved the mystery of the other registered trademarks: CK61™ and CK88™.

Yamaha have moved on from the SSP2 signal processing chip to the SSP3. The SSP3 first appeared in the Yamaha AXR4U and Steinberg UR44C audio interfaces. Yamaha move ahead like a shark and the SSP2 is deprecated for new designs. In fact, the MODX+ refresh likely includes the SSP3 as SSP2 production inventories must be low or exhausted.

That turns my attention to the Reface DX and Reface CS. The Reface DX and CS are sisters, sharing the same internal design modulo screen interface and front panel gizmos. Both are based on SSP2 and, thus, both may be in need of a refresh — or replacement. The SSP2 signal processor provides the FM and VA synthesis horsepower.

Simply put, will CK61 and CK88 replace the Reface DX and CS? Will the CK61 and CK88 be the AN-X machine? How will Yamaha monetize AN-X? When it comes to business, Yamaha are not fools. Never sell one model when two will do as well! Ka-ching. 🙂

On a personal note, I started this site to inform players about music technology and what’s inside the tin. It’s gratifying to read the forums and see how much this site has influenced discussion, especially discussion about Yamaha products. Thank you for reading and please keep coming back! — pj

A few handy links:

Copyright © 2022 Paul J. Drongowski

Is MODX+ on the way?

[Updated 18 August 2022.] Rumors are circulating about Yamaha MODX — either replacement or refresh.

Now pictures of a misdelivered “MODX8+” have appeared. Naturally, one asks “fake or real?” Cosmetically, the only external differences are:

  • A different product model legend on the right side of the top panel, e.g., “MODX8+ Music Synthesizer”.
  • Black plastic end-cheeks instead of grey.

The MODX8+ was shipped mistakenly to a customer. Support anticipates release in the Sepember or October timeframe.

MODX8+ real or fake?

The new livery reminds me of the Yamaha MX series V2 spiff. It was somewhat difficult for a customer to identify an MX V1 vs. an MX V2. The new MODX+ legend makes the mark 2 clearly distinguishable. No word about enhanced features or sound set. One must also ask if the Montage will get a spiff, too?

I’m going out on a limb — real.

Update: MODX+ discussion is rampant in the forums. Here are a few quick comments, corrections and a request.

SWP70 is an integrated circuit designed by Yamaha. It is manufactured by a partner fab. Yamaha is fab-less. Yamaha transferred its semiconductor manufacturing subsidiary to Phenitec Semiconductor in 2014. It takes a lot of money to build and maintain semiconductor fabrication factories — a money losing proposition for Yamaha (or my old employer, AMD, for that matter). Yamaha remains a manufacturing powerhouse at the board level and sells its own line of PCB assembly equipment.

SWP70 processors are manufactured in batches based on Yamaha’s estimated need. Depending upon the portability of the SWP70 design, Yamaha may turn to multiple alternative partners for fab. “Portability”, in this sense, means how easily the design can be re-targeted for a specific fabrication process.

Generally, Yamaha has done a good job exploiting commodity components. The SWP70 uses ONFI-compatible NAND flash and RAM. The MODX and Montage host processors are high-volume, embedded ARM microcomputers. Although Yamaha has preferred suppliers for NAND flash and RAM (e.g., Cypress/Spansion, Winbond), these are commodity parts and are available from many suppliers. Commodity components are probably not a pressure point.

As I’ve said before, Yamaha have just a few critical external supply vulnerabilities. Aside from fab capacity, SWP70s or other Yamaha proprietary processors are likely not the issue here. When it comes to DACs and ADCs, however, Yamaha is very reliant on Asahi Kasei Microdevices (AKM). AKM is still trying to recover from its factory fire. The AKM supply shortage has put Yamaha and many other vendors on the back foot.

Yamaha have the right to substitute components. Every manual has the following disclaimer:

Specifications and descriptions in this owner’s manual are for information purposes only. Yamaha Corp. reserves the right to change or modify products or specifications at any time without prior notice. Since specifications, equipment or options may not be the same in every locale, please check with your Yamaha dealer. Visit the web page for information on the latest Owner’s manual.

Of course, this could mean substituting for AKM devices. DACs and ADCs communicate via the I2S digital audio interface format. If Yamaha did substitute — speculation — would we hear an audible change?

Much speculation surrounds the second, unpopulated SWP70 position (TG slave) on the original MODX printed circuit board. The TG slave has an associated open position for DSP RAM only. Thus, if Yamaha choose to use the same board and to populate the open positions, these changes would bring MODX+ up to the same polyphony spec and tone generation horsepower as the current Montage. Montage would still have the advantage in digital audio routing and processing (including audio channels over USB). The original MODX board does not have provisions for upgraded audio channels.

A product spin is needed when a Yamaha proprietary component is obsoleted and out of inventory. Such may be the case with the venerable SSP2 — a workhorse in many Yamaha products including mixers, Reface CS and Reface DX. Yamaha and Steinberg have moved on to the SSP3.

Finally, a request. Please do not publicly reveal your source of leaks. Yamaha are incredibly paranoid, exceeded only by Apple and Sony in this regard. First, leaks get real people in trouble. Second, Yamaha learn from their mistakes. Protect your sources and methods!

Copyright © 2022 Paul J. Drongowski

Akai MPK Mini Play mod: MIDI IN success

I performed a few more quick experiments over the weekend and I’m happy to report further success!

Although the Akai MPK Mini Play has an internal Dream S.A.S. SAM2635 synthezier chip, the Akai microcontroller software blocks full access — a true shame because the SAM2635 firmware is a complete General MIDI/GS implementation.

I modified an Akai MPK Mini Play bringing out four signals from the main printed circuit board (PCB):

  • MIDI IN white wire: SAM2635_RX MIDI input
  • MIDI OUT black wire: SAM2635_TX MIDI output
  • Ground grey wire: Ground for external power
  • +3.3V purple wire: +3.3V for external power

My goal is to override the Arm microcontroller and drive the SAM2635 over 5-pin MIDI, completely bypassing the Akai software. If successful, we should be able to use the fully functionality afforded by the SAM2635.

Test 1: UBLD.IT MIDI breakout board

A full test of the UBLD.IT MIDI breakout board is in order before testing the MPK Mini Play. If the UBLD.IT isn’t working, any test with the Mini Play will fail, too.

UBLD.IT MIDI breakout board schematic (CC)

The UBLD.IT board is a really nice, small MIDI IN and MIDI OUT breakout board. The MIDI OUT side is dirt simple and sends the transmit signal (pin 1 of J2) to the 5-pin DIN connector through a current limiting resistor (R4). Please recall that MIDI is an active LOW current loop. The return pin — the other side of the current loop — is connected to VCC (the positive voltage rail) through a current limiting resistor (R1).

The MIDI IN side provides the opto-isolated MIDI logic signal to the receiving electronics. DIN pins 4 and 5 send the incoming current through the LED in the opto-isolator (U1). The opto-isolator is a 6N138. The LED shines on a photo-transistor. The photo-transistor is essentially a light-controlled pull-down path from the positive voltage rail to ground. Thus, the MIDI logic signal is HIGH when idling and is active LOW. The incoming logic signal is sent off the board through the receive pin (pin 2 of J2).

The test set-up is simple. Jumper the transmit and receive pins (J2). Connect +3.3V and Ground using the Mini Play as a power source. Connect UBLD.IT MIDI IN to the MIDI OUT of any handy keyboard like a Yamaha MODX. Connect UBLD.IT MIDI OUT to the MIDI IN of a second keyboard like a Yamaha Genos. Turn on the Mini Play to apply power to the interface. Play the sending keyboard (MODX) and listen for sounds produced by the receiving keyboard (Genos).

It was gratifying to hear the Genos while playing MODX, i.e., the UBLD.IT is working correctly.

Test 2: Play using an external keyboard

The next test is to drive the Akai MPK Mini Play itself.

Here’s the test set-up. Leave the MODX connected to UBLD.IT MIDI IN. Disconnect UBLD.IT MIDI OUT since we don’t need it. Connect the UBLD.IT pins (J2) to the corresponding Mini Play signals. Receive is SAM2695_RX (white wire) and transmit is SAM2695_TX (black wire). Leave ground and +3.3V connected (grey and purple wires, respectively).

UBLD.IT MIDI board connected to Akai MPK Mini Play

Turn on the Akai MPK Mini Play. Play the MODX. You should hear sounds produced by the SAM2635. Yay! 🙂 Try the MODX MOD and pitch bend wheels.

I believe this design works electronically because MIDI is active LOW and idles in the HIGH state. The pull-down transistor in the opto-isolator pulls the SAM2635_RX node LOW. Normally, you cannot tie two logic outputs together, but the pull-down works in this situation. (Think “wire OR”.) By the way, you shouldn’t play the Mini Play keys or turn its knobs as MIDI signals from the Arm microcontroller will interfere with the MIDI IN logic signal! I recommend turning INTERNAL SOUNDS off when using the 5-pin MIDI IN.

The next step is to try the Dream SAM2635 as a GM/GS synthesizer. Stay tuned.

Copyright © 2022 Paul J. Drongowski

Akai MPK Mini Play: MIDI over USB implementation

I performed experiments to discover how the Akai MPK Mini Play behaves when controlled through its USB port. I wanted to build on what I had already learned about the MPK Mini Play’s MIDI implementation.

As mentioned in earlier posts, the Mini Play’s host Arm microcontroller communicates with a Dream S.A.S. SAM2635 synthesizer chip:

            Arm       TX  ----> MIDI IN (RX)     Dream 
Microcontroller SAM2635
USART RX <---- MIDI OUT (TX) Synthesizer

The Arm sends MIDI messages to the SAM2635 when INTERNAL SOUNDS are turned on, i.e., when the INTERNAL SOUNDS button is lit. When INTERNAL SOUNDS are turned off, the Arm software sends MIDI messages over USB exclusively. Oddly, the Arm sends some MIDI messages over USB when INTERNAL SOUNDS are on — and not always on the expected MIDI channel! Very quirky or buggy, depending upon your point of view.

People who want a 16-channel multi-timbral MIDI module are going to be disappointed. When driving the MPK Mini Play through USB, you really have only two channels: MIDI channel 1 for regular, melody voices and MIDI channel 10 for drums. If you stick to these two channels, you’ll stay out of trouble.

If you venture off the path, however, you’ll be in the deep weeds. The Mini Play responds to NOTE ON and NOTE OFF messages on “keyboard” channels 2-9 and 11-16, playing the default Grand Piano sound. Such joy is misleading, however. Send a program change on channels 2-9 and 11-16, and the program change is redirected to channel 1! Do not send program change to any other channels than 1 and 10 if you value your sanity!

I think someone at Akai envisioned the MPK Mini Play as a two channel MIDI controller with optional synthesis on two channels. Unfortunately, the actual implementation is inconsistent with this model as far as synthesis is concerned. Worse, Akai doesn’t provide any documentation about the MIDI implementation letting punters poke around in the buggy weeds.

All of this is truly a shame knowing that the Dream SAM2635 is a full 16-channel GM/GS synthesizer. What a waste of silicon (AKA “sand”) by Akai!

Here are some additional details about the MIDI implementation such that it is.

The Arm software filters out all System Exclusive (SysEx) messages other than its own. Stated another way, if you send SAM2635 SysEx, it will never be delivered. So, you cannot send GM or GS reset, tweak reverb and chorus parameters, and so forth because these are all done via SAM2635 SysEx.

The Arm software does pass all MIDI Continuous Controller (CC) messages to the SAM2635. RPN and NRPN commands also get through because these kind of commands are formed using CC messages. Here are the MIDI CC messages which appear to work:

    CC#0    Bank Select (MSB) 
CC#1 Modulation wheel
CC#6 Data Entry
CC#7 Volume (channel volume)
CC#10 Pan
CC#11 Expression
CC#74 TVF cutoff frequency
CC#91 Reverb send level
CC#71 TVF resonance
CC#93 Chorus send level
CC#73 Envelope attack time
CC#72 Envelope release time
CC#80 Reverb program
CC#81 Chorus program
CC#91 Reverb send level
CC#93 Chorus send level
CC#98 NRPN LSB
CC#99 NRPN MSB
CC#100 RPN LSB
CC#101 RPN MSB

The SAM2635 supports several other MIDI CC message types. Please consult the Dream SAM2635 firmware manual for a complete list.

Pitch bend and Program Change also get through. However, Program Change is always redirected to channel 1.

You can form RPN and NRPN commands via MIDI CC messages. For example, the Arm software controls EQ Low and EQ High using NRPN:

    B0 63 37 B0 62 00 B0 06 48      Equalizer low band 
B0 63 37 B0 62 03 B0 06 40 Equalizer high band

In fact, Dream have a whole raft of NRPN commands with MSB 0x37. Consult the Dream SAM2635 firmware manual. Dream call these commands “Special MIDI Controls”.

CC#80 Reverb program and CC#81 Chorus program are the two bright spots in a relatively bleak picture. You can change the reverb type with CC#80:

    00: Room1        01: Room2 
02: Room3 03: Hall1
04: Hall2 05: Plate
06: Delay 07: Pan delay

CC#81 changes the chorus type:

    00: Chorus1      02: Chorus2 
02: Chorus3 03: Chorus4
04: Feedback 05: Flanger
06: Short delay 07: Feedback delay

Since the Arm software blocks all non-Akai SysEx, you cannot tweak the reverb and chorus parameters.

Copyright © 2022 Paul J. Drongowski

Akai MPK Mini Play MIDI mod (2)

I’m happy to report progress with breaking out the internal MIDI traffic within the Akai MPK Mini Play (first generation). Before reading ahead, I recommend reading my previous posts about Akai MPK Mini Play internals:

The second post, in particular, shows how I brought the internal MIDI signals out from the main printed circuit board.

For the moment, I am focused on the communication between the Arm microcontroller and the Dream S.A.S. SAM2635 synthesis chip:

            Arm       TX  ----> MIDI IN (RX)     Dream 
Microcontroller SAM2635
USART RX <---- MIDI OUT (TX) Synthesizer

The Arm microcontroller sends MIDI messages to the SAM2635. For this round of analysis, Mini Play INTERNAL SOUNDS are turned ON. A future post will address the case when INTERNAL SOUNDS are turned OFF.

When INTERNAL SOUNDS are enabled, the key strikes, pad hits, knob turns and joystick movements cause the Arm software to transmit MIDI messages to the SAM2635. These MIDI messages are encoded for and are meaningful to the SAM2635. They are not the same as the messages sent through the USB port, i.e., the user-defined MIDI CCs, etc. (USB messages are sent when INTERNAL SOUNDS are OFF.)

Persistence leads to discovery

At the end of my second post, I noted my failure to monitor the message traffic from the Arm to the SAM2635. I performed additional experiments which eventually paid off.

First, I observed the signal from Arm TX to the SAM2635 MIDI IN (RX) pin using a Gabotronics Xminilab USB oscilloscope and logic analyzer. I tried the Gabotronics protocol sniffer. Unfortunately, the Gabotronics protocol sniffer does not support the standard MIDI baud rate, 31,250 baud. The SAM2635 can communicate MIDI at 31,250, 34,800 and 200,000 baud. The 200,000 baud rate is reserved for USB debug, so it’s use is unlikely in this case. The protocol sniffer displayed HEX gibberish at 34,800.

I switched the Gabotronics to logic analyzer mode and observed the serial data signal. Yes, I found data and the data are repeatable, i.e., hit a C on the keyboard and you get the same bit sequence every time.

I estimated 8 serial bits per oscilloscope time division (256 usec). Do the math and the data rate is 31,250. The MIDI is there; I just need to sense it properly.

I connected the MIDI signal to the MIDI OUT side of the UBLD.IT MIDI breakout board. I sent MIDI from the UBLD.IT to the Genos MIDI IN port. Success! The Akai Mini Play can play notes and change patches on the Genos.

Instead of monitoring the MIDI message stream via MIDI-OX on a Windows PC, I used the LOG display in the MIDI Designer app on iPad. The MIDI interface in this case is an old IK Multimedia iRig MIDI. Success, again! Now I can see the MIDI messages and, indeed, they are targeted for SAM2635.

I can only surmise that my Roland (Edirol) UM-2EX MIDI interface cannot detect the signal transmitted by the UBLD.IT. I couldn’t get a Sparkfun breakout board to work with the UM-2EX either. If I want to use MIDI-OX on PC for monitoring, I’ll need to try another USB MIDI interface (perhaps my old EMU).

SAM2635 message summary

Well, franky, that’s all good news. Here is a short summary of the MIDI messages that I observed. The Akai Mini Play sends a flurry of messages to the SAM2635 when power is first turned on.

Program change also causes a flurry of messages to be sent. Here is an example program change:

B0 01 00                        CC#1 Modulation wheel 
E0 00 40 Pitch bend (center)
F0 7F 7F 04 01 00 7F F7 GM Master volume
B0 0B 7F CC#11 Expression
B0 4A 66 CC#74 TVF cutoff frequency
B0 5B 0E CC#91 Reverb send level
B0 47 00 CC#71 TVF resonance
B0 5D 00 CC#93 Chorus send level
B0 49 00 CC#73 Envelope attack time
B0 48 38 CC#72 Envelope release time
B0 63 37 B0 62 00 B0 06 48 Equalizer low band
B0 63 37 B0 62 00 B0 06 48 Equalizer low band
B0 63 37 B0 62 03 B0 06 40 Equalizer high band

Some set-up messages are duplicated. I’ve seen this kind of behavior in other synths and sequencers.

Key hits, knob turns, and pad hits produce the following MIDI messages:

Gesture    Example message             SAM2635 Function 
--------- -------------------------- ---------------------------
Key hit: 90 3C 7F Note on, channel 1
80 3C 00 Note off, channel 1
Filter: B0 4A 43 CC#74 TVF cutoff frequency
Resonance: B0 47 00 CC#71 TVF resonance
Reverb: B0 5B 23 CC#91 Reverb send level
Chorus: B0 5D 00 CC#93 Chorus send level
Attack: B0 49 00 CC#73 Envelope attack time
Release: B0 48 38 CC#72 Envelope release time
EQ Low: B0 63 37 B0 62 00 B0 06 47 Equalizer low band
EQ High: B0 63 37 B0 62 03 B0 06 40 Equalizer high band
Pad hit: 99 2E 6C Note on, channel 10
89 2E 00 Note off, channel 10
Volume: F0 7F 7F 04 01 00 7E F7 GM Master volume

No surprises other than volume. I didn’t expect the front panel volume knob to send a GM Master volume message. Volume must be regulated digitally in the synth as opposed to an analog audio pot.

Copyright © 2022 Paul J. Drongowski