X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com X-Injected-Via-Gmane: http://gmane.org/ To: geda-user AT delorie DOT com From: Kai-Martin Knaak Subject: Re: [geda-user] bug? in Gerber Export in PCB Date: Mon, 27 Jul 2015 21:53:24 +0200 Organization: Institut =?UTF-8?B?ZsO8cg==?= Quantenoptik Lines: 118 Message-ID: References: <55B6674B DOT 9080108 AT buffalo DOT edu> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" X-Complaints-To: usenet AT ger DOT gmane DOT org X-Gmane-NNTP-Posting-Host: 130.75.103.107 User-Agent: KNode/4.14.1 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id t6RJrduL005686 Reply-To: geda-user AT delorie DOT com Stephen Besch wrote: > For some time now I have struggled with the rather inscrutable and > somewhat arcane User interface for Gerber exports from PCB. I circumvent the GUI by using a little bash script to produce gerbers. The script also adds a readme for the fab and wraps it all into a single zip file. In the end it starts gerbv to let me check the result. The script is automatically installed by my new_geda_project.sh. Here is an example for the project Keopsys-IO: /--------------------------------------------- #!/bin/sh # produce gerber files, packages them in a zip file and open gerbv NAME=keopsys-io VERSION=v1 LAYOUT=../keopsys-io.pcb pcb -x gerber --metric --gerberfile $NAME"_"$VERSION --name-style first $LAYOUT echo "Add a README for the fab" echo \ "These are the gerber files for the project: "$NAME", "$VERSION" Mapping of files: "$NAME"_"$VERSION".bottom -- bottom copper "$NAME"_"$VERSION".bottommask.gbr -- bottom mask "$NAME"_"$VERSION".bottompaste.gbr -- bottom solder paste "$NAME"_"$VERSION".fab.gbr -- position and diameter of holes "$NAME"_"$VERSION".top.gbr -- top copper "$NAME"_"$VERSION".topmask.gbr -- top mask "$NAME"_"$VERSION".toppaste.gbr -- top solder paste "$NAME"_"$VERSION".topsilk.gbr -- top silk "$NAME"_"$VERSION".comment.gbr -- comments "$NAME"_"$VERSION".outline.gbr -- outline of the pcb. "$NAME"_"$VERSION".plated-drill.cnc -- position of plated holes in excellon format "$NAME"_"$VERSION".unplated-drill.cnc -- position of non-plates holes in excellon format " > gerberdata_"$NAME"_"$VERSION".README # compress the gerbers into a zip file zip "gerberdaten_"$NAME"_"$VERSION.zip \ gerberdaten_$NAME"_"$VERSION".README" \ $NAME"_"$VERSION*.gbr \ $NAME"_"$VERSION*.cnc # open the gerbers with gerbv gerbv $NAME"_"$VERSION*.gbr \-------------------------------------------------- > The first > is simply figuring out how to specify the base directory for the gerber > files. It is almost completely inscrutable, but patience and about a > half hour of trial and error resolves it. This bit of the GUI really > needs a standard Folder Chooser. +1 And the path should be remembered across sessions. It should be possible to set the path relative to the project dir. > The second issue is the weirdness of the the output file names. Standard > layers (Top, bottom, etc) come out named after their respective layers. > However all the other layers - specifically "Spare" in the current case, > come out named something like Group3.gbr - and it matters not how you > might rename them. IIRC, my script uses the option "--name-style first" to this end. > The third issue is more serious and irritating. If I draw some stuff on > the "Spare" layer and then generate the gerbers, the spare layer > contains a large amount of stuff from other layers - pads and pins Only pins and vias should show up in the spare layer. Pads are only on layers that are part of the "top" or "bottom" group. If you see pads on "spare", this layer is probably accidentally part of either the top or bottom group. > mostly - that are neither supposed to be there nor do they show up in > PCB's display - only in the gerber viewer. Pins and vias have spanned all non-special layers ever since I started to seriously use geda. It is a consequence of the way layers and pins are represented in pcb. In particular, the file format offers no way to define which layers a via or pin is supposed to live on. This is one of the seemingly smallish issues of pcb that would need a serious bit of effort to fix. In this case: Re-factor and refine the way pcb handles layers. ---<)kaimartin(>--- -- Kai-Martin Knaak tel: +49-511-762-2895 Universität Hannover, Inst. für Quantenoptik fax: +49-511-762-2211 Welfengarten 1, 30167 Hannover http://www.iqo.uni-hannover.de GPG key: http://pgp.mit.edu:11371/pks/lookup?search=Knaak+kmk&op=get