Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/MrJefter/sdvx-controller/llms.txt

Use this file to discover all available pages before exploring further.

The SDVX Controller PCB was designed specifically for single-layer home etching, which means you can manufacture it yourself with basic equipment — or simply order it from any PCB fabrication service using the Gerber files in hardware/pcb/gerbers/. Once you have the board in hand, this guide walks you through every soldering step in the correct order: SMD components first (if any), then through-hole parts from shortest to tallest, finishing with connectors. Taking care at this stage prevents difficult debugging later.
Verify the polarity of the WS2812B LED strip before applying power. The strip has a clearly marked +5 V, GND, and DIN (data-in) pad. Reversing the power connections will immediately damage the LED strip and may damage the PCB traces. Always double-check the silkscreen labels on the board.

Assembly Steps

1

Gather components from the BOM

Download or open the Bill of Materials from hardware/pcb/ and check every component off the list before you begin. Confirm you have:
  • 1× STM32F401 BlackPill v3.0
  • 7× Cherry MX-compatible switches (e.g., Outemu Red)
  • 2× LPD3806 rotary encoders
  • 1× WS2812B LED strip (12 LEDs)
  • Pin headers, sockets, and passive components listed in the BOM
Having everything on the bench before soldering prevents mid-session interruptions.
2

Inspect the PCB

Examine the bare PCB under good lighting. This is a single-layer board — confirm that the copper traces are on the correct side, matching the board layout in hardware/pcb/. Look for any obvious etching defects, bridged traces, or damaged pads before investing time in soldering.
3

Solder any SMD components first

If your BOM revision includes SMD passives (resistors, capacitors, filter components), solder these before any through-hole parts. SMD work requires a flat, unobstructed board surface — through-hole leads sticking out make precise SMD placement very difficult. Use solder paste or thin flux-core wire and a fine-tipped iron at around 300 °C.
4

Solder the button switch footprints

Place and solder all 7× Cherry MX-compatible switch footprints on the PCB. The button assignments from the firmware are:
LabelFunctionGPIO Pin
BTN1BT-APA5
BTN2BT-BPA3
BTN3BT-CPA2
BTN4BT-DPA1
FX-LFX LeftPA4
FX-RFX RightPA9
STARTStartPA10
All button inputs are active-low with internal pull-up resistors configured in firmware — no external pull-up resistors are required on the PCB.
5

Solder the encoder connectors or headers

Each LPD3806 encoder requires four connections: +5 V, GND, and two quadrature signal channels (A and B). Solder the headers or JST-style connectors for both encoder positions:
EncoderFunctionChannel A PinChannel B Pin
VOL-L (TIM3)Left volume knobPA6 (KNOBLA)PA7 (KNOBLB)
VOL-R (TIM4)Right volume knobPB6 (KNOBRA)PB7 (KNOBRB)
Ensure the header orientation matches how your encoder cables will route through the front panel cutout — an upside-down header is a frustrating mistake to correct inside the finished enclosure.
6

Install the BlackPill via pin headers or socket

You can either solder the BlackPill directly to the PCB using its pin headers, or — strongly recommended — use a double-row female socket so the BlackPill remains removable for re-flashing or replacement. Align Pin 1 carefully; the silkscreen marking on the PCB and the BlackPill must match. Solder the header pins on one end first, verify the board is seated straight, then solder the remaining pins.
7

Solder the LED strip connector or wire

Run a short wire or solder a connector for the WS2812B LED strip. Three connections are required:
SignalPCB PinDescription
DIN (Data In)PB0Serial data line from STM32
+5 V+5 V railPower for the LED strip
GNDGNDCommon ground
Keep the data wire as short as practical to minimize signal noise. A 300–500 Ω resistor in series with the DIN line is good practice for protecting the first LED’s data input, though the PCB BOM may already include this.
8

Inspect all solder joints

Before powering anything on, use a multimeter in continuity mode to:
  • Verify each button pad is connected correctly to its GPIO net.
  • Verify each encoder A/B signal pin reaches the BlackPill header.
  • Check for shorts between +5 V and GND — a dead short here will cause problems the moment USB is plugged in.
  • Check for shorts between neighboring pads on the BlackPill socket.
Cold joints (dull, grainy appearance) should be reflowed before proceeding.
9

Optional: Install the 150 nF capacitor DFU modification

Once the main soldering is done, consider the BlackPill DFU modification described below before closing up.
Optional DFU mode modification: A 150 nF ceramic capacitor can be added to the BlackPill board (the placement illustration is available in the repository under docs/images/). Once installed, holding the START button for 5 seconds will put the BlackPill into USB DFU mode, allowing firmware updates over USB without needing an ST-Link programmer or manually pressing the BOOT0 button.
Before installing any switch into the enclosure, touch both pins with your multimeter probes in continuity mode and press the switch. You should hear a beep for every actuation. Any switch that fails this test is defective — replace it now rather than after the enclosure is fully assembled.

Build docs developers (and LLMs) love