2015-07-23 02:43:01 +03:00
|
|
|
# This configuration file demonstrates panelizing a single job.
|
|
|
|
|
|
|
|
##############################################################################
|
|
|
|
# In the [DEFAULT] section you can create global names to save typing the same
|
|
|
|
# directory name, for example, over and over.
|
|
|
|
##############################################################################
|
|
|
|
[DEFAULT]
|
|
|
|
|
|
|
|
# Change projdir to wherever your project files are, for example:
|
|
|
|
#
|
|
|
|
# projdir = /home/stuff/projects/test
|
|
|
|
#
|
|
|
|
# or relative pathname from where you are running GerbMerge
|
|
|
|
#
|
|
|
|
# projdir = testdata
|
|
|
|
#
|
|
|
|
# or if all files are in the current directory (as in this example):
|
|
|
|
#
|
|
|
|
# projdir = .
|
|
|
|
projdir = .
|
|
|
|
|
|
|
|
# For convenience, this is the base name of the merged output files.
|
|
|
|
MergeOut = ATtami
|
|
|
|
|
|
|
|
#############################################################################
|
|
|
|
# The [Options] section defines settings that control how the input files are
|
|
|
|
# read and how the output files are generated.
|
|
|
|
#############################################################################
|
|
|
|
[Options]
|
|
|
|
|
|
|
|
################################################################
|
|
|
|
#
|
|
|
|
# Settings that are very important
|
|
|
|
#
|
|
|
|
################################################################
|
|
|
|
|
|
|
|
# Option indicating name of file that maps Excellon tool codes to drill sizes.
|
|
|
|
# This is not necessary if the Excellon files have embedded tool sizes, or if a
|
|
|
|
# tool list is specified as part of the job description. The ToolList option
|
|
|
|
# here is the "last resort" for mapping tool codes to tool sizes. Most recent
|
|
|
|
# PCB programs embed drill size information right in the Excellon file, so this
|
|
|
|
# option should not be necessary and can be commented out.
|
|
|
|
#ToolList=proj1.drl
|
|
|
|
|
|
|
|
# Optional indication of the number of decimal places in input Excellon drill
|
|
|
|
# files. The default is 4 which works for recent versions of Eagle (since
|
|
|
|
# version 4.11r12), as well as Orcad and PCB. Older versions of Eagle use 3
|
|
|
|
# decimal places.
|
|
|
|
#ExcellonDecimals = 4
|
|
|
|
|
|
|
|
################################################################
|
|
|
|
#
|
|
|
|
# Settings that are somewhat important
|
|
|
|
#
|
|
|
|
################################################################
|
|
|
|
|
|
|
|
# Which layers to draw cut lines on. Omit this option or set to 'None' for no
|
|
|
|
# cut lines. Cut lines are borders around each job that serve as guides for
|
|
|
|
# cutting the panel into individual jobs. Option 'CutLineWidth' sets the
|
|
|
|
# thickness of these cut lines.
|
|
|
|
#
|
|
|
|
# NOTE: Layer names are ALL LOWERCASE, even if you define them with uppercase
|
|
|
|
# letters below.
|
|
|
|
#CutLineLayers = *topsilkscreen,*bottomsilkscreen
|
|
|
|
|
|
|
|
# Which layers to draw crop marks on. Omit this option or set to 'None' for no
|
|
|
|
# crop marks. Crop marks are small L-shaped marks at the 4 corners of the final
|
|
|
|
# panel. These practically define the extents of the panel and are required by
|
|
|
|
# some board manufacturers. Crop marks are also required if you want to leave
|
|
|
|
# extra space around the final panel for tooling or handling. Option
|
|
|
|
# 'CropMarkWidth' sets the thickness of these crop marks.
|
|
|
|
#
|
|
|
|
# NOTE: Layer names are ALL LOWERCASE, even if you define them with uppercase
|
|
|
|
# letters below.
|
|
|
|
#CropMarkLayers = *topsilkscreen,*bottomsilkscreen
|
|
|
|
|
|
|
|
# Set this option to the name of a file in which to write a Gerber fabrication
|
|
|
|
# drawing. Some board manufacturers require a fabrication drawing with panel
|
|
|
|
# dimensions and drill hit marks and drill legend. There's no harm in creating
|
|
|
|
# this file...you can ignore it if you don't need it.
|
|
|
|
#FabricationDrawingFile = %(mergeout)s.fab
|
|
|
|
|
|
|
|
# If FabricationDrawingFile is specified, you can provide an optional file name
|
|
|
|
# of a file containing arbitrary text to add to the fabrication drawing. This
|
|
|
|
# text can indicate manufacturing information, contact information, etc.
|
|
|
|
#FabricationDrawingText = %(projdir)s/fabdwg.txt
|
|
|
|
|
|
|
|
# Option to generate leading zeros in the output Excellon drill file, i.e., to
|
|
|
|
# NOT use leading-zero suppression. Some Gerber viewers cannot properly guess
|
|
|
|
# the Excellon file format when there are no leading zeros. Set this option to
|
|
|
|
# 1 if your Gerber viewer is putting the drill holes in far off places that do
|
|
|
|
# not line up with component pads.
|
|
|
|
ExcellonLeadingZeros = 0
|
|
|
|
|
|
|
|
# Optional additional Gerber layer on which to draw a rectangle defining the
|
|
|
|
# extents of the entire panelized job. This will create a Gerber file (with
|
|
|
|
# name specified by this option) that simply contains a rectangle defining the
|
|
|
|
# outline of the final panel. This outline file is useful for circuit board
|
|
|
|
# milling to indicate a path for the router tool. There's no harm in creating
|
|
|
|
# this file...you can ignore it if you don't need it.
|
|
|
|
# OutlineLayerFile = %(mergeout)s.oln
|
|
|
|
|
|
|
|
# Optional additional Gerber layer on which to draw horizontal and vertical
|
|
|
|
# lines describing where to score (i.e., V-groove) the panel so that jobs
|
|
|
|
# can easily snap apart. These scoring lines will be drawn half-way between
|
|
|
|
# job borders.
|
|
|
|
ScoringFile = %(mergeout)s.sco
|
|
|
|
|
|
|
|
# Set the maximum dimensions of the final panel, if known. You can set the
|
|
|
|
# dimensions of the maximum panel size supported by your board manufacturer,
|
|
|
|
# and GerbMerge will print an error message if your layout exceeds these
|
|
|
|
# dimensions. Alternatively, when using automatic placement, the panel sizes
|
|
|
|
# listed here constrain the random placements such that only placements that
|
|
|
|
# fit within the given panel dimensions will be considered. The dimensions are
|
|
|
|
# specified in inches.
|
|
|
|
# TAMI = 10x10cm in out case
|
|
|
|
PanelWidth = 3.93701
|
|
|
|
PanelHeight = 3.93701
|
|
|
|
|
|
|
|
# Set the amount of extra space to leave around the edges of the panel to
|
|
|
|
# simplify tooling and handling. These margins are specified in inches, and
|
|
|
|
# default to 0" if not specified. These spacings will only be visible to the
|
|
|
|
# board manufacturer if you enable crop marks (see CropMarkLayers above) or use.
|
|
|
|
LeftMargin = 0.01
|
|
|
|
RightMargin = 0.01
|
|
|
|
TopMargin = 0.01
|
|
|
|
BottomMargin = 0.01
|
|
|
|
|
|
|
|
################################################################
|
|
|
|
#
|
|
|
|
# Settings that are probably not important
|
|
|
|
#
|
|
|
|
################################################################
|
|
|
|
|
|
|
|
# Set the inter-job spacing (inches) in both the X-dimension (width) and
|
|
|
|
# Y-dimension (height). Normally these would be the same unless you're trying
|
|
|
|
# really hard to make your jobs fit into a panel of exact size and you need to
|
|
|
|
# tweak these spacings to make it work. 0.125" is probably generous, about half
|
|
|
|
# that is practical for using a band saw, but you probably want to leave it at
|
|
|
|
# 0.125" if you have copper features close to the board edges and/or are using
|
|
|
|
# less precise tools, like a hacksaw, for separating the boards.
|
|
|
|
XSpacing = 0.0625
|
|
|
|
YSpacing = 0.0625
|
|
|
|
|
|
|
|
# Width of cut lines, in inches. The default value is 0.01". These are drawn on
|
|
|
|
# the layers specified by CutLineLayers.
|
|
|
|
CutLineWidth = 0.01
|
|
|
|
|
|
|
|
# Width of crop marks, in inches. The default value is 0.01". These are drawn on
|
|
|
|
# the layers specified by CropMarkLayers.
|
|
|
|
CropMarkWidth = 0.01
|
|
|
|
|
|
|
|
# This option is intended to reduce the probability of forgetting to include a
|
|
|
|
# layer in a job description when panelizing two or more different jobs.
|
|
|
|
# Unless this option is set to 1, an error will be raised if some jobs do not
|
|
|
|
# have the same layer names as the others, i.e., are missing layers. For
|
|
|
|
# example, if one job has a top-side soldermask layer and another doesn't, that
|
|
|
|
# could be a mistake. Setting this option to 1 prevents this situation from
|
|
|
|
# raising an error.
|
|
|
|
AllowMissingLayers = 0
|
|
|
|
|
|
|
|
# This option is intended to reduce the number of drills in the output by
|
|
|
|
# eliminating drill sizes that are too close to make a difference. For example,
|
|
|
|
# it probably does not make sense to have two separate 0.031" and 0.0315"
|
|
|
|
# drills. The DrillClusterTolerance value specifies how much tolerance is
|
|
|
|
# allowed in drill sizes, in units of inches. Multiple drill tools that span
|
|
|
|
# twice this tolerance will be clustered into a single drill tool. For example,
|
|
|
|
# a set of 0.031", 0.0315", 0.032", and 0.034" drills will all be replaced by a
|
|
|
|
# single drill tool of diameter (0.031"+0.034")/2 = 0.0325". It is guaranteed
|
|
|
|
# that all original drill sizes will be no farther than DrillClusterTolerance
|
|
|
|
# from the drill tool size generated by clustering.
|
|
|
|
#
|
|
|
|
# Setting DrillClusterTolerance to 0 disables clustering.
|
|
|
|
DrillClusterTolerance = 0.002
|
|
|
|
|
|
|
|
# Use this option to automatically thicken features on particular layers. This
|
|
|
|
# is intended for thickening silkscreen to some minimum width. The value of
|
|
|
|
# this option must be a comma-separated list of layer names followed by minimum
|
|
|
|
# feature sizes (in inches) for that layer. Comment this out to disable thickening.
|
|
|
|
MinimumFeatureSize = *topsilkscreen,0.008,*bottomsilkscreen,0.008
|
|
|
|
|
|
|
|
##############################################################################
|
|
|
|
# This section sets the name of merged output files. Each assignment below
|
|
|
|
# specifies a layer name and the file name that is to be written for that
|
|
|
|
# merged layer. Except for the BoardOutline and Drills layer names, all other
|
|
|
|
# layer names must begin with an asterisk '*'. The special layer name Placement
|
|
|
|
# is used to specify the placement file that can be used with the
|
|
|
|
# '--place-file' command-line option in a future invocation of GerbMerge. The
|
|
|
|
# special layer name ToolList is used to specify the file name that represents
|
|
|
|
# the tool list for the panelized job.
|
|
|
|
#
|
|
|
|
# By default, if this section is omitted or no layername=filename assignment is
|
|
|
|
# made, the following files are generated:
|
|
|
|
#
|
|
|
|
# BoardOutline = merged.boardoutline.ger
|
|
|
|
# Drills = merged.drills.xln
|
|
|
|
# Placement = merged.placement.txt
|
|
|
|
# ToolList = merged.toollist.drl
|
|
|
|
# *layername = merged.layername.ger
|
|
|
|
# (for example: 'merged.toplayer.ger', 'merged.silkscreen.ger')
|
|
|
|
#
|
|
|
|
# Any assignment that does not begin with '*' or is not one of the reserved
|
|
|
|
# names BoardOutline, Drills, ToolList, or Placement is a generic string
|
|
|
|
# assignment that can be used for string substitutions, to save typing.
|
|
|
|
##############################################################################
|
|
|
|
[MergeOutputFiles]
|
|
|
|
Prefix = %(mergeout)s
|
|
|
|
|
|
|
|
*TopLayer=%(prefix)s.GTL
|
|
|
|
*BottomLayer=%(prefix)s.GBL
|
|
|
|
*TopSilkscreen=%(prefix)s.GTO
|
|
|
|
*BottomSilkscreen=%(prefix)s.GBO
|
|
|
|
*TopSoldermask=%(prefix)s.GTS
|
|
|
|
*BottomSoldermask=%(prefix)s.GBS
|
|
|
|
Drills=%(prefix)s.TXT
|
|
|
|
BoardOutline=%(prefix)s.GML
|
|
|
|
ToolList = %(prefix)s.drl
|
|
|
|
Placement = placement.%(prefix)s.nfo
|
|
|
|
|
|
|
|
##############################################################################
|
|
|
|
# The remainder of the file specifies the jobs to be panelized. Each job is
|
|
|
|
# specified in its own section. To each job you can assign a job name, which
|
|
|
|
# will be the name of the section in square brackets (e.g., [Proj1]). This job
|
|
|
|
# name is used in the layout file (if used) to refer to the job.
|
|
|
|
#
|
|
|
|
# Job names are case-sensitive, but do not create job names that are the same
|
|
|
|
# except for the case of the characters, as this may cause problems during
|
|
|
|
# layout. Job names may only contain the following characters:
|
|
|
|
#
|
|
|
|
# a-z A-Z 0-9 _
|
|
|
|
#
|
|
|
|
# In addition, job names must begin with a letter (a-z or A-Z).
|
|
|
|
##############################################################################
|
|
|
|
[Proj1]
|
|
|
|
|
|
|
|
# You can set any options you like to make generating filenames easier, like
|
|
|
|
# Prefix. This is just a helper option, not a reserved name. Note, however,
|
|
|
|
# that you must write %(prefix)s below, in ALL LOWERCASE.
|
|
|
|
#
|
|
|
|
# Note how we are making use of the 'projdir' string defined way up at the top
|
|
|
|
# in the [DEFAULT] section to save some typing. By setting 'projdir=somedir'
|
|
|
|
# the expression '%(projdir)s/proj1' expands to 'somedir/proj1'.
|
2015-07-23 03:28:47 +03:00
|
|
|
Prefix=%(projdir)s/1x1/Proj1
|
2015-07-23 02:43:01 +03:00
|
|
|
|
|
|
|
# List all the layers that participate in this job. Required layers are Drills
|
|
|
|
# and BoardOutline and have no '*' at the beginning. Optional layers have
|
|
|
|
# names chosen by you and begin with '*'. You should choose consistent layer
|
|
|
|
# names across all jobs.
|
|
|
|
*TopLayer=%(prefix)s.GTL
|
|
|
|
*BottomLayer=%(prefix)s.GBL
|
|
|
|
*TopSilkscreen=%(prefix)s.GTO
|
|
|
|
*BottomSilkscreen=%(prefix)s.GBO
|
|
|
|
*TopSoldermask=%(prefix)s.GTS
|
|
|
|
*BottomSoldermask=%(prefix)s.GBS
|
|
|
|
Drills=%(prefix)s.TXT
|
|
|
|
BoardOutline=%(prefix)s.GML
|
|
|
|
|
|
|
|
# If this job does not have drill tool sizes embedded in the Excellon file, it
|
|
|
|
# needs to have a separate tool list file that maps tool names (e.g., 'T01') to
|
|
|
|
# tool diameter. This may be the global tool list specified in the [Options]
|
|
|
|
# section with the ToolList parameter. If this job doesn't have embedded tool
|
|
|
|
# sizes, and uses a different tool list than the global one, you can specify it
|
|
|
|
# here.
|
|
|
|
#ToolList=proj1.drl
|
|
|
|
|
|
|
|
# If this job has a different ExcellonDecimals setting than the global setting
|
|
|
|
# in the [Options] section above, it can be overridden here.
|
|
|
|
#ExcellonDecimals = 3
|
|
|
|
|
|
|
|
# You can set a 'Repeat' parameter for this job when using automatic placement
|
|
|
|
# (i.e., no *.def file) to indicate how many times this job should appear in
|
|
|
|
# the final panel. When using manual placement, this option is ignored.
|
|
|
|
#Repeat = 5
|