SparkFun Thing Plus - ESP32 WROOM (U.FL)

The SparkFun ESP32 Thing Plus with U.FL is the next step to get started with Espressif IoT ideations while still enjoying all the amenities of the original ESP32 Thing. Espressif's ESP32 WROOM is a powerful WiFi and Bluetooth MCU module that targets a wide variety of applications. At the core of this module is the ESP32-D0WDQ6 chip which is designed to be both scalable and adaptive. To make the Thing Plus even easier to use, we've moved a few pins around to make the board Feather compatible and it utilizes our handy Qwiic Connect System which means no soldering or shields are required to connect it to the rest of your system!

Why the name? We lovingly call it the “Thing” because it's the perfect foundation for your Internet of Things project. The Thing does everything from turning on an LED to posting data with your chosen platform, and can be programmed just like any microcontroller. You can even program the Thing through the Arduino IDE by installing the updated ESP32 Arduino Core.

The ESP32 Thing plus integrates a rich set of peripherals, ranging from capacitive touch sensors, Hall sensors, SD card interface, Ethernet, high-speed SPI, UART, I2S and I2C. Thanks to the onboard ESP32 WROOM module, the SparkFun Thing Plus features 16MB of flash memory, 520kB of internal SRAM, an integrated 802.11 BGN WiFi transceiver and dual-mode Bluetooth capabilities, a JST connector to plug in a LiPo battery, and a U.FL connector for your own antenna.


The SparkFun Qwiic Connect System is an ecosystem of I2C sensors, actuators, shields and cables that make prototyping faster and less prone to error. All Qwiic-enabled boards use a common 1mm pitch, 4-pin JST connector. This reduces the amount of required PCB space, and polarized connections mean you can’t hook it up wrong.


  • Dimensions: 2.30 x 0.90 Inches
  • Xtensa® dual-core 32-bit LX6 microprocessor
  • Up to 240MHz clock frequency
  • 16MB of flash storage
  • 520kB internal SRAM
  • Integrated 802.11 BGN WiFi transceiver
  • Integrated dual-mode Bluetooth (classic and BLE)
  • U.FL Connector
  • 2.3 to 3.6V operating range
  • 21 GPIO
  • 8-electrode capacitive touch support
  • Hardware accelerated encryption (AES, SHA2, ECC, RSA-4096)
  • 2.5 µA deep sleep current

SparkFun Thing Plus - ESP32 WROOM (U.FL) Product Help and Resources

ESP32 Thing Plus Hookup Guide

March 7, 2019

Hookup guide for the ESP32 Thing Plus using the ESP32 WROOM's WiFi/Bluetooth system-on-chip in Arduino.

SparkFun Qwiic Shield for Thing Plus Hookup Guide

January 30, 2020

A short guide for assembling and using the SparkFun Qwiic Shield for Thing Plus.

Core Skill: Programming

If a board needs code or communicates somehow, you're going to need to know how to program or interface with it. The programming skill is all about communication and code.

3 Programming

Skill Level: Competent - The toolchain for programming is a bit more complex and will examples may not be explicitly provided for you. You will be required to have a fundamental knowledge of programming and be required to provide your own code. You may need to modify existing libraries or code to work with your specific hardware. Sensor and hardware interfaces will be SPI or I2C.
See all skill levels


Core Skill: Electrical Prototyping

If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.

2 Electrical Prototyping

Skill Level: Rookie - You may be required to know a bit more about the component, such as orientation, or how to hook it up, in addition to power requirements. You will need to understand polarized components.
See all skill levels


Comments

Looking for answers to technical questions?

We welcome your comments and suggestions below. However, if you are looking for solutions to technical questions please see our Technical Assistance page.

  • Word of warning, the ADC on ESP32 is lackluster to be kind, and closer to 'garbage'. Problem #1, ADC module #2 isn't available when using Wifi. Problem #2 arose when tried to use ADC1...it has absolute garbage performance. Values under 0.1mv are flat out ignored, and the response is non linear. Additionally voltages that do register result in a lot of noise. I was only sampling once per second, so I wasn't trying max speed. Top range is configurable with an attenuation register, but by default it tops out at 2.2V. (VREF is not 3.3V!). This took a while to find out. Old Microchip PICs had better A2D performance a decade ago, I don't know why this is so bad. The rest of this product is great. dual core, easy to use wifi, and so on, with good Arduino support (plus ESP provides libraries to work around Arduino and give you full access). Just be sure to buy a Qwicc A2D module or supply your own a2d.

  • Can you use the QWIIC interface and pins 22-23 at the same time or are they wired together?

    Edit: After looking at the schematic, it appears that they are tied together.

  • I am looking at the picture and I see what appears to be an RJ45 ethernet jack on there, and do not see the socket for the battery like on the older model. Where can I attach a Lithium Ion Battery? Would like to know before I purchase for a practice project at home.

Customer Reviews

5 out of 5

Based on 6 ratings:

Currently viewing all customer reviews.

Better than an Arduino. IMO

Faster & cheaper than Arduino but can be programmed in the Arduino environment. It has built in WiFi, Bluetooth and battery management.

Works as advertised

Had an issue but the support team took care of it immediately. Great service.

Good product

The external antenna reliably extends the range to my WiFi access point.

Good product

The external antenna reliably extends the range to my WiFi access point.

Good product

The external antenna reliably extends the range to my WiFi access point.

ESP32 processor

The SparkFun thing plus is one of most amazing processors that I have ever used. It is relatively fast and has both WiFi and BLE capability in one package. I have also used its deep sleep mode to save the need for either a relay or a switch. My experience with programing the processor is that the Arduino interface is okay, the C++ is complicated, and the python assembler is limited. I presently use the Arduino because there are many libraries that allow one to build prototypes quickly. My problem is that they are black boxes and when I get into trouble I have a hard time figuring out what exactly is going on. The BLE library is an example.