浏览器一键刷机 esp32-c3-adblock:Web 安装器(manifest.json)完整指南 浏览器一键刷机 esp32-c3-adblockWeb 安装器manifest.json完整指南【免费下载链接】esp32-c3-adblockPi-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?featureshare项目地址: https://gitcode.com/GitHub_Trending/es/esp32-c3-adblock还在折腾 PlatformIO 编译esp32-c3-adblock 项目内置了浏览器一键刷机的 Web 安装器用 Chrome 打开一个网页、点一下按钮约 30 秒就能把一块 2 美元的 ESP32-C3 变成 Pi-hole 式的 DNS 广告拦截器。本文带你读懂manifest.json刷机清单的原理并完整走通「一键刷机 → 配网 → 组网拦截 → 后台管理」的全流程。为什么浏览器能直接给 ESP32-C3 刷固件大多数 ESP32 项目刷机都需要安装工具链而这个项目的 docs/index.html 借助了两项浏览器原生技术把整个流程压缩成一次点击Web Serial APIChrome / Edge 允许网页直接访问串行端口USB 串口无需刷写器ESP Web Tools乐鑫官方的网页刷写组件按清单文件把多个二进制依次烧到指定地址。页面里的绿色按钮「⚡ Connect Install」就是全部操作入口——它由 docs/manifest.json 驱动点击后浏览器会弹出串口选择框选对端口就开始烧写。整个过程不需要安装任何软件这就是「浏览器一键刷机」的含义。安装包内容这 5 个文件各管什么打开 docs/ 目录Web 安装器需要的一切都在里面文件大小作用bootloader.bin~19 KB启动引导程序ESP32 上电后第一级partitions.bin~3 KB分区表双 App 槽 OTA 布局见 partitions.csvboot_app0.bin~8 KB应用 0 槽的引导扇区firmware.bin~1.2 MB核心固件DNS 拦截 Web 后台 OTAlittlefs.bin~1.3 MB拦截规则文件系统含 14 万 域名黑名单也就是说刷完即可用固件自带 40 位 FNV-1a 哈希匹配引擎黑名单已预置在littlefs.bin里RAM 占用仅约 50 KB无需 PSRAM。逐行读懂 manifest.json 刷机清单manifest.json 是 Web 安装器的「施工图纸」字段含义如下{ name: C3 AdBlocker, version: 1.0.0, new_install_prompt_erase: true, builds: [ { chipFamily: ESP32-C3, parts: [ { path: bootloader.bin, offset: 0 }, { path: partitions.bin, offset: 32768 }, { path: boot_app0.bin, offset: 57344 }, { path: firmware.bin, offset: 65536 }, { path: littlefs.bin, offset: 2818048 } ] } ] }chipFamily限定只烧给 ESP32-C3防止误刷到其他芯片offset每个文件写入 Flash 的起始地址十六进制即 0x0 / 0x8000 / 0xE000 / 0x10000 / 0x2B0000与 partitions.csv 中的分区布局一一对应new_install_prompt_erase首次刷写前会询问你是否整片擦除保证干净状态。这套「清单 偏移」机制就是 ESP Web Tools 的标准格式——你以后甚至可以照它为自己写一个类似的刷机页面。一键刷机完整步骤5 步走第 0 步 · 准备工作一块 ESP32-C3推荐 4MB Flash 的 SuperMini 板 一根 USB 数据线电脑端使用桌面版 Chrome 或 Edge网页已注明不支持时会自动隐藏按钮。第 1 步 · 获取安装器页面git clone https://gitcode.com/GitHub_Trending/es/esp32-c3-adblock用 Chrome 打开docs/index.html。若按钮无反应在docs/目录下执行python3 -m http.server 8000后访问http://localhost:8000即可。️第 2 步 · 点击「⚡ Connect Install」页面会请求串口权限 → 点击「允许」→ 从列表中选择你的 ESP32-C3 串口Linux 通常是/dev/ttyACM0。⏳第 3 步 · 等待约 30 秒浏览器按manifest.json依次写入 5 个文件底部有进度提示看到「Done」即表示固件 黑名单全部落盘设备自动重启。第 4 步 · 连接设备发出的新 Wi-Fi重启后设备启动一个开放热点C3-AdBlock-XXXX并弹出强制门户页面用手机连上它选择你家的 Wi-Fi、输入密码配网完成无需重新刷机。✅第 5 步 · 验证刷机成功把任意设备的 DNS 改为 C3 的 IP测试一下dig c3-ip doubleclick.net # 返回 0.0.0.0 已拦截 dig c3-ip github.com # 返回真实 IP 正常转发组网使用与 Web 后台管理推荐用法在路由器里把 C3 的 IP 设为备用 DNSsecondary DNS或对单台设备单独指定全网广告即被拦截Web 后台浏览器访问http://c3adblock.localmDNS 自动发现可查看各客户端的拦截统计、封禁设备、添加自定义域名安全提示所有会改变状态的接口都需要 Basic Auth 账号密码。自行编译构建时请复制 src/secrets.example.h 为secrets.h并修改WEB_USER/WEB_PASS/OTA_PASS不要沿用占位符后续更新刷机只是唯一一次需要 USB 的操作——之后固件 OTA、黑名单上传/远程定时更新都走 Wi-Fi工具链见 tools/build_blocklist.py。常见问题刷机失败排查清单H3按钮灰色或找不到串口确认用的是桌面版 Chrome/Edge换一根数据线部分线只能充电Linux 下需先停掉抢占串口的 ModemManagerREADME 有现成命令。H3刷机中途设备反复重启多为供电不稳——廉价 USB 转接头会在射频发射时电压跌落请换用手机充电头或路由器 USB 口直供。H3黑名单能装多少域名当前 Web 安装器采用双 App 槽布局为固件 OTA 让路黑名单区约 1.3MB上限约 25 万域名53 万域名的「终极版」需单 App 分区表放弃固件 OTA取舍见 partitions.csv。写在最后浏览器一键刷机把「装工具链 → 编译 → 刷写」的门槛降到了「打开网页 → 点按钮」。得益于 manifest.json 这种声明式清单整个过程透明可查、约 30 秒完成。刷好后一块 2 美元的 ESP32-C3 就能用 50KB 内存守住你整条局域网的 DNS 入口——这大概就是「极简硬件 巧思」的最好示范。【免费下载链接】esp32-c3-adblockPi-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?featureshare项目地址: https://gitcode.com/GitHub_Trending/es/esp32-c3-adblock创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考