Thursday, 26 December 2019

Sequential Circuits Multi-Trak firmware modifications

I started to work on a series of software modifications for the Sequential Circuits MultiTrak, mainly intended to improve usability in "live" or "jam" use.

As for the P600, I wrote an emulator of the digital part, which I used as a tool to code the modifications.

I had a setback: the MC68701 keyer from my Multi-Trak stopped working at some point, but I finally managed to read the contents of the chip and I was thus able to rescue it by reprogramming a new one :)
For those might have the same issue, here is the binary: mtrak_keyer_dump_a.bin
It can be programmed in an MC68701S or MC68701L but, beware, NOT in an MC68701U4L or an MC68701U4S.

Then, I finished the modifications of the main firmware, and managed to cram in the 3 that I wanted to do and everything seems to work well. I started from official version 2.2, which is the most recent and the most compatible. A version 3.0 exists but it is incompatible because the hardware is different, and therefore this modification will not work on it.

  • Disabled sending the sequencer notes to the MIDI output in "local off" mode ("MIDI channel + 9" to toggle it), it allows to control an external synth with the keyboard at the same time as the sequencer runs without side effects.
  • Pitch bender routing can now be changed from VCO to VCF:
    • "To Tape + Auto-Correct": Switch to Bender -> VCF.
    • "From Tape + Auto-Correct": Return to Bender -> VCO (boot default).
  • Synth voices can now be freely toggled, in sequencer mode (even when it is running, which brings a lot of options for "jam" use), in unison mode (to make 1-5 voices unisons instead of 6), or even in poly mode (alhough not very useful because the voices are still assigned).
    • "To Tape + track 1-6": Disable the corresponding voice, in reality it is a forced "note off" because the release is still played if the voice is sounding.
    • "From Tape + track 1-6": Re-enable the corresponding voice, the next assigned note can play again.

For technical reasons, these settings are not saved: there was about 50 bytes of free space in ROM, I already had to use many coder tricks to get everything in there!

I named the version "G.3", and it can be displayed as usual with: "MIDI Channel + MIDI Mode".

Here are the binaries:
And finally the project page on GitHub:

Let's not call this a Christmas present but close :)

Edit: Version "G.4" up, fixing two bugs with "local off" feature, same links a before!

Tuesday, 22 January 2019

Arturia BeatStep Pro to Yamaha CS-10 CV Trigger

A while ago, I made this cable to drive my Yamaha CS-10 CV Trigger using my Arturia BeatStep Pro.
It's a bit unusually made and takes advantage of the way the Yamaha CS line of synths do "Trigger out" but it's easy to make and works just fine!

PotatoCad schematics folllows :)


NB: I recently found something nice about this cable: it can also be used to loop the CS-10 audio out back into the filter. Just plug the blue 1/4 inch jack into "external input", the orange one into "output" and the BSP end into your mixer, set "Ext" mode and tweak the corresponding potentiometer to taste :)

Sunday, 28 August 2016

Overcycler2 updates

I made several improvements to Overcycler2 since my last posts:

  • Added a new WaveMod for oscillator 1 that can dynamically blend 2 waveforms. The blending ratio can be set manually, with an LFO, or with the filter envelope. In that last case it's paraphonic (due to CPU limitations), that means the blending ratio always follows the last triggered filter envelope.
  • Made the vibrato a fully featured second LFO.
  • Added LFOs to filter resonance routings, this can create really interesting timbres due to the way resonance volume compensation drives the pre-filter mixer.
  • Doubled the synth refresh rate (envelopes, LFOs, ....), now at 4Khz.
  • Added basic support for lower sample count waveforms. That allowed me to use the cool ProphetVS waveforms.
  • Various tweaks & usability improvements.

I also made a video demonstrating some of the user interface of Overcycler2 and then played some new patches:

Tuesday, 13 October 2015

Overcycler2 demo track

All sounds were made with Overcycler2, my DIY 6 voice hybrid analog synthesizer, drums included.
Effects: reverb, equalizer, limiter.

By the way, I made several changes since the patches demo:
  • Oscillators sound improvements: 96KHz sampling, better interpolation (hermite) for improved treble response, major reduction of sound crackling (it can be heard in the last patch of previous demo).
  • Added the polyphonic 2 track step sequencer from P600fw. 20*2 sequences can be stored for now.
  • Added sequencer/arpeggiator and keyboard transpose.

Thursday, 1 October 2015

Overcycler2 patches demo

Here's a demo of a few patches on Overcycler2, showing some of its sound palette.
They tend to have lots of overdrive to get an idea of the raw synth sound but by adjusting the pre-filter mixer levels, it's perfectly possible to get tamer sounds.

By the way, I recently started implementing oscillator sync, I didn't demo it yet because I think I can improve the way it sounds (there's a bit of aliasing on the upper range right now).

Sunday, 27 September 2015

Overcycler 2 lives!

I finally received my PCB!

Unfortunately I found 2 bugs on the board revision I sent for production but it was too late, so there are a few small straps on it.

Anyway, I soldered all the components, did a bit of debugging and it finally worked, all 6 voices!
It works quite fine actually, better than on breadboard. Eg. the potentiometers ADC captured lots of noise while on breadboard which made adjusting values hard. Here the noise usually doesn't exceed 1 bit.
Overall much less noise on the PCB, which make the VCAs really quiet when closed.

Pic of the board (sorry, cellphone quality):

(The heatsink is temporary, I will use the case itself as a heatsink.)

Now I just need mount the board inside the case, solder the connectors (I have yet to receive them) and the synth will be done :)

Sunday, 20 September 2015

Overcycler 2, the return

Overcycler, my homemade polyphonic hybrid synthesizer, while being a working synth that I made music with, had quite a few caveats in its design, here are a few of them:

  • Being a 5 PCB design, I tought it was a good idea to have voice cards but it just complicated the design and made the enclosure a lot harder to build.
  • The enclosure was too small, not very practical, and overall badly built. The fact that it was too small also forced me to make a lot of hacks to fit everything inside.
  • The display was too small, which made parameters hard to read fast.
  • VCAs were noisy, bleeding audio even when fully closed and gain staging was wrong, which made the sound too tiny past the filter.
  • Using the VCA to compensate for resonance volume loss, it seemed like a good idea, saving the cost of one more VCA per voice but it made the synth sound small with resonance, as the SSM2044 lose its overdrive the more you added resonance.
  • DAC / sample & hold mechanism for CV control. Not a bad thing in itself but very sensitive to noise.
  • Link capacitors in some parts of the voice design had too small values, leading to poor bass response.
  • Overall just a prototype that was left unfinished.

So, as the title says, I'm making Overcycler 2, a full rebuild / redesign of Overcycler. Besides having a more enjoyable synth to make music with, I hope this will make it a properer DIY project that others can build. As you can guess all the previous issues were addressed:

  • Single PCB design, roughly A5 size (153mm x 209mm).
  • Bigger, better built, nicer enclosure, with wooden sides for that vintage vibe :)
  • Bigger display, 40x4 characters instead of 20x4.
  • Lots of work on gain staging, to try to make the synth always sound good.
  • Using the pre-filter mixer to compensate for resonance volume loss, requiring no additional parts and nicely doing the job. That was kind of an eureka moment when I thought about it :)
  • 8 channel DAC chip to handle the CVs. They are quite expensive so I chose to ditch multitimbrality (which never worked on overcycler) to keep the costs low.
  • Bigger and better quality link capacitors.
  • This time I really want to make it proper. 

By the way, I added a voltage controlled noise generator of my design and also removed the VC master volume to replace it by a dedicated potentiometer.

Right now I have a fully working voice on breadboard, a prototype PCB that is sent for production and I just finished drilling / preparing the enclosure, here are a few pics of it:

Now compare it to this and you will see what I mean by better built :)

To be continued when my PCB arrives!

Project page: