English Version French Version


Created 2002-2007

MIDIbox SID V2 Bassline Demo #3 c64 from Thorsten Klose on Vimeo.

MIDIbox SID V2 Bassline Demo #5 from Thorsten Klose on Vimeo.

sammichSID, MB-808, MIDIbox SEQ from Thorsten Klose on Vimeo.

Demo Tune by Robert Engstrand

Users Manual of MIDIbox SID V2 (provides a lot of details and additional sound samples)

Link to old MIDIbox SID V1 page

The home of 4xPIC18F4685 and 8xSIDs

MIDIbox SID is a non-commercial & "DIY-only" project. Beside of the common SID functions (three oscillators, triangle/saw/pulse/noise and mixed waveforms, independent envelope generators for the amplitudes, sync & ringmodulation, 12db multistate low/band/highpass/notch filter) it features four different software based synthesizer engine implementations:

Lead Engine:

  • Mono or Legato Play Mode, optional SusKey portamento/glide control
  • 8 modulation pathes with 24bit resolution. Each consists of two sources (e.g. ENV/LFO/MP Feedback/Wavetable/Constants), which can be combined with an operator (e.g. Add/Sub/Mul/XOR/AND/OR/Binary Operations/S&H/...) and routed to multiple modulation targets (e.g. Pitch/Pulsewidth/Filter/Volume/LFO Depth/Rate/Wavetable Position/CV outputs/...)
  • Stereo modulation of two SID chips (=2*3 oscillators assigned to two audio channels), controlled from a single core
  • 2 DADDSRR envelopes sources with optional non-linear curve for Attack/Decay/Release. Positive/Negative (invertable) depth. Delayable. Different Loop Point configuration possible. Synchable to MIDI Clock. Retriggerable via Trigger Matrix.
  • 6 LFOs sources with different waveforms. Freerunning or synched. LFO Cross- and MIDI-Synchronisation possible via Trigger Matrix. Optional oneshot mode. Delayable. Selectable Phase. Positive/Negative (invertable) depth. Depth and Rate can be modulated via Modulation Matrix.
  • 6 independent Arpeggiators with various direction modes, variable octave range and gatelength. Optional oneshot mode and "constant cycle" time.
  • 4 independent Wavetable Sequencers with access to a 128 step memory, assignable to different sound parameters (also usable as sequencer for complex arpeggiator textures). Loop or Oneshot function. Wavetable position can be modulated from any source (e.g. Key Number, Velocity, ModWheel, Envelope, LFO, ...) via Modulation matrix. Step position can be incremented/reset via Trigger Matrix.
  • Trigger matrix with various sources (e.g. Note/Envelope/LFO/MIDI Clock/...) and targets (e.g. OSC Gate/Envelope Attack and Release/LFO Restart/Wavetable Step and Restart/...)
  • Fine Tuning and Pitch Bender with configurable Pitch Range
  • Portamento/Glide function with different modes (logarithmic/constant time/Glissando)
  • Oscillator Phase Synchronization with selectable delay between oscillators
  • Detune function which affects all 6 oscillators (stereo configuration)) with a single parameter for fat sounds!
  • Lead engines, running on multiple cores, can be combined to a "superpoly mode"

Multi Engine:

  • polyphonic playing of two SID chips, and/or individual control of 2*3 SID oscillators
  • dynamic or explicit voice allocation assignments
  • 6 instruments which can be assigned to different MIDI channels and/or keyboard split zones
  • two dedicated LFOs and one envelope for each voice, which can be assigned to Pitch/Pulsewidth and Filter CutOff with individual depths
  • 6 independent Arpeggiators with various direction modes, variable octave range and gatelength
  • 6 wavetable sequencers (an own for each voice)

Bassline Engine:

  • optimized for 303ish sounds with dedicated parameter set (easy to use for fast success)
  • two independent basslines are available for left/right SID audio channel
  • One master and two slave oscillators with different waveforms/octave transpose/sync/ringmod/static note/detune/variable phase offset!
  • supports direct MIDI control or internal sequencing
  • the basslines can be assigned to different MIDI channels and/or keyboard split zones
  • 2 independent Arpeggiators with various direction modes, variable octave range and gatelength
  • 8 sequences, directly controllable from MIDI keyboard or Control Surface
  • Sequencer controls Note/Octave/Accent/Slide/assignable sound parameter
  • external analog filters (e.g. Moog Ladder, SSM based, CEM based, original TB303 circuit, etc...) can be controlled from SW based envelopes and LFOs (-> F2A option)

Drum Engine:

  • optimized for C64ish drum sounds with dedicated parameter set (easy to use for fast success)
  • 16 drum instruments with dynamic or explicit voice allocation assignments
  • 20 different drum models with variable parameters (firmware allows to add more models in future)
  • Supports direct MIDI control or internal sequencing
  • 8 sequences with 8 tracks, directly controllable from MIDI keyboard or Control Surface

Thanks to the generic concept, each engine supports in addition:

  • a consistent user interface
  • "ensembles" which store the MIDI/Clock/Instrument configuration of 4 MBSID cores
  • access to two SIDs per core
  • each core can handle any synth engine (selectable via patch configuration)
  • 7*64k BankSticks can store 7*128 (=896) patches, independent from the used engines
  • one additional BankSticks used to store 128 ensembles
  • a global clock generator with 96ppqn resolution (master/slave) with selectable BPM (in master mode) which can synch Sequences, Arpeggiators, LFOs, Envelopes and trigger targets which are part of the Trigger Matrix
  • control of up to 8 external CV outputs (analog voltages with 12bit resolution) per core
  • control of up to 8 external digital switches per core
  • 5 "knob" functions. Sources: MIDI/Control Surface/Analog Inputs (CV Inputs); Target of each knob: 2 of up to 256 sound parameters with configurable min/max range
  • Modulation Wheel/Velocity/Aftertouch/PitchBender Assignments
  • up to 256 parameters can be accessed via NRPN messages with full resolution
  • access to all parameters and patches via SysEx
  • non-destructive accesses to sound parameters (shadowed patches) from all control sources (e.g. Wavetable, Knobs, NRPN, CC, etc...)
  • filter calibration for each connected SID (allows you to equalize both types, 6581 and 8580/6582)
  • a random patch generator - not only for the whole patch, but also for individual parts

Special Features:

  • sophisticated control surface which is running on the master core
  • get control over up to 8 SID chips with 4 PIC18F4685 cores!
  • enjoy the extremely high update rate of 2 mS and modulation resolution of 24bit (C64 based solutions normaly support 20 mS and 8bit resolution, and can only control a single SID chip)
  • exploring new land by adding analog circuitry (Filters/Fx) and controlling it from the modulation matrix
  • control the internal sequencers from your MIDI keyboard - concept is focused on live jam sessions
  • listen to good old C64 tunes on original SID chips by using the ASID protocol (SidStation)
  • control your analog synths from the mighty sound engine!
  • Modular and complete PCB solutions available
  • extend the source code by individual features
  • a helpful DIY community

MIDIbox SID V2 in a MB-6582 case made by Wilba


This project is a DIY project licensed under TAPR NCL. A commercial release is neither planned, nor allowed! But the license allows you to build and sell up to 10 units per year (e.g. to friends) as long as the given constraints of the license are not violated.

Project Documentation

Details about the MIDIbox SID V2 project are documented in the User Manual!

Last update: 2024-05-08

Copyright 1998-2023, Thorsten Klose. All rights reserved.