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

How to Use Esp32 Feather v2: Examples, Pinouts, and Specs

Image of Esp32 Feather v2
Cirkit Designer LogoDesign with Esp32 Feather v2 in Cirkit Designer

Introduction

The ESP32 Feather v2 by Adafruit is a compact and versatile microcontroller board designed for IoT (Internet of Things) applications. It features a powerful dual-core ESP32 processor with integrated Wi-Fi and Bluetooth capabilities, making it ideal for wireless communication and smart device projects. The board is part of Adafruit's Feather ecosystem, ensuring compatibility with a wide range of FeatherWing add-ons for extended functionality.

Explore Projects Built with Esp32 Feather v2

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-Based Vibration Feedback System with Quad Alphanumeric Display and ADXL343 Accelerometer
Image of EC444 - Quest 3: A project utilizing Esp32 Feather v2 in a practical application
This circuit features an Adafruit HUZZAH32 ESP32 Feather board as the central microcontroller, which is connected to an Adafruit Quad AlphaNumeric Featherwing display and an Adafruit ADXL343 accelerometer via I2C communication (SCL and SDA lines). The ESP32 controls a vibration motor connected to one of its GPIO pins (A5_IO4) and shares a common power supply (3.3V) and ground (GND) with the other components. The purpose of this circuit is likely to read acceleration data, display information on the alphanumeric display, and provide haptic feedback through the vibration motor.
Cirkit Designer LogoOpen Project in Cirkit Designer
Battery-Powered ESP32 Temperature Monitoring System
Image of Temp Sensor: A project utilizing Esp32 Feather v2 in a practical application
This circuit consists of an Adafruit HUZZAH32 ESP32 Feather microcontroller, a temperature sensor, and a battery. The ESP32 reads temperature data from the sensor and is powered by the battery, enabling wireless temperature monitoring.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-Based Force Measurement System with LSM303AGR Sensor
Image of final circuit diagram: A project utilizing Esp32 Feather v2 in a practical application
This circuit features an Adafruit HUZZAH32 ESP32 Feather microcontroller connected to an Adafruit LSM303AGR sensor via I2C communication lines (SCL and SDA), a force sensing resistor (FSR) interfaced through an analog input with a pull-up resistor, and powered by a 3xAA battery pack. The LSM303AGR sensor provides acceleration and magnetic field measurements, while the FSR detects applied force. The ESP32 processes these inputs and can be programmed to respond to sensor data for applications such as motion tracking and force measurement.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-Based Environmental Monitoring System with Water Flow Sensing
Image of Water: A project utilizing Esp32 Feather v2 in a practical application
This circuit features an ESP32 Devkit V1 microcontroller connected to a DHT22 temperature and humidity sensor and a water flow sensor. The ESP32 reads environmental data from the DHT22 via a digital input pin (D33) and monitors water flow through the water flow sensor connected to another digital input pin (D23). The ESP32 is powered through its VIN pin, and both sensors are powered by the ESP32's 3V3 output, with common ground connections.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Esp32 Feather v2

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 EC444 - Quest 3: A project utilizing Esp32 Feather v2 in a practical application
ESP32-Based Vibration Feedback System with Quad Alphanumeric Display and ADXL343 Accelerometer
This circuit features an Adafruit HUZZAH32 ESP32 Feather board as the central microcontroller, which is connected to an Adafruit Quad AlphaNumeric Featherwing display and an Adafruit ADXL343 accelerometer via I2C communication (SCL and SDA lines). The ESP32 controls a vibration motor connected to one of its GPIO pins (A5_IO4) and shares a common power supply (3.3V) and ground (GND) with the other components. The purpose of this circuit is likely to read acceleration data, display information on the alphanumeric display, and provide haptic feedback through the vibration motor.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Temp Sensor: A project utilizing Esp32 Feather v2 in a practical application
Battery-Powered ESP32 Temperature Monitoring System
This circuit consists of an Adafruit HUZZAH32 ESP32 Feather microcontroller, a temperature sensor, and a battery. The ESP32 reads temperature data from the sensor and is powered by the battery, enabling wireless temperature monitoring.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of final circuit diagram: A project utilizing Esp32 Feather v2 in a practical application
ESP32-Based Force Measurement System with LSM303AGR Sensor
This circuit features an Adafruit HUZZAH32 ESP32 Feather microcontroller connected to an Adafruit LSM303AGR sensor via I2C communication lines (SCL and SDA), a force sensing resistor (FSR) interfaced through an analog input with a pull-up resistor, and powered by a 3xAA battery pack. The LSM303AGR sensor provides acceleration and magnetic field measurements, while the FSR detects applied force. The ESP32 processes these inputs and can be programmed to respond to sensor data for applications such as motion tracking and force measurement.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Water: A project utilizing Esp32 Feather v2 in a practical application
ESP32-Based Environmental Monitoring System with Water Flow Sensing
This circuit features an ESP32 Devkit V1 microcontroller connected to a DHT22 temperature and humidity sensor and a water flow sensor. The ESP32 reads environmental data from the DHT22 via a digital input pin (D33) and monitors water flow through the water flow sensor connected to another digital input pin (D23). The ESP32 is powered through its VIN pin, and both sensors are powered by the ESP32's 3V3 output, with common ground connections.
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
  • Prototyping and development of connected devices
  • Data logging and remote monitoring

Technical Specifications

The ESP32 Feather v2 is packed with features to support a variety of applications. Below are its key technical details:

Key Technical Details

  • Processor: ESP32 dual-core Xtensa LX6 @ 240 MHz
  • Wireless Connectivity: Wi-Fi (802.11 b/g/n) and Bluetooth (v4.2 BR/EDR + BLE)
  • Flash Memory: 8 MB
  • PSRAM: 2 MB
  • Operating Voltage: 3.3V
  • Input Voltage: 5V via USB-C or LiPo battery
  • GPIO Pins: 21 (including ADC, DAC, I2C, SPI, UART, PWM)
  • USB Interface: USB-C for programming and power
  • Battery Support: JST connector for 3.7V LiPo batteries with charging circuit
  • Dimensions: 51mm x 23mm x 8mm
  • Weight: 5.5g

Pin Configuration and Descriptions

The ESP32 Feather v2 has a rich set of GPIO pins, each with multiple functions. Below is the pinout description:

Pin Name Function
1 GND Ground
2 3.3V 3.3V power output
3 EN Enable pin (active high)
4 GPIO0 General-purpose I/O, boot mode selection
5 GPIO1 (TX) UART TX (serial communication)
6 GPIO3 (RX) UART RX (serial communication)
7 GPIO5 General-purpose I/O, PWM capable
8 GPIO12 General-purpose I/O, ADC, PWM capable
9 GPIO13 General-purpose I/O, ADC, PWM capable
10 GPIO14 General-purpose I/O, ADC, PWM capable
11 GPIO15 General-purpose I/O, ADC, PWM capable
12 GPIO16 General-purpose I/O, ADC, PWM capable
13 GPIO17 General-purpose I/O, ADC, PWM capable
14 GPIO18 (SCK) SPI Clock
15 GPIO19 (MISO) SPI MISO (Master In Slave Out)
16 GPIO21 (MOSI) SPI MOSI (Master Out Slave In)
17 GPIO22 (SCL) I2C Clock
18 GPIO23 (SDA) I2C Data
19 BAT Battery voltage output
20 USB USB 5V power input/output
21 RST Reset pin (active low)

Usage Instructions

The ESP32 Feather v2 is easy to use and highly adaptable for various projects. Below are the steps and best practices for using the board:

How to Use the ESP32 Feather v2 in a Circuit

  1. Powering the Board:

    • Connect a USB-C cable to power the board and upload code.
    • Alternatively, connect a 3.7V LiPo battery to the JST connector for portable applications.
  2. Programming the Board:

    • Install the Arduino IDE and add the ESP32 board support package.
    • Select "Adafruit ESP32 Feather" as the board in the Arduino IDE.
    • Connect the board to your computer via USB-C and upload your code.
  3. Connecting Peripherals:

    • Use the GPIO pins to connect sensors, actuators, or other modules.
    • Ensure peripherals operate at 3.3V logic levels to avoid damaging the board.
  4. Wireless Communication:

    • Use the built-in Wi-Fi and Bluetooth capabilities for wireless communication.
    • Libraries such as WiFi.h and BluetoothSerial.h can simplify development.

Important Considerations and Best Practices

  • Voltage Levels: Ensure all connected peripherals operate at 3.3V logic levels.
  • Battery Charging: The onboard charging circuit supports 3.7V LiPo batteries. Do not exceed the recommended battery voltage.
  • Pin Multiplexing: Some GPIO pins have multiple functions (e.g., ADC, PWM). Refer to the pinout table to avoid conflicts.
  • Heat Management: The ESP32 can get warm during operation. Ensure proper ventilation if used in enclosed spaces.

Example Code for Arduino IDE

Below is an example of how to connect the ESP32 Feather v2 to a Wi-Fi network and blink an LED:

#include <WiFi.h> // Include the Wi-Fi library

// Replace with your network credentials
const char* ssid = "Your_SSID";
const char* password = "Your_PASSWORD";

void setup() {
  pinMode(13, OUTPUT); // Set GPIO13 as an output for the onboard LED
  Serial.begin(115200); // Start serial communication at 115200 baud

  // Connect to Wi-Fi
  Serial.print("Connecting to Wi-Fi");
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("\nWi-Fi connected!");
}

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

Troubleshooting and FAQs

Common Issues and Solutions

  1. Board Not Detected by Computer:

    • Ensure the USB-C cable is data-capable (not just for charging).
    • Check that the correct COM port is selected in the Arduino IDE.
  2. Code Upload Fails:

    • Press and hold the BOOT button while uploading code to enter bootloader mode.
    • Verify that the correct board and port are selected in the Arduino IDE.
  3. Wi-Fi Connection Issues:

    • Double-check the SSID and password in your code.
    • Ensure the Wi-Fi network is within range and not restricted.
  4. Overheating:

    • Avoid running the ESP32 at maximum load for extended periods.
    • Use a heat sink or ensure proper ventilation if necessary.

FAQs

  • Q: Can I use 5V peripherals with the ESP32 Feather v2?
    A: No, the ESP32 operates at 3.3V logic levels. Use a level shifter for 5V peripherals.

  • Q: How do I monitor battery voltage?
    A: Use the BAT pin to measure the battery voltage with an ADC pin.

  • Q: Can I use the ESP32 Feather v2 with CircuitPython?
    A: Yes, the board supports CircuitPython. Follow Adafruit's guide to install and use CircuitPython.

  • Q: What is the maximum current output of the 3.3V pin?
    A: The 3.3V pin can supply up to 500mA, depending on the input power source.

This concludes the documentation for the ESP32 Feather v2. For additional support, visit the Adafruit website.