I am currently working on a PCB design (1st time) and encountering several DRC (Design Rule Checker) errors that I need help understanding and resolving. Here are the details of the issues:
Thermal Relief Connection Issue:
Error: Thermal relief connection to zone incomplete (Layer F.Cu; 1 spokes connected to an isolated island).
Affected Zone: [GND on F.Cu and B.Cu]
Affected Pads: PTH pad 2 (GND) of D3
Solder Mask Aperture Issues:
Front Solder Mask Aperture: Items with different nets.
Affected Pads: PTH pad 1 [Net: D5-A] and PTH pad 2 [Net: Q1-B] of Q1
Rear Solder Mask Aperture: Items with different nets.
Affected Pads: Multiple combinations, including PTH pad 1 [Net: D5-A], pad 2 [Net: Q1-B], and pad 3 [GND] of Q1
I have tried troubleshooting the issues but am still unable to resolve them. My understanding is that the solder mask aperture problems are caused by overlapping pads or conflicting net assignments. However, I am unsure how to approach fixing these in the most effective way.
Steps Taken So Far:
Verified net assignments in the schematic.
Refilled zones and re-ran DRC.
Checked pad properties for alignment and solder mask settings.
I would greatly appreciate any guidance or suggestions on how to address these errors. If additional screenshots or design files are needed, please let me know, and I will provide them.
Sometimes what you would like is not possible . . .
. . . either change the required spoke count, if fewer spokes are acceptable, or ignore the error.
If it’s not about spoke count but is that your zone is isolated and therefore not connected you need to connect the zone to it’s net. Either by a via or by moving components/tracks to allow the zone to no longer be isolated.
It would be good to show the PCB regions that DRC complains about.
Read:
to find how to get higher user level.
I have always the problem to find error in the list (File - Board Setup - Design Rules - Violation Severity) if I want to change it between Error - Warning and Ignore.
I looked through list 2 times and didn’t found any error starting with “Front Solder Mask…” or “Rear Solder Mask…”.
What KiCad version do you use. As wording seems being different than probably you use not last stable release.
@Resul Could you write me a function in C++ calculating an intersection point between two circular arcs using fixed point math? Last time I tried the results were quite hilarious
Where from do you know that?
I am not from software world (even I use C++ since 1993). I just would like to have higher chance than now to become suspicious in some cases.
If I wanted to Write Code that gets a Point-Of-Coincidence of Two Circles, I’d look at the Equation of a Circle and it’s related aspects.
If I wanted to look at a Kicad PCB for that ‘Point’, I’d grab each Circle’s Placement, Radius and do a ‘Search’ using Calculation’s with a Conditional (‘If’) and if there a match, take some action…
Knowing a Circle in Kicad has an Orgin, Start and End Points, and that the End-Point, regardless of where it is on the Circle, is the Radius, then, can iterate (through Angle’s,if unknown) and Calc’s to find the Point(s).
Below shows two Circles. I did Not bother to iterate (because I didn’t write Code to do this), I just grabbed the Angle for convenience, then Calculated the ‘X’ point of coincidence for one of the intersecting points…
You can see at Bottom, that Point equals the Calculated Point. Oh, I also Saved the DRC-Report to verify…