The ESP-32 DEVKIT-V1 with Expansion Board, manufactured by Espressif, is a versatile development board designed for IoT (Internet of Things) applications. It features the powerful ESP32 chip, which integrates Wi-Fi and Bluetooth capabilities, making it ideal for wireless communication projects. The expansion board enhances the functionality of the ESP32 by providing additional GPIO pins, sensor interfaces, and prototyping-friendly features.
Parameter | Specification |
---|---|
Microcontroller | ESP32 (dual-core Xtensa LX6 processor) |
Clock Speed | Up to 240 MHz |
Flash Memory | 4 MB (varies by model) |
SRAM | 520 KB |
Wireless Connectivity | Wi-Fi 802.11 b/g/n, Bluetooth 4.2 (Classic + BLE) |
Operating Voltage | 3.3V |
Input Voltage (VIN) | 5V (via USB or external power supply) |
GPIO Pins | 30+ (varies with expansion board) |
ADC Channels | 18 (12-bit resolution) |
DAC Channels | 2 (8-bit resolution) |
Communication Interfaces | UART, SPI, I2C, I2S, PWM |
Power Consumption | Ultra-low power modes available |
Dimensions | 54 mm x 27 mm (approx.) |
The ESP-32 DEVKIT-V1 with Expansion Board provides a variety of pins for interfacing with peripherals. Below is the pinout description:
Pin Name | Functionality | Description |
---|---|---|
VIN | Power Input | Accepts 5V input from USB or external source |
GND | Ground | Common ground for the circuit |
3V3 | Power Output | Provides 3.3V output for peripherals |
EN | Enable | Resets the chip when pulled low |
GPIO0 | General Purpose I/O | Used for boot mode selection |
GPIO2 | General Purpose I/O | Can be used as PWM, ADC, or other functions |
GPIO4 | General Purpose I/O | Supports ADC, PWM, and other functions |
GPIO21 | SDA (I2C) | I2C data line |
GPIO22 | SCL (I2C) | I2C clock line |
TXD0 | UART Transmit | UART0 TX for serial communication |
RXD0 | UART Receive | UART0 RX for serial communication |
ADC1_CH0 | Analog Input | ADC channel 0 for analog signal measurement |
DAC1 | Digital-to-Analog Converter | DAC output channel 1 |
Note: The exact pin availability and functionality may vary depending on the specific expansion board used.
Powering the Board:
Programming the Board:
Connecting Peripherals:
Uploading Code:
Below is an example of using the ESP-32 DEVKIT-V1 to read data from a DHT11 temperature and humidity sensor and send it to a serial monitor:
#include <WiFi.h>
#include <DHT.h>
// Define DHT sensor type and pin
#define DHTPIN 4 // GPIO4 is connected to the DHT sensor
#define DHTTYPE DHT11 // DHT11 sensor type
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(115200); // Initialize serial communication
dht.begin(); // Initialize the DHT sensor
Serial.println("DHT11 Sensor Test");
}
void loop() {
delay(2000); // Wait 2 seconds between readings
// Read temperature and humidity
float humidity = dht.readHumidity();
float temperature = dht.readTemperature();
// Check if readings are valid
if (isnan(humidity) || isnan(temperature)) {
Serial.println("Failed to read from DHT sensor!");
return;
}
// Print readings to the serial monitor
Serial.print("Humidity: ");
Serial.print(humidity);
Serial.print("% Temperature: ");
Serial.print(temperature);
Serial.println("°C");
}
Note: Ensure the DHT sensor is connected to GPIO4 and powered with 3.3V or 5V.
Board Not Detected by Computer:
Code Upload Fails:
Wi-Fi Connection Issues:
Unstable Operation:
By following this documentation, users can effectively utilize the ESP-32 DEVKIT-V1 with Expansion Board for a wide range of IoT and prototyping applications.