Skip to main content
Ctrl+K

espp

  • Getting Started
  • API Reference
  • Dev Boards (BSPs)
  • Web Apps
  • Running espp in QEMU
  • GitHub
  • Discord
  • Getting Started
  • API Reference
  • Dev Boards (BSPs)
  • Web Apps
  • Running espp in QEMU
  • GitHub
  • Discord

Section Navigation

Core & RTOS

  • Core & RTOS APIs
    • Base Component
    • Base Peripheral
    • Task APIs
      • Task Example
    • Thread Pool APIs
      • Thread Pool Example
    • RunQueue APIs
      • RunQueue Example
    • Timer APIs
      • Timer Example
      • Timer Example
    • Interrupt APIs
      • Interrupt Example
    • Event Manager APIs
      • Event Manager Example
    • State Machine APIs
      • Hierarchichal Finite State Machine (HFSM) Example
    • Logging APIs
      • Logger Example
      • Binary Log Example
    • Monitoring APIs
      • Monitor Example
      • Monitor Example
    • Command Line Interface (CLI) APIs
      • Cli Example
  • Crash Reporting (Core Dump) APIs
    • Core Dump (Crash Reporting)
      • CoreDump Example
  • System APIs
    • System Info, Control & Service
      • System Info + Control over USB Example
  • Desktop APIs
    • Desktop, Desktop Service & Console Capture
      • Desktop over USB Example

Storage & Configuration

  • Storage & Configuration APIs
    • File System APIs
      • File System Example
    • NVS APIs
      • NVS Example
    • Persistent Data APIs
      • Persistent Data Example
    • SD Card
      • SD Card Example

Buses & I/O

  • Buses & Low-Level I/O APIs
    • I2C
      • I2C Example
      • I2C Example
    • SPI
      • SPI Example
    • Remote Control Transceiver (RMT)
      • RMT Example
    • TWAI (CAN 2.0) APIs
      • TWAI (CAN 2.0) Example
    • CANopen (CiA 301) Client APIs
      • CANopen Client Example
    • USB Device Component
      • USB Device Example (CDC + Vendor/WebUSB + MSC, with the standard espp USB services)
      • X-Input (Xbox 360) controller example
      • USB Mass Storage (MSC) Example
    • USB Host Component
      • USB Host Example
      • USB HID Host on the M5Stack Tab5 (HID device viewer)
  • IO Expander APIs
    • AW9523 I/O Expander
      • AW9523 Example
    • PI4IOE5V I/O Expander
      • PI4IOE5V Example
    • KTS1622 I/O Expander
      • KTS1622 Example
    • MCP23x17 I/O Expander
      • MCP23x17 Example
    • PCA9535 / PCA9555 I/O Expander
      • PCA9535 Example

Sensors

  • ADC APIs
    • ADS1x15 I2C ADC
      • Ads1x15 Example
    • ADS7138 I2C ADC
      • Ads7138 Example
    • Oneshot ADC
      • ADC Example
    • Continuous ADC
      • ADC Example
    • TLA2528 I2C ADC
      • Tla2528 Example
    • ADC Types
  • IMU APIs
    • ADXL345 3-Axis Accelerometer
      • ADXL345 Example
    • BMI270 6-Axis IMU
      • BMI270 Example
    • BNO055 9-Axis Absolute Orientation IMU
      • BNO055 Example
    • ICM20948 9-Axis IMU
      • ICM20948 Example
    • ICM42607 6-Axis IMU
      • ICM42607 Example
    • LSM6DSO 6-Axis IMU
      • LSM6DSO Example
    • QMI8658 6-Axis IMU
      • QMI8658 Example
  • Encoder APIs
    • ABI Encoder
      • Encoder Example
    • Encoder Types
    • Magnetic Encoder Base
    • AS5600 Magnetic Encoder
      • As5600 Example
    • MT6701 Magnetic Encoder
      • Mt6701 Example
  • Distance Sensor APIs
    • VL53LXX ToF Distance Sensor
      • VL53LXX Example
    • VL53L5CX Multizone ToF Sensor
      • VL53L5CX Multizone ToF Example
      • VL53L5CX Web Console Example
  • Presence Sensor APIs
    • AT581X Radar Presence Sensor
      • AT581X Example
  • Battery APIs
    • BQ27220
      • BQ27220 Example
    • MAX1704X
      • MAX1704X Example
  • Power Monitoring APIs
    • INA226 I2C Current/Power Monitor
      • INA226 Example
  • RTC APIs
    • BM8563
      • BM8563 Example
    • PCF85063
      • PCF85063 Example
    • RX8130CE
      • RX8130CE Example
  • Thermistor APIs
    • Thermistor Example

Motor Control

  • Motor Control APIs
    • PID APIs
      • PID Example
    • ADRC APIs
      • ADRC Example
    • Motor Controller Interface
    • Basicmicro (MCP / RoboClaw) Motor Controller Component
      • Basicmicro (MCP / RoboClaw) Example
    • MCP266 CANopen Motor Controller Component
      • MCP266 CANopen Example
    • ODrive ASCII Protocol Component
      • ODrive ASCII Example
    • ODrive Native (Fibre endpoint) Protocol Component
      • ODrive Native (Fibre endpoint) Example
      • ODrive-compatible USB Device Example (CDC + Vendor/WebUSB + HID)
    • Trajectory Planner APIs
      • Trajectory Planner Example
  • Motor (BDC + BLDC) APIs
    • BDC Driver
      • BDC Driver Example
    • BLDC Types & Concepts
    • BLDC Driver
    • BLDC Motor
      • BldcMotor Example
    • BLDC Current Sense
      • BLDC Current Sense Example

Audio

  • Audio APIs
    • Audio
      • Audio Example

Displays, LEDs & Haptics

  • Display APIs
    • Display
    • Display Drivers
      • Display Drivers Example
    • Expressive Eyes APIs
      • Expressive Eyes Example
  • LED & Lighting APIs
    • LED APIs
      • LED Example
    • LED Strip APIs
      • LED Strip Example
    • Neopixel APIs
      • Neopixel Example
  • LED Driver Components
    • LP5817 RGB LED Driver
      • LP5817 Example
  • Haptics APIs
    • BLDC Haptics
      • BLDC Haptics Example (USB / WebUSB controlled)
    • DRV2605 Haptic Motor Driver
      • Drv2605 Example

Input & HID

  • Input APIs
    • Button APIs
      • Button Example
    • Joystick APIs
      • Joystick Example
    • Controller APIs
      • Controller Example
    • QwiicNES
      • QwiicNES Example
    • CHSC6X Touch Controller
      • CHSC6X Example
    • CST816 Touch Controller
      • CST816 Example
    • FT5x06 Touch Controller
      • FT5x06 Example
    • GT911 Touch Controller
      • GT911 Example
    • ST7123 Touch Controller
      • ST7123Touch Example
    • LilyGo T-Keyboard
      • LilyGo T-Keyboard Example
    • Touch Interface
      • Touch Interface Example
    • TT21100 Touch Controller
      • TT21100 Example
    • Encoder Input
    • Keypad Input
    • Pointer Input
    • Touchpad Input
  • HID APIs
    • HID-RP
      • HID-RP Example
    • Switch Pro Controller (NS1)
      • Switch Pro (NS1) USB Example

Connectivity & Protocols

  • Network APIs
    • DNS Server
      • DNS Server Example
    • Ethernet
      • Ethernet Example
    • Ethernet Example
    • Ping
      • Ping Example
    • Provisioning
      • Provisioning Example
    • Socket Example
    • Socket Component
    • TCP Sockets
    • UDP Sockets
    • Socket Reactor
  • WiFi APIs
    • WiFi
      • WiFi Example
    • WiFi Access Point (AP)
      • WiFi Example
    • WiFi Station (STA)
      • WiFi Example
    • WiFi Example
  • BLE APIs
    • Battery Service
    • BLE GATT Server
      • BLE GATT Server Example
    • BLE GATT Server Example
    • Device Info Service
    • Generic Access Service
    • Google Fast Pair Service (GFPS) Service
      • Google Fast Pair Service (GFPS) Service Example
    • Google Fast Pair Service (GFPS) Service Example
    • HID Service
      • BLE HID Service Example
    • BLE HID Service Example
    • Switch 2 Pro Controller
      • Switch 2 Pro Controller Example
    • Switch 2 Pro Controller Example
  • FTP APIs
    • FTP Server
      • FTP Example
  • NFC APIs
    • NDEF
    • ST25DV
      • St25dv Example
  • Firmware Update (OTA) APIs
    • OTA (Over-the-Air Firmware Update)
      • OTA Example
  • Stream Frame APIs
    • Stream Frame
  • Dispatcher APIs
    • Dispatcher
    • Building Custom Modules & Protocols
  • Telemetry APIs
    • Telemetry
      • Telemetry — USB example (→ Serial Plotter web app)
  • WDI (Wheelchair Digital Interface) APIs
    • Wheelchair Digital Interface (WDI)
  • Wireless & Radio APIs
    • SX126x LoRa Radio
      • SX126x Example
    • GPS / GNSS
      • GPS Example
    • Meshtastic
      • Meshtastic Example
  • Protocols & Network Tools APIs
    • RTPS APIs
      • RTPS Example
    • RTPS Services & Actions (RMI / AMI)
    • RTSP APIs
      • RTSP Example
    • Remote Debug APIs
      • Remote Debug Example
    • Iperf Menu
      • Iperf Menu Example

Math & DSP

  • Math APIs
    • Math Example
    • Bezier
    • Fast Math
    • Gaussian
    • Range Mapper
    • Vector2d
    • Color APIs
      • Color Example
  • Filter APIs
    • Filters Example
    • Biquad Filter
    • Butterworth Filter
    • Complementary Filter
    • Kalman Filter
    • Lowpass Filter
    • Madgwick Filter
    • Simple Lowpass Filter
    • Second Order Sections (SoS) Filter
    • Transfer Function API

Data & Serialization

  • Data & Serialization APIs
    • Serialization APIs
      • Serialization Example
    • CDR (Common Data Representation)
      • CDR Example
    • COBS (Consistent Overhead Byte Stuffing)
      • COBS Example
    • CSV APIs
      • CSV Example
    • Reflect-C++ (compile-time reflection)
    • Tabulate APIs
      • Tabulate Example
  • API Reference

API Reference#

Every espp component, grouped by capability. Each group’s page lists its components with a short description; a component’s page carries the usage notes, the example, and the API generated from its headers.

Core & RTOS

  • Core & RTOS APIs
  • Crash Reporting (Core Dump) APIs
  • System APIs
  • Desktop APIs

Storage & Configuration

  • Storage & Configuration APIs

Buses & I/O

  • Buses & Low-Level I/O APIs
  • IO Expander APIs

Sensors

  • ADC APIs
  • IMU APIs
  • Encoder APIs
  • Distance Sensor APIs
  • Presence Sensor APIs
  • Battery APIs
  • Power Monitoring APIs
  • RTC APIs
  • Thermistor APIs

Motor Control

  • Motor Control APIs
  • Motor (BDC + BLDC) APIs

Audio

  • Audio APIs

Displays, LEDs & Haptics

  • Display APIs
  • LED & Lighting APIs
  • LED Driver Components
  • Haptics APIs

Input & HID

  • Input APIs
  • HID APIs

Connectivity & Protocols

  • Network APIs
  • WiFi APIs
  • BLE APIs
  • FTP APIs
  • NFC APIs
  • Firmware Update (OTA) APIs
  • Stream Frame APIs
  • Dispatcher APIs
  • Telemetry APIs
  • WDI (Wheelchair Digital Interface) APIs
  • Wireless & Radio APIs
  • Protocols & Network Tools APIs

Math & DSP

  • Math APIs
  • Filter APIs

Data & Serialization

  • Data & Serialization APIs

previous

Getting Started

next

Core & RTOS APIs

Edit on GitHub

© Copyright 2022 - 2026, William Emfinger.

Created using Sphinx 7.1.2.

Built with the PyData Sphinx Theme 0.17.1.