NodeMCU ESP32

All kinds of stuff about the NodeMCU ESP32  


The NodeMCU ESP32 board (in some cases also known as ESP32-DevkitC) is fully supported by ESPHome. Simply select ESP32 when ESPHome wizard asks you for your platform and nodemcu-32s as board type.

# Example configuration entry 
esphome:  
name: 
	living room
esp32:  
board: 
	nodemcu-32s

The ESP32 boards often use internal GPIO pin numbering on board, this means that you don’t have to worry about other kinds of pin numberings.

30 Pin NodeMCU

Pins on NodeMCU ESP32 development board.

Note that in certain conditions you can use pins marked as INTERNAL in above image.

# Example configuration entry   
esphome:  gname: 
	livingroom 
esp32:  
board: 
	nodemcu-32s 
binary_sensor:  
       - platform: gpio    
gname: "Ping GPIO23"
pin:   GPIO23



Grn Chk: Your first priority pins. They are perfectly fine to use
Yel: Pay attention as their behavior can be unpredictable, mainly during boot. Don’t use them unless you absolutely need to
Red X:It is not recommended to use these pins. So avoid them.


LabelGPIOSafe to use? Reason
D00Yelmust be HIGH during boot and LOW for programming
TX01RedTx pin, used for flashing and debugging
D22Yelmust be LOW during boot and also connected to the on-board LED
RX03RedRx pin, used for flashing and debugging
D44Grn
D55Yelmust be HIGH during boot
D66RedConnected to Flash memory
D77RedConnected to Flash memory
D88RedConnected to Flash memory
D99RedConnected to Flash memory
D1010RedConnected to Flash memory
D1111RedConnected to Flash memory
D1212Yelmust be LOW during boot
D1313Grn
D1414Grn
D1515Yelmust be HIGH during boot, prevents startup log if pulled LOW
RX216Grn
TX217Grn
D1818Grn
D1919Grn
D2121Grn
D2222Grn
D2323Grn
D2525Grn
D2626Grn
D2727Grn
D3232Grn
D3333Grn
D3434 Yel Input only GPIO, cannot be configured as output
D3535YelInput only GPIO, cannot be configured as output
VP36YelInput only GPIO, cannot be configured as output
VN39YelInput only GPIO, cannot be configured as output


ESP32 GPIO Pins

ESP32 development board has 25 GPIO pins which can be assigned to various functions programmatically. Each digital enabled GPIO can be configured to internal pull-up or pull-down, or set to high impedance.

Which ESP32 GPIOs are safe to use?
Because the ESP32 has many pins with specific functions, they may not be suitable for your projects. The following table shows which pins are safe to use and which pins require more attention before using them.

Input Only GPIOs

Pins GPIO34, GPIO35, GPIO36(VP) and GPIO39(VN) cannot be configured as outputs, they can be used as either digital inputs, analog inputs, or for other unique purposes. Also note that they do not have internal pull-up or pull-down resistors, like the other GPIO pins.

Also pins GPIO36(VP) and GPIO39(VN) are an integral part of the ultra-low-noise pre-amplifier for the ADC, which help to configure the sampling time and noise of the pre-amp.