Repository navigation
Conversation
…ng it refill_zones filled and installed in one step. Split out filled_text so a pass can read the poured polygons first.
Tracks cut a pour into regions, and a region holding copper of its own but no via to the other layer is tied to nothing. KiCad reports it as a zone against itself at the zone origin, so the router's repair had no place to put a bridge. Read the poured polygons, join them through vias, plated pads and tracks, and add a via where an island and the main pour on another layer both have room. Runs on the candidate before it is validated.
The smallest copied a router's one escalated via, which is under the board's minimum via diameter. Use the size the net has most of, the larger on a tie.
A decoupling capacitor's ground pad sat in a 2.67 mm2 F.Cu island on the irrigation controller. Its widest circle has a radius of 0.387 mm, and the pass asked for 0.4 mm: the 0.3 mm via pad and 0.1 mm of slack. It tied nothing, and KiCad reported the zone against itself. The slack is now 0.05 mm, since the pour edge already stands off foreign copper by the clearance rule. The search grid no longer starts at 0.2 mm, which could step over a window that narrow, and comparisons allow for rounding.
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.
What type of PR is this?
This is a bug fix
What does this do?
island_vias::tie_islandsadds a ground via inside any filled-pour island that has copper but no via, beforevalidate_candidate.Which issue(s) does this PR fix/relate to?
Resolves #279
Have you included tests for your changes?
Yes, five
island_viastests: a tied island, a via-holding island, no copper, too small, and a stable written via.Did you document any new/modified features?
No, behaviour only; the module doc describes the pass.
Notes