Repository navigation
Route the phase-3 manager board - #8
Merged
Merged
Conversation
Hand-drawn locked copper for the USB pair (through U12 into J3), the CAN pair and the U8 buck power stage (route_critical.py), then Freerouting with B.Cu weighted expensive, phase-1's finish_routes with 2-layer settings, and PGND stitching between the two ground pours. PGND is now poured on both layers (3V3 runs as 0.4 mm tracks). Placement in gen_board.py was reworked against the netlist and U8 gets an IPC-size board-local courtyard. Fab outputs regenerated. phase1 finish_routes.py gains FILL_AROUND/B_COST hooks (defaults keep phase-1 behaviour), skips rule areas, and loads the base board first so LoadBoard no longer resets the project rules. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KfJo5gk19gMQupM6RFmYmb
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Requested by Udara Vimarsha · project thread
Before: the ESP32-S3 manager board (
hardware/phase3-manager) had its parts placed, but about 173 connections were still unrouted and there were no fab outputs.After: the board is fully routed in KiCad 7 format, with 0 unconnected items and 0 DRC errors (
drc-report.txt), andphase3-manager-fab.ziphas been regenerated.How. The routing reuses the Phase-1 pipeline. It is documented in
hardware/phase3-manager/tools/README.mdand runs in four passes:route_critical.pyhand-draws locked copper for three things. The USB pair is 0.25/0.2 mm, coupled, and runs through the U12 ESD clamp into J3. The CAN pair runs from J1 to U11. The LMR36015 buck gets its hot loops, SW, 5V0 trunk and VBUS_F.export_dsn.pyfeeds headless Freerouting withfreerouting.rules. B.Cu costs 4-6x F.Cu, so B.Cu stays a ground plane with short jumpers.finish_routes.pyruns with two-layer settings.stitch.pyadds 283 PGND vias between the two ground pours.Placement lives entirely in
gen_board.pyPLACEMENT. No later pass moves a part.Phase-1's
finish_routes.pygainsFILL_AROUNDandB_COSThooks. Their defaults leave phase-1 behaviour unchanged. It also skips rule areas now, and it loads the base board first, because loading it second reset the.kicad_prorules to defaults.Review before ordering
lib_footprint_mismatchwarning.🤖 Generated with Claude Code
https://claude.ai/code/session_01KfJo5gk19gMQupM6RFmYmb
Generated by Claude Code