ICItzCodingOPEN FIRMWARE GitHub repository

ESP32 · 2.4 GHz Wi-Fi

ESP32 NAT Router

Turn an original ESP32 board into a compact Wi-Fi NAT router with an optional WireGuard VPN, firewall controls, and local DNS filtering.

Maintained by ItzCoding·ESP32-WROOM-32 / DevKit V1

BROWSER INSTALLER

Install firmware over USB

ESP32 only

Connect a compatible board to this computer. The installer uses ESP Web Tools and Web Serial to write the build published by this repository’s CI.

Checking installer and browser support…
This browser does not provide Web Serial. Use a supported desktop browser such as current Chrome or Edge. Web Serial requires this page to be served from a secure HTTPS origin.

Installation progress, completion, and errors appear in the ESP Web Tools dialog.

Erase prompt: ESP Web Tools may ask whether to erase the device before a new installation. Read that prompt. Choosing a full erase deletes saved Wi-Fi/router settings and stored data; cancel if you need to preserve them. The installer does not silently erase flash.
01

Prepare the board

Use an ESP32-WROOM-32 module with at least 4 MB flash. Connect it to your computer using a known data-capable USB cable.

02

Open a supported browser

Use a desktop version of Chrome or Edge on a secure HTTPS page. Mobile browsers and iOS are not supported by this installer.

03

Connect and install

Choose the USB serial device when prompted. Keep the board connected until ESP Web Tools reports that flashing has finished.

USB connection tips

  • Close serial monitors and other programs using the port.
  • Install the USB-to-UART driver for your board if no port appears.
  • If connecting fails, hold BOOT, click Connect, then release it when flashing starts.
  • Use EN/RESET to restart after installation.

First startup

The firmware’s default access point is ESP32_NAT_Router. On an unconfigured device it is open. Connect locally, open http://192.168.4.1, set an AP password, and configure the uplink. Do not expose the initial open network to an untrusted area.

Installer deployment is pending. No firmware is offered until a successful CI build publishes and validates it.