ESP32 C3 Robotics Controller

Worked for 43 mins 15 sec
Thought for a moment — Adjusting task dimensions
1/3 Resize the hexagonal outline to the smallest practical compact size

Resize the hexagonal outline to the smallest practical compact size

Place all components for single-layer CNC routing

Verify board fit, antenna keepout, and placement DRC

Thought for 18 sec
Thought for 6 sec — Inspecting layout and skills
Referenced guidance.
Thought for 4 sec
Getting a layout overview.
Reading schematic details.
Thought for 11 sec
Editing board size.
Thought for 16 sec — Planning placement constraints
Placed footprints of C1, C2, C4 and 1 more
Baking PCB layout data.
Placing 18 footprints.
Thought for 1 sec
Placing footprints of C2, C3, C1 and 1 more.
Thought for 3 mins 19 sec — Continuing tasks
Placing footprints of J1, J2, F1 and 10 more.
Thought for 1 min 36 sec — Evaluating clamping issue
Placing footprints of J1, J2, F1 and 7 more.
Thought for 44 sec — Evaluating F1 and J1 overlaps
Placing footprints of J1, J2, F1 and 9 more.
Thought for 29 sec — Clarifying positioning constraints
Placing footprints of J1, J2, U3.
Thought for 39 sec — Evaluating packing constraints
Placing footprints of J1, J2, F1 and 9 more.
Thought for 18 sec — Adjusting spacing and positions
Placing footprints of SW1, J3, C5 and 1 more.
Thought for 1 min 52 sec — Adjusting placement of J3
Placing footprints of J1, J2, F1 and 10 more.
Thought for 56 sec — Evaluating overlap and clamping
Placing footprints of J1, F1, C5 and 10 more.
Thought for 22 sec — Considering J2 movement
Placing footprints of J1, F1, C5 and 4 more.
Thought for 30 sec
Placing footprints of J1, J2, F1 and 9 more.
Thought for 30 sec — Fixing overlaps in layout
Placing footprints of BT1, J3, SW2 and 2 more.
Thought for 26 sec
Placing footprints of J3, SW1, SW2 and 1 more.
Thought for 15 sec
Placing footprints of J3, C5, SW1 and 1 more.
Thought for 9 sec
Placing footprints of SW2, C6, J3.
Thought for 6 sec
Placing footprint of SW1.
Thought for 10 sec
Placing footprint of SW1.
Thought for 6 sec
Placing footprint of SW1.
Thought for 7 sec
Placing footprint of SW1.
Thought for 8 sec — Setting initial values
Placing footprint of SW1.
Footprint placement stopped early.
Applying placement changes.
Thought for 5 sec — Calculating increments
Editing board size.
Thought for 15 sec
Placed footprints of J2, U2, BT1 and 15 more
Baking PCB layout data.
Placing 18 footprints.
Thought for 1 sec
Placing footprints of C2, C3, C1 and 1 more.
Thought for 1 min 16 sec — Continuing with skills retrieval
Placing footprints of J1, J2, U3 and 9 more.
Thought for 24 sec
Placing footprints of J1, F1, C5 and 4 more.
Thought for 14 sec — Analyzing clamp overlaps
Placing footprints of J1, F1, C5 and 6 more.
Thought for 1 min 2 sec
Placing footprints of U1, U2, C1 and 15 more.
Thought for 24 sec
Placing footprints of J2, BT1, U3 and 10 more.
Thought for 1 min 14 sec — Checking overlaps and parameters
Placing footprints of J3, C1, C2 and 6 more.
Thought for 28 sec
Placing footprints of C3, F1, C4 and 2 more.
Thought for 22 sec
Placing footprints of C1, C2, C3 and 3 more.
Thought for 1 min 3 sec — Evaluating boundaries
Placing footprints of J1, J2, F1 and 13 more.
Thought for 17 sec — Troubleshooting movement issues
Placing footprints of J1, F1, C5 and 3 more.
Thought for 58 sec — Analyzing board constraints
Placing footprints of U2, J1, F1 and 13 more.
Thought for 41 sec
Placing footprints of U1, C4, U2 and 14 more.
Thought for 52 sec — Checking positions and overlaps
Placing footprints of U1, C4, U2 and 13 more.
Thought for 29 sec
Placing footprints of F2, C1, C2 and 3 more.
Thought for 12 sec — Adjusting positions
Placing footprints of C6, SW2, R1.
Thought for 15 sec
Placing footprints of C6, SW2, R1 and 2 more.
Thought for 13 sec — Evaluating coordinate placements
Placing footprints of F2, C6.
Footprint placement stopped early.
Applying placement changes.
Thought for 5 sec
Editing board size.
Thought for 22 sec
Placed footprints of J2, BT1, J1 and 11 more
Baking PCB layout data.
Placing 18 footprints.
Thought for 2 sec
Placing footprints of C2, C3, C1 and 1 more.
Thought for 1 min 36 sec — Planning skill retrieval
Placing footprints of BT1, U3, J3 and 13 more.
Thought for 1 min 32 sec — Evaluating placement and gaps
Placing footprints of J1, J2, F1 and 4 more.
Thought for 8 sec — Testing adjustments
Placing footprints of J1, J2, F1 and 4 more.
Thought for 7 sec
Placing footprints of J2, F2, C6 and 2 more.
Thought for 23 sec — Adjusting positioning
Placing footprints of J1, F1, C5 and 4 more.
Thought for 17 sec
Placing footprints of J1, F1, C5 and 2 more.
Thought for 19 sec — Calculating adjustments for batches
Placing footprints of J2, BT1, F2 and 2 more.
Thought for 23 sec
Placing footprints of C5, F2, C6.
Thought for 25 sec — Fixing overlaps in positioning
Placing footprints of C6, F2, C5 and 1 more.
Thought for 11 sec
Placing footprints of F2, F1.
Thought for 37 sec — Examining routing criteria
Footprint placement complete.
Applying placement changes.
Thought for 7 sec
Checking routing progress.
Completed 6 design checks — found 31 issues.
Getting a layout overview.
Thought for 7 sec — Addressing design issues
Placed footprints of J2, J1, C5 and 5 more
Baking PCB layout data.
Placing 18 footprints.
Thought for 3 sec
Placing footprints of J2, U3.
Thought for 1 min 35 sec — Inspecting physical placements
Placing footprints of SW1, J3, F2 and 1 more.
Thought for 22 sec — Adjusting parameters
Placing footprints of J1, F2.
Thought for 22 sec — Checking fuse positions
Placing footprints of F2, J1.
Thought for 40 sec
Placing footprints of F2, F1, C5.
Thought for 9 sec
Placing footprints of F2, F1.
Thought for 5 sec
Placing footprint of F2.
Thought for 22 sec
Placing footprint of F2.
Thought for 11 sec
Placing footprint of F2.
Thought for 37 sec — Evaluating positioning and gaps
Placing footprints of J1, F2.
Footprint placement stopped early.
Applying placement changes.
Thought for 5 sec
Placed footprints of J1, F2
Baking PCB layout data.
Placing 18 footprints.
Thought for 3 sec
Placing footprint of F2.
Thought for 29 sec — Clarifying positioning constraints
Placing footprint of F2.
Thought for 35 sec
Placing footprint of F2.
Thought for 6 sec
Placing footprint of F2.
Thought for 4 sec
Placing footprint of F2.
Thought for 8 sec
Placing footprint of F2.
Thought for 3 sec
Placing footprint of F2.
Thought for 8 sec — Checking dimensions and movement
Placing footprint of F2.
Thought for 36 sec — Planning the move
Placing footprint of J1.
Thought for 11 sec — Clarifying completion criteria
Footprint placement complete.
Applying placement changes.
Thought for 3 sec
Checking routing progress.
Completed 6 design checks — found 31 issues.
Getting a layout overview.
Thought for a moment
DONT WORRY ABOUT THE SIZE
Got it—I’ll prioritize a clean, CNC-routeable single-layer placement over compactness, enlarging the hexagon and spreading the ESP32/driver signal corridor before routing.
The PCB currently has a 110 × 105 mm hexagonal outline with all 18 footprints placed on top, no overlaps, and the single bottom-copper CNC stackup preserved.
Remaining
  • Enlarge and re-place to eliminate the congested ESP32-to-TB6612FNG corridor.
  • Recheck single-layer routability and antenna keepout.
  • Routing has not started; 23 airwires remain.
Execution stopped because no ACUs are currently available.
Enlarge and re-place
Protect antenna keepout
CNC-friendly placement

Refine this doc
Ask about this doc
Board Bring-Up Plan
  1. Unpowered inspection: verify holder polarity, TP4056 BAT/OUT polarity, J3 terminal numbering, SW1 terminal wiring, electrolytic polarity, and no rail shorts.
  2. External hardware: fit Pololu U3V70F5 item 2891 using large terminal-block holes/direct heavy wire. Fit Daier KN3A-101 external SPST master switch with short heavy conductors through SW1. Never use 2.54 mm headers in the high-current path.
  3. Charge-only: master switch OFF; insert protected cell; connect TP4056 USB; robot rails must remain 0 V.
  4. Boost no-load: remove USB, power RUN, verify regulated 5.00 V at both 5V_LOGIC and 5V_MOTOR before connecting modules/load.
  5. SuperMini fit/orientation: verify U1 is the common 16-pin, 4 MB, 22.52 x 18 mm ESP32-C3 SuperMini; USB-C is accessible and the ceramic-antenna end faces outward at the top edge with no carrier copper, battery, high-current module, wire, or metal in the antenna region.
  6. Logic-only: motors unplugged; power the labeled U1 5V pin from 5V_LOGIC, verify 5V_LOGIC and 3V3, and confirm STBY=0 V after reset. Grounds must be common.
  7. USB programming: switch robot 5V_LOGIC OFF before attaching USB-C because the documented common SuperMini variant does not guarantee safe simultaneous USB and external-5-V powering. Build the esp32-c3-supermini PlatformIO environment; verify USB CDC serial at 115200 and upload (hold BOOT while connecting if recovery is needed).
  8. GPIO map: verify GPIO0→AIN1, GPIO1→AIN2, GPIO3→PWMA, GPIO4→BIN1, GPIO5→BIN2, GPIO6→PWMB, GPIO7→STBY command. Confirm GPIO8/9 and native-USB GPIO18/19 are not used for motor control.
  9. Enable: load firmware; STBY may rise only when firmware commands enable and hardware RUN/ENABLE is active. The 10 kΩ hardware pull-down must hold MOTOR_STBY low during reset or an open enable chain.
  10. Driver: use a current-limited bench supply first; verify direction/PWM without motors.
  11. Motor characterization: measure free-run, normal-load, startup, and locked-rotor current. Reject sustained channel current near/above the TB6612 carrier's 1 A/channel thermal rating. The 1.5 A allowance is brief only.
  12. PPTC validation: F1/F2 are 0ZRM0125FF1A (1.25 A hold, 2.50 A trip at 23 C, =1.5 A 3.5 mm solution is qualified.
  13. Failsafe: establish Wi-Fi and BLE operation, command motion, then remove the active command stream; both PWM outputs, direction outputs, and STBY must enter the stopped state within 500 ms.
  14. Thermal/load test: load-test boost/wiring while monitoring module, terminal blocks, switch harness, holder, TB6612, PPTCs, and jacks.
Pass requires safe reset/enable behavior, regulated rails, measured currents within every documented rating, and resolution or formal acceptance of the 3.5 mm connector blocker.

Plug-and-Play ESP32 Robot Controller 3b39

Plug-and-Play ESP32 Robot Controller 3b39 thumbnail
Single-layer CNC-millable ESP32-C3 robot controller for two bidirectional 5 V DC motors, using solderable modules, protected 18650 charging, Wi-Fi/BLE control, and protected 3.5 mm motor connections.

Properties

Properties describe core aspects of the project.

Pricing & Availability

Distributor

Qty 1

Arrow

$1.78–$2.01

Digi-Key

$0.16

LCSC

$4.57

Mouser

$5.23

TME

$0.20

Verical

$2.00–$3.47

Controls