SparkFun Qwiic Universal Auto-Detect
![]() |
SparkFun ESP32 Thing Plus C (SPX-18018) |
The SparkFun Qwiic Universal Auto-Detect library makes it easy to create a scalable Qwiic (I2C) sensing and logging device on a wide range of platforms.
Key Features
- Automatic detection of a wide range of Qwiic sensors
- Built-in Qwiic Mux support
- Only one library to install
- This library contains automatically-updated copies of all the necessary sensor libraries
- Adding new sensors is easy
- There is only one file to add and three files to modify when adding a new sensor
- Built-in menu system
- The sensor and menu configuration can be stored in:
- EEPROM
- LittleFS
- SD or microSD card: both SD and SdFat are supported
Getting Started
The Getting Started Page outlines library installation and the general use of the SparkFun Qwiic Universal Auto-Detect library.
Detailed examples
are included as part of the library installation process and available in the Arduino IDE File > Examples >
menu. A walk-thru of key examples is contained in the Examples section of this documentation set.
A full API Reference is also provided for the library.
Supported Sensors
- Pressure, Altitude, Humidity and Temperature Data:
- Air Quality and Environmental Sensors:
- Precision Temperature Sensors:
- Qwiic PT100 ADS122C04 platinum resistance sensor
- MCP9600 thermocouple amplifier
- TMP117 precision temperature sensor
- Global Navigation Satellite System (GNSS) navigation data:
- SFE QUAD can be linked to any of SparkFun’s u-blox GNSS boards allowing you to log accurate position, velocity and time data
- Distance:
- Weight:
- NAU7802 load cell sensor
- Battery Condition:
- MAX17048 fuel gauge
- Waypoint / Event logging:
Tested Platforms
- ESP32 with microSD
- ESP32 with EEPROM or LittleFS
- Artemis (Apollo3) with EEPROM
- SAMD21 with FlashAsEEPROM_SAMD as EEPROM
- SAMD51 with FlashAsEEPROM_SAMD as EEPROM
- STM32 with FlashStorage_STM32 as EEPROM
- RP2040 with microSD following the instructions in the Hookup Guide and using the pin definitions shown below:
// pins_arduino.h : pin definitions for the RP2040 Thing Plus (DEV-17745)
// SPI
#define PIN_SPI_MISO (12u)
#define PIN_SPI_MOSI (15u)
#define PIN_SPI_SCK (14u)
#define PIN_SPI_SS (9u)
// Wire
#define PIN_WIRE_SDA (6u)
#define PIN_WIRE_SCL (7u)
License
SparkFun Qwiic Universal Auto-Detect is licensed using the Open Source MIT License