

The Qwiic Shield (Thing Plus) by SparkFun is a versatile add-on board designed to expand the functionality of the Thing Plus microcontroller. It features multiple Qwiic connectors, enabling seamless integration of I2C sensors and devices. This shield simplifies rapid prototyping and development by eliminating the need for soldering or complex wiring, making it ideal for both beginners and experienced developers.








The Qwiic Shield (Thing Plus) is designed to work seamlessly with SparkFun's Thing Plus microcontroller boards. Below are the key technical details:
| Parameter | Value |
|---|---|
| Microcontroller Compatibility | SparkFun Thing Plus (ESP32, RP2040, etc.) |
| I2C Interface | Qwiic Connect System (4-pin JST connector) |
| Number of Qwiic Ports | 4 |
| Input Voltage | 3.3V (from Thing Plus board) |
| Dimensions | 2.5" x 1.0" (63.5mm x 25.4mm) |
| Weight | ~5g |
The Qwiic Shield connects directly to the Thing Plus microcontroller via its headers. Below is the pin configuration for the Qwiic connectors:
| Pin Name | Description |
|---|---|
| GND | Ground |
| 3.3V | Power supply (3.3V) |
| SDA | I2C Data Line |
| SCL | I2C Clock Line |
The Qwiic Shield (Thing Plus) is designed for plug-and-play functionality, making it easy to connect and use I2C devices. Follow the steps below to get started:
Below is an example of how to use the Qwiic Shield with a Qwiic-compatible temperature sensor (e.g., SparkFun TMP102):
#include <Wire.h> // Include the Wire library for I2C communication
#include <SparkFun_TMP102.h> // Include the TMP102 library
TMP102 tempSensor; // Create an instance of the TMP102 class
void setup() {
Serial.begin(9600); // Initialize serial communication
Wire.begin(); // Initialize I2C communication
if (!tempSensor.begin()) {
// Check if the sensor is connected
Serial.println("TMP102 not detected. Check connections.");
while (1); // Halt the program if the sensor is not found
}
Serial.println("TMP102 detected. Starting temperature readings...");
}
void loop() {
float temperature = tempSensor.readTempC(); // Read temperature in Celsius
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println(" °C");
delay(1000); // Wait 1 second before the next reading
}
Qwiic Device Not Detected
I2C Address Conflict
No Data from Sensor
Intermittent Communication Issues
Q: Can I use the Qwiic Shield with non-SparkFun I2C devices?
A: Yes, as long as the device uses the I2C protocol and operates at 3.3V. You may need to use a Qwiic adapter for non-Qwiic devices.
Q: How many devices can I connect to the Qwiic Shield?
A: The I2C bus supports multiple devices, but the total number depends on the power requirements and address availability of the devices.
Q: Can I stack multiple Qwiic Shields?
A: No, the Qwiic Shield is designed to be used as a single layer on top of the Thing Plus microcontroller.
Q: Is the Qwiic Shield compatible with 5V microcontrollers?
A: No, the Qwiic Shield is designed for 3.3V microcontrollers like the Thing Plus series. Using it with 5V microcontrollers may damage the shield or connected devices.