Skip to the content
PCBKitNew board
2 layers31 × 69.8 mmUtils, the printed circuit board in 3D

My custom synthesizer work

Size
31 × 69.8 mm
Copper layers
2
Thickness
1.6 mm
Parts
22
Nets
26
Pads
106
Tracks, vias
146, 7
Pours
2
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
5 May 2015
Updated
1 Sep 2026

Overview

Utils is an open-source printed circuit board by rabidaudio, from the rabidaudio/synthesizer repository on GitHub, published under the MIT licence. It is a 2-layer board of 31 × 69.8 mm with 22 parts on 26 nets, routed with 146 tracks and 7 vias.

Its parts include 9 resistors, 3 transistors, 2 ICs, 1 diode and 1 connector. It belongs with the audio and music boards of this library.

README

README.md

Synth

These are my custom modules for a from-scratch Eurorack analog synthesizer.

https://rabid.audio/projects/synth

Modules

  1. Amplifier
  • LM13700
  • matched-pair PNP exponential converter
  • CV of 10V -> Gain=1
  • CV of <=0V -> Gain=~0, 6 decades below Gain=1
  • allow overdrive to Gain=2
    • ideally this would begin to clip
  • mixdown
    • mono - full mix -> left and right
    • stereo split - A+C->left B+D->right
  • Direct stereo input jack
    • mix arbitrary signal with mixdown
    • e.g. for accepting signals from other synths
  1. Oscillator
  • 0-10V, 1V/octave, A0 to A10
  • Square/Triangle core via LM13700
  • Waveshapper for triangle -> sine
  • PWM control
    • triangle wave applied to comparator with CV controlling reference. Triangle wave means CV is linear
  • abs(triangle) can be used for 2x square
    • adds a lot of parts for little benefit
  • blending shapes isn't useful here, since we could use other oscillators for that
  • Option to sync with another osc?
    • in theory, grounding osc at a regular interval would reset the osc over and over, effectively changing it's frequency
  • CV control for shape?
  • Room for more shapes
    • white noise?
    • PDS
      • https://en.wikipedia.org/wiki/Phase_distortion_synthesis
      • a bit of wild harmonics
      • multiplication techniques
        • log/antilog
        • https://en.wikipedia.org/wiki/Gilbert_cell
        • AD633 ($11-$13 /unit on DigiKey!?)
        • EL4450C ($4/unit on Digikey but out of stock). It's a little more awkward to use since it's max differerential input voltage for linearity is 2V
      • the hard part will be the "slightly higher frequency" bit
        • perhaps instead you have another osc (555?) running at a fixed frequency and clipping the sine
        • square PWM control could also adjust this clip frequency
      • In Max you do PDS by kink~-ing a phasor~ and using that to drive the phase of cycle~. Kink is somewhat straightforward to do - use a comparator to adjust the charge current after a threshold. But how you drive a sine wave phase with that I'm not sure
    • down ramp wave with just a JFET
      • up ramp wave probably needs another JFET and an inverter
    • sub octave
    • octave
      • full wave rectifier
    • multiplying the triangle with a square wave with different phases and pulse-widths gives some neat sounds
    • polynomial
      • The EL4450C datasheet describes using a multiplier ic to create a polynomial of the form (k1 v^2 + v) / k2
      • it sounds like crap on a triangle wave and does nothing for a square wave, but it adds a nice second harmonic to a sine wave
      • from experiments in Max, good values are k1=1.5-2.5, k2=2
      • but at that point, should you just use 2 oscillators?
  1. A/D/S/R envelope
  • 4 envelopes required for 4-voice polyphony
  • wired to VCA by default
  • save surface area with 1 set of ADSR controls for a pair of envelopes
  • fully modular means you could borrow one for VCF instead, or send to both VCA and VCF
  1. Filter
  • 4P LP(/HP?)
  • Cutoff frequency control has same range as oscillator
    • 0-10V, 1V/octave, A0 to A10
  • filter we designed for class
    • standard vactrols are available on Thonk
  • CV control of cutoff + resonance
  • Default to track cutoff with VCO-CV
  • individual filter knobs, plus a global knob for filter sweeps
  1. Utilities
  • Buffer, Sum, Attenuate, Invert, Gate
  • Could be all-in one
    • A input (default ground)
    • B input (default ground)
    • level knob attenuator
    • gate digital CV in, default on
    • (A+B)*level*gate output
    • -(A+B)*level*gate output
    • Constant CV out if A and B disconnected

Bitcrusher? 4 filters or one? Noise? Clock? Headphone output no longer required 2D mixer?

TODO

  • utility module
    • Verify on breadboard
    • design PCB
    • order parts
    • come up with a cute name
    • design front panel
    • assemble Rev. A PCB
      • bend the regulators first
      • plenty of 4066s
      • flip orientation of power connector
      • pot orientation - both channels:
        • right side (facing) to inside of board (from top)
        • left side (facing) to outside of board (from top)
    • test with Neutron
      • constant output is only 9 to -7.8
      • high noise when used as a buffer
        • perhaps input signal is clipping?
        • white noise when the gain is turned down
    • adjust design for Rev. B
    • assemble Rev. B proto board
    • fix prototype issues
      • sum pot is backwards
      • a bit of noise on the constant output near the center
      • verify output levels
      • hard click on gate
        • needs a LPF?
    • assemble Rev. B PCB
    • manufacture front panel
    • assemble module
  • VCA
    • Confirm amp on breadboard, finalize CV levels
    • figure out where tuning trimmers are needed
    • build prototype
    • fix prototype issues
      • output is too quiet for headphones, need about 2x gain
      • CV range is too wide, adjust scaling for faster change in db/V
    • finish PCB schematic for complete amplifier
    • Create PCB
    • design front panel
    • manufacture front panel
    • assemble module
  • VCO
    • design core
      • core osc - square/triangle
      • wave shaper (sine)
      • pwm control
      • additional shape
      • shape selection
    • Confirm amp on breadboard, finalize CV levels
    • fix breadboard test issues
      • pitch is very sensitive to power supply noise
      • tuning is rather difficult
    • Build prototype
    • fix prototype issues
      • TBD
    • design PCB
    • Create PCB
    • design front panel
    • manufacture front panel
    • assemble module
  • Envelope
    • design in SPICE
    • verify on breadboard
    • build prototype
    • fix prototype issues
      • TBD
    • design PCB
    • Create PCB
    • design front panel
    • manufacture front panel
    • assemble module
  • VCF
    • TBD
  • build tools
    • tiny Breakout pcbs for headphone jacks
    • transistor matcher circuit
      • bought matched pair BJTs instead
    • quantized selector with hysteresis

License

Schematics, board layouts, documentation, etc. is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Creative Commons License

If you're interested in commercial use, please ask first.

Any source code is licensed under MIT.

Parts

22
QtyValueFootprintReferences
8100KResistor_THT:R_Axial_DIN0309_L9.0mm_D3.2mm_P2.54mm_VerticalR1, R2, R3, R4, R5, R6, R7, R9
5AudioJack2_Ground_Switchsynth:Jack_3.5mm_Ledino_KB3SPRS_Horizontal~OUT1, A_IN1, B_IN1, GATE1, OUT1
32N3904Package_TO_SOT_THT:TO-92Q1, Q2, Q3
11KResistor_THT:R_Axial_DIN0309_L9.0mm_D3.2mm_P2.54mm_VerticalR8
1200KConnector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_VerticalRV1
1DG403Package_SO:SOIC-16_3.9x9.9mm_P1.27mmU2
1EURORACK_CONN_16synth:EURORACK_16_IDCJ6
1LED4ms/4ms-kicad-lib/4ms-footprints.pretty:LED-3MM-SQUARE-ANODED1
1TL074Package_DIP:DIP-14_W7.62mmU1

Questions

How big is the Utils PCB?

It measures 31 × 69.8 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Utils use?

22 parts. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Utils KiCad files?

From the rabidaudio/synthesizer repository on GitHub, at the commit this page was made from: the board is utils/utils.kicad_pcb and its schematic adsr/adsr.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Utils design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

More from rabidaudio/synthesizer

7
  • 2 layers128.8 × 110 mmAmp, the printed circuit board in 3D

    Amp

    rabidaudio/synthesizer

    My custom synthesizer work

    111 parts31MIT
  • 4 layers182.9 × 153.8 mmMixer, the printed circuit board in 3D

    Mixer

    rabidaudio/synthesizer

    My custom synthesizer work

    99 parts31MIT
  • 2 layers125 × 112.5 mmAdsr, the printed circuit board in 3D

    Adsr

    rabidaudio/synthesizer

    My custom synthesizer work

    72 parts31MIT
  • 2 layers112.6 × 128.5 mmClock, the printed circuit board in 3D

    Clock

    rabidaudio/synthesizer

    My custom synthesizer work

    54 parts31MIT
  • 2 layers43.2 × 80 mmHp breakout, the printed circuit board in 3D

    Hp breakout

    rabidaudio/synthesizer

    My custom synthesizer work

    20 parts31MIT

Similar boards

  • 2 layers158 × 11 mmDaylight Matchstick, the printed circuit board in 3D

    Daylight Matchstick

    VoronDesign/Voron-Hardware

    Cool Hardware designed by the Voron Design group

    22 parts1.1kGPL-3.0
  • 2 layers57 × 65 mmRgb to hdmi, the printed circuit board in 3D

    Rgb to hdmi

    hoglet67/RGBtoHDMI

    Bare-metal Raspberry Pi project that provides pixel-perfect sampling of Retro Computer RGB/YUV video and conversion to HDMI

    22 parts1kGPL-3.0
  • 2 layers81 × 57.2 mmRP2040-Macropad, the printed circuit board in 3D

    RP2040-Macropad

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    22 parts915
  • 2 layers54.6 × 70.9 mmBeagleLogic Cape, the printed circuit board in 3D

    BeagleLogic Cape

    abhishek-kakkar/BeagleLogic

    A Software Suite that implements a logic analyzer with the PRU on the BeagleBone / BeagleBone Black.

    22 parts479GPL-3.0
  • 2 layers66.4 × 24.5 mmConnecting piece, the printed circuit board in 3D

    Connecting piece

    Chrismettal/flipper-zero-backpacks

    Backpack-style addon boards for the Flipper Zero!

    22 parts456
  • 2 layers51 × 70 mmDMG A04-01, the printed circuit board in 3D

    DMG A04-01

    HDR/NintendoPCBs

    Replacement pcb's for Nintendo games.

    22 parts321
  • 2 layers27.8 × 16 mmSpi 1v8 level shifter, the printed circuit board in 3D

    Spi 1v8 level shifter

    CRImier/MyKiCad

    My KiCad boards. Can't be bothered uploading individually anymore, so here you go.

    22 parts253GPL-3.0