

The Durian ESP32 is a powerful and versatile microcontroller board designed for a wide range of applications, particularly in the Internet of Things (IoT) domain. It features built-in Wi-Fi and Bluetooth capabilities, making it ideal for wireless communication and smart device integration. With multiple GPIO pins, analog-to-digital converters (ADCs), and support for various programming environments such as Arduino IDE, MicroPython, and ESP-IDF, the Durian ESP32 is suitable for both hobbyists and professionals.








The Durian ESP32 offers robust hardware capabilities to support a variety of applications. Below are its key technical specifications:
| Specification | Details |
|---|---|
| Microcontroller | Dual-core Xtensa® 32-bit LX6 |
| Clock Speed | Up to 240 MHz |
| Flash Memory | 4 MB |
| SRAM | 520 KB |
| Wi-Fi | 802.11 b/g/n |
| Bluetooth | v4.2 BR/EDR and BLE |
| Operating Voltage | 3.3V |
| Input Voltage (VIN) | 5V |
| GPIO Pins | 34 |
| ADC Channels | 18 (12-bit resolution) |
| DAC Channels | 2 |
| Communication Interfaces | UART, SPI, I2C, I2S, CAN |
| Power Consumption | Ultra-low power modes available |
| Dimensions | 51mm x 25.5mm |
The Durian ESP32 has a total of 38 pins, with the following key functionalities:
| Pin | Name | Description |
|---|---|---|
| 1 | VIN | Input voltage (5V) |
| 2 | GND | Ground |
| 3 | 3V3 | 3.3V output |
| 4-39 | GPIO0-GPIO39 | General-purpose input/output pins |
| 34-39 | ADC1 Channels | Analog-to-digital converter inputs |
| 25, 26 | DAC1, DAC2 | Digital-to-analog converter outputs |
| 21, 22 | SDA, SCL | I2C communication pins |
| 16, 17 | RX, TX | UART communication pins |
| 18, 19 | SCK, MISO | SPI clock and data pins |
The Durian ESP32 is easy to integrate into a variety of projects. Below are the steps and best practices for using the board:
Powering the Board:
Connecting Peripherals:
Programming the Board:
The following example demonstrates how to blink an LED connected to GPIO2:
// Example: Blink an LED on GPIO2
// Ensure the LED is connected to GPIO2 with a current-limiting resistor.
#define LED_PIN 2 // Define the GPIO pin for the LED
void setup() {
pinMode(LED_PIN, OUTPUT); // Set GPIO2 as an output pin
}
void loop() {
digitalWrite(LED_PIN, HIGH); // Turn the LED on
delay(1000); // Wait for 1 second
digitalWrite(LED_PIN, LOW); // Turn the LED off
delay(1000); // Wait for 1 second
}
The board is not detected by the computer:
Code upload fails:
Wi-Fi connection issues:
GPIO pin not working:
Can I power the Durian ESP32 with a battery?
Yes, you can use a 3.7V LiPo battery connected to the 3V3 pin or a 5V source to the VIN pin.
What is the maximum current output of the GPIO pins?
Each GPIO pin can source or sink up to 12mA. For higher currents, use an external transistor or relay.
Can I use the Durian ESP32 with MicroPython?
Yes, the Durian ESP32 supports MicroPython. Flash the MicroPython firmware to the board and use a compatible IDE like Thonny.
By following this documentation, you can effectively utilize the Durian ESP32 for your projects and troubleshoot common issues with ease.