Skip to content

Repository files navigation

ESP32 FDN Reverb

Platform Framework Language License

Feedback Delay Network (FDN) real-time audio reverb processor for ESP32.

A high-quality FDN reverb algorithm implementation on ESP32 LyraT 4.3 development board for real-time audio processing. Using feedback delay network architecture, it produces natural and smooth reverberation effects.

Keywords: ESP32 audio DSP, real-time reverb, feedback delay network, I2S audio processing, embedded audio effects, ES8388 codec, LyraT board

Demo

Audio samples and demo videos can be added to demonstrate the reverb effect quality.

Why FDN Reverb?

FDN (Feedback Delay Network) produces more natural reverberation than simple delay-based approaches:

  • Natural decay: Multiple parallel delay lines create rich, non-metallic reverb
  • Efficient: Matrix multiplication allows compact implementation on embedded systems
  • Flexible: Parameters easily adjustable for different room sizes and characteristics
  • Low latency: ~5.8ms processing time suitable for real-time applications

Features

  • 8-delay-line FDN reverb algorithm
  • Biquad filters (50Hz HPF + 12kHz LPF) for input preprocessing
  • 8kHz LPF on wet output to reduce sibilance
  • Low latency real-time processing (~5.8ms)

Hardware

  • ESP32 LyraT 4.3 development board
  • ES8388 audio codec (onboard)
  • Audio input source (microphone or player)
  • Audio output device (headphones or speakers)

Project Structure

├── main/
│   ├── main.c              # Main program, I2S configuration
│   └── es8388_registers.h  # ES8388 register definitions
├── components/
│   ├── fdn_reverb/         # FDN algorithm implementation
│   └── presets/            # Parameter presets
└── docs/
    └── thesis/             # Thesis documentation

Build and Run

Prerequisites

  1. Install ESP-IDF (v5.0+ recommended)
  2. Set up environment variables

Build

idf.py build

Flash

idf.py flash

Monitor

idf.py monitor

Algorithm Parameters

Parameter Value
Delay Lines 8
Delay Lengths [1499, 1721, 1987, 2239, 2503, 2789, 3061, 3359] samples
Feedback Coefficient 0.85
Wet/Dry Ratio 0.7
Sample Rate 44.1kHz
Bit Depth 16-bit

Documentation

Technical documentation and thesis are in docs/thesis/:

  • main.tex - LaTeX source
  • main.pdf - Thesis PDF (36 pages)
  • references.bib - Bibliography

References

  • Jot, J.-M. & Chaigne, A. (1996). FDN model original paper
  • Schroeder, M. R. (1962). Classic digital reverb model
  • Moorer, J. A. (1979). Early reflection and late reverb separation

License

MIT License

About

ESP32 real-time FDN reverb audio processor - Feedback Delay Network implementation for high-quality audio effects on ESP32-LyraT

Topics

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages