Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ESP32 DSP Testing

A simple project for testing working with audio/DSP code in an embedded context. The project is developed using PlatformIO and the ESP32 Arduino libraries. It is being run on the following hardware:

  • ESP32 dev board
  • ICS-43434 I2S microphone board for getting audio in
  • MAX 98357A I2S amplifier powering a small speaker.
  • Three buttons for controlling the code.

Current breadboard setup

Forgive my wiring setup I am new to electronics

Current Features

  • Record and playback a couple of seconds of audio data.
  • Stackable effects including a hard clipper, simple low pass and delay.

Limitations/Future Work

  • The main audio buffer is limited in space by the ESP32 SRAM size and it's inherent limitations.
    • This means that lower than ideal sample rates and bit-depths are required, as well as limited recording time.
    • Ideally this data would not be stored in RAM but on some kind of flash storage.
  • Continuous recording/playback of audio data for real-time effects application.
    • Difficult with current setup due to feedback concerns.
  • Effects are not externally controllable and parameters/FX used must be specified in code.
  • Implement some more complicated effects:
    • Reverb
    • Distortion/Fuzz
    • Delay with multiple delay lines
    • More sophisticated filters
  • Experiment with developing against ESP-IDF rather than the ESP32 Arduino library, as the I2S APIs may be somewhat outdated.

Acknowledgements

About

Experiments with performing audio DSP on an ESP32 dev board.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages