English Version French Version

MIDIbox SID V1

Created 2002/2003

NOTE: This design is expired! In 2007 MIDIbox SID V2 has been developed which replaced the old version. See this page for more details.

Are you tired of virtual synthesizers, samplers and wavetable machines? Are you seeking for the unique sound of the vintage homecomputer days. Did you know that the sound device from one of the most popular computers of the 80's - the C64 - can produce awesome sounds like a modern synth? Did you ever build a low-budget synthesizer by your own? Well, maybe the MIDIbox SID could be interesting for you. :-)

MIDIbox SID allows you to control the SID sound chip over MIDI. This isn't a revolutionary idea, some people realized something similar some years before:

  • SID Homepage by Andreas Varga with some interesting technical background informations
  • SIDgroove a DIY SID synthesizer, Master/Slave design, well documented
  • Parallel SID - another DIY SID synthesizer - thanks to Buchi for the warning regarding the Audio Out of the SID!
  • SIDrack by Christian Catchpole
  • C64 schematics gives usefull informations for the filter caps and the output amplifier
  • SidStation - a commercial product with SID inside
  • HardSID - another commercial product with SID inside

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:

  • 2 additional envelopes with optional non-linear curve which can be assigned to Pitch, Pulsewidth and Filters
  • 6 additional LFOs with different waveforms which can be assigned to Pitch, Pulsewidth and Filters
  • Fine Tuning
  • Pitch Bender
  • Portamento/Glide function
  • Delays
  • optional Oscillator Synchronization
  • Arpeggiator (a SID *must* have an arpeggiator ;-)
  • Poly, Mono and Legato Mode
  • separate keyboard zones for each voice (key splitting) allows to play voices separately
  • Free controller assignments to Modulation Wheel, Velocity and Aftertouch
  • wave and CC sequences which allow more percussive sounds (Wavetables)
  • the wavetable sequencer can be combined with the arpeggiator in order to realize complex textures
  • LFOs, Envelopes, Wavetables, Arpeggios optionally syncable via external MIDI clock
  • LFOs can be combined for Sample&Hold effect
  • up to 6 CV ins with 8 bit resolution which are forwarded to the LFOs (6th waveform) and can control the OSC frequency, pulsewidth and filter
  • up to 8 CV outs with 12 bit resolution - MBHP_AOUT_LC and MBHP_AOUT are supported
  • OS independent SysEx editor based on JSynthLib
  • BankStick support (128 sound patches per stick, up to 8 can be connected)
  • Bassline (303) Mode
  • optional filter CutOff frequency interpolation
  • optional "Constant Time Slide"
  • can be used as .sid file player (see MIOS Download section)
  • optional minimal control unit (Step A)
  • the possibility to control up to 4 SIDs (Step B)
  • a complete control surface (Step C)

Following features are planned:

Addendum: Due to never-ending questions regarding the advantages of this microcontroller based project, I'm forced to write more explicitely: The MIDIbox SID has been designed to get sounds out of the SID which cannot be achieved with other solutions. In difference to programs that are running on the C64 like the Triad MIDIslave, AnyWare M64 or the Prophet64, MIDIbox SID features more software implemented high-resolution modulation sources (LFOs, EGs), independent sound engines for all 3 voices and a low-latency MIDI interface (no note drops...) - these capabilities can only be realized with a CPU that runs much faster than the 6502. In difference to the PC based HardSID, MIDIbox SID features a higher refresh rate (from the HardSID functional description: "up to 500Hz refresh rate - very low latency. No other SID synth can compare to the HardSID Synth" they oversaw that the non-PC solution MIDIbox SID has an update rate of 1220 Hz! ;-). In addition, MIDIbox SID provides real live playing feeling and unique add-ons like the modulation matrix, complex, chord based arpeggiator textures, CV outputs for analog extensions and the subtle control surface of course.

The picture above shows the minimum hardware requirements to get the SID synthesizer running. In this low-cost configuration, the parameters are only accessible via MIDI - a list of available CC's can be found here. How to manage so much settings??? Although it would be possible to change them all with a common MIDI controller, this solution isn't be very usefull (ca. 90 pots and 130 buttons are required - most commercial controllers don't support LCD messages or only provide a LED digit display which makes the controlling even more difficult). So, a MIDI controller is only usefull to change the most important parameters of the oscillators, the filters, the envelopes and the LFOs, other CCs cannot be handled ergonomically.
With a computer the possibilities are better. I created a nice control panel for Logic Audio, which gives me access over the complete MIDIbox SID engine :-) - Note that such panels can also be realized with Cubase and Cakewalk Sonar (feel free to publish your creation here!).
Since V1.2, the MIDIbox SID can also interact with a JSynthLib based editor which runs on every OS which supports java (Windows/Mac OS/Linux/Solaris/...):


Click here for full size view

However - nothing is better than a physical interface. These additional info pages describe how the MIDIbox SID can be enriched by a lot of LEDs, buttons and rotary encoders: Step A, Step B, Step C.

MIDIbox SID Demo Samples

Following samples don't reflect the typical C64 sound (see the links above for raw SID examples), but should demonstrate the possibilites of the MIDIbox SID in conjunction with external Fx gear. All samples were recorded via overdub and enriched with effects under Logic. Drums are supplied by a Yamaha RM1x.
The used sound patches can also be found in the download section.

mbsid_demo_random_patches.mp3
The bad sounds first - some random patches which have been created with the mk_sid_random.pl script (4096 premade random patches are part of the preset library). They demonstrate the possibilities of the mighty MIDIbox SID sound engine
Auf_Wiedersehen_Monty_(MIDIbox_SID_Remix).mp3
The final demo song - a Remix of the famous C64 tune "Auf Wiedersehen Monty" from Rob Hubbard and Ben Daglish. All sounds except for the drums are played with the SID. Internal Effects from Logic Audio have been added
mbsid_moog_demo.mp3
This is the "Delta Theme" from Rob Hubbard played with an external Moog filter, which is controlled by the AOUT module. See also this forum article for more informations and samples.
mbsid_demo2.mp3
three oscillators, 3 LFOs, 1 envelope generator & dynamically controlled portamento in action - an interesting brass sound! :-)
I was asked how many voices have been overlapped for this sample - well, only one monophonic voice with static LFO settings has been used. I recorded it two times - for the left and for the right audio channel. The portamento is switched on/off by the sequencer - I created this example with my MIDIbox64 sequencer & the MIDIbox SID within 15 minutes after I had the intention to make "something with brass" ;-)
mbsid_demo3.mp3
three pulse waveforms, slightly detuned & pulse wide modulated - do you know this melody from somewhere?
mbsid_demo4.mp3
a sync sound with an extreme envelope modulation rate - play it with low volume if you don't want to destroy your loudspeakers! ;-)
mbsid_demo5.mp3
a ring modulated sound with activated portamento
mbsid_demo6.mp3
three independent arpeggiator generators which are clocked with extreme frequencies
mbsid_demo8.mp3
A demonstration of the new wavetable feature which allows to create sequences of waveforms and CC controllers for more percussive sounds. Note that all sounds have been created with the MIDIbox SID. The sounds have been enriched with external effects from Logic Audio, this makes the noise so exciting! :-)
mbsid_demo9_4.mp3
3 x MIDIbox SID with some external echo delays and chorus effects can sound like a Virus ;-)
mbsid_v1_5_wt_plus_arp.mp3
This example demonstrates the new possibilities which are provided with firmware V1.5: the arpeggiator can be combined with the wavetable sequencer in order to realize complex polyphonic arpeggiator textures.
mbsid_v1_5_filter.mp3
This example demonstrates the new filter driver of software engine v1.5 which improves the quality of the 8580 significantly. First you will hear the 6581, thereafter the 8580!
LINK Examples for MIDIbox SID in 303 (Bassline) mode
LINK Find the Song 'Lovesong for my SIDs' at this page :-)
LINK Two pro tracks made by Julian

Hardware options

The MIDIbox SID can be extended successively from the minimal configuration to the complete control surface with up to 4 SIDs.

Minimal requirements
PIC16F PIC18F Description
See this picture.
Required modules:
  • a MBHP_CORE module which controls the SID and provides the MIDI interface, plus
  • a MBHP_SID module which is stuffed with the SID and includes an audio amplifier and the serial bus interface to the core.
  • a power supply unit - either AC or DC, ca. 12V for the 8580 or 15V for the 6501, ca. 300 mA. Although normaly 6-9V are recommended for the core module, it can be supplied from the same source like the SID due to the low power consumption (the 7805 doesn't get too hot). See also the MBHP_SID page how to re-use the original C64 PSU.
Costs:
  • all parts for the core and SID module (without the SID itself): ca. 25 EUR + shipping
  • one vectorboard: ca. 3 EUR, or premade PCBs (available at www.mikes-elektronikseite.de and http://mbhp.coinoptech.com): 12 EUR/US $14 + shipping
  • a power supply unit (of C64 PSU not re-used): ca. 6 EUR
Optional ("nice-to-have") extensions:
  • a MBHP_BURNER module which allows you to burn the PIC by yourself (note: the PIC18F452 has only to be burned once with the Bootstraploader, thereafter firmware updates are possible via MIDI - SmashTV offers a burning service at his site)
  • one or more BankSticks to store the sound patches.
  • a MBHP_LTC module which provides MIDI In/Out LEDs and a RS232 interface.
  • a MBHP_USB module which provides a connection to the USB (only recommended for soldering experts!)
  • a 2x20 LCD to display the current patch name, patch number and MIDI channel.
  • a nice case
Control Unit (Step A)
PIC16F PIC18F Description
no See also this page.
Additional parts and modules:
  • a 2x20 LCD (or larger)
  • a MBHP_DINX1 module - premade PCBs are not available for this small circuit, so you have to build it on a vectorboard. Alternatively you could use a DINX4 module.
  • a rotary encoder (datawheel, endless pot)
    A detented encoder is recommended for precise data entry
  • an improved PSU (ca. 500 mA)
  • 6 buttons (or more if larger LCD is used)
Costs: ca. 20-25 EUR for a backlit 2x20 LCD, 1..2 EUR for the rotary encoder, 1..6 EUR for all buttons (depends on the quality)
Multi SID solution (Step B)
PIC16F PIC18F Description
no See also this page.
Additional parts and modules:
  • n x core modules
  • n x SID modules
  • the control unit (see above)
  • an improved PSU (ca. 800 mA) - the C64 PSU should be preferred due to the separate +5V output for the core modules
  • 7 additional buttons
  • 7 LEDs
Complete Control Surface (Step C)
PIC16F PIC18F Description
no See also this page.
Additional parts and modules:
  • n x core modules
  • n x SID modules
  • the minimal control unit (see above)
  • an improved PSU (ca. 1A) - the C64 PSU should be preferred due to the separate +5V output for the core module(s)
  • 3 DINX4 modules
  • 2 DOUTX4 modules
  • 14 additional rotary encoders (in difference to the datawheel, non-detented encoders are recommended here, but detented will also work fine, for example M-SW-ROT from Voti or the Bourns encoders from SmashTV's Shop)
  • 32 additional buttons
  • 99 LEDs
  • a nice frontpanel
Costs: most expensive parts are the rotary encoders (ca. 15 EUR) and especially the frontpanel (selfmade ca. 25 EUR + a lot of time, premade ca. 100..150 EUR!)

Questions & Answers

This addendum is now part of the MIDIbox Wiki. Search for MIDIboxSIDFAQ

Download

Schematics & PCBs
File Size Description
MBHP LINK see MIDIbox Hardware Platform. A CORE and a SID module is required
MBSID CS LINK Control Unit
MBSID CS B LINK Control Unit, Step B
MBSID CS C LINK Control Unit, Step C
Walkthrough LINK Walkthrough
Firmware
MIOS Download LINK MIOS based firmware for PIC18F devices with source code
PIC16F Firmwares LINK Firmware for PIC16F877 (expired, don't use it for new MIDIboxes!)
sid_cc_implementation_chart.txt 25k all available sound parameters
sysex_implementation.txt 2k the SysEx format
ChangeLog LINK MIDIbox SID ChangeLog
Preset Patches
preset_patches_20060820.zip 400k 128+55 Preset Patches for MIDIbox SID + 4096 Random Patches + Random Generator. Please read the README.txt for further informations
www.automatic-brain.de/midibox LINK TL's MIDIbox SID Patch Manager for Windows
SysEx Editor
JSynthLib LINK JSynthLib based MIDIbox SID editor
Blogs (a lot of pictures of the creation process!)
Forum Article LINK Blog by Wisefire
Forum Article LINK German Blog by Dimi
Forum Article LINK German Blog by Mesak
Tutorials
#1 LINK Wavetable Tutorial #1
#2 LINK Wavetable Tutorial #2
#3 LINK Wavetable Tutorial #3
#303 LINK Bassline Tutorial
Misc.
MIDIbox Wiki LINK A lot of additional informations on MIDIbox, MIOS and MIDIbox SID
MIDIbox Forum LINK Support at the MIDIbox Forum
SIDEnvironment_V1_1.zip 34k a Logic Audio Environment for the MIDIbox SID V1.1 and higher (Snapshot)

Construction examples


Two MIDIbox SID without control surface - the low-cost solution


SID Crazy: A view on Ian Hurlock's floor after he cannibalized some old C64s ;-)


Thomas's MIDIbox SID


Arto's MIDIbox SID


d2k's MIDIbox SID


PayC's MIDIbox SID (it's the upper one ;-)


Trapstate's MIDIbox SID


Majo's MIDIbox SID


Chriss' MIDIbox SID


Matteo's MIDIbox SID


Seppoman's MIDIbox SID


Steven's MIDIbox SID


Jurbo's MIDIbox SID

more pictures can be found in the MIDIbox Gallery

NOTE: This design is expired! In 2007 MIDIbox SID V2 has been developed which replaced the old version. See this page for more details.



Last update: 2017-04-09

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