AI Summary

Overview

This project delivers a powerful, Pi-hole-class DNS ad-blocker on an incredibly cost-effective ESP32-C3 microcontroller, requiring no PSRAM. It ingeniously stores a massive blocklist of 537,000 domains as compact 40-bit FNV-1a hashes within the device's flash memory, enabling lightning-fast binary searches. Coupled with a user-friendly web dashboard and UDP DNS sinkhole functionality, this solution offers an accessible and efficient way to reclaim your network from intrusive ads and trackers.

Key Features

  • Ultra-Low Cost Hardware: Runs on a ~$2 ESP32-C3, eliminating the need for more expensive hardware with PSRAM.
  • Massive Domain Capacity: Stores an impressive 537,000 domains as 40-bit hashes, fitting into flash memory for efficient access.
  • High Performance: Achieves sub-10ms DNS lookup times through efficient binary search on flash-stored hashes.
  • Minimal RAM Footprint: Utilizes approximately 50 KB of RAM, making it ideal for resource-constrained devices.
  • Intuitive Web Dashboard: Manage your ad-blocker, view stats, upload blocklists, and perform over-the-air (OTA) updates from a convenient web interface.
  • Flexible Blocklist Management: Supports custom blocklists in various formats (hosts, plain domains, AdGuard/Adblock basic rules) and offers scheduled remote updates.
  • Seamless WiFi Setup: Features a captive portal for easy network configuration without requiring re-flashing.
  • Over-the-Air (OTA) Updates: Effortlessly update firmware and blocklists wirelessly.
  • Robust Security: Implements HTTP Basic Auth for sensitive dashboard actions and incorporates CSRF protection measures.

Typical Use Cases

  • Home Network Ad Blocking: Deploy on an ESP32-C3 plugged into a router's USB port for network-wide ad blocking without a dedicated server.
  • IoT Device Network Security: Protect resource-limited IoT devices by filtering out malicious or ad-serving domains at the network level.
  • Educational Projects: An excellent platform for learning about embedded systems, networking, DNS, and data storage optimizations.
  • Portable Ad-Blocking Dongle: Create a small, portable ad-blocking solution for use on public or guest networks.
  • Cost-Effective Network Filtering: Implement a budget-friendly DNS sinkhole solution for small businesses or personal projects where hardware cost is a primary concern.

Repository Trajectory

Trended #13 on daily

October 6, 2026

First tracked on GitTrend

October 6, 2026

Loading README...

Contributors

Languages

C++

86%

Python

12%

C

2%

About

Pi-hole-class DNS ad-blocker on a $2 ESP32-C3 (no PSRAM): 537k domains as 40-bit FNV-1a hashes in flash, binary-searched. UDP DNS sinkhole + web dashboard. https://youtube.com/shorts/RaxszOUMi8E?feature=share

Related Blogs

Topics

esp32

dns-sinkhole

esp32-c3

pi-hole

platformio

iot

adblocker

arduino

dns

Contributors

Languages

C++

86%

Python

12%

C

2%