8 November 2026 · Soldr

NodeMCU ESP8266 won't boot? Check D3, D4 and D8

Short answer: the ESP8266 reads three pins at reset to decide how to start. To boot your sketch from flash it needs GPIO15 (D8) low, GPIO0 (D3) high and GPIO2 (D4) high. A sensor, button, relay board or LED circuit that pulls one of those the wrong way stops the board from booting. Move that part to D1, D2, D5, D6 or D7.

On a NodeMCU board the pins are labelled D0 to D8, which hides the fact that three of them are boot pins. The rule comes from the ESP-12E module's datasheet, which our NodeMCU ESP8266 and ESP-12E reference pages cite, along with the NodeMCU V1.0 reference schematic that maps D-numbers to GPIOs.

The boot rule

From the ESP-12E sheet:

And from the NodeMCU V1.0 pin map:

NodeMCU ESP8266 spec table on soldr.ai: ESP8266EX supply 2.5 to 3.6 V, ESP-12E module 3.0 to 3.6 V, 80 mA average, on-board NCP1117 3.3 V regulator, 10-bit ADC with a 0 to 1.0 V input and a 220k/100k divider on the V1.0 design, 17 GPIOs, input high maximum 3.6 V, 4 MB flash, each row with its source

What goes wrong, pin by pin

The tell: unplug the part, press reset, and the board boots. Plug it back in, and it doesn't.

Which pins to use instead

For sensors, buttons and outputs, start with the pins that have no boot role:

If you must use D3, D4 or D8, use them for things that don't pull the line at reset, and match the required level. A button on D3 is fine as long as nobody presses it while the board starts.

Two more NodeMCU gotchas

The same idea on the ESP32

The ESP32 has its own strapping pins (GPIO0, 2, 5, 12, 15) with different rules. Read ESP32 won't boot with something on GPIO 0, 2, 12 or 15 before you move a NodeMCU project across.

Our reference pages' project ideas for the NodeMCU and the ESP-12E keep sensors off GPIO0, 2 and 15 for exactly this reason. When you describe an ESP8266 build on Soldr, check the pin list at the top of the sketch before wiring, and ask for a part to be moved if it lands on D3, D4 or D8 and pulls the line at reset.

On Compoden: NodeMCU ESP8266 (CP2102) and the bare ESP-12E module. Describe your build on app.soldr.ai. Sign in and get 100 credits free.