Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use NMCU-ESP32 : Examples, Pinouts, and Specs

Image of NMCU-ESP32
Cirkit Designer LogoDesign with NMCU-ESP32 in Cirkit Designer

Introduction

The NMCU-ESP32, manufactured by na ich, is a versatile microcontroller unit (MCU) based on the ESP32 chip. It is equipped with built-in Wi-Fi and Bluetooth capabilities, making it an ideal choice for Internet of Things (IoT) applications. The NMCU-ESP32 offers robust processing power, multiple GPIO pins, analog-to-digital converters (ADCs), and support for various communication protocols, enabling seamless integration into a wide range of projects.

Explore Projects Built with NMCU-ESP32

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
ESP32 and NRF24L01 Wireless Control Circuit
Image of master Node: A project utilizing NMCU-ESP32  in a practical application
This circuit features an ESP32-WROOM-32UE microcontroller interfaced with an NRF24L01 wireless transceiver module, allowing for wireless communication capabilities. A pushbutton with a pull-down resistor is connected to the ESP32 for user input. Power regulation is managed by an AMS1117 3.3V regulator, which receives 5V from an AC-DC PSU board and is stabilized by an electrolytic capacitor, providing a stable 3.3V supply to the ESP32 and NRF24L01.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP8266 NodeMCU RFID Access Control System with Feedback Indicators
Image of emos project: A project utilizing NMCU-ESP32  in a practical application
This circuit features an ESP8266 NodeMCU microcontroller as the central processing unit, interfaced with a variety of peripherals. It includes an RFID-RC522 module for RFID communication, a buzzer and LED for audio-visual feedback, a 16x2 LCD screen with I2C for display purposes, and a Servomotor SG90 for actuation. The NodeMCU controls these components, likely for an access control system where the RFID reader validates credentials, the LCD provides user feedback, and the servo acts as a lock mechanism.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP8266 NodeMCU Controlled RFID Access System with I2C LCD Feedback
Image of SLOG: A project utilizing NMCU-ESP32  in a practical application
This circuit features an ESP8266 NodeMCU microcontroller connected to an I2C LCD screen, an RFID-RC522 module, a piezo speaker, and a fan. The NodeMCU communicates with the LCD screen and RFID reader via I2C and SPI respectively, controls a piezo speaker for audio feedback, and powers a fan. The microcontroller is programmed to connect to WiFi, read RFID tags, send data to a server, and display status messages on the LCD screen.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-Based Multi-Sensor Health Monitoring System with Bluetooth Connectivity
Image of circuit diagram: A project utilizing NMCU-ESP32  in a practical application
This circuit features an ESP32-WROOM-32UE microcontroller as the central processing unit, interfacing with a variety of sensors and modules. It includes a MAX30100 pulse oximeter and heart-rate sensor, an MLX90614 infrared thermometer, an HC-05 Bluetooth module for wireless communication, and a Neo 6M GPS module for location tracking. All components are powered by a common voltage supply and are connected to specific GPIO pins on the ESP32 for data exchange, with the sensors using I2C communication and the modules using UART.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with NMCU-ESP32

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of master Node: A project utilizing NMCU-ESP32  in a practical application
ESP32 and NRF24L01 Wireless Control Circuit
This circuit features an ESP32-WROOM-32UE microcontroller interfaced with an NRF24L01 wireless transceiver module, allowing for wireless communication capabilities. A pushbutton with a pull-down resistor is connected to the ESP32 for user input. Power regulation is managed by an AMS1117 3.3V regulator, which receives 5V from an AC-DC PSU board and is stabilized by an electrolytic capacitor, providing a stable 3.3V supply to the ESP32 and NRF24L01.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of emos project: A project utilizing NMCU-ESP32  in a practical application
ESP8266 NodeMCU RFID Access Control System with Feedback Indicators
This circuit features an ESP8266 NodeMCU microcontroller as the central processing unit, interfaced with a variety of peripherals. It includes an RFID-RC522 module for RFID communication, a buzzer and LED for audio-visual feedback, a 16x2 LCD screen with I2C for display purposes, and a Servomotor SG90 for actuation. The NodeMCU controls these components, likely for an access control system where the RFID reader validates credentials, the LCD provides user feedback, and the servo acts as a lock mechanism.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of SLOG: A project utilizing NMCU-ESP32  in a practical application
ESP8266 NodeMCU Controlled RFID Access System with I2C LCD Feedback
This circuit features an ESP8266 NodeMCU microcontroller connected to an I2C LCD screen, an RFID-RC522 module, a piezo speaker, and a fan. The NodeMCU communicates with the LCD screen and RFID reader via I2C and SPI respectively, controls a piezo speaker for audio feedback, and powers a fan. The microcontroller is programmed to connect to WiFi, read RFID tags, send data to a server, and display status messages on the LCD screen.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of circuit diagram: A project utilizing NMCU-ESP32  in a practical application
ESP32-Based Multi-Sensor Health Monitoring System with Bluetooth Connectivity
This circuit features an ESP32-WROOM-32UE microcontroller as the central processing unit, interfacing with a variety of sensors and modules. It includes a MAX30100 pulse oximeter and heart-rate sensor, an MLX90614 infrared thermometer, an HC-05 Bluetooth module for wireless communication, and a Neo 6M GPS module for location tracking. All components are powered by a common voltage supply and are connected to specific GPIO pins on the ESP32 for data exchange, with the sensors using I2C communication and the modules using UART.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • IoT devices and smart home automation
  • Wireless sensor networks
  • Wearable technology
  • Robotics and automation systems
  • Data logging and remote monitoring
  • Prototyping and educational projects

Technical Specifications

The NMCU-ESP32 is packed with features that make it a powerful and flexible component for embedded systems. Below are its key technical specifications:

General Specifications

Parameter Value
Microcontroller ESP32 Dual-Core Processor
Clock Speed Up to 240 MHz
Flash Memory 4 MB (varies by model)
SRAM 520 KB
Connectivity Wi-Fi 802.11 b/g/n, Bluetooth 4.2
Operating Voltage 3.3V
Input Voltage Range 5V (via USB) or 3.3V (via pins)
GPIO Pins 30+ (varies by board design)
ADC Channels Up to 18
Communication Protocols UART, SPI, I2C, I2S, CAN, PWM

Pin Configuration and Descriptions

The NMCU-ESP32 typically features a 38-pin layout. Below is a table of the most commonly used pins and their functions:

Pin Number Pin Name Description
1 EN Enable pin (active high)
2 IO0 GPIO0, used for boot mode selection
3 IO1 (TX0) GPIO1, UART0 TX (serial communication)
4 IO3 (RX0) GPIO3, UART0 RX (serial communication)
5 IO4 GPIO4, general-purpose I/O
6 IO5 GPIO5, general-purpose I/O
7 IO12 GPIO12, ADC2 channel 5
8 IO13 GPIO13, ADC2 channel 4
9 IO14 GPIO14, ADC2 channel 6
10 IO15 GPIO15, ADC2 channel 3
11 IO16 GPIO16, general-purpose I/O
12 IO17 GPIO17, general-purpose I/O
13 GND Ground
14 3V3 3.3V power output
15 VIN Input voltage (5V via USB or external source)

Note: The exact pinout may vary depending on the specific NMCU-ESP32 board model. Always refer to the datasheet or schematic for your board.

Usage Instructions

How to Use the NMCU-ESP32 in a Circuit

  1. Powering the Board:
    • Use a USB cable to supply 5V via the micro-USB port.
    • Alternatively, provide 3.3V directly to the 3V3 pin or 5V to the VIN pin.
  2. Connecting Peripherals:
    • Use the GPIO pins to connect sensors, actuators, or other peripherals.
    • Ensure that the voltage levels of connected devices are compatible with the 3.3V logic of the NMCU-ESP32.
  3. Programming the Board:
    • Install the Arduino IDE or ESP-IDF (Espressif IoT Development Framework).
    • Select the appropriate board and port in the IDE.
    • Write and upload your code to the NMCU-ESP32 via the USB connection.

Important Considerations and Best Practices

  • Voltage Levels: The GPIO pins operate at 3.3V. Avoid applying 5V directly to the pins to prevent damage.
  • Boot Mode: To enter bootloader mode for programming, hold the IO0 pin low while resetting the board.
  • Power Supply: Ensure a stable power supply to avoid unexpected resets or malfunctions.
  • Wi-Fi and Bluetooth: Avoid placing the board near metal objects or enclosures that may interfere with wireless signals.

Example Code for Arduino UNO Integration

Below is an example of how to use the NMCU-ESP32 to blink an LED connected to GPIO2:

// Example: Blink an LED on GPIO2 of the NMCU-ESP32

// Define the GPIO pin for the LED
#define LED_PIN 2

void setup() {
  // Set the LED pin as an output
  pinMode(LED_PIN, OUTPUT);
}

void loop() {
  // Turn the LED on
  digitalWrite(LED_PIN, HIGH);
  delay(1000); // Wait for 1 second

  // Turn the LED off
  digitalWrite(LED_PIN, LOW);
  delay(1000); // Wait for 1 second
}

Tip: Ensure that the LED is connected to GPIO2 with a current-limiting resistor (e.g., 220 ohms) to prevent damage.

Troubleshooting and FAQs

Common Issues and Solutions

  1. The board is not detected by the computer:

    • Ensure the USB cable is functional and supports data transfer.
    • Install the necessary USB-to-serial drivers for the NMCU-ESP32.
  2. Wi-Fi connection fails:

    • Verify the SSID and password in your code.
    • Check for interference or weak signal strength.
  3. The board does not power on:

    • Confirm that the power supply is within the acceptable voltage range.
    • Check for loose connections or damaged components.
  4. Code upload fails:

    • Ensure the correct board and port are selected in the IDE.
    • Hold the IO0 pin low while resetting the board to enter bootloader mode.

FAQs

Q: Can the NMCU-ESP32 operate on battery power?
A: Yes, the board can be powered by a LiPo battery or other 3.3V/5V sources. Ensure proper voltage regulation.

Q: How many devices can connect to the NMCU-ESP32 via Bluetooth?
A: The ESP32 supports up to 7 simultaneous Bluetooth connections in classic mode.

Q: Can I use the NMCU-ESP32 with MicroPython?
A: Yes, the NMCU-ESP32 is compatible with MicroPython. Flash the MicroPython firmware to get started.

Q: What is the maximum Wi-Fi range?
A: The Wi-Fi range depends on environmental factors but typically extends up to 100 meters in open spaces.

By following this documentation, you can effectively integrate the NMCU-ESP32 into your projects and troubleshoot common issues with ease.