How to create Ground pads

Hello,
I’m drawing only a pcb layout (pcbnew) without the schematics and don’t know how to define GND pads (smd or tht) for later connection with ground plane.
The ground plane is not yet drawn because the pcb is not yet finished.
The most footprints that I use, I modified from included libraries or made my own.
Is it possible to define GND pads at all, according to the fact that I have not drawn the schematics first?

If there is a way to assign GND net to pad in PcbNew I don’t know how; I don’t think it is possible.

Normal KiCad workflow is to draw the schematic first; and annotate it. From there the Netlist can be created, and this assigns net names, such as ground (GND), to the pin numbers on the parts.

You’d need to find a way to create nets on the fly. I couldn’t see an option in the GUI for that, which leaves the python scripting terminal…

What works:
If you were to create a very simple schematic, with a GND net defined and would load that into PCBnew you should be able to edit single pads of your willy-nilly-placed footprints and assign them to this existing net though.

PS:
Whatever time saving you had in mind by going without a schematic is easily eaten up by doing this stuff manually in reverse, but it’s your time not mine.

OH! And not to mention the ERC/DRC checks that could be used if doing things with the normal work-flow.

As far as I remember you can give pads a net. Just search for the term via stitching. (there this technique is used.)

PS I’m on mobile and can not figure out how to add a quote.

Hello everyone,
yes, it seemed to me, it will be better to create the schematic first and then derive the pcb from it. Probably least problems in KiCad.
I will try this way, although the schem is not so simple. I think, I’ll need more schematic pages.
Thank you all.

add net to a pad: rigth click on the pad, properties -> net name -> ok

add net to a pad: rigth click on the pad, properties -> net name -> ok

I tried but when I clicked OK it said “Unknown netname, netname not changed”.

regards

maybe you can add the net you want to have ‘manually’ to the .kicad_pcb file in a text editor, the one I’m looking now has something like this:
(kicad_pcb (version 20170123) (host pcbnew “(2017-05-24 revision 1b7a720)-master”)

(general
(links 506)
(no_connects 1)
(area 97.93036 29.613933 163.145788 147.22378)
(thickness 1.6)
(drawings 13)
(tracks 1612)
(zones 0)
(modules 255)
(nets 143)
)

(page A4)
(layers
(0 F.Cu signal)
(31 B.Cu signal)
(32 B.Adhes user hide)
(33 F.Adhes user hide)
(34 B.Paste user hide)
(35 F.Paste user hide)
(36 B.SilkS user hide)
(37 F.SilkS user hide)
(38 B.Mask user hide)
(39 F.Mask user hide)
(40 Dwgs.User user hide)
(41 Cmts.User user hide)
(42 Eco1.User user hide)
(43 Eco2.User user hide)
(44 Edge.Cuts user)
(45 Margin user hide)
(46 B.CrtYd user)
(47 F.CrtYd user hide)
(48 B.Fab user)
(49 F.Fab user hide)
)

(setup
(last_trace_width 0.25)
(user_trace_width 0.25)
(user_trace_width 0.3)
(user_trace_width 0.4)
(user_trace_width 0.6)
(user_trace_width 0.8)
(user_trace_width 1)
(trace_clearance 0.2)
(zone_clearance 0.508)
(zone_45_only no)
(trace_min 0.2)
(segment_width 0.2)
(edge_width 0.15)
(via_size 0.6)
(via_drill 0.4)
(via_min_size 0.4)
(via_min_drill 0.3)
(user_via 0.8 0.6)
(uvia_size 0.3)
(uvia_drill 0.1)
(uvias_allowed no)
(uvia_min_size 0.2)
(uvia_min_drill 0.1)
(pcb_text_width 0.3)
(pcb_text_size 1.5 1.5)
(mod_edge_width 0.15)
(mod_text_size 1 1)
(mod_text_width 0.15)
(pad_size 4.3688 2.1844)
(pad_drill 3)
(pad_to_mask_clearance 0.2)
(aux_axis_origin 0 0)
(visible_elements FFFDCF69)
(pcbplotparams
(layerselection 0x01000_80000001)
(usegerberextensions false)
(excludeedgelayer true)
(linewidth 0.100000)
(plotframeref false)
(viasonmask false)
(mode 1)
(useauxorigin false)
(hpglpennumber 1)
(hpglpenspeed 20)
(hpglpendiameter 15)
(psnegative false)
(psa4output false)
(plotreference true)
(plotvalue true)
(plotinvisibletext false)
(padsonsilk false)
(subtractmaskfromsilk false)
(outputformat 1)
(mirror false)
(drillshape 0)
(scaleselection 1)
(outputdirectory tpo1/))
)

(net 0 “”)
(net 1 GND)
(net 2 +12V)
(net 3 “Net-(C2-Pad2)”)
(net 4 “Net-(C4-Pad1)”)
(net 5 “Net-(C4-Pad2)”)
(net 6 -12V)
(net 7 “Net-(C6-Pad2)”)
(net 8 “Net-(C7-Pad1)”)
(net 9 “Net-(C8-Pad1)”)
(net 10 “Net-(C11-Pad2)”)
(net 11 “Net-(C10-Pad1)”)
(net 12 “Net-(C11-Pad1)”)
(net 13 “Net-(C12-Pad2)”)
(net 14 “Net-(C13-Pad1)”)
(net 15 “Net-(C14-Pad1)”)
(net 16 “Net-(C15-Pad1)”)

and follows, ATTENTION: this file was made with a test version of kicad, just for illustrative purposes on where the ‘net’ definitions seems to be
and, of course, I never tried before, I don’t know if it will work if you add them :slight_smile:

That’s why I wrote this:

So just grab a single SMD pad and a GND power symbol, connect them, create a netlist, load it in PCBnew and you can assign that GND net to other pads…

1 Like

Yes Joan, it works. I took a capacitor, connected one terminal to GND and other to HT, connected these both to separate PWR_FLAGs and loaded it in PCBnew.
But anyway, I started to draw the Schem and have a few questions:

  • I took a +9V symbol and created 4 or 5 own power symbols; +V, Vb, Vvar etc. - Is it good to take the same +9V symbol for all my variations (not to confuse the programm later)?
  • I cannot save my power symbols under one and only library name, but only each one individually. E.g., besides KiCad original Libraries (device, 74xx,…), I have +V, Vb, Vvar etc. libraries and when I open (with the sign +) each of it, then is once again +V, Vb, Vvar etc. How to throw these components in one Library?
  • Is it the best way for bigger circuits simply to expand the sheet size from A4 to A3 or exists better solution?

Footprints:
for example, I have stored my own footprint Library with 3 different resistor footprints and I decided to add the forth one. I cannot just overwrite the old (3 resistor) with expanded (4 resistor) Library, but instead I have to remove the old Library with Footprint Libraries Manager and then add expanded Library with Footprint Libraries Wizard.
Is it the standard protocol or I do something wrong?

Thanks a lot for Help!

If done correctly, should pose no problem. A lot of schematic symbols start as copies of something else… (*)

You need to switch between libraries BEFORE saving a component.
The buttons for this are at the top left of EEschema…

Hierarchical sheets… (**)

footprint libraries behave differently than symbol libraries, as the framework is different (***).
But from a user point of view you also just have to switch the lib BEFORE saving a footprint to another lib.

*)

**)
https://kicad.org/help/documentation/

***)

1 Like