Monday, November 9, 2009

Matrix 1000 Hardware Controller

So, if you read my description about my Oberheim Matrix-1000 you partly know why I am doing this. Well, it's not only because of the editing possibilities...

Being interested in electronics I always wanted to build something but I have always felt that a project is either too big, too complicated or even that someone else has already done it. So, although this will be big I believe I am capable of constructing the necessary hardware, programming it and making it work and I can afford to buy the things needed (although I admit it will probably be a bit expensive..)
The thing that worries me the most is my usual enemy, waning motivation :)
Let's just hope I don't run out of that.

My preliminary design features are:
  • Every parameter directly available (no "alternate" functions), even matrix modulation parameters
  • Every potentiometer should have a 10-segment LED array associated with it to show the current value, or the value of the patch if the value hasn't changed.
  • Nice "digitaster" style buttons with LED indication
  • Divided into "modules" as on conventional panels, like DCO1 parameters grouped together, ENV2 parameters grouped together etc...
  • LCD displays for the matrix modulations to show actual words of the source and destination routings (maybe overkill as it will require 10 displays)
  • LCD displays for the LFO sample sources and possibly waveforms (most likely overkill)
  • 16-step sequencer. Simple, but enough to test out a patch without an external sequencer running.
  • MIDI merger, needed to keep SysEx data, 16-step sequencer data and external MIDI messages from colliding.
  • Large LCD display for general information, showing LFO waveforms, all parameters in one module and things like that.
  • Controlled by a microcontroller, for example an NXP LPC-type for which I have bought a development board (LPC-2103) and started experimenting with. Possibly need another controller instead with more memory as I suspect I will run out.
The modules are planned to be divided as follows:
  • DCO1
  • DCO2
  • VCA+Keyboard+Legato
  • VCF
  • LFO1
  • LFO2
  • Envelope 1
  • Envelope 2
  • Envelope 3
  • Tracking and ramp generators
  • Modulation Matrix
  • Sequencer

And, just to make things clear:
I know there are software editors that do the job already. I don't like to edit with the mouse. I learn by doing this project and it's fun!
I know about the Access Matrix programmer but it's not "complete" and I didn't build it myself :)
I know there are things like the Behringer BCR-2000 but again, I didn't build it myself and I don't learn anything by buying it. Also, being a generic controller, the controls for each block in the synthesizer aren't grouped together.
I know you think a dedicated Matrix 1000 controller with all parameters available would be awesome so don't try to fool yourself, or me :)

Now I hope you can wish me luck (without being sarcastic) instead of trying to convince me I shouldn't do it ;)

In fact, I have already done some initial tests and evaluations. These can be seen on youtube.

The first one is a test of whether I manage to send MIDI data and make an interrupt driven 16-step sequencer. Hardcoded, but still:


I have also built a prototype board for controlling the parameters for DCO1.
So far I didn't connect the DCO1 module board to the microcontroller because I need the motherboard prototype built first.
Here is a video of the DCO1 module board prototype and some "manual testing" of it:


As noted in the video I need to test the analog multiplexer by connecting potentiometers to it and I also need to test the button input functionality. Once that is verified I have to make the motherboard to act as a kind of addressing controller for all the module boards.

So, this is an introduction to my project and shows what I've done so far. More will hopefully follow soon...

4 comments:

  1. http://midibox.org/forums/index.php?/topic/13313-chaos-matrix/

    ReplyDelete
  2. This comment has been removed by the author.

    ReplyDelete
  3. This is a f****** rad project. I have quite a lot of the same synths as you and it's a thrill to be educated on their different quirks during my nightwatch :-)
    I will follow this project at close hand since programming the matrix 6 and matrix 1000 is tedious even with M1000, midiquest etc.
    I'm looking in to buying the bcr-2000, but please develop a better solution :-)

    ReplyDelete
  4. It should be noted that I have not done anything on this for over a year now. I have realized the cost for the things I planned to include will be very steep, such as an LED-bar for every potentiometer, which needs drivers and decoders etc... I have to reconsider my design.
    In the meantime you could check out
    http://www.midibox.org/dokuwiki/doku.php?id=chaos_matrix
    There's a guy who made a hardware editor using the MIDI Box stuff.

    ReplyDelete