Split RP2040 board into centered routable subcircuits - #88
Open
0hmX wants to merge 10 commits into
Open
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
0hmX
marked this pull request as ready for review
July 30, 2026 14:26
Contributor
|
Hmm snapshot? Seems a bit odd to me to break it up like this- |
seveibar
requested changes
Jul 30, 2026
seveibar
left a comment
Contributor
There was a problem hiding this comment.
Basically, I'm just rejecting because the AI generated PR description really doesn't justify it. You have to give some form of motivation for something like this.
Author
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.

Summary
subcircuits/Why
The RP2040 implementation was one flat routing unit. The initial hierarchy still left most traces parent-owned, and child group bounds were centered on their declared anchors rather than their physical pad envelopes. This caused pads to appear outside child worlds and prevented the children from behaving as independent routing units.
Impact
The board is now organized into independent RP2040 core, USB, flash/boot, clock, regulator, analog, run-control, status, and SWD modules. Each child world is centered, contains its pads with clearance, and does not overlap its siblings. Internal child routing completes without errors.
Validation
bun test: 17 tests passed, 3,377 assertionsbun run build:lib: ESM and declaration builds passedtsci buildofMicrocontrollerRP2040WithUsbCpassed through the evaluator*_errorrecordsgit diff --checkpassedKnown limitation
The outer parent capacity router can still exhaust its iteration budget while solving the remaining 14 cross-subcircuit signals plus shared rails. Child-level routing is clean; this limitation is isolated to the final parent interconnect phase.