Flight Controller Design

I made substantial progress, but I’m blocked from finishing because there are no available ACUs, so I can’t continue executing fixes right now.
What I accomplished:
  • Resized the PCB to a compact 50 × 50 mm, 4-layer board.
  • Re-placed all 34 components for a compact manufacturable layout:
    • ESP32 at board edge with antenna facing outward.
    • USB-C, ESD, charger, battery connector, LDO, IMU, flash, buttons, and LEDs grouped logically.
  • Cleared stale routing and fixed the USB/VBUS routing precheck blockers.
  • Ran full-board auto-routing successfully.
Remaining blockers before the PCB is manufacturing-ready:
  • 35 invalid-layer Smart Via errors from the autorouter.
  • 1 dangling trace warning.
  • 22 generic passives missing manufacturer part numbers.
  • Final DRC/manufacturing validation still needs to be re-run after those fixes.
Suggested next steps once ACUs are available:
  1. Fix/delete or regenerate the invalid Smart Vias.
  2. Delete the dangling trace.
  3. Assign real MPNs to the generic resistors/capacitors.
  4. Re-run DRC/ERC and manufacturing checks.
  5. Export Gerbers, BOM, and pick-and-place only after checks are clean.
Fix routing errors
Complete BOM MPNs
Run final checks
Export manufacturing files

Refine this doc
Ask about this doc
Project Specification — ESP32 Pickleball Tracker
Project Overview
Status: Draft schematic created.
Compact battery-powered paddle telemetry board for pickleball performance tracking. The board uses an ESP32-C3 module for Wi-Fi/BLE, a high-g 6-axis IMU for swing/impact motion data, local SPI flash buffering, USB-C charging, and a single-cell LiPo battery.
Intended Use
  • Mounted to or inside a pickleball paddle/tracker enclosure.
  • Captures motion/impact telemetry during play.
  • Sends data wirelessly to a phone/web/cloud workflow.
  • Prototype-oriented design; not a flight controller and not used for stabilization/control.
What the Device Should Do
  • Measure acceleration and angular velocity.
  • Detect motion/impacts and stream or buffer samples.
  • Connect over Wi-Fi/BLE using ESP32-C3.
  • Charge a protected single-cell LiPo from USB-C.
  • Provide boot/reset controls and status/charge indication.
Main Features
  • ESP32-C3-WROOM-02-N4 wireless MCU module.
  • LSM6DSO32TR 6-axis IMU with ±32 g accelerometer range.
  • W25Q16JVUXIQ 2 MB SPI NOR flash.
  • MCP73831 LiPo charger, programmed for about 100 mA.
  • TLV75533PDBVR 3.3 V / 500 mA LDO.
  • USB-C connector with CC pull-downs and USB D+/D- ESD protection.
System Architecture

Diagram


USB-C J1 MCP73831 LiPo Charger U4 LiPo Battery J2 / VBAT TLV75533 3.3V LDO U5 ESP32-C3-WROOM-02 U1 LSM6DSO32 IMU U2 W25Q16JV SPI Flash U3 ESP32-C3 Native USB GPIO18/19 I2C GPIO1/GPIO0 SPI GPIO4/5/6/7 Wi-Fi/BLE Telemetry
Hardware Subsystems
Power / Charging
USB-C VBUS feeds MCP73831. MCP73831 charges the LiPo battery on VBAT. VBAT feeds the TLV75533 3.3 V regulator. The charger PROG resistor is 10 kΩ for approximately 100 mA charging.
Compute / Wireless
ESP32-C3-WROOM-02-N4 provides MCU, Wi-Fi, BLE, flash/programming, and native USB Serial/JTAG via GPIO18/GPIO19.
Motion Sensing
LSM6DSO32TR is wired on I2C. SA0 is tied low, giving the low I2C address option. INT1 is wired to ESP32 GPIO3.
Storage
W25Q16JVUXIQ is wired to ESP32 GPIO4/5/6/7 over SPI. WP# and HOLD#/RESET# are tied high to 3.3 V.
User Interface
Reset button pulls EN low. Boot button pulls GPIO9 low. Status LED is on GPIO10. Charge LED is driven by MCP73831 STAT.
Interfaces and Connections

Table


InterfaceNets / PinsNotes
USB-C powerVBUS, GND, CC1, CC2CC1/CC2 each have 5.1 kΩ pull-downs
USB dataUSB_DP GPIO19, USB_DN GPIO18Native ESP32-C3 USB Serial/JTAG
I2C IMUGPIO1 SDA, GPIO0 SCL4.7 kΩ pull-ups to 3.3 V
IMU interruptGPIO3Connected to LSM6DSO32 INT1
SPI flashGPIO4 SCK, GPIO5 MISO, GPIO6 MOSI, GPIO7 CSCS has 10 kΩ pull-up
Boot/resetEN, GPIO9Buttons to GND; pull-ups provided
BatteryJ2 P1 VBAT, J2 P2 GNDUse protected LiPo cell
Power and Runtime Expectations
  • Battery: protected 1-cell LiPo, likely 100–250 mAh.
  • Charging: ~100 mA target to suit small cells.
  • 3.3 V peak load estimate: ~315–360 mA depending on Wi-Fi transmit bursts.
  • Continuous Wi-Fi use will reduce runtime; duty-cycled Wi-Fi or BLE improves runtime.
  • LDO operation will lose 3.3 V regulation as the LiPo approaches discharge voltage; buck-boost is a future upgrade if full battery-range regulation is required.
Power Tree and Power Budget
See the separate Power Budget project file for detailed load estimates and sizing assumptions.
Manufacturing and Assembly Expectations
  • Compact SMD design.
  • ESP32 antenna keepout must be honored in layout.
  • IMU should be close to the mechanical center of the tracker/paddle mounting area and mechanically well coupled.
  • USB-C and battery connector placement should fit the enclosure/access plan.
Firmware-Relevant Hardware Requirements
  • ESP32-C3 Arduino/PlatformIO starter firmware uses I2C, SPI, status LED, Wi-Fi, and native USB serial.
  • GPIO9 boot button and EN reset button are available for flashing/recovery.
  • USB D+/D- are connected to GPIO19/GPIO18.
Physical Design Expectations
  • Board should be as small as practical.
  • Antenna at board edge with no copper/components in the antenna keepout.
  • Keep IMU away from flexing regions and noisy high-current loops.
  • Keep the magnetometer omitted in v1 to save space and avoid calibration burden.
Important Design Decisions
  • Switched from BLE-only Nordic recommendation to ESP32-C3 per user request.
  • Omitted magnetometer in v1 because absolute heading is not essential for paddle telemetry and adds calibration/space burden.
  • Chose 2 MB SPI flash as a compact buffer rather than microSD.
  • Used simple MCP73831 charger and TLV75533 LDO for schematic simplicity.
Assumptions
  • A protected LiPo battery pack is used.
  • Web app workflow can start with Wi-Fi/BLE telemetry from ESP32-C3.
  • Charge-while-running is acceptable without a dedicated power-path IC for this prototype.
  • Exact board dimensions and enclosure are not yet defined.
Change Notes
  • Initial full schematic created with ESP32-C3, IMU, flash, USB-C, LiPo charging, regulator, buttons, and LEDs.
  • Project Overview

  • Intended Use

  • What the Device Should Do

  • Main Features

  • System Architecture

  • Hardware Subsystems

  • Power / Charging

  • Compute / Wireless

  • Motion Sensing

  • Storage

  • User Interface

  • Interfaces and Connections

  • Power and Runtime Expectations

  • Power Tree and Power Budget

  • Manufacturing and Assembly Expectations

  • Firmware-Relevant Hardware Requirements

  • Physical Design Expectations

  • Important Design Decisions

  • Assumptions

  • Change Notes

ESP32 Pickleball Tracker

ESP32 Pickleball Tracker thumbnail
Compact ESP32-C3 battery-powered pickleball telemetry tracker with high-g IMU, local flash buffering, USB-C LiPo charging, and Wi-Fi/BLE data transmission.

Properties

Properties describe core aspects of the project.

Pricing & Availability

Distributor

Qty 1

Arrow

$2.50–$3.22

Digi-Key

$0.15

HQonline

$5.32–$5.44

LCSC

$12.16–$12.28

Mouser

$9.94

TME

$0.35

Verical

$2.84–$12.41

Controls