Mail Archives: geda-user/2018/09/02/22:37:50
On Sun, 2 Sep 2018, Cyril Hrubis (metan DOT lists AT gmail DOT com) [via geda-user AT delorie DOT com] wrote:
> Or is there a better way?
Yes: switch to pcb-rnd. We fixed a lot of these decade old misfeatures
and we can load your old .pcb file (and eagle and kicad and protel files,
etc.).
> I wanted to use oval copper shape for pins on my PCB layout, but looking
> into pcb editor this does not seem to be possible at all.
pcb-rnd offers two solutions:
1. padstacks: this covers 99% of the use cases; you can have different
shape per layer type and the shape can be round cap line (your
case) or even arbitrary polygon. Note: you can even have a padstack that
have oval pad on bottom copper but smaller, round pad on inner and top
copper layers to provide solid soldering on bottom and make more room for
trces elsewhere!
2. heavy terminal: construct your pin/pad using arbitrary objects.
Anything you can draw can become a terminal (pin or pad). E.g. you can
have nice paste patterns on qfn center pads.
> I tried to hack around that by adding a copper polygon in the footprint,
> but it looks like the file format does not support having a copper in
> footprints. And thinking about it it makes sense, since it cannot know
> the layer it will belong to.
That is not a file format issue, but a data model issue. Also fixed in
pcb-rnd: anything that you can draw on a board, on any layer, can be in a
footprint.
> I also shortly looked into the pcb source code, but I do not see how
> this could be added easily enough. I suppose that we would have to add
> two more string flags, something as "oval_horiz" and "oval_vert", but
> then it looks like there are too many special cases all over the place
> that would need to be adjusted.
Exactly! That's why pcb-rnd choose a different way, and we have rewritten
the whole data model to remove exisitng special cases (like octagon or
square pad) and introduce simple, generic, "draw anything you want" code.
It took about 1.5 years, so probably doesn't classify as "could be
added easily enough".
We also fixed a few other infrastructure, like we have a solid layer model
that fully separates physical layer concept from logical drawing canvas
(and lets you draw on any layer, including mask and paste, including in
footprint).
HTH,
Igor2
- Raw text -