No ground plane connection on component ground

Hi,

i’am using a microphone component in my design that have an enclosing ground connection. When doing a filled zone to have a ground plane, the microphone footprint ground does not connect. I have tried multiple configurations in the filled zone, with no success so far. Any idea ?

Check the pad settings. Is it possible that they are set to you have set it to Zone connect = None?

In addition, it looks a bit strange that you have two nets in listed inside the pad. (One normal GND and one with @ plus a number).

Yes, start by verifying that all of the pin NUMBERS on the schematic symbol correlate correctly to the pad NUMBERS on the footprint. Are all of those ground pins visible on the schematic, or are some of them hidden?

Do the ground pins on other components connect correctly to the fill zone?

Dale

Can you publish the footprint file here? Or even the whole board file?

I’m trying to reconcile how the clearance lines for your ground pads don’t line up with your ground copper. Is that copper in the footprint? I’m wondering if it is why you aren’t getting any thermals to your ground plane.

That’s why I asked for the footprint…

Copper zones have their own clearance settings. If it is setup to be larger than the pad (*) clearance then it will be farther away from the pad then the pad clearance would suggest.

*) With pad clearance i mean the clearance that is either set on the net level or footprint/pad level.

Hi,

the footprint was downloaded from SnapEDA (search INMP621). The footprint is made from a shape in the copper layer and GND pads (labeled GND@1 to GND@11). I have tried removing most GND pads but two and use “Create pads from selected shapes” to get only two pads. The issue that i have now is that the copper fill gets everywhere (enclosed image) and does not generate thermal reliefs.

Custom pads to not support thermals. You have the choice of solid connection or none. With none selected you can make the spokes yourself using normal traces.

When pad is custom pad?
KiCad 5.01. I opened footprint editor and loaded first footprint I found (some battery). I have added new pad and entered its edition. I see “Custom Shape Primitives” tab.
If there will be anything there the pad will be “custom pad” ?
There are some buttons (like “Add Primitive”) but all are inactive. So how can I do custom pad?

A pad is custom when you select custom as its shape :wink:

And yes this is the type of pad that can use custom shape primitives.

If you select a polygon (or other primitive) and a pad, right-click and select create pad from shapes then it will be a custom pad. (This is the way to really create one. Setting the shape to custom and adding primitives manually is not really an intuitive way to do it.)

Thanks.
I am preparing myself to move to KiCad so collecting ‘know-how’ ‘how-to-use’ it.

Does anyone know if there are plans to fix this ?

This is a design imported from Diptrace, and the Diptrace gerber looks like this
image

ie Diptrace has created thermals on the custom pad shapes just fine.
In many cases the outer edges of custom pads are no more difficult than a rectangle.

A workaround here might be to create thermals to the Anchor Pad that kiCAD required.(ie if the designers wanted to sidestep the geometry headaches of a full complex pad)

Testing that it seems I can create thermals to an Anchor pad Size, provided that pad is physically clear of the custom shape. Even adding a pad on top of the custom shape, fails to thermal.
Looks like the custom shape overrules the simpler rectangle thermal ?

This isolated pad thermals fine
(pad 4 smd rect (at 0 -0.82 270) (size 0.255 0.255) (layers Top_-_Pwr F.Paste F.Mask)
but this

(pad 4 smd rect (at 0.54 -0.325 270) (size 0.255 0.255) (layers Top_-_Pwr F.Paste F.Mask)
  (net 1 5V_Common) (zone_connect 1) (thermal_width 0.2) (thermal_gap 0.2))
(pad 4 smd custom (at 0.54 -0.325 270) (size 0.255 0.255) (layers Top_-_Pwr F.Paste F.Mask)
  (net 1 5V_Common) (zone_connect 1) (thermal_width 0.2) (thermal_gap 0.2)

fails to connect, even to the same XY separate smd rect overlayed.

It seems Custom Shapes could safely use the anchor pad XYD for thermal connection, with very little new code ?

Feel free to add your input here

1 Like

We will get chamfered pads in v6. These will enable the definition of a part like you show without needing to use custom pads. See: https://bugs.launchpad.net/kicad/+bug/1777516
And https://www.mail-archive.com/kicad-developers@lists.launchpad.net/msg31906.html

1 Like

Cool, tho I do not see thermals explicitly mentioned… hopefully this includes thermals…

I like the suggestion by Seth, in the mail archive

It feels like there might be room to refactor our rectangular pads in v6
instead of having rectangle/rounded rectangle/rounded-chamfered rectangle.
We could unify to just “rect” and have an optional sub-elements (rounded
(param …)) and (chamfer (param …)). The corner effects then just apply
to the base rectangular pad.

Considering ‘translated from other CAD’ designs, it is often the subtle modifiers that get lost, so being able to import a base rectangle, that needs shaved corner(s) applied, would be more useful than no import at all.
having the optional sub-elements (modifiers) will likely make adding those easier.

The mailing list thing says that one of its benefits is the support for thermals

Great, I’ve done that, with the Diptrace example (just to prove others can do this, it is no brick wall)
I also suggested the probably easier work-around of allowing the Anchor pad to spawn the thermal, which avoids the critical issue of any-polygon geometry complexities. Maybe thermal length needs an adjust, but existing thermal code should 99% work here ?
I did test & confirm that thermals wider than a pad works ok (for connect to possibly small anchor pads).

Ah, right, so it does, missed that.
Of course, the suggestion of using the anchor pad’s info, could allow thermals also on custom pads too…

Custom pads can be convex shapes. Such a convex shape might create a massive headache for creating thermals. Maybe a better way would be to be able to manually define thermal connection points already in the footprint editor. (4 special lines placed from somewhere inside the pad to the outside. These lines will then be used as the basis for creating the spokes.)

1 Like