delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2015/07/18/14:20:26

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
Date: Sat, 18 Jul 2015 20:19:47 +0200 (CEST)
X-X-Sender: igor2 AT igor2priv
To: 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: [geda-user] pcb-rnd: parametric footprints (status update)
Message-ID: <alpine.DEB.2.00.1507181958130.6924@igor2priv>
User-Agent: Alpine 2.00 (DEB 1167 2008-08-23)
MIME-Version: 1.0
Reply-To: geda-user AT delorie DOT com

Hi all,

I'm doing a pcb-rnd [1] marathon this weekend. I estimate that the first 
version of the new footprint system will be ready by monday. A little 
teaser:


http://igor2.repo.hu/tmp/pcb-rnd-fp.avi


Short version: on-the-fly, language-independent footprint generation that 
works in the library preview dialog and in sch->pcb.

Long version - things that already work:

- Footprints are either static (from file, "file elements") or parametric 
(generated by an external program)

- The heuristics to decide whether a footprint is parametric is simple: if 
the footprint attribute/name contains parentheses, it is parametric. The 
file name doesn't contain (), tho.

- I've refactored all the element search/open code in pcb-rnd into 
pcblib_fp.[ch] so that all the above is centralized and coded only once. 
More code has been deleted than what I had to add and the result is more 
generic.

- As shown on the video, I managed to change the gtk hid to use parametric 
footprints in the library window.

- Vladimir contributed a gnet-gsch2pcb.scm variant that does not have 
any m4 or footprint attribute mangling in it, it lists all footprints 1:1. 
Thanks!

- I've forked gsch2pcb into gsch2pcb-rnd so that it uses the same 
pcblib_fp - no more code/heuristics duplication between pcb and gschem.

- There are provisions for running on win32 (there's an optional wrapper 
around running the external footprint generators so there's no hardwired 
dependency on POSIX shell or FHS paths anywhere - on windows it can be a 
bash.exe or a small C code that reads the shebang and executes the 
generator script with the interpreter specified).

- I've written a few footprint generators in awk (connector(), dip(), 
so()); they are also accessible online [2].

- I've started to build the default library of pcb-rnd, which will contain 
essential footprints only. It's the cleanup we were discussing on the list 
a few months ago: a small set of footprints a new user is likely to use. 
No exotic parts. I plan to provide a lot of the common footprints from 
generators. I will minimize my dependencies: my generators will depend on 
shell and awk only (windows: this means two standalone exes; UNIX: both 
are generally available on normal installations).

Regards,

Igor2

[1] http://repo.hu/projects/pcb-rnd
[2] http://igor2.repo.hu/cgi-bin/pcblib-param.cgi

- Raw text -


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