Research Links

ULP Related Links

My Pages


My Notes; Settings for least cluttered RF parts placement and top layer route

  • Turn on only:  1,3, pads, vias, unrouted, dimensions,tPlace, tOrigins

Tools for quicker RF / High Speed layout These ULP's place the components on the board in the same spacial relation they are in the schematic. Will save much work on RF board.

  • Eagle PCB ULP: ARG  –  Autoroute group that is selected in either schematic or board. Nets can be excluded in dialogue & saved in .ini file. A rip up script is automatically generated. 
    Uploaded by Jim Meech (jim dot meech at REMOVE fosterfreeman dot com) from Foster+Freeman Ltd.
  • Eagle PCB ULP: APG  – Autoplace by Group. apg.ulp places components on the PCB in the relative positions they have within the selected group on the schematic sheet. A dialogue box sets scale & x,y base positions. An ini file stores the last scale & offset values, to aid interactive placement. This ULP is a refinement of aps.ulp. 
  • Eagle PCB ULP: APS  –  Auto place sheet: aps.ulp. Place components on PCB as they are arranged on the schematic sheet. Enter sheet number,scale & x,y base point for the sheet, in dialogue. 
    the last settings are stored in .ini file to aid interactive placement. Based on autoplace-3.ulp 
  • ImportExport.Zip  –  This ULP can export a complete project as (special) script file, so it did can be imported into a different project again. Both schematics AND routed layout are exported / imported. Useful for channel duplication or creating a library of circuit snippets. 

Tools for Better BOMS

  • exp-project-lbr.ulp – Helps: version control  /  Forcing Value field "ON" with all parts / Adding the attribute fields I need for the BOM to all parts.


My Notes: How to "delete" a layer in Eagle PCB

  • You may at some point need to renumber a layer.  If you are out of numbers because you ran up through 16 which is the highest route number the you will need to shuffle names if you have unused numbers below 16.  i needed to use layer 3 with existing traces but it was in reality labeled 13.  I created the layer by going into  Tools > DRC > Layer tab.   
  • The layer setup was: (1*2+13*14+15*16)
  • I changed it to (1*2+3*14+15*16)…..however when I looked at "display" it showed 3 & 13 ! 
  • I then moved all the traces from 13 to 3 and still 13 showed up under layer "display"
  • I checked for any other objects on 13…found 1 more and moved that to 3.  At this point 13 was empty
  • I then went back into Tools > DRC > Layer tab and changed the layer structure to  (1*2+13*14+15*16)  hit supply , hit select then went back to  (1*2+3*14+15*16). At this point 13 no longer showed up in the "display" layer display.   See: If layer 4 is empty (no objects in it) go to the Layer Setup, make a slight change in it, Apply it to your Board, and re-define the setup correctly. Now Layer 4 should no longer be visible in the DISPLAY/LAYER list.


​My Notes: How to change entire layer of routes to another layer

  1. 1 click the change icon (a wrench) 
  2. 2 select layer 
  3. 3 select the desired target layer 
  4. 4 select the trace sement you want to change with the left mouse button OR Change:Group  to do an entire layer


Creating Gerber Files

How to generate drill files from Eagle that gerbv likes

Gerbv is basically able to read the Excellon files generated by Eagle, but you have to make a few changes to them however. Gerbv expects the Excellon files to begin with a header defining the drill sizes used. Eagle's Excellon files are lacking these.
How does Eagle generate Excellon files?

With Eagle's CAM processor you have the possibility to generate Excellon files of your board. For this you have to supply a file defining the drills available to the CAM processor. This file usually has the suffix .drl and is called Drill Rack in Eagle terms. It contains the drill sizes in the form

T01  0.018in
T02  0.036in
and so on.
Drill sizes may also be given in mil and mm while in seems to be the default. This drill rack file may be given to you by your board house. It can also be auto-generated by Eagle with drillcfg.ulp, in which case simply all drill sizes used in your layout are written into a drill rack file. Now when you create an Excellon file with the given drill rack file, the CAM processor chooses which drill fits best for each hole using the given tolerance values. The CAM processor then outputs an Excellon file (default suffix .drd) and an information file (default suffix .dri). Within the Excellon file generated by Eagle there's no definition of the drill sizes used, it just takes the drills given in the drill rack file. However you can see in the .dri file which drills Eagle has chosen.

So what you need to do to load your Excellon file into gerbv is just adding a proper header in front of your Excellon file defining the drills used by Eagle. You simply have to convert Eagle's drill rack file to a valid Excellon header and put it in front of the Excellon file generated by Eagle, then gerbv will know about the drill sizes. I hacked a small perl script which just does this and is called this way:

./ <Eagle drill rack file> <Eagle Excellon file> <new Excellon file>

The new Excellon file contains the needed drill definition and can be loaded into gerbv. That's all.





Leave a Reply

Avatar placeholder

Your email address will not be published. Required fields are marked *