NodeMCU vs WEMOS D1 Mini
Both boards carry the same ESP8266EX with 4 MB of flash, the same 3.3 V logic, one A0 input that reads about 0 to 3.2 V through a 220 kΩ / 100 kΩ divider, and the same D-pin labels mapped to the same GPIO (ESP8266EX datasheet v7.1; NodeMCU DevKit v1.0 schematic; WEMOS D1 mini docs). The difference is the board: the D1 mini is 34.2 × 25.6 mm with 11 digital pins and stackable shields, while the 30-pin NodeMCU also breaks out the flash pins and uses a CP2102 USB chip instead of the D1 mini's CH340C. Pick the D1 mini for compact builds and the NodeMCU for a roomy breadboard layout; the same sketch runs on both.
Side by side
| NodeMCU | WEMOS D1 Mini | |
|---|---|---|
| ChipEspressif ESP8266EX datasheet v7.1, pp. 2, 7; NodeMCU DevKit v1.0 design; WEMOS D1 mini docs | ESP8266EX on an ESP-12E module, 80 MHz (160 MHz maximum) | ESP8266EX, 80 MHz or 160 MHz |
| FlashNodeMCU DevKit v1.0 open-hardware design; WEMOS D1 mini docs | 4 MB | 4 MB |
| Header pinsNodeMCU DevKit v1.0 pinout; WEMOS D1 mini docs | 30, including the SD flash pins | 16: 11 digital I/O, A0, RST, 3V3, 5V, GND |
| Analog inputESP8266EX datasheet v7.1, p. 17; NodeMCU DevKit v1.0 schematic; D1 mini V3.0.0 schematic | A0, 10-bit, about 0 to 3.2 V via 220 kΩ / 100 kΩ | A0, 10-bit, 3.2 V max via 220 kΩ / 100 kΩ |
| USB-serial chipNodeMCU DevKit v1.0 design; WEMOS D1 mini V3.0.0 schematic | CP2102 (some clones use a CH340) | CH340C |
| 3.3 V regulatorNodeMCU DevKit v1.0 design; WEMOS D1 mini V3.0.0 schematic | 1117-type LDO | ME6211 |
| Logic level and pin currentEspressif ESP8266EX datasheet v7.1, p. 19; WEMOS D1 mini docs | 3.3 V, inputs to 3.6 V, 12 mA per pin | 3.3 V, inputs to 3.6 V, 12 mA per pin |
| Size and weightNodeMCU DevKit v1.0 design; WEMOS D1 mini docs | Larger 30-pin board that covers most of a breadboard | 34.2 × 25.6 mm, 3 g |
Which one to pick
- Breadboard prototyping with a full-length, fully labelled 30-pin header and three 3V3 and four GND pins along it (NodeMCU DevKit v1.0 pinout).
- Computers that already have the CP2102 driver, or tutorials and kits written around the NodeMCU 1.0.
- Lua or older NodeMCU firmware projects built for this board.
- Small enclosures and wall switches: 34.2 × 25.6 mm and 3 g (WEMOS D1 mini docs).
- Stackable shields made for the D1 mini, such as relay, OLED, DHT and battery shields, which plug on with no wiring.
- Battery-powered sensors, where a 3 g board wastes less space; deep sleep needs D0 (GPIO16) wired to RST on both boards (ESP8266EX datasheet v7.1, p. 5).
Swapping one for the other
What changes in the wiring and the code.
- The code does not change: both use the ESP8266 Arduino core, the D1, D2 constants map to the same GPIO (D1 = GPIO5, D2 = GPIO4), and I2C defaults to D2 (SDA) and D1 (SCL) on both.
- Select the matching board for correct flash settings and pin names: NodeMCU 1.0 (ESP-12E Module) or LOLIN(WEMOS) D1 R2 & mini.
- Install the CH340 driver for the D1 mini, or the CP2102 driver for the NodeMCU, if the computer shows no serial port.
- Strapping pins keep the same rules on both: D3 (GPIO0) and D4 (GPIO2) must not be pulled LOW, and D8 (GPIO15) must not be pulled HIGH at power-up (D1 mini docs).
- Pins that exist only on the NodeMCU, such as its extra 3V3 and GND pins and the SD flash pins, have no place on the D1 mini; its 5V pin is the power input, like the NodeMCU's VIN.
NodeMCU or WEMOS D1 Mini: questions
Is the WEMOS D1 mini the same as a NodeMCU?
Same chip, different board. Both carry an ESP8266EX with 4 MB of flash and the same D-pin labels (NodeMCU DevKit v1.0 design; WEMOS D1 mini docs). The D1 mini is 34.2 × 25.6 mm with 11 digital pins; the NodeMCU is a 30-pin board that also breaks out the flash pins.
Can I use the same code on both boards?
Yes. Both use the ESP8266 Arduino core, and D1, D2, D5 and the other constants point at the same GPIO on both. Select the right board in the IDE so the upload settings match.
Do both boards read the same analog range on A0?
Yes, about 0 to 3.2 V. The ESP8266EX's own input reads 0 to 1.0 V (ESP8266EX datasheet v7.1, p. 17), and both boards put a 220 kΩ / 100 kΩ divider in front of it (NodeMCU DevKit v1.0 schematic; D1 mini V3.0.0 schematic). analogRead(A0) returns 0 to 1023.
Which board fits a breadboard better?
The D1 mini. The 30-pin NodeMCU covers most of a standard breadboard's center and leaves little room for wires; the D1 mini's two rows of eight pins leave free holes on both sides.
Are the pins 5 V tolerant on either board?
No. The ESP8266EX limits its input high level to 3.6 V (ESP8266EX datasheet v7.1, p. 19). Feed 5 V to the 5V or VIN pin for power, and put a divider or level shifter on every 5 V signal.
The two references
Checked on 2026-10-29 against 3 sources, the makers’ datasheets first.
This comparison as plain Markdown. /compare/esp8266-nodemcu-vs-wemos-d1-mini.md

