Skip to the content
PCBKitNew board
2 layers100 × 84 mmMIxer SPDIF V1.0, the printed circuit board in 3D

"Asynchronous SPDIF Mixer" synchronizes and mixes up to three asynchronous S/PDIF streams into a 48 kHz output. Running on an STM32H743 and developed in C++ with CubeIDE, it compensates for drift with interpolation. A custom KiCad-designed PCB hosts this real-time audio processing solution.

Size
100 × 84 mm
Copper layers
2
Thickness
1.6 mm
Parts
141
Nets
167
Pads
488
Tracks, vias
1,154, 75
Pours
5
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
27 Sep 2024
Updated
2 Dec 2025

Overview

MIxer SPDIF V1.0 is an open-source printed circuit board by DADDesign-Projects, from the DADDesign-Projects/Asynchronous-SPDIF-Mixer repository on GitHub, published under the MIT licence. It is a 2-layer board of 100 × 84 mm with 141 parts on 167 nets, routed with 1,154 tracks and 75 vias.

It is built around the STM32H743VIT6, DIR9001PW and MAX3490ESA, with the 74HC04D, AMS1117-3.3 and PRTR5V0U2X among its other parts. Its parts include 44 capacitors, 38 resistors, 7 ICs, 7 connectors and 5 diodes. It belongs with the audio and music boards and the STM32 boards of this library.

Main components

6

README

README.md

Asynchronous S/PDIF Mixer

"Asynchronous SPDIF Mixer" is a hardware and software project designed to synchronize and mix up to three asynchronous S/PDIF streams into a single 48 kHz output stream.
The system compensates for drift between sources and uses interpolation to ensure smooth and artifact-free audio transitions.
The project includes USB-MIDI control, allowing real-time mixing of the three audio channels via an external MIDI controller or any MIDI-compatible software.

The software, developed in C++ with CubeIDE, is optimized for real-time audio processing and runs on an STM32H743 microcontroller.
A custom electronic board, designed with KiCad, provides a dedicated hardware platform for this solution.

Image1 Image1 Image1

📋 New Evolutions

Recent updates to the project include:

  • 🔄 Enhanced Drift Compensation: A new algorithm has been implemented for compensating drifts in the input frequencies, ensuring more precise synchronization across streams.
  • 🎛️ Advanced Mixing Controls: Mixing between the three inputs can now be adjusted in real-time via MIDI over USB, complemented by a Python-based control panel for intuitive configuration. Mix settings are automatically saved and recalled as presets stored directly in flash memory for persistent, non-volatile access.

👤 Author

This project is developed by DAD Design.

📄 License

This project is licensed under the MIT License.

✨ Features

  • Synchronization of Asynchronous S/PDIF Streams: The project synchronizes three input audio streams, each potentially running at different sample rates ( 48kHz, 44.1kHz, 32kHz), into a unified output stream at 48kHz.
  • Clock Drift Compensation: Drift between the input streams is handled through periodic drift factor recalculation, ensuring the output remains smooth and synchronized.
  • 🎛️ Real-Time Mixing Controls: Adjustable mixing levels for the three inputs via any USB-MIDI interface. A Python control panel included as an example for easy configuration.
  • 💾 Preset Memorization: Mix settings are automatically saved and can be recalled as presets stored in flash memory for quick, persistent access.

🛠️ Hardware Platform

The KiCAD folder contains the schematics and PCB files for the project's hardware. These files were created using KiCAD version 9.0.

🔧 Development Environment

The project is developed and compiled using the CubeIDE environment provided by STMicroelectronics. CubeIDE is a fully integrated development environment (IDE) that supports STM32 microcontrollers and provides tools for debugging, flashing, and developing embedded systems.

Parts

141
QtyValueFootprintReferences
24100nCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC1, C2, C3, C10, C11, C12, C15, C17, C18, C21, C22, C26, C27, C28, C33, C34 +8
1210kResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR2, R3, R4, R5, R15, R16, R17, R18, R26, R27, R28, R29
675Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR19, R20, R21, R23, R30, R34
410uCapacitor_THT:CP_Radial_D5.0mm_P2.50mmC16, C19, C20, C23
44.7KResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR9, R10, R12, R13
447kResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR8, R24, R31, R35
4PE 65612Local:PE-65612T1, T2, T3, T4
30Jumper:SolderJumper-2_P1.3mm_Bridged2Bar_Pad1.0x1.5mmR1, R37, R38
32.2kResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR25, R32, R36
2100uCapacitor_THT:CP_Radial_D6.3mm_P2.50mmC24, C25
215pCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC29, C30
21uCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC7, C9
22.2uCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC13, C14
24.7kResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR11, R14
24.7nCapacitor_THT:C_Rect_L4.6mm_W2.0mm_P2.50mm_MKS02_FKP02C42, C43
24.7nCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC31, C37
25.1KResistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR6, R7
2680Resistor_SMD:R_1206_3216Metric_Pad1.30x1.75mm_HandSolderR22, R33
268nCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC32, C38
268nCapacitor_THT:C_Rect_L4.6mm_W2.0mm_P2.50mm_MKS02_FKP02C41, C44
2DIR9001Local:TSSOP-28-1EP_4.4x9.7mm_P0.65mm_EP2.85x6.7mmU5, U6
11K 100MHzCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderFB1
125MhzLocal:QuartzY1
13.3VLED_SMD:LED_1206_3216Metric_Pad1.42x1.75mm_HandSolderD2
174HC04Package_SO:SO-14_5.3x10.2mm_P1.27mmU2
1AMS1117-3.3Package_TO_SOT_SMD:SOT-223-3_TabPin2U7
1B1205_2WLocal:Converter_DCDC_TRACO_TBA1-xxxxE_Single_THTPS1
1BCLK1TestPoint:TestPoint_THTPad_1.5x1.5mm_Drill0.7mmTP1
1BCLK2TestPoint:TestPoint_THTPad_1.5x1.5mm_Drill0.7mmTP8
1BOOTButton_Switch_THT:SW_PUSH_6mm_H5mmSW1
1CFG1Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP1
1CFG2Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP2
1CFG3Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP3
1CFG4Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP4
1DOUT1TestPoint:TestPoint_THTPad_1.5x1.5mm_Drill0.7mmTP3
1DOUT2TestPoint:TestPoint_THTPad_1.5x1.5mm_Drill0.7mmTP10
1DebugConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_HorizontalJ2
1ERROR1TestPoint:TestPoint_THTPad_1.5x1.5mm_Drill0.7mmTP4
1ERROR2TestPoint:TestPoint_THTPad_1.5x1.5mm_Drill0.7mmTP11
1FMT0_1Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP8
1FMT0_2Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP12
1FMT1_1Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP7
1FMT1_2Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP11
1In1LED_SMD:LED_1206_3216Metric_Pad1.42x1.75mm_HandSolderD5
1In1TestPoint:TestPoint_THTPad_1.5x1.5mm_Drill0.7mmTP7
1In2LED_SMD:LED_1206_3216Metric_Pad1.42x1.75mm_HandSolderD4
1In2TestPoint:TestPoint_THTPad_1.5x1.5mm_Drill0.7mmTP13
1In3LED_SMD:LED_1206_3216Metric_Pad1.42x1.75mm_HandSolderD3
1In3TestPoint:TestPoint_THTPad_1.5x1.5mm_Drill0.7mmTP14
1LRCLK1TestPoint:TestPoint_THTPad_1.5x1.5mm_Drill0.7mmTP2
1LRCLK2TestPoint:TestPoint_THTPad_1.5x1.5mm_Drill0.7mmTP9
1MAX3490Package_SO:SOIC-8_3.9x4.9mm_P1.27mmU3
1NO_AUDIO1TestPoint:TestPoint_THTPad_1.5x1.5mm_Drill0.7mmTP5
1NO_AUDIO2TestPoint:TestPoint_THTPad_1.5x1.5mm_Drill0.7mmTP12
1OutTestPoint:TestPoint_THTPad_1.5x1.5mm_Drill0.7mmTP6
1PRTR5V0U2XPackage_TO_SOT_SMD:SOT-143D1
1PSCK0_1Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP6
1PSCK0_2Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP10
1PSCK1_1Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP5
1PSCK1_2Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJP9
1Power InConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_HorizontalJ1
1RESETButton_Switch_THT:SW_PUSH_6mm_H5mmSW2
1S/PDIF-In1Local:CINCH_RCAJ5
1S/PDIF-In2Local:CINCH_RCAJ6
1S/PDIF-In3Local:CINCH_RCAJ7
1S/PDIF-OutLocal:CINCH_RCAJ4
1STM32H743VIT6Local:LQFP100-14x14mmU1
1USB_C_Receptacle_USB2.0_16PConnector_USB:USB_C_Receptacle_HCTL_HC-TYPE-C-16P-01AJ3
1W25Q64Package_SO:SOIC-8_5.23x5.23mm_P1.27mmU4

The 136 most common of 141 parts.

Questions

How big is the MIxer SPDIF V1.0 PCB?

It measures 100 × 84 mm and has 2 copper layers, 1.6 mm thick.

What parts does the MIxer SPDIF V1.0 use?

141 parts, built around the STM32H743VIT6, DIR9001PW, MAX3490ESA and 74HC04D. 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 MIxer SPDIF V1.0 KiCad files?

From the DADDesign-Projects/Asynchronous-SPDIF-Mixer repository on GitHub, at the commit this page was made from: the board is KiCad/MIxer_SPDIF_V1.0.kicad_pcb and its schematic KiCad/Alims.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the MIxer SPDIF V1.0 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).

Similar boards

  • 2 layers90 × 90 mmTas5805m, the printed circuit board in 3D

    Tas5805m

    bybzmt/practise

    110 parts
  • 2 layers100 × 64.9 mmDac, the printed circuit board in 3D

    Dac

    sambazley/dac

    STM32 USB headphone DAC

    86 parts3
  • 4 layers130 × 140 mmPreamp, the printed circuit board in 3D

    Preamp

    djupdal/asd-amp

    275 parts1
  • 2 layers123.6 × 78.9 mmMost listener, the printed circuit board in 3D

    Most listener

    Oleg-mk/MOST25-to-AUDIO

    Passive MOST25 listener: Tang Nano 20K FPGA, ESP32 host, stereo I2S out with the head unit's volume, balance and tone

    172 parts1CERN-OHL-S-2.0
  • 4 layers96 × 74 mmAes dac, the printed circuit board in 3D

    Aes dac

    sschwaab/aes-dac

    Affordable DAC for professional live Audio applications

    145 parts1
  • 4 layers70 × 140 mmGPIO CTRL, the printed circuit board in 3D

    GPIO CTRL

    k16shikano/r2r-dac

    16ビットR-2RラダーによるDAコンバーターの設計

    42 parts
  • 4 layers125 × 95 mmAtc roip gateway, the printed circuit board in 3D

    Atc roip gateway

    ajisrawi/atc-roip-gateway

    Airborne Radio-over-IP (RoIP) gateway bridging aircraft VHF COM + HF transceivers to an IP network (Starlink) with an ED-137-style RTP/PTT/COR stream. KiCad hardware, routed 4-layer PCB, STM32H743 firmware.

    104 parts1
  • 4 layers64.5 × 73.6 mmTafiti Ground Comms, the printed circuit board in 3D

    Tafiti Ground Comms

    tafiti-org/Subsytems

    All the different subsystems

    69 parts1MIT