Skip to the content
2 layers135 × 150 mmAudio Spectrum PCB, the printed circuit board in 3D

8-band analog audio spectrum analyzer PCB with active filtering and 4-level LED visualization.

Size
135 × 150 mm
Copper layers
2
Thickness
1.6 mm
Parts
216
Nets
141
Pads
593
Tracks, vias
1,413, 0
Pours
2
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
2 Sep 2026
Updated
3 Sep 2026

Overview

Audio Spectrum PCB is an open-source printed circuit board by ethanhuang0117, from the ethanhuang0117/Analog-Audio-Processing-Visualization-PCB- repository on GitHub. It is a 2-layer board of 135 × 150 mm with 216 parts on 141 nets, routed with 1,413 tracks and 0 vias.

It is built around the MCP6004-E/P, LM339 and CMA-4544PF-W. Its parts include 115 resistors, 45 capacitors, 40 diodes, 14 ICs and 1 connector. It belongs with the audio and music and sensors and measurement boards of this library.

Main components

3

README

README.md

Analog Audio Processing & Visualization PCB

A custom analog audio spectrum analyzer PCB that processes microphone audio across 8 frequency bands and displays signal intensity using 4-level LED indicators.

Demo

Download and Watch the PCB Demo

Overview

The system captures audio through an electret microphone, amplifies the signal, separates it into 8 frequency bands using active filters, and displays the signal intensity through LED indicators.

System Chain:

Microphone → Preamp → 8-Band Filters → Envelope Detection → Comparators → LED Visualization

Features

  • 8 frequency bands spanning approximately 80 Hz – 10 kHz
  • Cascaded Sallen-Key active filters for improved frequency separation
  • Microphone preamplification for low-level audio signals
  • Envelope detection to convert AC audio signals into DC levels
  • 4-level LED intensity indication for each frequency band using comparators
  • USB 5 V single-supply
  • Custom PCB designed and assembled in KiCad

Frequency Bands

BandCentre Frequency
180 Hz
2160 Hz
3320 Hz
4640 Hz
51.25 kHz
62.5 kHz
75 kHz
810 kHz

Filter Design

The initial design used passive filters, but were redesigned using cascaded Sallen-Key active filters to achieve greater roll-off and band separation.

Sallen-Key Bandpass Filter Calculations

Each frequency band consists of a cascaded 2nd order Sallen-Key High Pass Filter (HPF) and Low Pass Filter (LPF).

Assumptions:

  • $R_1 = R_2 = R$
  • $C_1 = C_2 = C$
  • $C = 100\text{nF}$ (Bands 1-4), $C = 10\text{nF}$ (Bands 5-8)

The cutoff frequencies are spaced by $\sqrt{2}$ from the centre frequency.

$$f_H = f_0 \times \sqrt{2}$$

$$f_L = \frac{f_0}{\sqrt{2}}$$

The general Sallen-Key cutoff frequency formula before simplification is:

$$f = \frac{1}{2\pi\sqrt{R_1 R_2 C_1 C_2}}$$

Applying the assumptions $R_1 = R_2 = R$ and $C_1 = C_2 = C$, this simplifies to:

$$f = \frac{1}{2\pi RC}$$

Rearranging for $R$:

$$R = \frac{1}{2\pi f C}$$


Band 4 Example (Centre frequency: 640Hz)

Step 1: Calculate HPF cutoff frequency

$$f_L = \frac{f_0}{\sqrt{2}} = \frac{640}{\sqrt{2}} = 453\text{Hz}$$

Step 2: Calculate LPF cutoff frequency

$$f_H = f_0 \times \sqrt{2} = 640 \times \sqrt{2} = 905\text{Hz}$$

Step 3: Calculate HPF resistor value ($C = 100\text{nF}$)

$$R_{HPF} = \frac{1}{2\pi \times 453 \times 100 \times 10^{-9}} = 3513\Omega \approx 3.6\text{k}\Omega$$

Step 4: Calculate LPF resistor value ($C = 100\text{nF}$)

$$R_{LPF} = \frac{1}{2\pi \times 905 \times 100 \times 10^{-9}} = 1759\Omega \approx 1.8\text{k}\Omega$$


Filter Band Summary

BandCentre FrequencyCHPF CutoffHPF RLPF CutoffLPF R
180Hz100nF56.6Hz27kΩ113Hz15kΩ
2160Hz100nF113Hz15kΩ226Hz6.8kΩ
3320Hz100nF226Hz6.8kΩ453Hz3.6kΩ
4640Hz100nF453Hz3.6kΩ905Hz1.8kΩ
51.25kHz10nF884Hz18kΩ1.77kHz9.1kΩ
62.5kHz10nF1.77kHz9.1kΩ3.54kHz4.7kΩ
75kHz10nF3.54kHz4.7kΩ7.07kHz2.2kΩ
810kHz10nF7.07kHz2.2kΩ14.1kHz1.1kΩ

Circuit Design

Power

The circuit operates from a 5 V USB supply. Since audio signals oscillate about a center point, a virtual ground of 2.5V is used to allow the analog signal stages to operate from a single supply.

Microphone & Preamplifier

A CMA-4544PF-W electret microphone captures the incoming audio signal, which is amplified using an MCP6004 op-amp to provide a suitable signal level for the filter stages.

The CMA-4544PF-W was chosen because its frequency response of 20Hz-20kHz covers the full audio spectrum.

Envelope Detection

Each filtered signal passes through an envelope detector to convert the AC waveform into a varying DC voltage proportional to its amplitude.

The RC time constant determines the decay time of the envelope:

$$\tau = R \times C = 47\text{k}\Omega \times 4.7\mu\text{F} = 221\text{ms}$$

This gives a smooth, natural decay that visually tracks the music without flickering too fast or responding too sluggishly.

Comparator & LED Stage

Comparator circuits divide each detected signal into four amplitude thresholds. The resulting outputs drive four LEDs per frequency band to provide a 4-level visualization of audio intensity.

Prototyping & Testing

Individual circuit stages were first tested on breadboards and simulated in Multisim before PCB fabrication.

This iterative testing helped identify design issues before fabrication and reduced the need for PCB rework.

PCB Design

The validated circuit was translated into a custom PCB using KiCad, with component placement, routing, and ground pours optimized for a compact and reliable layout.

3D PCB View

Schematic

View Full Schematic (PDF)

Results

The completed PCB successfully processes audio through the 8 frequency bands and provides visual feedback through the LED array.

Design Challenges & Iterations

Passive → Active Filter Redesign

The original passive filter approach did not provide sufficient frequency separation. Sallen-Key active filters were implemented to improve roll-off and isolation between adjacent bands.

Gain Optimization

The preamplifier gain was iteratively adjusted during breadboard testing to provide sufficient signal amplitude without excessive amplification of noise.

Single-Supply Operation

Because the circuit operates from a 5 V USB supply, a virtual ground was implemented to allow the op-amp stages to process audio signals within the available supply range.

Parts

216
QtyValueFootprintReferences
3710KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR1, R2, R12, R13, R14, R15, R16, R17, R18, R30, R104, R105, R106, R107, R108, R109 +21
32330Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR19, R20, R21, R22, R32, R33, R100, R101, R102, R103, R110, R111, R112, R113, R114, R115 +16
32LEDLED_THT:LED_D5.0mmD2, D3, D10, D12, D13, D14, D15, D17, D18, D19, D20, D22, D23, D24, D25, D29 +16
17100nCapacitor_THT:C_Disc_D5.0mm_W2.5mm_P2.50mmC2, C6, C7, C10, C11, C12, C13, C14, C16, C17, C18, C19, C21, C22, C23, C24 +1
1610nCapacitor_THT:C_Disc_D5.0mm_W2.5mm_P5.00mmC26, C27, C28, C29, C31, C32, C33, C34, C35, C36, C37, C38, C39, C40, C41, C42
81N5819Diode_THT:D_DO-41_SOD81_P10.16mm_HorizontalD1, D6, D11, D16, D21, D26, D27, D28
84.7uCapacitor_THT:CP_Radial_D5.0mm_P2.00mmC8, C15, C20, C25, C30, C43, C44, C45
847KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR9, R29, R42, R55, R68, R89, R90, R91
8LM339Package_DIP:DIP-14_W7.62mmU3, U5, U6, U7, U9, U11, U12, U13
52.2KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR3, R79, R80, R83, R86
5MCP6004Package_DIP:DIP-14_W7.62mmU1, U2, U4, U8, U10
415KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR23, R24, R25, R26
43.6KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR40, R41, R51, R52
44.7KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR77, R78, R85, R88
46.8KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR27, R28, R38, R39
49.1KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR66, R67, R81, R82
31uCapacitor_THT:CP_Radial_D5.0mm_P2.00mmC3, C4, C5
21.1KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR84, R87
21.8KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR53, R54
2100KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR4, R5
218KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR64, R65
227KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR7, R8
25.1KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR10, R11
1100Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR6
1100uCapacitor_THT:CP_Radial_D5.0mm_P2.00mmC1
1CMA-4544PF-WMyComponents:MIC_CMA-4544PF-WMK1
1MCP1700x-300xxTOPackage_TO_SOT_THT:TO-92_InlineU14
1USB_BConnector_USB:USB_B_OST_USB-B1HSxx_HorizontalJ1

Similar boards

  • 2 layers75 × 100 mmPhased, the printed circuit board in 3D

    Phased

    Neumi/open_echo

    Open Source echo sounder / depth sounder / SONAR for bathymetry and research. Arduino based and compatible.

    77 parts530
  • 2 layers98.5 × 59.8 mmNeuron, the printed circuit board in 3D

    Neuron

    giant-axon/lu.i-neuron-pcb

    Lu.i is an electronic neuron circuit mimicking and illustrating the basic dynamics of real, biological neurons. The printed circuit board (PCB) features a configurable, fully analog implementation of the leaky…

    90 parts73CERN-OHL-S-2.0
  • 2 layers171.5 × 105.5 mmLif neuron schematic, the printed circuit board in 3D

    Lif neuron schematic

    YYK2007/lif-neuron-pcb

    Analog leaky-integrate-and-fire neuron PCB designed in KiCad.

    49 parts
  • 2 layers87.9 × 98.7 mmBitdoglab smd, the printed circuit board in 3D

    Bitdoglab smd

    BitDogLab/BitDogLab

    Open-source educational hardware for embedded systems, programming, electronics, and physical computing.

    138 parts203
  • 2 layers150 × 68 mmController, the printed circuit board in 3D

    Controller

    candykingdom/firefly2

    Small blinkenlight boards that sync up using radios

    194 parts5
  • 4 layers61.8 × 27.5 mmAudio Processing HW V1.0, the printed circuit board in 3D

    Audio Processing HW V1.0

    aitesam961/OpenADSP

    An Embedded Digital Signal Processing Device for Audio signals.

    83 parts4GPL-3.0
  • 2 layers88.9 × 46.2 mmLed controller, the printed circuit board in 3D

    Led controller

    cruzsbrian/aurora

    An addressable LED controller with graphical interface, audio input, and patterns programmed on an SD card.

    84 parts3
  • 2 layers90 × 40 mmGEMS Ruby, the printed circuit board in 3D

    GEMS Ruby

    GemsErasmusPlus/GEMS_Electronics

    electronics design for the GEMS educational hardware

    70 parts3CC-BY-SA-4.0

Questions

How big is the Audio Spectrum PCB PCB?

It measures 135 × 150 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Audio Spectrum PCB use?

216 parts, built around the MCP6004-E/P, LM339 and CMA-4544PF-W. 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 Audio Spectrum PCB KiCad files?

From the ethanhuang0117/Analog-Audio-Processing-Visualization-PCB- repository on GitHub, at the commit this page was made from: the board is Audio Spectrum PCB.kicad_pcb and its schematic Audio Spectrum PCB.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Audio Spectrum PCB design in my own project?

Its repository states no licence, so its author keeps all rights: ask ethanhuang0117 before reusing the design.