delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2018/09/02/22:37:50

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
Date: Mon, 3 Sep 2018 04:47:01 +0200 (CEST)
X-X-Sender: igor2 AT igor2priv
To: "Cyril Hrubis (metan DOT lists AT gmail DOT com) [via geda-user AT delorie DOT com]" <geda-user AT delorie DOT com>
X-Debug: to=geda-user AT delorie DOT com from="gedau AT igor2 DOT repo DOT hu"
From: gedau AT igor2 DOT repo DOT hu
Subject: Re: [geda-user] oval pins in pcb?
In-Reply-To: <20180902210712.GA16772@haruka.lan>
Message-ID: <alpine.DEB.2.00.1809030435580.21900@igor2priv>
References: <20180902210712 DOT GA16772 AT haruka DOT lan>
User-Agent: Alpine 2.00 (DEB 1167 2008-08-23)
MIME-Version: 1.0
Reply-To: geda-user AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: geda-user AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com


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 -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019