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

How to Use Wemos D1 R32 (All Pins): Examples, Pinouts, and Specs

Image of Wemos D1 R32 (All Pins)
Cirkit Designer LogoDesign with Wemos D1 R32 (All Pins) in Cirkit Designer

Introduction

The Wemos D1 R32 is a versatile microcontroller board based on the powerful ESP32 chip. It combines Wi-Fi and Bluetooth capabilities, making it an excellent choice for Internet of Things (IoT) projects. The board features multiple GPIO pins, allowing seamless interfacing with a wide range of sensors, actuators, and other peripherals. Its compact design and robust performance make it suitable for both hobbyist and professional applications.

Explore Projects Built with Wemos D1 R32 (All Pins)

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Wi-Fi Controlled RGB LED Strip with Battery Management System
Image of OpenTimingProject - Basic node: A project utilizing Wemos D1 R32 (All Pins) in a practical application
This circuit features a Wemos D1 Mini microcontroller powered by a 18650 Li-ion battery through a TP4056 charging module, with power control managed by a rocker switch. The Wemos D1 Mini controls a WS2812 RGB LED strip, with the data line connected to the D4 pin and power lines controlled by the switch. Multiple pushbuttons are connected to the D0 pin through a resistor, likely for user input to control the LED strip or other functions in the microcontroller's code.
Cirkit Designer LogoOpen Project in Cirkit Designer
Wemos D1 Mini with LoRa SX1278 Communication Module
Image of receiver: A project utilizing Wemos D1 R32 (All Pins) in a practical application
This circuit connects a Wemos D1 mini microcontroller to a LoRa Ra-02 SX1278 module for long-range wireless communication. The Wemos D1 mini's digital pins (D1, D2, D3, D5, D6, D7) are interfaced with the LoRa module's control pins (NSS, DI00, RST, SCK, MISO, MOSI) to enable SPI communication and control signals. The common ground and 3.3V power supply ensure that both components operate at the same voltage level, facilitating proper communication between them.
Cirkit Designer LogoOpen Project in Cirkit Designer
Wemos D1 Mini Based Soil Moisture and Temperature Monitoring System
Image of pfe2: A project utilizing Wemos D1 R32 (All Pins) in a practical application
This circuit features a Wemos D1 Mini microcontroller connected to an AHT10 temperature and humidity sensor and a capacitive soil moisture sensor. The AHT10 communicates with the Wemos D1 Mini via I2C (with SDA connected to D2 and SCL to D1), while the soil moisture sensor's analog output is connected to the A0 pin of the Wemos D1 Mini. Both sensors and the microcontroller share a common power supply, with the 3V3 pin of the Wemos D1 Mini providing power to the sensors.
Cirkit Designer LogoOpen Project in Cirkit Designer
I2C-Controlled OLED Display with External EEPROM and Interactive Pushbuttons
Image of godmode: A project utilizing Wemos D1 R32 (All Pins) in a practical application
This is a microcontroller-based interactive device featuring a Wemos D1 Mini, an OLED display, external EEPROM, and an I/O expander. It includes user input buttons and status LEDs, with potential MIDI interface capabilities.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Wemos D1 R32 (All Pins)

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 OpenTimingProject - Basic node: A project utilizing Wemos D1 R32 (All Pins) in a practical application
Wi-Fi Controlled RGB LED Strip with Battery Management System
This circuit features a Wemos D1 Mini microcontroller powered by a 18650 Li-ion battery through a TP4056 charging module, with power control managed by a rocker switch. The Wemos D1 Mini controls a WS2812 RGB LED strip, with the data line connected to the D4 pin and power lines controlled by the switch. Multiple pushbuttons are connected to the D0 pin through a resistor, likely for user input to control the LED strip or other functions in the microcontroller's code.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of receiver: A project utilizing Wemos D1 R32 (All Pins) in a practical application
Wemos D1 Mini with LoRa SX1278 Communication Module
This circuit connects a Wemos D1 mini microcontroller to a LoRa Ra-02 SX1278 module for long-range wireless communication. The Wemos D1 mini's digital pins (D1, D2, D3, D5, D6, D7) are interfaced with the LoRa module's control pins (NSS, DI00, RST, SCK, MISO, MOSI) to enable SPI communication and control signals. The common ground and 3.3V power supply ensure that both components operate at the same voltage level, facilitating proper communication between them.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of pfe2: A project utilizing Wemos D1 R32 (All Pins) in a practical application
Wemos D1 Mini Based Soil Moisture and Temperature Monitoring System
This circuit features a Wemos D1 Mini microcontroller connected to an AHT10 temperature and humidity sensor and a capacitive soil moisture sensor. The AHT10 communicates with the Wemos D1 Mini via I2C (with SDA connected to D2 and SCL to D1), while the soil moisture sensor's analog output is connected to the A0 pin of the Wemos D1 Mini. Both sensors and the microcontroller share a common power supply, with the 3V3 pin of the Wemos D1 Mini providing power to the sensors.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of godmode: A project utilizing Wemos D1 R32 (All Pins) in a practical application
I2C-Controlled OLED Display with External EEPROM and Interactive Pushbuttons
This is a microcontroller-based interactive device featuring a Wemos D1 Mini, an OLED display, external EEPROM, and an I/O expander. It includes user input buttons and status LEDs, with potential MIDI interface capabilities.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • IoT devices and smart home automation
  • Wireless sensor networks
  • Remote monitoring and control systems
  • Robotics and automation
  • Prototyping and educational projects

Technical Specifications

The Wemos D1 R32 is designed to provide high performance and flexibility. Below are its key technical details:

Specification Details
Microcontroller ESP32 (dual-core, 32-bit Xtensa LX6 processor)
Clock Speed Up to 240 MHz
Flash Memory 4 MB
SRAM 520 KB
Wi-Fi 802.11 b/g/n
Bluetooth Bluetooth 4.2 (Classic and BLE)
Operating Voltage 3.3V
Input Voltage (VIN) 5V (via USB or external power supply)
GPIO Pins 34 (including ADC, DAC, PWM, I2C, SPI, UART)
ADC Channels 18 (12-bit resolution)
DAC Channels 2
Communication Interfaces UART, SPI, I2C, I2S, CAN
USB Interface Micro-USB
Dimensions 68.6 mm x 53.4 mm

Pin Configuration and Descriptions

The Wemos D1 R32 features a rich set of pins for various functionalities. Below is the pinout description:

Pin Name Function Description
VIN Power Input Accepts 5V input for powering the board.
GND Ground Common ground for the circuit.
3V3 Power Output Provides 3.3V output for external components.
GPIO0–GPIO39 General Purpose I/O Configurable as digital input/output, ADC, PWM, etc.
ADC1/ADC2 Analog-to-Digital Converter 12-bit ADC channels for analog input.
DAC1/DAC2 Digital-to-Analog Converter 8-bit DAC channels for analog output.
TX/RX UART Communication Serial communication pins (TX: transmit, RX: receive).
SCL/SDA I2C Communication Clock (SCL) and data (SDA) lines for I2C communication.
MOSI/MISO SPI Communication SPI data lines (MOSI: Master Out Slave In, MISO: Master In).
EN Enable Enables or disables the ESP32 chip.
BOOT Boot Mode Used to enter bootloader mode for firmware flashing.

Usage Instructions

The Wemos D1 R32 is easy to use and highly adaptable for various projects. Follow the steps below to get started:

Connecting the Board

  1. Power the Board: Connect the board to your computer or a power source using a Micro-USB cable. Ensure the input voltage is 5V.
  2. Install Drivers: If required, install the USB-to-serial drivers for the ESP32 chip (e.g., CP210x or CH340 drivers).
  3. Set Up the IDE: Use the Arduino IDE or ESP-IDF for programming. For Arduino IDE:
    • Install the ESP32 board package via the Board Manager.
    • Select "Wemos D1 R32" as the board under Tools > Board.
  4. Connect Peripherals: Attach sensors, actuators, or other components to the GPIO pins as needed.

Example Code: Blinking an LED

Below is an example of how to blink an LED connected to GPIO2:

// Example: Blink an LED connected to GPIO2 on the Wemos D1 R32

// Define the GPIO pin for the LED
const int ledPin = 2;

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

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

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

Important Considerations and Best Practices

  • Voltage Levels: The GPIO pins operate at 3.3V. Avoid applying 5V directly to the pins to prevent damage.
  • Power Supply: Use a stable power source to ensure reliable operation, especially when using Wi-Fi or Bluetooth.
  • Pin Multiplexing: Some pins have multiple functions (e.g., ADC, UART). Check the datasheet to avoid conflicts.
  • Boot Mode: To upload code, ensure the board is in the correct boot mode. Press and hold the BOOT button if necessary.

Troubleshooting and FAQs

Common Issues and Solutions

  1. Board Not Detected by Computer

    • Ensure the USB cable is functional and supports data transfer.
    • Install the correct USB-to-serial drivers for your operating system.
  2. Code Upload Fails

    • Check the selected board and port in the Arduino IDE.
    • Press and hold the BOOT button while uploading the code.
  3. Wi-Fi Connection Issues

    • Verify the SSID and password in your code.
    • Ensure the Wi-Fi network is within range and operational.
  4. GPIO Pin Not Working

    • Confirm the pin is not being used for another function (e.g., ADC, UART).
    • Check for wiring issues or incorrect pinMode configuration.

FAQs

Q: Can I power the board using a battery?
A: Yes, you can power the board using a 3.7V LiPo battery connected to the 3V3 pin or a 5V source connected to the VIN pin.

Q: How do I reset the board?
A: Press the RESET button on the board to restart the microcontroller.

Q: Can I use the Wemos D1 R32 with MicroPython?
A: Yes, the ESP32 chip supports MicroPython. Flash the MicroPython firmware to the board and use a compatible IDE like Thonny.

Q: Are all GPIO pins available for use?
A: Not all GPIO pins are available for general use. Some are reserved for specific functions. Refer to the ESP32 datasheet for details.

By following this documentation, you can effectively utilize the Wemos D1 R32 for your projects.