How arduino-libraries/arduino_sensorkit works
Arduino SensorKit is an Arduino library that wraps sensor and OLED-display libraries behind convenient kit-level objects. The main workflow is a sketch using those objects to initialize hardware and read environmental, pressure, or acceleration data, or to render text on the OLED. The repository also bundles U8g2’s broader monochrome-display stack, including display setup, controller drivers, and a minimal UI layer. Edges reflect the README and shown imports, inheritance, or calls; the tree and excerpts do not establish every runtime dispatch within the bundled display library.
Main entry points: Arduino_SensorKit.h Kit objects · Seeed_BMP280.cpp BMP280 driver · DHT.cpp DHT driver · Arduino_SensorKit_LIS3DHTR.h LIS3DHTR driver
Components 18
SensorKit API
- Kit objects
src/Arduino_SensorKit.h - Pressure wrapper
src/Arduino_SensorKit_BMP280.cpp - Accelerometer wrapper
src/Arduino_SensorKit_LIS3DHTR.cpp - DHT wrapper
src/Arduino_SensorKit.h - OLED wrapper
src/Arduino_SensorKit.h
Sensor Drivers
- BMP280 driver
src/Grove_-_Barometer_Sensor_BMP280/Seeed_BMP280.cpp - DHT driver
src/Grove_Temperature_And_Humidity_Sensor/DHT.cpp - LIS3DHTR driver
src/Arduino_SensorKit_LIS3DHTR.h
Display Stack
- U8x8 text API
src/U8g2/src/U8x8lib.cpp - Arduino bus transport
src/U8g2/src/U8x8lib.cpp - Display controllers
src/U8g2/src/clib - U8g2 graphics API
src/U8g2/src/U8g2lib.cpp - Display setup
src/U8g2/src/clib/u8g2_d_setup.c
Display UI
- MUI core
src/U8g2/src/clib/mui.c - MUI U8g2 adapter
src/U8g2/src/clib/mui_u8g2.c
Other components
- Arduino sketch
- Arduino board
- Kit sensors and OLED
Connections 22
- Arduino sketch → Kit objects: uses
src/Arduino_SensorKit.h - Kit objects → Pressure wrapper: exposes
src/Arduino_SensorKit.h - Kit objects → Accelerometer wrapper: exposes
src/Arduino_SensorKit.h - Kit objects → DHT wrapper: exposes
src/Arduino_SensorKit.h - Kit objects → OLED wrapper: exposes
src/Arduino_SensorKit.h - Pressure wrapper → BMP280 driver: wraps
- DHT wrapper → DHT driver: inherits
src/Arduino_SensorKit.h - Accelerometer wrapper → LIS3DHTR driver: delegates
src/Arduino_SensorKit_LIS3DHTR.cpp - OLED wrapper → U8x8 text API: inherits
src/Arduino_SensorKit.h - BMP280 driver → Arduino board: uses I2C
src/Grove_-_Barometer_Sensor_BMP280/Seeed_BMP280.cpp - DHT driver → Arduino board: uses I2C
src/Grove_Temperature_And_Humidity_Sensor/DHT.cpp - LIS3DHTR driver → Arduino board: uses I2C
- BMP280 driver → Kit sensors and OLED: reads
- DHT driver → Kit sensors and OLED: reads
- LIS3DHTR driver → Kit sensors and OLED: reads
- OLED wrapper → Kit sensors and OLED: displays on
- U8g2 graphics API → Display setup: configures via
src/U8g2/src/clib/u8g2_d_setup.c - Display setup → Display controllers: selects controller
src/U8g2/src/clib/u8g2_d_setup.c - U8x8 text API → Arduino bus transport: uses callbacks
src/U8g2/src/U8x8lib.cpp - Arduino bus transport → Arduino board: transfers bytes
src/U8g2/src/U8x8lib.cpp - MUI U8g2 adapter → MUI core: adapts
src/U8g2/src/clib/mui_u8g2.c - MUI U8g2 adapter → U8g2 graphics API: uses
src/U8g2/src/clib/mui_u8g2.c