esp-idf-lib/core documentation
The core repository of esp-idf-lib
This is the core repository of esp-idf-lib. The organization is the successor of UncleRus/esp-idf-lib.
Supported versions of frameworks and devices
Chip |
Framework |
Versions |
---|---|---|
ESP32-xx |
ESP-IDF |
All officially supported versions (see Support Period Policy) and |
Purpose
The purpose of esp-idf-lib/coreis:
Documenting common policies and rules
Discussions about our components
Linking all the components and their status
Reporting issues in our component
When the issue is bug in the component, please open an Issue in the component repository.
Questions or discussions
For questions or discussions, use discussions in this repository.
Documentation
Requesting new driver
TBW
Components
Components for Espressif ESP32 ESP-IDF framework and ESP8266 RTOS SDK.
Part of them ported from esp-open-rtos.
ADC/DAC libraries
Name |
Description |
---|---|
Driver for ADS1113/ADS1114/ADS1115 and ADS1013/ADS1014/ADS1015 I2C ADC (Documentation) |
|
Driver for ADS130E08 ADC (Documentation) |
|
Driver for HX711 24-bit ADC for weigh scales (Documentation) |
|
Driver for 18-Bit, delta-sigma ADC MCP3426/MCP3427/MCP3428 (Documentation) |
|
Driver for 12-bit DAC MCP4725 (Documentation) |
|
Driver for 8-bit ADC and an 8-bit DAC PCF8591 (Documentation) |
|
Driver for SGM58031 16-bit I2C ADC (Documentation) |
Common libraries
Name |
Description |
---|---|
A template for esp-idf-lib component (Documentation) |
|
Multi-point calibration library (Documentation) |
|
Common library for RGB and HSV colors (Documentation) |
|
Common support library for esp-idf-lib (Documentation) |
|
RGB framebuffer component (Documentation) |
|
ESP-IDF I2C master thread-safe utilities (Documentation) |
|
Math functions specifically designed for LED programming (Documentation) |
|
Noise generation functions (Documentation) |
|
Bit-banging 1-Wire driver (Documentation) |
Real-time clocks
Name |
Description |
---|---|
Driver for DS1302 RTC module (Documentation) |
|
Driver for DS1307 RTC module (Documentation) |
|
Driver for DS1337 RTC and DS3231 high precision RTC module (Documentation) |
|
Driver for PCF8563 (BM8563) real-time clock/calendar (Documentation) |
Humidity sensors
Name |
Description |
---|---|
Driver for AHT10/AHT15/AHT20 temperature and humidity sensor (Documentation) |
|
Driver for AM2320 temperature and humidity sensor (I2C) (Documentation) |
|
Driver for BME680 digital environmental sensor (Documentation) |
|
Driver for DHT11, AM2301 (DHT21, DHT22, AM2302, AM2321), Itead Si7021 (Documentation) |
|
Driver for HDC1000 temperature and humidity sensor (Documentation) |
|
Driver for HTS221 temperature and humidity sensor (Documentation) |
|
Driver for SFA30 formaldehyde detection module (I2C) (Documentation) |
|
Driver for Sensirion SHT30/SHT31/SHT35 digital temperature and humidity sensor (Documentation) |
|
Driver for Sensirion SHT40/SHT41/SHT45 digital temperature and humidity sensor (Documentation) |
|
Driver for Si7013/Si7020/Si7021/HTU2xD/SHT2x and compatible temperature and humidity sensors (Documentation) |
Temperature sensors
Name |
Description |
---|---|
Driver for AHT10/AHT15/AHT20 temperature and humidity sensor (Documentation) |
|
Driver for AM2320 temperature and humidity sensor (I2C) (Documentation) |
|
Driver for BH1900NUX temperature sensor (Documentation) |
|
Driver for BME680 digital environmental sensor (Documentation) |
|
Driver for BMP180 digital pressure sensor (Documentation) |
|
Driver for BMP280/BME280 digital pressure sensor (Documentation) |
|
Driver for DHT11, AM2301 (DHT21, DHT22, AM2302, AM2321), Itead Si7021 (Documentation) |
|
Driver for DPS310 barometric pressure sensor (Documentation) |
|
Driver for DS18B20/DS18S20 families of 1-Wire temperature sensor ICs (Documentation) |
|
Driver for HDC1000 temperature and humidity sensor (Documentation) |
|
Driver for HTS221 temperature and humidity sensor (Documentation) |
|
Driver for LM75, a digital temperature sensor and thermal watchdog (Documentation) |
|
Driver for MAX31725/MAX31726 temperature sensors (Documentation) |
|
Driver for MAX31855 cold-junction compensated thermocouple-to-digital converter (Documentation) |
|
Driver for MAX31865 resistance converter for platinum RTDs (Documentation) |
|
Driver for MCP9600/MCP9601, thermocouple EMF to temperature converter (Documentation) |
|
Driver for MCP9808 digital temperature sensor (Documentation) |
|
Driver for barometic pressure sensor MS5611-01BA03 (Documentation) |
|
Driver for QMP6988 digital temperature and pressure sensor (Documentation) |
|
Driver for SFA30 formaldehyde detection module (I2C) (Documentation) |
|
Driver for Sensirion SHT30/SHT31/SHT35 digital temperature and humidity sensor (Documentation) |
|
Driver for Sensirion SHT40/SHT41/SHT45 digital temperature and humidity sensor (Documentation) |
|
Driver for Si7013/Si7020/Si7021/HTU2xD/SHT2x and compatible temperature and humidity sensors (Documentation) |
|
Driver for STS21 temperature sensor (Documentation) |
|
Driver for Sensirion STS30/STS31/STS35 digital temperature sensor (Documentation) |
|
Driver for precision digital temperature sensor TSYS01 (Documentation) |
Pressure sensors
Name |
Description |
---|---|
Driver for BME680 digital environmental sensor (Documentation) |
|
Driver for BMP180 digital pressure sensor (Documentation) |
|
Driver for BMP280/BME280 digital pressure sensor (Documentation) |
|
Driver for DPS310 barometric pressure sensor (Documentation) |
|
Driver for barometic pressure sensor MS5611-01BA03 (Documentation) |
|
Driver for QMP6988 digital temperature and pressure sensor (Documentation) |
Air quality sensors
Name |
Description |
---|---|
Driver for AMS CCS811 digital gas sensor (Documentation) |
|
Driver for MH-Z19B NDIR CO₂ sensor (Documentation) |
|
Driver for SCD30 CO₂ sensor (Documentation) |
|
Driver for SCD40/SCD41 miniature CO₂ sensor (Documentation) |
|
Driver for SFA30 formaldehyde detection module (I2C) (Documentation) |
|
Driver for SGP40 Indoor Air Quality Sensor for VOC Measurements (Documentation) |
Gas sensors
Name |
Description |
---|---|
Driver for AMS CCS811 digital gas sensor (Documentation) |
|
Driver for MH-Z19B NDIR CO₂ sensor (Documentation) |
|
Driver for SCD30 CO₂ sensor (Documentation) |
|
Driver for SCD40/SCD41 miniature CO₂ sensor (Documentation) |
|
Driver for SFA30 formaldehyde detection module (I2C) (Documentation) |
Current and power sensors
Name |
Description |
---|---|
Driver for INA219/INA220 bidirectional current/power monitor (Documentation) |
|
Driver for INA260 precision digital current and power monitor (Documentation) |
|
Driver for INA3221 shunt and bus voltage monitor (Documentation) |
Magnetic sensors
Name |
Description |
---|---|
Driver for 3-axis digital compass HMC5883L and HMC5983L (Documentation) |
|
Driver for LSM303 3-axis accelerometer and magnetometer sensor (Documentation) |
|
Driver for QMC5883L 3-axis magnetic sensor (Documentation) |
|
Driver for QMI8658C 6-axis IMU sensor (Documentation) |
Light sensors
Name |
Description |
---|---|
Driver for BH1750 light sensor (Documentation) |
|
Driver for light-to-digital converter TSL2561 (Documentation) |
|
Driver for light-to-digital converter TSL2591 (Documentation) |
|
Driver for digital ambient light sensor TSL4531 (Documentation) |
|
Driver for VEML7700 ambient light sensor (Documentation) |
GPIO expanders
Name |
Description |
---|---|
Driver for 8-bit I2C GPIO expander MCP23008 (Documentation) |
|
Driver for I2C/SPI 16 bit GPIO expanders MCP23017/MCP23S17 (Documentation) |
|
Driver for PCA9536/PCA9537/PCA9557/TCA9534 remote 4/8-bit I/O expanders for I2C-bus (Documentation) |
|
Driver for PCF8574 remote 8-bit I/O expander for I2C-bus (Documentation) |
|
Driver for PCF8575 remote 16-bit I/O expander for I2C-bus (Documentation) |
|
Driver for TCA6424A low-voltage 24-bit I2C I/O expander (Documentation) |
|
Driver for TCA9535/TCA9555 remote 16-bit I/O expanders for I2C-bus (Documentation) |
LED drivers
Name |
Description |
---|---|
HT16K33 LED controller driver (Documentation) |
|
RMT-based driver for WS2812B/SK6812/APA106/SM16703 LED strips (Documentation) |
|
SPI-based driver for SK9822/APA102 LED strips (Documentation) |
|
Driver for 8-Digit LED display drivers, MAX7219/MAX7221 (Documentation) |
|
Driver for PCA9632 4-channel PWM chip (Documentation) |
Input device drivers
Name |
Description |
---|---|
HW timer-based driver for GPIO buttons (Documentation) |
|
HW timer-based driver for incremental rotary encoders (Documentation) |
|
Driver for LS7366R Quadrature Encoder Counter (Documentation) |
Other misc libraries
Name |
Description |
---|---|
Driver for nonvolatile digital potentiometer DS3502 (Documentation) |
|
An example component (Documentation) |
|
Driver for HD44780 compatible LCD text displays (Documentation) |
|
Driver for impulse output sensors (Documentation) |
|
Driver for 16-channel, 12-bit PWM PCA9685 (Documentation) |
|
Driver for single-chip broadcast FM radio tuner RDA5807M (Documentation) |
|
Driver for TCA9548A/PCA9548A low-voltage 8-channel I2C switch (Documentation) |
|
Driver for TDA7439/TDA7439DS/TDA7440D audioprocessors (Documentation) |
|
Driver for Texas Instruments TPS631012 and TPS631013 1.6-V to 5.5-V Input Voltage 1.5-A Buck-boost Converter with I2C (Documentation) |
|
Driver for ultrasonic range meters, e.g. HC-SR04, HY-SRF05 (Documentation) |
|
Wiegand protocol receiver (Documentation) |
Inertial measurement units
Name |
Description |
---|---|
Driver for TDK ICM-42670-P 6-Axis IMU (Documentation) |
|
Driver for L3Gx(L3GD20/L3G4200D) 3-axis gyroscope sensors (Documentation) |
|
Driver for LSM303 3-axis accelerometer and magnetometer sensor (Documentation) |
|
Driver for MPU6000/MPU6050 6-axis MotionTracking device (Documentation) |
Battery controllers
Name |
Description |
---|---|
Driver for LC709203F battery fuel gauge (Documentation) |
|
Driver for MAX17043/MAX17044/MAX17048/MAX17049 battery fuel gauge (Documentation) |
|
Driver for MP2660 5V USB, 500mA, I2C-Controlled Linear Charger with Power Path Management for Single-Cell Li-Ion Battery (Documentation) |
Contributors
Alex Stewart
ds18x20
Alexander Bodenseher
hts221
Andrej Krutak
bh1750
Angelo Elias Dalzotto
mpu6050
BernhardG
ms5611
BhuvanchandraD
ds3231
Brian Schwind
tsl2561
tsl4531
Cedric von Gunten
qmp6988
Christian Skjerning
sts3x
David Douard
mhz19b
Erriez
mhz19b
FastLED project
color
lib8tion
noise
Frank Bargstedt
bmp180
Gabriel Boni Vicari
mpu6050
GrzegorzH
ds18x20
Gunar Schorcht
bme680
ccs811
sht3x
sts3x
Jakub Turek
impulse_sensor
l3gx
lsm303
pca9632
Jan Veeh
icm42670
Jeff Rowberg
mpu6050
Jose Manuel Perez
lc709203f
sgm58031
Joshua Butler
max1704x
Joshua Kallus
ls7366r
Julian Doerner
tsl2591
Lucio Tarantino
ads111x
Manuel Markwort
mp2660
tps63101x
Marc Luehr
veml7700
Nate Usher
scd30
Pavel Merzlyakov
ds1302
Raghav Jha
mpu6050
RichardA
ds3231
Ruslan V. Uss
ads111x
aht
am2320
bh1750
bh1900nux
bme680
bmp180
bmp280
button
calibration
ccs811
dht
ds1302
ds1307
ds18x20
ds3231
ds3502
encoder
framebuffer
hd44780
hdc1000
hmc5883l
hx711
i2cdev
ina219
ina260
ina3221
led_strip
led_strip_spi
max31725
max31855
max31865
max7219
mcp23008
mcp23x17
mcp342x
mcp4725
mcp960x
mcp9808
mpu6050
ms5611
onewire
pca9557
pca9685
pcf8563
pcf8574
pcf8575
pcf8591
qmc5883l
qmp6988
rda5807m
scd30
scd4x
sfa3x
sgp40
sht3x
sht4x
si7021
sts21
sts3x
tca6424a
tca9548
tca95x5
tda74xx
tsl2561
tsl4531
tsys01
ultrasonic
wiegand
Sensirion AG
scd30
scd4x
sfa3x
Thanh Pham
pcf8591
Timofei Korostelev
ht16k33
Tomoyuki Sakurai
bmi160
dps310
esp_idf_lib_helpers
example
led_strip_spi
lm75
Weslley Duarte
ads130e08
Zaltora
ina3221
jsuiker
dht
lukbieli
bmi160
sheinz
bmp280
xyzroe
qmi8658c
zeroday
onewire
Contributing
Component status