The FABRICATION array allows anyone to perform PCB manufacturing commands such as Etch Compensation (Grow/Shrink), TearDrops, Trim Silkscreen, etc.
Fields in the FABRICATION array
| Description |
| JOB=NAME | The name of the Job to process. Required. Dynamic Job References are also supported. |
| UNITS=VALUE | Units to use for this FABRICATION array only. Choose from: mil mm cm inch um (default: mm)
|
| ETCH_FACTOR=VALUE | Enlarge or reduce objects sizes. Useful for applying etch factors.
ETCH_FACTOR=METHOD,VALUE,SET
METHOD Assign a method to calculate Etch factors, choose either: absolute or percent Default: Absolute
VALUE Absolute method: Assign the offset distance for the etch factor. Default: 0.0
Percent method: Assign the etch pecentage value per side. Default: 100.0
SET Selected Objects. If Empty, both top and bottom metal layers are selected.
Example:
ETCH_FACTOR=absolute,0.02,[top]
ETCH_FACTOR=percent,125,[bottom]
|
| SILKSCREEN_OPTIMIZER=VALUE | Silkscreen optimizer removes the overlapping silkscreen data from soldermask pads.
SILKSCREEN_OPTIMIZER=CLEARANCE,MINSIZE,METHOD,LAYERS
CLEARANCE Minimum mask spacing from Silkscreen objects. Default: 0.127mm
MINSTUB Minimum length for remaining lines after trimming the silkscreen. Default: 0.05mm
METHOD Select between two trim silkscreen methods: Trim or Composite Default: Trim
TRIM_TOPSIDE Trim Top side Silkscreen. Default: yes
TRIM_BOTTOMSIDE Trim Bottom side Silkscreen. Default: yes
Example:
SILKSCREEN_OPTIMIZER=0.005,0.002,trim,yes,no
|
| TEARDROP=VALUE | Add Teardrops to improve pad/trace connections.
TEARDROP=TYPE,OFFSET_FACTOR,SET
TYPE Assign a Teardrop type either: teardrop or snowman
OFFSET_FACTOR Assign an offset multiple for teardrops construction (not used with Snowman type). Default: 2.0
SET Selected Objects. If Empty, both top and bottom metal layers are selected.
Example:
TEARDROP=teardrop,2,[top]
TEARDROP=snowman,0,[bottom]
|
| REMOVE_OUTSIDEBORDER=VALUE | Remove objects Outside PCB Border like notes, drawing objects, etc. Perfect for creating 1UP PCB jobs that are ready for panelization and manufacturing.
REMOVE_OUTSIDEBORDER=TRIM_PAD,TRIM_TEXT,TRIM_TRACE,CLEARANCE,LAYERS
TRIM_PAD=<YES|NO> Pads extending past the border will be trimmed. Drill holes will be ignored. Default: YES
TRIM_TEXT=<YES|NO> If Checked, Text extending past the border will be trimmed. Default: YES
TRIM_TRACE=<YES|NO> If Checked, Traces extending past the border are trimmed. If unchecked, Traces are trimmed as Polygons. Default: YES
CLEARANCE=NUM Trim all objects by this Clearance from the PCB border edge. Default: 0.0
LAYERS Enter Layer names (Comma separated) or Dynamic Layer Types. Wildcards are permitted. Default: [All PCB] (i.e All PCB Layers).
Example:
REMOVE_OUTSIDEBORDER=yes,yes,yes,0,[all]
REMOVE_OUTSIDEBORDER=yes,yes,yes,0.02,[All PCB]
- Note
- SHORTCUT: If REMOVE_OUTSIDEBORDER= is empty, these defaults are used: REMOVE_OUTSIDEBORDER=yes,yes,yes,0,[All PCB]
|
| DELETE_LAYERS=VALUE | Enter Layer names (Comma separated) or Dynamic Layer Types. Wildcards are permitted.
DELETE_LAYERS=PERMANENT,LAYERS
PERMANENT=<YES|NO> If no, only the objects on the layer will be deleted; the layer still remains in the database.
If Yes, delete layer objects plus layer from database. Default: YES
LAYERS Enter Layer names (Comma separated) or Dynamic Layer Types. Wildcards are permitted. Default: [Empty] (i.e All Empty Layers).
Example:
DELETE_LAYERS=yes,[empty]
<-— Deletes all empty layers from database. REMOVE_OUTSIDEBORDER=no,[top]
<-— Removes objects from layer top, layers remains in database.
|
ADD_ROUT_PROFILE=VALUE
|
The rout profile is used to cut out the PCB from within a panel. Typically PCB's using Routs are held in the panel using Tabs.
ADD_ROUT_PROFILE=TOOL_DIAMETER,PLACEMENT,DIRECTION,PLUNGE,RETRACT
TOOL_DIAMETER The rout path tool width
PLACEMENT Tab placement using Relative Coordinates referenced from the center of the JOB or PANEL; or 0-360 degrees.
DIRECTION Either CW (for Clockwise) or CCW (for Counter-Clockwise). Default: CW
PLUNGE The distance extending plunge point. Default: 0
RETRACT The distance extending past the Ending Distance. Default: 0
Example:
add_rout_profile=0.1,@right,CW,0,0
add_rout_profile=2.5,45,CCW,2.0,2.0
|
ADD_ROUT_CUTOUTS=VALUE
|
The rout cutouts are used to remove the internal openings in a PCB.
ADD_ROUT_CUTOUTS=TOOL_DIAMETER,PLACEMENT,DIRECTION,CLEANUP
TOOL_DIAMETER The rout path tool width
PLACEMENT Tab placement using Relative Coordinates referenced from the center of the cutout; or 0-360 degrees.
DIRECTION Either CW (for Clockwise) or CCW (for Counter-Clockwise). Default: CCW
CLEANUP_CUT Extend the Retract a little further to prevent rough edges. Choose either: YES or NO Default: No
PLUNGE_CENTER Add the Plunge point in the center of the cutout. Choose either: YES or NO Default: No
Example:
add_rout_cutouts=0.1,@bottom,CCW,yes,yes
add_rout_cutouts=2.5,@top-2,CW,no,no
|
| ADD_TAB=VALUE |
Rout tabs are used to hold each PCB in place on a production panel, during the Manufacturing and Assembly processes. Afterwards, finsihed PCB's can be snapped out of the Panel.
ADD_TAB=WIDTH,PLACEMENT
WIDTH The tab width size
PLACEMENT Tab placement using Relative Coordinates referenced from the center of the PCB; or 0-360 degrees; or Add Vertex #
Example:
add_tab=0.1,@top
add_tab=0.1,@bottom
add_tab=2.5,45
|
| ADD_TAB_PERFORATED=VALUE |
Rout tabs are used to hold each PCB in place on a production panel, during the Manufacturing and Assembly processes. Afterwards, finsihed PCB's can be snapped out of the Panel.
ADD_TAB_PERFORATED=TYPE,PLACEMENT,PERFORATION
TYPE Chose the perforation type either: SINGLE or DOUBLE
PLACEMENT Tab placement using Relative Coordinates referenced from the center of the PCB; or 0-360 degrees.
PERFORATION=HOLE_COUNT,DIAMETER,SPACING,OFFSET
Example:
add_tab_perforated=single,@bottom,3,0.025,0.025,0.007
|
| ADD_TAB_ANGLED=VALUE |
Rout tabs are used to hold each PCB in place on a production panel, during the Manufacturing and Assembly processes. Afterwards, finsihed PCB's can be snapped out of the Panel.
ADD_TAB_ANGLED=WIDTH,PLACEMENT,EXIT_ENTRY_ANGLE,TAB_LENGTH
WIDTH The tab width size
PLACEMENT Tab placement using Relative Coordinates referenced from the center of the PCB; or 0-360 degrees.
EXIT_ENTRY_ANGLE The acute angle between the angled tabs exit and entry options. Default: 125 TAB_LENGTH The length of the angled tab.
Example:
add_tab_angled=0.1,@bottom,125.0,0.05
|
| ADD_TAB_ANGLED_PERFORATED=VALUE |
Rout tabs are used to hold each PCB in place on a production panel, during the Manufacturing and Assembly processes. Afterwards, finsihed PCB's can be snapped out of the Panel.
ADD_TAB_ANGLED_PERFORATED=PLACEMENT,EXIT_ENTRY_ANGLE,TAB_LENGTH,PERFORATION
PLACEMENT Tab placement using Relative Coordinates referenced from the center of the PCB; or 0-360 degrees.
EXIT_ENTRY_ANGLE The acute angle between the angled tabs exit and entry options. Default: 125 TAB_LENGTH The length of the angled tab.
PERFORATION=HOLE_COUNT,DIAMETER,SPACING,OFFSET
Example:
add_tab_angled_perforated=@bottom,125,0.05,0.025,3,0.025,0.025,0.007
|
# Comment
FABRICATION {
JOB=@active
UNITS=english
SILKSCREEN_OPTIMIZER=0.005,0.002,[silk]
TEARDROP=teardrop,2,[top+bottom]
ETCH_FACTOR=absolute,0.02,[top]
ADD_ROUT_PROFILE=2,@bottom,cw,0,0
}
<!-- Sample Comment -->
<FABRICATION>
<JOB>@active</JOB>
<UNITS>english</UNITS>
<SILKSCREEN_OPTIMIZER>0.005,0.002,[silk]</SILKSCREEN_OPTIMIZER>
<TEARDROP>teardrop,2,[top+bottom]</TEARDROP>
<ETCH_FACTOR>absolute,0.02,[top]</ETCH_FACTOR>
<ADD_ROUT_PROFILE>2,@bottom,cw,0,0</ADD_ROUT_PROFILE>
</FABRICATION>
"FABRICATION": {
"JOB": "@active",
"UNITS": "english",
"SILKSCREEN_OPTIMIZER": "0.005,0.002,[silk]",
"TEARDROP": "teardrop,2,[top+bottom]",
"ETCH_FACTOR": "absolute,0.02,[top]",
"ADD_ROUT_PROFILE": "2,@bottom,cw,0,0"
}