[sdiy] CC-Modular

jbv jbv.silences at club-internet.fr
Mon Sep 9 22:28:01 CEST 2002


Hi list,

Don't know if it's been already discussed on the opensynth
list or any other "silent" list (just teasing you Paul), but I'd
like to discuss another approach for this CC modular...
I guess we all think hardware first, and then add a few
software components when needed... My approach would
be, in some way, the opposite...

Let's say the analog stuff is on a PCI board. It features
analog MIX OUTs, and eventually 1 analog IN (for sound
processing) and MIDI i/o.

Suggestion #1 : ONLY your patch app talks to the board.
Your patch app needs to be like any other MIDI app in your
MIDI setup, and your sequencer needs to talk to the patch app
through "virtual" MIDI ports.
Patches are saved/recalled by that app, and the sequencer only
triggers patch changes with simple MIDI commands, like
program changes for instance.
As someone suggested, the patch app can also edit & download
other kinds of data to the board (WT to the VCO, etc).

Suggestion #2 : don't use analog switch matrix chips.
Instead, use a uC running a double dynamic LUT.
Here's what I mean : all ouputs of analog modules on
the PCI board are hooked to some 32 channel multiplexed
ADC and stored in fixed order in a LUT.
Simultaneously, patch data are passed by the patch app to
the uC in the form of a corresponding list of input destinations :
         LUT1             LUT2
    OUT1 data            IN1
    OUT2 data            IN4
    OUT3 data            IN2
    etc                         etc

The uC will then take care of sending the right data to the right
input, in some form of indirect addressing, through a 32 channel
multiplexed DAC with S&H. The Maxim MAX5631 looks like a
good candidate.
The benefit of this approach is a hardware complexity reduced by
several orders of magnitude. Furthermore, I'm sure all these data
transfers can be ran in realtime at 48 KHz. Another uC on the board
can also take care of EGs and LFOs with phase accumulator algos
at 48 KHz also. Some uCs (Scenix) are fast enough to handle this.

Of course, it needs some more brainstorming. But I have the feeling
this is a promising approach.

JB






More information about the Synth-diy mailing list