ESP32 & ESP8266 Connectivity · Intermediate · Update path

ESP8266 LAN Firmware Update

The cable-free update path on the ESP8266, using the updater the core ships.

Firmware status: Generated from this project's own pin map and compiled with arduino-cli for esp8266:esp8266:nodemcuv2 before publication; bench validation on your hardware is still required.

Board: ESP8266 (NodeMCU v3 / Wemos D1 mini) · ESP8266EX @ 80 MHz · 3.3 V logic · build for esp8266:esp8266:nodemcuv2.

What you will build

An ESP8266 serving an authenticated upload page that flashes new firmware over the local network.

Components

  • ESP8266 board
  • USB cable for the first flash
  • An exported .bin

Pin map for this build

Sketch constantPinWhat it is

Tools

  • USB programming cable
  • Multimeter
  • Current-limited bench supply (for anything that switches a load)
  • Small screwdriver and wire cutters

Build sequence

  1. Set OTA_PASSWORD and flash over USB once.
  2. Open the board's address and log in with the password.
  3. Upload a .bin exported from the IDE and watch the progress page.
  4. Re-read the boot banner to confirm the new version is running.

Test and expected result

The login page appears, an upload completes, and the device boots the new firmware without a cable.

Acceptance checks

login required, upload completes, new firmware boots

Safety and limits

The upload page is authenticated but not encrypted. Keep it inside your own network and change the password from the sketch default.

Hardware scope

ESP8266 HTTP update server, password authentication, restart into the new image.

Connection diagram

Connection diagram for ESP8266 LAN Firmware Update

Download the connection diagram (SVG)

Download the Arduino sketch (E12_esp8266_lan_firmware_update.ino)

Guide source: the sketch on this page was generated from the pin map above and compiled for esp8266:esp8266:nodemcuv2 before publication.

Related projects

Back to all project guides · Study the course