The claudeDrone sensor harness lives on an ESP32-S3 — a separate MCU alongside the Pixhawk-class flight controller. The ESP32 polls peripherals (TF-Luna UART, VL53L0X×6 via I2C-mux, PMW3901 SPI, servos via PWM), aggregates the data, and sends UDP frames to the companion PC.
Subhubs
| Section | What |
|---|---|
| Datasheet pitfalls | 5 common surprises when building a knowledge bank from datasheets |
| Host-testable Arduino pattern | Pure C++ + #if defined(ARDUINO) — unit tests on the host without mocks |
| TF-Luna driver | See /drone/firmware/sensors/lidar/tf-luna/driver |
Related nodes
- Firmware agent → firmware-agent-logs
- ESP32 ↔ companion PC: UDP spec (in progress, separate doc)
The category expands as modules are added: I2C-mux, PWM-servo, SPI-PMW, UART-timing — these become subfolders in
boards/esp32s3_devkit/of the firmware repo.