Raspberry Pi boards have gotten expensive. What used to be a cheap go-to for DIY projects now carries a premium price tag. So when I needed to set up a network-wide ad blocker, I looked elsewhere.
Enter the ESP32-S3. You can pick one up for under $10, and it’s more than capable of running ad-blocking software as a DNS sinkhole. The whole setup took minutes, not hours.
Now, let’s be clear about the tradeoffs. A Raspberry Pi 5 runs a 2.4 GHz quad-core Arm Cortex-A76 with gigabytes of RAM and SSD storage. The ESP32-S3 has a dual-core Tensilica Xtensa LX7 at 240 MHz, 520 KB of RAM, and up to 16MB of flash. It’s not competing on specs.
But for a DNS sinkhole? It doesn’t need to. The Pi 5 draws up to 12 watts. The ESP32 board sips milliwatts. For something that runs 24/7 in the background, that power difference adds up.
The sweet spot is the ESP32-S3 with 8MB of PSRAM. There’s a 4MB version too, but you’ll hit compromises. Look for the DevKitC-1 N16R8 variant. There’s a well-documented project on GitHub called ESP32_AdBlocker that handles the software side — no coding required, just flash the board and configure it.
Is it as flexible as a full Pi running PiHole? No. But if your goal is simply stripping ads before they reach any device on your network, this $7 board does the job quietly and efficiently.
