Matrix-1000 sensation: Rare bug spotted in the wild after 30-odd years!

An option for setting voice allocation in the Matrix simply does not work – never has – and nobody seems to have noticed up to now. But there’s a fix for that.

A cute golden bug akin to a cricket looking above the edge of a circuit board

“Hey, I want that update! Especially as I already own V1.20!” — PLEASE READ HERE

A couple of days ago, Bob Grieb – the engineer behind the Matrix-1000 update I am selling here – got a email from a Matrix owner using the updated V1.20. The mail politely noted that the “Reassign/Rob” setting wasn’t working, and inquired whether there might be a problem with the V1.20 firmware. Bob, who does no longer own a Matrix-1000, fired up a Verilog simulation he had created for testing, and found that the Matrix owner indeed was right – the “Reassign/Rob” setting of Parameter 48 (0x030h) wasn’t working, and it wasn’t working in firmware V1.13 either – a very early patch of the last factory firmware by Oberheim itself.

So it was a bug that had always been there, and nobody seems to have noticed. Or, at least, have cared enough to look for a fix.

What “Reassign/Rob” is supposed to do – and why you never noticed

The Matrix-1000 has six voices. When your Matrix is playing six notes at once, it won’t accept any new notes unless you release one of the notes being played. This is the default setting, and it comes in two flavours, “Rotate”, and “Reassign”. They are set with values 0 and 1 of parameter 48, and the Matrix-1000 manual also has two more settings, Unison (all voices playing at once), and “Reassign/Rob”.

The Matrix-1000 manual is a bit cryptic about the meaning of all this; quoting from the Matrix-6 manual instead:

  • ROTATE: When playing notes on the Keyboard, this polyphonic mode loops through the six Voices assigning each new note to next available voice.
  • REASGN: Abbreviation for “Reassign”, this polyphonic mode is similar to ROTATE but notes that have the same pitch (otherwise known as “note value”) are reassigned to the same voice. For example, if you play Middle C it will be assigned to a certain voice. Every time thereafter when Middle C is played on the Keyboard, that voice will play. “Reassign”, by the way, is the KEYBOARD MODE enabled in the Basic Patch.
  • UNISON: This mode takes the MATRIX-6 out of polyphonic mode and makes the synthesizer monophonic.
    (…)
  • REAROB “Reassign Rob”: When in Reassign (REASGN) mode, voices will be robbed from keys held in the same way as ROTROB.

So what the “Reassign/Rob” value actually is supposed to do, is to enable voice stealing — notes being played suddenly go missing, making it painfully obvious that your synth is running out of resources. It is infuriating when we notice, and we seem to notice the limitations of a 6-voice synth a lot more when notes suddenly vanish than when they never appear in the first place.

So to be honest, I never noticed that this doesn’t work. Did you?

Bob, however, found the reason: The code for the note-stealing setting is 3, but there is a safety check that limits the parameter to entries from 0-2 instead of 0-3, so that the correct value can never be received. It’s only one byte that has to be changed – no, one bit, actually: Look for 0x81 0x02 0x22 0x02 in the ROM and change it to 0x81 0x03 0x22 0x02; changing one lousy bit. It’s that simple. And this is what we decided to call V1.21.

A rack with a controller, a Matrix-1000 synthesizer, and a Lexicon digital reverb; the Matrix showing

V1.21 is displayed on powering up

So how do I get it?

Unfortunately, this means that we will have to throw all V1.20s away, we cannot correct them. The one bit we have to change cannot be reprogrammed, so to upgrade from V1.20 to V1.21, you have to create a new chip, send it, and swap it.

And this is the main reason we don’t give the update away – this needs chips, and this takes work, so we charge you what is basically just the price of the chip and a fiver for programming it, and one Euro for Bob. We had a similar deal for Matrix-6 V2.14 owners when Bob discovered another bug that had always been hiding in the Matrix-6 firmware — and I hope you think that this is fair, because it is: after all, the bug wasn’t Bob’s fault, so he is in no obligation to fix it for free.

One last thought: ask yourself whether voice stealing is really worth the hassle. I know perfectly well that it’s quite possible to go GASsing for a software update, but: If you haven’t noticed the bug before, you probably won’t need the patch.

M1000 V1.20->V1.21 Update

Matrix-1000 V1.21 Firmware Update ROM for V1.20 owners

Item number: 0002
Item price: 12,00 EUR
(incl. 19,00% sales tax and plus Shipping cost)
ROM chip with re-engineered firmware for the Oberheim Matrix-1000 synthesizer

Firmware chip for the Oberheim Matrix-1000, V1.21 (Update for V1.20 owners)

V1.21 fixes a bug that prevented using voice stealing in all former firmware versions and assumes that you own a V1.20 license, i.e. bought the chip from me, Alpes Machines, or Bob Grieb. Price covers the chip and the burning of the firmware but not the license for the update - if you don't have an updated synth yet, you will have to buy a V1.21 new. Firmware update engineered by Bob Grieb/tauntek.com. Sold with permission, please prove ownership of a V1.20 license. (That doesn't cover anything you bought from some guy on the internet, I'm afraid.)
   

OMG OMG I actually played that thing!

Looking at the analytics, I have noted that my reminiscence to/analysis of the Keytek CTS-2000 synth has been found by a number of people that surprises me, given that it is an article about a truly horrible, obscure late-80s hybrid synth in a rather niche blog. Given that, I would like to share some proof that I actually played that thing, and on stage, too. And though it is hard to date the old photographs, I would estimate that I held onto it for quite some time.

So I guess at least the CTS-2000’s keyboard was really decent.

5-piece band: female bass player, percussion player, guitarist, keyboardist with guitar.

The band, by the way, was named “Voice of the Alien”. You won’t find anything Googling it.

I added another photo to the original article.

The Noisy One

I’ve won a Dreadbox Typhon in a sweepstake, and it’s bloody brilliant. Like, really, really brilliant! A fun machine with a monster sound and a great concept for real-time sound manipulation and editing. If there wasn’t that nasty problem with digital noise.

Dreadbox Typhon powered from USB hub; preset A1

Just listen to it! It’s wonderful – but you will have noticed the nasty sound on switching it on, and the permanent high-frequency noise. (Oddly enough, it’s no longer in the recording as soon as the sequencer starts, but believe me – it’s there, all of the time.)

Digital noise, for sure.

Continue reading

Stereoping Hardware Controller for Crumar Bit

Stephan (aka umusic6) did some nice work:

Thanks to his efforts, there is now a Bit Edition of Stereoping’s Synth Controller, for Crumar Bit-01/One/99 with the Tauntek firmware. You can read up on the firmware, or order it, here.

(No, this is not an affiliate link, I have no share in this. But I think it’s a great project.)

Jenny getting her very own phaser…

…and my sweet Lord, does it make her shine!

Nothing fancy here. After inserting the booster/overdrive in between VCO and filter section, I took another of those lovely Musikding.de kits for a phaser, built it, drilled some holes into Jenny’s housing and fitted it.

I have been using Jenny as a bass synth recently, and I am quite impressed by the quantities of life and fun this old machine is adding to the mix. She doesn’t do that much in terms of tonal range, but what she does, she does well.

Drilling holes in Jenny’s front

I rediscovered an old trick when drilling metal: use a bit of alcohol, not on the person drilling, but on the surface you want to drill. And don’t go too fast.

A Pre-Filter Booster Stage for Jenny

Giving my JEN SX-1000 a bit of additional low growl by adding a pre-filter overdrive.

A nice little addition: Insert a booster circuit kit where the coupling capacitor between oscillator and the filter used to be. Come on, you’ll have to take out that damn capacitor anyway. And it sounds really nice, punching through the mix (samples below) – especially in combination with the sub-oscillator mod.

I do admit that you might think that this is a superfluous mod. After all, when you drive this circuit – any circuit – into overdrive and into clipping, the resulting wave form will, gradually, start to resemble a square wave.

But I could do it, so I did it. And I like it. So let’s get started.

Continue reading