Hey everyone! Just finished the latest addition to the ESP32 Audio family - the HiFi-ESP32 Plus. This one's been cooking for a while, and I'm pretty excited about what it brings to the table.

So the original HiFi-ESP32 has been solid with its PCM5100A DAC, but I kept looking for something with more processing power on the audio side, especially when paired with an amp, as in Amped-ESP32. Enter the PCM5122 - same great audio quality but now with a built-in DSP that can actually do some serious work.
The PCM5122 isn't just a DAC upgrade; it's got a proper digital signal processor inside that can handle:
- Parametric EQ with multiple bands
- Digital crossover filters
- Dynamic range control
- Bass and treble enhancement for downstream DAC (2.1 systems)
Basically, all the stuff you'd normally need a separate DSP chip for, or would have to burn CPU cycles on the ESP32 to handle.
Why This Matters
If you've ever tried to build a proper speaker system with an ESP32, you know the pain of trying to implement crossovers or room correction in software. The ESP32 is great, but asking it to do real-time audio processing while handling WiFi, Bluetooth, and your application logic gets messy fast.
With the PCM5122's onboard DSP, you can offload all that heavy lifting. Want to bi-amp some speakers? Set up the crossover in the DAC. Got a room with weird acoustics? Program some EQ curves. The ESP32 just has to tell the DAC what to do and can focus on being a good network audio player.
Current Status
Hardware is done and tested. The PCM5122 talks I2C, so initialisation code is needed, luckily already created by the community. The fun part is going to be writing drivers to actually use all the DSP features.
I'm planning to start with basic EQ control and volume, then work up to the advanced stuff like crossovers. Planning to integrate it all into ESPHome so you can control everything from Home Assistant.
Also working on an Amped version that pairs the PCM5122 with a TPA3128 amplifier for folks who want the DSP features but with built-in power.
Next Steps
Will focus on the hardware first, moving to the bare ESP32 driver implementation with TI PPC help. Hoping to get some help from the community to port it to ESPHome, squeezelite, and snapclient in the future
andriy.malyshenko
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.