Cirkit Designer LogoCirkit DesignerYour all-in-one circuit design IDE Launch Cirkit Designer App

How to Use SparkFun ESP32 Thing Plus: Examples, Pinouts, and Specs

Image of SparkFun ESP32 Thing PlusDesign with SparkFun ESP32 Thing Plus in Cirkit Designer

Introduction

The SparkFun ESP32 Thing Plus is a comprehensive development board that harnesses the power of the ESP32 microcontroller. This versatile board is equipped with Wi-Fi and Bluetooth capabilities, making it an ideal choice for a wide range of Internet of Things (IoT) applications. It can be used for home automation, wearable electronics, and various wireless sensor networks. With its rich set of I/O pins, the ESP32 Thing Plus can interface with numerous sensors and actuators, providing a robust platform for prototyping and product development.

Explore Projects Built with SparkFun ESP32 Thing Plus

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 ESP32-Based Motion Tracking System with ICM20948 Sensor: A project utilizing SparkFun ESP32 Thing Plus in a practical application
ESP32-Based Motion Tracking System with ICM20948 Sensor

This circuit features a SparkFun ESP32 Thing Plus microcontroller interfaced with an Adafruit ICM20948 9-axis motion sensor via an Adafruit TXB0104 4-channel bi-directional level shifter. The ESP32 reads data from the ICM20948 sensor, calculates orientation angles such as pitch, roll, yaw, and azimuth, and outputs these values to the serial monitor. The level shifter ensures compatibility between the 3.3V logic levels of the ESP32 and the 1.8V logic levels required by the ICM20948.

Open Project in Cirkit Designer
Image of ESP32-Based RFID Music Player with Arcade Button Controls: A project utilizing SparkFun ESP32 Thing Plus in a practical application
ESP32-Based RFID Music Player with Arcade Button Controls

This circuit features an ESP32 Devkit V1 microcontroller interfaced with a DFPlayer Mini MP3 player module, an RFID-RC522 reader, a piezo speaker, and two arcade buttons. The ESP32 controls audio playback through the DFPlayer Mini, which is connected to the speaker, and uses the RFID reader to trigger specific audio tracks based on RFID tag data. The arcade buttons are used to control playback and adjust volume, while a rocker switch and battery mount provide power management.

Open Project in Cirkit Designer
Image of ESP32-Based Interactive Audio Player with LCD Display and Battery Management: A project utilizing SparkFun ESP32 Thing Plus in a practical application
ESP32-Based Interactive Audio Player with LCD Display and Battery Management

This is a microcontroller-based interactive device featuring an ESP32 for control, a Serial MP3 Player for audio output, an LCD display for user interface, and various buttons for input. It includes a battery with a charging module and voltage regulation, and uses a rocker switch for power control. The system's functionality is determined by the embedded code, which is currently a placeholder for future development.

Open Project in Cirkit Designer
Image of ESP32 Mini Battery-Powered OLED Display with RTC and Potentiometer Control: A project utilizing SparkFun ESP32 Thing Plus in a practical application
ESP32 Mini Battery-Powered OLED Display with RTC and Potentiometer Control

This circuit is a battery-powered IoT device featuring an ESP32 microcontroller, an OLED display, and an RTC module for timekeeping. It includes a TP4056 for battery charging, a potentiometer for user input, and a pushbutton for resetting the ESP32. The circuit is designed to display information on the OLED and maintain accurate time using the RTC, with power management handled by the TP4056 and voltage regulation by the LM2596 and AMS1117.

Open Project in Cirkit Designer

Technical Specifications

Key Features

Pin Configuration

Pin Number Function Description
1 3V3 3.3V power supply
2 GND Ground
3-7 GPIO 13-17 General Purpose Input/Output Pins
8 TX0 UART0 Transmit
9 RX0 UART0 Receive
10-15 GPIO 32-33, 25-27 General Purpose Input/Output Pins
16 5V USB 5V supply or LiPo battery input
17 GND Ground
18-23 GPIO 12, 14, 16, 17, 22, 23 General Purpose Input/Output Pins
24 VIN Voltage Input for Battery

Note: This is a simplified pin configuration. For a complete pinout, refer to the SparkFun ESP32 Thing Plus schematic.

Usage Instructions

Getting Started

  1. Powering the Board:

    • Connect the board to your computer via a micro USB cable.
    • Alternatively, you can power the board with a LiPo battery connected to the JST connector.
  2. Installing the ESP32 Arduino Core:

    • In your Arduino IDE, go to File > Preferences and add the following URL to the "Additional Board Manager URLs" field:
      https://dl.espressif.com/dl/package_esp32_index.json
      
    • Open the Board Manager from Tools > Board > Boards Manager... and install the "ESP32 by Espressif Systems" package.
  3. Selecting the Board:

    • Go to Tools > Board and select "SparkFun ESP32 Thing Plus".
  4. Selecting the Port:

    • Connect the board to your computer and select the appropriate COM port under Tools > Port.
// This example code blinks the onboard LED on the ESP32 Thing Plus.

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

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

Note: Before uploading the code, ensure that the correct board and port are selected in the Arduino IDE.

Best Practices

Troubleshooting and FAQs

Common Issues

FAQs

For further assistance, consult the SparkFun ESP32 Thing Plus forums or the extensive ESP32 online community for additional resources and support.