MIDI Device
Modular MIDI patchbay, merger, filter, and MIDI-to-Sync24 / CV converter
Instead of intro:
This project was designed
to take care of all MIDI connections in Spider RooM Studio. Main goal of
this project was to create a MIDI distribution system which would eliminate
all the daisy chaining of MIDI lines in studio and do some other useful
tasks (MIDI->Sync24 etc.). Since it is quite complex there probably isn't
any DIYer dedicated (read: insane) enough to actually build this. Some
solutions used aren't the best e.g. there isn't any true merging of MIDI
outputs, just logic operations, since good (reliable) merging algorithm
is quite time and memory demanding, and I've been running low on system
resources even without that (you might notice that all microcontrollers
are already overclocked; they are still running reliably though). Still,
it can be useful for small to mid-sized studios with several sequencers/master
keyboards, and up to around 30 other MIDI devices.
My prototype works flawlessly these days, but some circuits might still change!!!
Prototype pictures: rack unit , rack unit closeup and control unit (on my MPC2000)
April 2000: New circuit and firmware versions
for some modules... also Sync24 module added!
Project description:
Basically it is a modular 2HE rackmount system with various remote units:
- Power supply / oscillator unit - this circuit will be changed
Very simple unit with rectifier,
voltage regulators, and clock oscillator for the whole system. It also
holds connector for connection of control unit and 9pin Sub D connector
with lines from voltage regulators for possibility of using them to power
external devices.
Zip file with schematic
and PCB layout
- Control unit
The heart of a system is a Control unit with a LCD display. This unit is external and controls every module of the system by a serial port common to all modules. It is connected to the power supply board via stereo audio cable. It stores all the settings of the system in non-volatile memory.
Zip file with schematic,
PCB layout, and firmware
- Modules
These modules are
optional (except main unit) and have their own unique features. All except
main unit have two PCBs: one, that is inside the rack case and is connected
to bus, and other, which is connected to the first one via 15pin Sub D
connectors. This external boards are in their own cases and are meant to
be spread around the studio to keep the total MIDI cable lenghts as short
as possible.
Each module carries its
own microcontroller; the functions of it are controlled by control unit.
Each module unit has an unique address which it responds to; it is set
in firmware and is not changeable after the microcontroller was programmed.
There are 8 different addresses available.
1.) Main unit
Main unit isn't a true module, but it acts like it. Address 0 is reserved for Main unit, which has 4 MIDI inputs and 4 MIDI outputs. This inputs and output are used for connection of master MIDI devices - such as MIDI sequencers - to the internal bus' inputs, which are common to all other modules. MIDI outputs transmit merged signals from main unit's inputs and bus outputs.
Zip file with schematics,
PCB layout, and firmware
2.) Slave I/O module
Module with 4 inputs and 4 outputs. This is the module for connecting synths and samplers to. Module also uses two common auxilary I/O lines which transmits signals between different modules.
Zip file with schematics, PCB layout, and firmware (v1.5)
3.) Slave output module
Simlar to the one above, but it has 8 outputs and no inputs. It was designed to be used with MIDI devices that don't have MIDI output, don't transmit any MIDI data or data transmitted is not used very often, e.g. effects, synth and drum modules etc. Common auxilary lines are used only as inputs on this unit.
Zip file with schematics, PCB layout, and firmware (v1.4)
4.) MIDI-to-Sync24 module
Based on my DINer project, but it gets a bit further (14 clock outputs, Roland type start/stop and continue outputs). Common auxilary lines are used only as inputs on this unit. Only one MIDI-to-Sync24 module can be used, because it uses fixed address (0).
Zip file with schematics, PCB layout, and firmware (v1.5)
5.) MIDI-to-CV module
I haven't started on this one yet, but it will be something like PAiA's MIDI2CV8.
6.) Dual MIDI filter module
Based on my dual MIDI filter project. Common auxilary lines are used only as inputs on this unit.
Zip file with schematics, PCB layout, and
firmware