Skip to the content
4 layers110 × 92 mmMusicbrain vcf8kern, the printed circuit board in 3D

Musicbrain vcf8kern

MarkWestbroek/MusicBrain

A central brain running on teensy or a lighter MCU to process any control signals (MIDI, CV, our own) into the same but adding logic, ADSRs, DCOs, CV matrices etc. to it

Size
110 × 92 mm
Copper layers
4
Thickness
1.6 mm
Parts
412
Nets
280
Pads
1,277
Tracks, vias
6,134, 710
Pours
4
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
17 May 2026
Updated
1 Nov 2026

Overview

Musicbrain vcf8kern is an open-source printed circuit board by MarkWestbroek, from the MarkWestbroek/MusicBrain repository on GitHub, published under the MIT licence. It is a 4-layer board of 110 × 92 mm with 412 parts on 280 nets, routed with 6,134 tracks and 710 vias.

It is built around the AD5754BREZ, DAC128S085CIMTX and 74HC4051, with the ADR421AR and LM311 among its other parts. Its parts include 299 resistors, 82 capacitors, 27 ICs, 3 connectors and 1 transistor.

Main components

5

README

hardware/schematics/musicbrain-vcf8kern/README.md

musicbrain-vcf8kern — 8× multimode VCF-kernkaart (rev 0.1)

Kernkaart van het poly-analog-spoor (doc/poly-analog-spec.md, VCF8 + B3/B7/B10): 8 identieke SSI2140-stemmen met pole-mixing multimode (8 modes via een 4051 per stem), cutoff/Q vanuit de Brain via de SPI-bus. Staande kaart achter de VCF8-backbone (kernslot-contract v1.1). 110×92, 4-laags (In1/In2 = GND-planes), dubbelzijdig bestukt (besluit 2026-07-21: per stem gaat de pole-mix-ster + buffer-steun + ontkoppeling naar de B-zijde via JLC PCBA; de SSI2140's op de top soldeer je zelf), passieven 0603.

Schema = hiërarchisch/gepagineerd + bedraad (2026-07-21): root + in-uit-DACs-pagina + 1 pagina per stem (stem1..stem8, identiek op ref/net-suffix na). Elke stempagina toont de SSI2140 met echte draadjes naar zijn lokale subcircuits (gm-trap-knopen, integrator-caps, EXPO-, Q- en pole-mix-netwerk → 4051); de tap-bus (AINB, OUT1..OUT4) loopt als globale labels (die fan-outen naar meerdere stages + de pole-mix, net als de OLED-bus in het TD-12-interposer-schema). Cross-pagina-netten (VCUT/VQ/FMCVB/MOUT/MODE) = globale labels = de kale PCB-netnamen (PCB-netten hebben géén /-prefix). Bron: gen_vcf8kern.py (+schlib_hier.py). Dicht maar leesbaar; kan verder uitgespreid worden.

Status: routing af, reproduceerbaar DRC 0/0 (2026-07-31) — ERC 0, netcheck OK, plaatsing net-bewust (v3), alle signalen + voedingen geroute. Een volledige run van gen_vcf8kern.py, gevolgd door KiCad DRC met opnieuw gevulde zones, geeft 0 violations + 0 unconnected. De definitieve handroutes staan in de generator; het PCB is dus niet afhankelijk van handwerk in pcbnew. Recept + valkuilen: WERKWIJZE.md §"Dichte borden". Dit is een rev-0.1-validatiekaart: verwacht een respin na de bench-test (SSI2140-niveaus, pole-mix-matching, tune-lus).

Architectuur

text
                          ┌───────────── per stem (×8) ──────────────┐
kernslot ─SCLK/SDIN/CS/LDAC─► 2× AD5754 (daisy) ─VCUTk─►54.9k─► EXPO(7) SSI2140
  (v1.1)  ─SCLK2/SDIN2/CS2──► DAC128S085 ─VQk─►13k─► Q CTRL(12)   4-pole cascade
          ─FMCV─►buffer─►100k─► EXPO(7)                           IN1→gm1..gm4→OUT4
J2 AUDIO IN ─►/5-buffer─► AINB ─►15k─► IN1 ... cascade ... OUT1..OUT4
                                    │
              taps E0=AINB,E1..E4=OUT1..OUT4 ─► 8 passieve som-sterren
                                    └─► 4051 (MODE0..2) ─► ×5-buffer ─► J3 AUDIO UIT
OUT4 (×8) ─► 4051 (TSEL0..2) ─► LM311 ─► TOUT (open-drain, TEN via 2N7002)

SSI2140-cascade (datasheet Fig 3, SSOP-20 — zelf solderen)

⚠️ Pinout datasheet-geverifieerd (2026-07-20): de buildspec had pins 1–6 verwisseld. Correct: 1=OUT2 2=CAP2 3=IN2 4=OUT1 5=CAP1 6=IN1 (ingang) 7=EXPO 8=TEMPCO 9=Q VCA OUT 10=GND 11=V− 12=Q CTRL 13=Q VCA IN+ 14=OUT4 15=CAP4 16=IN4 17=OUT3 18=CAP3 19=IN3 20=V+.

  • Keten: IN1(6)→gm1→OUT1(4)→IN2(3)→gm2→OUT2(1)→IN3(19)→gm3→OUT3(17)→IN4(16) →gm4→OUT4(14). Per trap 15k serie-in + 15k feedback + 200Ω shunt→GND + 1nF C0G op CAPx (Fig-20-schaling 15k voor buffer-load ≥5k). Elke cel inverteert → de pole-mix-tekens komen gratis.
  • Resonantie: Q VCA OUT (pin 9, stroom) direct op de IN1-knoop → resonantie om de héle keten (SSM2040-karakter, Marks topologiekeuze). Zelf- oscillatie ≈ 222 µA; 13k vanaf de 0–3V3-Q-DAC geeft 254 µA = net voorbij.
  • Q-compensatie (input-gain, Fig 14): AINB → 16.2k → Q VCA IN+ (13), 1k pin13→GND — constante passband, géén extra opamp.
  • EXPO (Fig 2b, tempco uit): cutoff-CV → 54.9k → pin 7, 1k pin7→GND, pin 8 open. Temperatuurcompensatie via B10-tuningcycles i.p.v. de tempco-R.

Pole-mixing (Fig 20 + AN701 Table 1)

5 taps (E0 = gebufferde ingang AINB, E1..E4 = OUT1..OUT4) → 8 passieve gewogen-som-sterren (één per mode) → een 4051 kiest de mode (MODE0..2) → uitgangsbuffer. Gewicht w → weerstand 75k/w (R_ref = 75k = Fig-20 RF); gebruikte waarden 75k/37.4k/18.7k/12.4k. De passieve normalisatie (÷Σgewichten) egaliseert de modeniveaus vanzelf. Tekens komen uit de trap-inversies, dus alle weerstanden positief naar één knoop (AN701 §2).

Modemenu (tap-zuinig, 15 mix-R/stem):

MODE0..2ModeGewichten (E0,E1,E2,E3,E4)
0004-pole LP0,0,0,0,1
0013-pole LP0,0,0,1,0
0102-pole LP0,0,1,0,0
0111-pole LP0,1,0,0,0
1002-pole HP1,2,1,0,0
1012-pole BP0,1,1,0,0
1104-pole BP0,0,1,2,1
111notch1,2,2,0,0

MODE gedeeld = globale modekeuze (v1); per-stem-modes = contract-extensie.

CV — twee DAC-domeinen

  • Cutoff (precisie, breed): 2× AD5754BREZ in daisy op CS (16-bit, ±10 V-range, ADR421 2.5 V-ref — verplicht, non-R-variant). Offset binary (BIN→DVCC), EP=AVSS=−12V. VCUT1-4 = U31 A/B/C/D, VCUT5-8 = U32 A/B/C/D.
  • Q (unipolair): DAC128S085 octaal 12-bit (0–3V3), op de tweede SPI-keten (SCLK2/SDIN2/CS2). VQ1-8 = VOUTA-H → 13k → Q CTRL.
  • FMCV (kernslot pin 5): audio-rate FM van de front-jack (via de backbone-attenuverter) → on-card buffer → per stem 100k op de EXPO-knoop.

Tune (B10)

OUT4 van elke stem → 4051 (TSEL0..2 selecteren de stem) → LM311 comparator → TOUT (open-drain, pull-up op de backbone). TEN (geografisch) schakelt via een 2N7002 de LM311-emitter naar GND: TEN hoog = déze kaart drijft TOUT; anders hoog-Z. De Brain pollt via CS2, de RP2040-PIO meet de periode/duty. Geen analoge tune-lijn over de bus.

Kernslot-contract v1.1 (doc/poly-analog-spec.md B7)

Haakse male 2×12 aan de onderrand (J1), plugt in de verticale female 2×12 op de backbone. Pins 1–6 spiegelen het busslot.

PinNetPinNet
1GND2+12V
3GND4−12V
5FMCV6+3V3
7SCLK8GND
9SDIN (AD5754 in)10SDO (daisy uit)
11CS (SYNC)12LDAC
13SCLK214SDIN2 (DAC128 in)
15SDO2 (daisy uit)16CS2
17MODE018MODE1
19MODE220TSEL0
21TSEL122TSEL2
23TEN (geografisch)24TOUT (open-drain)

Audio loopt níet door dit contract: J2 = AUDIO IN, J3 = AUDIO UIT (1×10, jack8-contract: 1=GND, 2–9=stem1–8, 10=GND), verticaal op de bovenrand (tegenover de kernslot). Verticale headers = van bovenaf geplugd in de kaart-tot-kaart-gap; er is een plug-keepout omheen zodat het IDC-huis vrij ligt (de lage 0603's ernaast lopen er in Z onderdoor).

Kanaalmap (firmware)

Stemcutoff (AD5754)Q (DAC128S085)J2/J3tune-mux
1–4U31 A/B/C/DVOUTA–Dpin 2–5Y4/Y7/Y6/Y5
5–8U32 A/B/C/DVOUTE–Hpin 6–9Y2/Y0/Y1/Y3

De tune-mux-Y's zijn geografisch gemapt (2026-07-21, routing): linker fysieke pinnen = helft-L (stem 1–4), rechter = helft-R (stem 5–8). Firmware- tabel TSEL-code n (=Yn) → stem: 0→6, 1→7, 2→5, 3→8, 4→1, 5→4, 6→3, 7→2.

  • POR/mute: cutoff-DAC's centreren met marge (firmware); geen per-stem instelpots (B10-trimmerbeleid — het poly-probleem). Rev-0.1 legt géén DNP-trimvoetjes: de DAC-ranges + B10-tuning doen de kalibratie digitaal.

Bestukken

  • JLC PCBA voor alles uit de LCSC-catalogus: 4051/DAC128S085/TL074/LM311/ 2N7002/ADR421/passieven. ⚠️ AD5754 (HTSSOP, ~€28 @LCSC) pas op een gevalideerd board (Route B) of los sourcen/consignment.
  • SSI2140 (SSOP-20, Sound Semiconductor — niet bij LCSC): zelf nasolderen (drag-solder, 0,635 pitch). De SSI-plekken op de top liggen vrij; dubbelzijdige bestukking: bottom-0603's vallen bij lokaal ironwerk niet af (FR4 geleidt slecht), maar het bord ligt niet vlak → foam/fixture onder de kaart bij het nasolderen.
  • Rot van alle SMD in de JLC-preview checken vóór PCBA (nieuwe placement).

Testen zonder backbone

Zie musicbrain-vcf8kern-testadapter: passief kaartje dat de kern direct op de hoofd-SPI-bus zet (MOSI→SDIN+SDIN2, SCLK→SCLK+SCLK2, IRQ→CS2), met MODE/TSEL-jumpers en een TOUT-pullup — bench-test vóór de VCF8-backbone bestaat.

Openstaand vóór fab

  • Fab-pakket genereren en de JLC-preview controleren; routing en DRC 0/0 zijn afgerond.
  • RP2040-PIO-SPI-slave-test (poly-spec open punt) staat los van deze kaart.
  • Pole-mix-matching: AN701 waarschuwt dat stopband-diepte volledig van de weerstandstolerantie afhangt — 1%-serie minimaal; bij respin evt. array's.
  • Interne niveaus (SSI ±1 V, in-attenuatie ÷5 / uit-versterking ×5) op de bench meten en het noise-budget vastleggen.

Aansluitoverzicht

aansluitoverzicht

De kaart heeft drie connectoren: J1 KERNSLOT (de kernslot-bus naar de Brain: SPI, LDAC, TOUT, voedingen), J2 AUDIO IN en J3 AUDIO UIT (elk 8 kanalen tussen twee GND-pinnen).

Pinouts

Bovenaanzicht van het bord (kijkend op de pinnen); pin 1 = vierkant. Gegenereerd uit het bordbestand met hardware/kicad-generators/pinout_svg.py.

J1 J2 J3

Parts

412
QtyValueFootprintReferences
9675kResistor_SMD:R_0603_1608MetricR119, R130, R131, R132, R133, R134, R136, R137, R138, R139, R141, R142, R219, R230, R231, R232 +80
7215kResistor_SMD:R_0603_1608MetricR101, R102, R103, R104, R105, R106, R107, R108, R121, R201, R202, R203, R204, R205, R206, R207 +56
45100nCapacitor_SMD:C_0603_1608MetricC105, C106, C107, C205, C206, C207, C305, C306, C307, C405, C406, C407, C505, C506, C507, C605 +29
321nCapacitor_SMD:C_0603_1608MetricC101, C102, C103, C104, C201, C202, C203, C204, C301, C302, C303, C304, C401, C402, C403, C404 +16
32200RResistor_SMD:R_0603_1608MetricR109, R110, R111, R112, R209, R210, R211, R212, R309, R310, R311, R312, R409, R410, R411, R412 +16
3237.4kResistor_SMD:R_0603_1608MetricR135, R140, R143, R144, R235, R240, R243, R244, R335, R340, R343, R344, R435, R440, R443, R444 +16
161kResistor_SMD:R_0603_1608MetricR114, R118, R214, R218, R314, R318, R414, R418, R514, R518, R614, R618, R714, R718, R814, R818
974HC4051Package_SO:TSSOP-16_4.4x5mm_P0.65mmU11, U12, U13, U14, U15, U16, U17, U18, U35
8100kResistor_SMD:R_0603_1608MetricR115, R215, R315, R415, R515, R615, R715, R815
813kResistor_SMD:R_0603_1608MetricR116, R216, R316, R416, R516, R616, R716, R816
816.2kResistor_SMD:R_0603_1608MetricR117, R217, R317, R417, R517, R617, R717, R817
818.7kResistor_SMD:R_0603_1608MetricR120, R220, R320, R420, R520, R620, R720, R820
854.9kResistor_SMD:R_0603_1608MetricR113, R213, R313, R413, R513, R613, R713, R813
860.4kResistor_SMD:R_0603_1608MetricR122, R222, R322, R422, R522, R622, R722, R822
8SSI2140Package_SO:SSOP-20_3.9x8.7mm_P0.635mmU1, U2, U3, U4, U5, U6, U7, U8
5TL074Package_SO:TSSOP-14_4.4x5mm_P0.65mmU21, U22, U23, U24, U25
410uCapacitor_SMD:CP_Elec_4x5.3C911, C912, C913, C914
21MResistor_SMD:R_0603_1608MetricR902, R903
2AD5754BREZPackage_SO:HTSSOP-24-1EP_4.4x7.8mm_P0.65mm_EP3.2x5mmU31, U32
110kResistor_SMD:R_0603_1608MetricR901
110nCapacitor_SMD:C_0603_1608MetricC915
12N7002Package_TO_SOT_SMD:SOT-23Q1
1ADR421Package_SO:SOIC-8_3.9x4.9mm_P1.27mmU33
1AUDIO INConnector_PinHeader_2.54mm:PinHeader_1x10_P2.54mm_VerticalJ2
1AUDIO UITConnector_PinHeader_2.54mm:PinHeader_1x10_P2.54mm_VerticalJ3
1DAC128S085CIMTXPackage_SO:TSSOP-16_4.4x5mm_P0.65mmU34
1KERNSLOTConnector_PinHeader_2.54mm:PinHeader_2x12_P2.54mm_HorizontalJ1
1LM311Package_SO:SOIC-8_3.9x4.9mm_P1.27mmU36

More from MarkWestbroek/MusicBrain

12
  • 2 layers200 × 115 mmMusicbrain busboard v2, the printed circuit board in 3D

    Musicbrain busboard v2

    MarkWestbroek/MusicBrain

    A central brain running on teensy or a lighter MCU to process any control signals (MIDI, CV, our own) into the same but adding logic, ADSRs, DCOs, CV matrices etc. to it

    94 partsMIT
  • 2 layers80 × 45 mmMusicbrain vca8, the printed circuit board in 3D

    Musicbrain vca8

    MarkWestbroek/MusicBrain

    A central brain running on teensy or a lighter MCU to process any control signals (MIDI, CV, our own) into the same but adding logic, ADSRs, DCOs, CV matrices etc. to it

    85 partsMIT
  • 2 layers150 × 44 mmGswitch loop8sh, the printed circuit board in 3D

    Gswitch loop8sh

    MarkWestbroek/MusicBrain

    A central brain running on teensy or a lighter MCU to process any control signals (MIDI, CV, our own) into the same but adding logic, ADSRs, DCOs, CV matrices etc. to it

    76 partsMIT
  • 2 layers100 × 70 mmGswitch brain, the printed circuit board in 3D

    Gswitch brain

    MarkWestbroek/MusicBrain

    A central brain running on teensy or a lighter MCU to process any control signals (MIDI, CV, our own) into the same but adding logic, ADSRs, DCOs, CV matrices etc. to it

    69 partsMIT
  • 4 layers154 × 133 mmMusicbrain matrix c, the printed circuit board in 3D

    Musicbrain matrix c

    MarkWestbroek/MusicBrain

    A central brain running on teensy or a lighter MCU to process any control signals (MIDI, CV, our own) into the same but adding logic, ADSRs, DCOs, CV matrices etc. to it

    63 partsMIT
  • 2 layers70 × 45 mmMusicbrain axon, the printed circuit board in 3D

    Musicbrain axon

    MarkWestbroek/MusicBrain

    A central brain running on teensy or a lighter MCU to process any control signals (MIDI, CV, our own) into the same but adding logic, ADSRs, DCOs, CV matrices etc. to it

    52 partsMIT
  • 2 layers200 × 115 mmMusicbrain busboard, the printed circuit board in 3D

    Musicbrain busboard

    MarkWestbroek/MusicBrain

    A central brain running on teensy or a lighter MCU to process any control signals (MIDI, CV, our own) into the same but adding logic, ADSRs, DCOs, CV matrices etc. to it

    32 partsMIT
  • 2 layers50 × 45 mmMusicbrain gatein8, the printed circuit board in 3D

    Musicbrain gatein8

    MarkWestbroek/MusicBrain

    A central brain running on teensy or a lighter MCU to process any control signals (MIDI, CV, our own) into the same but adding logic, ADSRs, DCOs, CV matrices etc. to it

    32 partsMIT
  • 2 layers50 × 80 mmMusicbrain dac8, the printed circuit board in 3D

    Musicbrain dac8

    MarkWestbroek/MusicBrain

    A central brain running on teensy or a lighter MCU to process any control signals (MIDI, CV, our own) into the same but adding logic, ADSRs, DCOs, CV matrices etc. to it

    26 partsMIT
  • 2 layers65 × 45 mmMusicbrain adc8, the printed circuit board in 3D

    Musicbrain adc8

    MarkWestbroek/MusicBrain

    A central brain running on teensy or a lighter MCU to process any control signals (MIDI, CV, our own) into the same but adding logic, ADSRs, DCOs, CV matrices etc. to it

    24 partsMIT
  • 2 layers110 × 80 mmMusicbrain pot8, the printed circuit board in 3D

    Musicbrain pot8

    MarkWestbroek/MusicBrain

    A central brain running on teensy or a lighter MCU to process any control signals (MIDI, CV, our own) into the same but adding logic, ADSRs, DCOs, CV matrices etc. to it

    20 partsMIT
  • 2 layers90 × 90 mmMinimal dac, the printed circuit board in 3D

    Minimal dac

    MarkWestbroek/MusicBrain

    A central brain running on teensy or a lighter MCU to process any control signals (MIDI, CV, our own) into the same but adding logic, ADSRs, DCOs, CV matrices etc. to it

    18 partsMIT

Similar boards

  • 2 layers64.8 × 109.2 mmTeensy eurorack, the printed circuit board in 3D

    Teensy eurorack

    newdigate/teensy-control-voltage

    Hardware Design: 16 channel analog control voltage shield for teensy 4.1; 8ch in / 8ch out; +-10V @ 16bits/sample;

    52 parts27MIT
  • 12 layers241.3 × 170.4 mmCc afe, the printed circuit board in 3D

    Cc afe

    jamead/cc-afe-hw

    Cell Controller AFE KiCad PCB

    376 parts
  • 2 layers110.5 × 111.1 mmTeensy eurorack breakout, the printed circuit board in 3D

    Teensy eurorack breakout

    newdigate/teensy-eurorack

    Hardware Design: Eurorack shield for teensy 4.1 with 14 in / 16 out analog channels

    78 parts259MIT
  • 2 layers50 × 50 mmTdstatv3, the printed circuit board in 3D

    Tdstatv3

    thomasdob/tdstatv3

    A USB-controlled potentiostat/galvanostat for thin-film battery characterization

    71 parts23GPL-3.0
  • 4 layers60 × 81 mmMYSTAT, the printed circuit board in 3D

    MYSTAT

    matthew-yates/MYSTAT

    Open source potentiostat/galvanostat hardware design files and required software.

    93 parts9GPL-3.0
  • 2 layers55.5 × 70 mmMystat, the printed circuit board in 3D

    Mystat

    genji0306/Opensens

    Opensource Potentiostat

    66 parts1
  • 4 layers134.6 × 127 mmH750 Base, the printed circuit board in 3D

    H750 Base

    CalciumCarbideElectronic/STM32H750VB-Mobo

    Motherboard for STM32H750VB Coreboard

    281 parts
  • 2 layers58 × 110 mmVco core, the printed circuit board in 3D

    Vco core

    shmoergh/moduleur

    Fully analog DIY-friendly modular synth

    146 parts222

Questions

How big is the Musicbrain vcf8kern PCB?

It measures 110 × 92 mm and has 4 copper layers, 1.6 mm thick.

What parts does the Musicbrain vcf8kern use?

412 parts, built around the AD5754BREZ, DAC128S085CIMTX, 74HC4051 and ADR421AR. 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 Musicbrain vcf8kern KiCad files?

From the MarkWestbroek/MusicBrain repository on GitHub, at the commit this page was made from: the board is hardware/schematics/musicbrain-vcf8kern/musicbrain-vcf8kern.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Musicbrain vcf8kern 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).