Skip to content

erebusnz/tachyon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tachyon

An open-hardware Eurorack step sequencer with onboard voice, built around the STM32F405RGT6 (WeAct core board). Tachyon generates two precision 1 V/oct CV outputs, two +5 V gate outputs, and two audio outputs, accepts two CV modulation inputs and an external clock, and is navigated via a rotary encoder, a parameter adjustment pot, and a 128×128 OLED screen.

At a glance

MCU STM32F405RGT6 @ 168 MHz (WeAct 64-pin core board), 1 MB Flash, 192 KB RAM
Storage MicroSD slot on the WeAct board (SDIO 4-bit)
CV outputs 2 × 16-bit, 0–10 V, 1 V/oct, DAC8552 + OPA1642 ×4
Gate outputs 2 × 0/+5 V, 2N7002K level shift
CV inputs 2 × bipolar modulation, OPA1642 attenuator → ADC1
Clock input +5 V trigger, TIM2 input capture (with internal BPM fallback)
Audio output Stereo I²S, PCM5102A DirectPath
Display 1.5″ 128×128 OLED (SSD1327, 4-bit grayscale, SPI)
Controls Alps EC11E rotary encoder w/ push switch + Alps 100K pot
USB USB-C on the WeAct board — USB MIDI class device, DFU flashing
Power 10-pin Doepfer header, ±12 V only (local +5 V buck)
Format Eurorack, 10 HP, 3-board sandwich (front / IO / backing)

High-level design

  • hardware-design-plan.md — the master hardware plan. MCU pin budget, peripheral selection, input / display / DAC / op-amp choices with rationale.

    MCU schematic

Subsystem specs

These are schematic specs — per-pin connections, decoupling BOMs:

  • cv-output-dac.md — precision CV chain: DAC8552 (U6) + REF5025 (U2) + OPA1642 (U7), ×4 non-inverting gain stage producing 0–10 V at 1 V/oct, with feedback-tap and output-protection rules.

  • cv-input.md — 2 × bipolar Eurorack CV jacks through an OPA1642 (U23) inverting attenuator + 1.25 V bias stage into ADC1 (PA0/PA1), with BAT54S input clamping.

  • gate-output.md — 2 × 0/+5 V gate/trigger outputs via 2N7002K MOSFET inverting drivers with pull-ups to the +5 V rail.

  • clock-input.md — external +5 V clock jack routed to TIM2 input capture (PA2) with the same BAT54S clamp; firmware-generated BPM clock as the internal fallback.

    CV and I/O schematic

  • audio-output-dac.md — stereo audio chain: PCM5102A (U3) on I²S3, DirectPath outputs to two TS jacks, ~MUTE line, and per-pin decoupling.

    Audio schematic

  • user-interface.md — front-panel I/O: SSD1327 OLED on dedicated SPI1, Alps EC11E quadrature encoder on TIM4 with EXTI push-switch, and a 100 K Alps pot into ADC1.

  • power-supply.md — full power tree: +12 V input protection, +12 V → +5 V buck (TPS54202), the two TPS7A2033 low-noise LDOs for +3V3_PREC and +3V3_AUDIO, and the rail current budget.

    Power schematic

Physical design

The module is a three-PCB sandwich: a front board (panel graphics, no electrical content), an IO board (panel-side jacks, pot, encoder, and OLED ribbon connector), and a backing board (the dense analog/digital board with the buck, LDOs, references, DACs, op-amps, and the WeAct STM32 module on its bottom side). The boards mate via inter-board pin headers.

  • pcb-design.md — PCB stackup, ground plane rules (one continuous Layer 2 plane, no splits), power pour regions, placement zones, and signal routing guidance for the backing board, plus the inter-board header map.

    Front PCB 3D render

    IO PCB 3D render

    Backing PCB 3D render

Manufacturing outputs

The gerber/ folder holds the latest fab/assembly exports for all three boards, plus the per-board audit reports (audit-front-board.md, audit-io-board.md, audit-backing-board.md) created by the included pcb-designer skill for Claude that cross-check each export against the design docs. Combined per-board schematic PDFs live at the repo root: io-board-schematic.pdf, mcu-audio-board-schematic.pdf. The EasyEDA Pro source project is tachyon.eprj.

Bring-up

  • calibration.md — one-time CV output calibration procedure (two-point slope/offset fit against a DMM) for the precision DAC path.

Datasheets

The datasheets/ folder holds per-part markdown summaries (pinout, key electrical specs, application notes) extracted from the manufacturer PDFs for every non-passive component in the BOM. The PDFs live alongside each .md summary. Root-level docs cite these with paths like DAC8552.md:72 when a specific paragraph matters.

Firmware

Software required

  • EasyEDA — schematic/PCB design
  • Claude Code — schematic/PCB validation and planning
  • STM32CubeMX — STM32 peripheral and clock configuration
  • Claude Code — firmware development

Both hardware (schematic/PCB) and firmware design are supported in Claude Code. The included markdown files — including MD versions of the datasheets for key components — for the hardware design and the pcb-designer skill allow Claude to reason about design changes to both hardware and software without needing additional context to be shared within Claude.

Licence

Hardware (schematics, PCB, mechanical) is licensed under the CERN Open Hardware Licence Version 2 — Strongly Reciprocal (CERN-OHL-S v2).

Firmware (everything under firmware/) is licensed separately under the MIT License.

Copyright © 2026 Stig Manning.

About

tachyon - Open Hardware stm32 eurorack module

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages