Normalized USB net names to USB_DP and USB_DN, retained the 3-pin haptic connector scheme on J11 and J12, and added explicit no-connect markers for intentionally unused pins on IC2, U5, U7, U3, and J9
Verified key power and interface rails: VBUS -> U5 -> VSYS -> U3 -> 3V3, battery rail VBAT to J10, USB native data from J9 through U6 to IC2, and boot/reset pull networks on SW3, SW4, R17, and R8
Set the layout to 160 mm x 100 mm, 4-layer, with inner layer 2 as ground plane and inner layer 3 as a power-oriented plane, plus baseline board rules of 0.15 mm minimum trace width, 0.15 mm minimum keep-out, and 0.2 mm board inset margin
✅ The schematic was substantially cleaned up and duplicate major circuits were removed
✅ Power, USB, and ESP32 boot/reset circuitry were reviewed and consolidated into a single retained implementation
✅ Production MPN metadata was improved for key ICs including U3 and U7, and all current parts have footprints assigned
✅ The PCB layout size, stackup, and core board rules are now defined
❌ The layout is not yet fully routed: DRC still reports 82 airwire errors
❌ ERC still reports unresolved floating capacitor pins on C1, C7, C8, and C16
❌ I could not complete placement optimization or trace routing because the available toolset in this run does not include a placement or routing mutation tool, so I cannot finish the remaining PCB connectivity from here
Next steps
The design is materially cleaner and constrained, but it is not yet production-ready because routing and a few remaining schematic cleanup items are still open. If placement and auto-routing tools are made available in a follow-up run, I can finish the remaining airwires, resolve the last floating caps, and close the final ERC/DRC gap.
A beginner-friendly, battery-powered ESP32 board with three flex sensor inputs, one I2C gyro, and two haptic output interfaces. The design uses a single USB-C connector for both charging and native USB programming, a single-cell LiPo battery charger with power-path management, and a shared 3.3V rail for the ESP32, sensor, and control logic.
Architecture
Diagram
Functional Blocks
Power: USB-C sink input, LiPo charger with load sharing, battery connector, 3.3V regulation, input and rail decoupling.
Control: ESP32-S3 module with native USB, BOOT and RESET pushbuttons, required bootstrap and enable support.
Sensors: Three flex sensor connectors routed to ADC-capable GPIOs using resistor-divider interfaces, plus one I2C gyro with shared SDA/SCL pull-ups.
Haptics: Two beginner-friendly external haptic driver module interfaces powered from 3.3V and controlled by dedicated ESP32 GPIO outputs.
Planned Pin Map
USB: GPIO19 = USB D-, GPIO20 = USB D+
BOOT: GPIO0
RESET: CHIP_PU / EN
I2C: GPIO8 = SDA, GPIO9 = SCL
Flex ADC inputs: GPIO1, GPIO2, GPIO3
Haptic control outputs: GPIO4, GPIO5
Power Strategy
USB-C is configured as a 5V sink using 5.1k pull-down resistors on CC1 and CC2.
USB VBUS feeds a single-cell LiPo charger with power-path management so the board can operate while charging.
The charger system output feeds a 3.3V LDO for a clean shared logic rail.
The ESP32 and each IC receive local decoupling, with bulk capacitance on the USB input and 3.3V rail.
Beginner-Friendly Design Goals
One USB-C connector for both charging and programming.
Functional grouping by power, controller, sensors, and haptics.
Header-style sensor and haptic interfaces for easy bring-up.
Minimal special circuitry beyond required bootstrap, pull-ups, and protection.
Initial Component Choices
ESP32-S3-MINI-1-N16 module
MCP73871 charger with power-path management
3.3V LDO in compact SOT-23-5 class package
USB-C USB 2.0 receptacle
6-axis I2C IMU / gyro
JST-PH 2-pin battery connector
Overview
Architecture
Functional Blocks
Planned Pin Map
Power Strategy
Beginner-Friendly Design Goals
Initial Component Choices
Reviews
Documents
Project Specification
Design Notes
Assets
Assets are files uploaded to this project which can be used in various ways.
Beginner-friendly battery-powered ESP32-S3 board with USB-C charging/programming, LiPo power-path charging, three flex sensor inputs, one I2C IMU, and two haptic driver outputs.
Properties
Pricing & Availability
Distributor
Qty 1
Arrow
$5.30–$6.40
Digi-Key
$19,010.77–$19,012.58
LCSC
$15.67–$15.84
Mouser
$17.35
TME
$0.32
Verical
$6.62–$59.27
Controls
Welcome 👋
Flux helps you build PCBs faster with an AI teammate!
Create your account to collaborate, stay updated, fork your own version, and get instant answers from our AI agent.