diff --git a/testdata/layout1.cfg b/testdata/layout1.cfg index d38bb0d..f6644fc 100644 --- a/testdata/layout1.cfg +++ b/testdata/layout1.cfg @@ -48,6 +48,10 @@ MergeOut = merge1 # decimal places. #ExcellonDecimals = 4 +# Units - We must specify whether files use imperial units (inch) or metric units (mm) +#MeasurementUnits = mm +MeasurementUnits = inch + ################################################################ # # Settings that are somewhat important @@ -112,9 +116,13 @@ ScoringFile = %(mergeout)s.sco # 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. +# specified in inches or mm depending on the unit system used. PanelWidth = 12.6 PanelHeight = 7.8 +# if your boards are metric, use mm +#PanelWidth = 100 +#PanelHeight = 100 + # 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 @@ -131,6 +139,9 @@ BottomMargin = 0.1 # ################################################################ +# If using automatic random tile search, you can specify an auto-timeout in seconds +SearchTimeout = 5 + # 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 @@ -143,7 +154,10 @@ YSpacing = 0.125 # Width of cut lines, in inches. The default value is 0.01". These are drawn on # the layers specified by CutLineLayers. +# in inches CutLineWidth = 0.01 +# in mm +#CutLineWidth = 0.25 # Width of crop marks, in inches. The default value is 0.01". These are drawn on # the layers specified by CropMarkLayers. @@ -205,17 +219,30 @@ MinimumFeatureSize = *topsilkscreen,0.008,*bottomsilkscreen,0.008 [MergeOutputFiles] Prefix = %(mergeout)s -*TopLayer=%(prefix)s.cmp -*BottomLayer=%(prefix)s.sol -*TopSilkscreen=%(prefix)s.plc -*BottomSilkscreen=%(prefix)s.pls -*TopSoldermask=%(prefix)s.stc -*BottomSoldermask=%(prefix)s.sts -Drills=%(prefix)s.xln +#*TopLayer=%(prefix)s.cmp +#*BottomLayer=%(prefix)s.sol +#*TopSilkscreen=%(prefix)s.plc +#*BottomSilkscreen=%(prefix)s.pls +#*TopSoldermask=%(prefix)s.stc +#*BottomSoldermask=%(prefix)s.sts +#Drills=%(prefix)s.xln +#BoardOutline=%(prefix)s.bor +#ToolList = toollist.%(prefix)s.drl +#Placement = placement.%(prefix)s.txt + +# these extensions are the ones used by SeeedStudio.com +*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.bor ToolList = toollist.%(prefix)s.drl Placement = placement.%(prefix)s.txt + ############################################################################## # 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 @@ -229,9 +256,9 @@ Placement = placement.%(prefix)s.txt # a-z A-Z 0-9 _ # # In addition, job names must begin with a letter (a-z or A-Z). -############################################################################## -[Proj1] - +# +#[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. @@ -239,12 +266,37 @@ Placement = placement.%(prefix)s.txt # 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'. -Prefix=%(projdir)s/proj1 - +#Prefix=%(projdir)s/proj1 +# # 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. +# +# Here are some additional options for each job: +# +# 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 = 11 +# +############################################################################## + +[proj1] +Prefix=%(projdir)s/proj1 +Repeat = 11 *TopLayer=%(prefix)s.cmp *BottomLayer=%(prefix)s.sol *TopSilkscreen=%(prefix)s.plc @@ -254,19 +306,14 @@ Prefix=%(projdir)s/proj1 Drills=%(prefix)s.xln BoardOutline=%(prefix)s.bor -# 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 +# for Diptrace Generated PCBs, use the following: +#[myProj] +#Prefix=%(projdir)s/myProj +#*TopLayer=%(prefix)s/Top.gbr +#*BottomLayer=%(prefix)s/Bottom.gbr +#*TopSilkscreen=%(prefix)s/TopSilk.gbr +#*BottomSilkscreen=%(prefix)s/BottomSilk.gbr +#*TopSoldermask=%(prefix)s/TopMask.gbr +#*BottomSoldermask=%(prefix)s/BottomMask.gbr +#Drills=%(prefix)s/Drill.txt +#BoardOutline=%(prefix)s/BoardOutline.gbr diff --git a/testdata/layout2.cfg b/testdata/layout2.cfg index 2eb980e..d8b579d 100644 --- a/testdata/layout2.cfg +++ b/testdata/layout2.cfg @@ -49,6 +49,10 @@ MergeOut = merge2 # decimal places. #ExcellonDecimals = 4 +# Units - We must specify whether files use imperial units (inch) or metric units (mm) +#MeasurementUnits = mm +MeasurementUnits = inch + ################################################################ # # Settings that are somewhat important @@ -113,9 +117,13 @@ ScoringFile = %(mergeout)s.sco # 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. +# specified in inches or mm depending on the unit system used. PanelWidth = 12.6 PanelHeight = 7.8 +# if your boards are metric, use mm +#PanelWidth = 100 +#PanelHeight = 100 + # 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 @@ -133,6 +141,9 @@ BottomMargin = 0.1 # ################################################################ +# If using automatic random tile search, you can specify an auto-timeout in seconds +SearchTimeout = 5 + # 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 @@ -145,7 +156,10 @@ YSpacing = 0.125 # Width of cut lines, in inches. The default value is 0.01". These are drawn on # the layers specified by CutLineLayers. +# in inches CutLineWidth = 0.01 +# in mm +#CutLineWidth = 0.25 # Width of crop marks, in inches. The default value is 0.01". These are drawn on # the layers specified by CropMarkLayers. @@ -207,13 +221,25 @@ MinimumFeatureSize = *topsilkscreen,0.008,*bottomsilkscreen,0.008 [MergeOutputFiles] Prefix = %(mergeout)s -*TopLayer=%(prefix)s.cmp -*BottomLayer=%(prefix)s.sol -*TopSilkscreen=%(prefix)s.plc -*BottomSilkscreen=%(prefix)s.pls -*TopSoldermask=%(prefix)s.stc -*BottomSoldermask=%(prefix)s.sts -Drills=%(prefix)s.xln +#*TopLayer=%(prefix)s.cmp +#*BottomLayer=%(prefix)s.sol +#*TopSilkscreen=%(prefix)s.plc +#*BottomSilkscreen=%(prefix)s.pls +#*TopSoldermask=%(prefix)s.stc +#*BottomSoldermask=%(prefix)s.sts +#Drills=%(prefix)s.xln +#BoardOutline=%(prefix)s.bor +#ToolList = toollist.%(prefix)s.drl +#Placement = placement.%(prefix)s.txt + +# these extensions are the ones used by SeeedStudio.com +*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.bor ToolList = toollist.%(prefix)s.drl Placement = placement.%(prefix)s.txt @@ -231,9 +257,9 @@ Placement = placement.%(prefix)s.txt # a-z A-Z 0-9 _ # # In addition, job names must begin with a letter (a-z or A-Z). -############################################################################## -[Proj1] - +# +#[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. @@ -241,20 +267,20 @@ Placement = placement.%(prefix)s.txt # 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'. -Prefix=%(projdir)s/proj1 - +#Prefix=%(projdir)s/proj1 +# # 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.cmp -*BottomLayer=%(prefix)s.sol -*TopSilkscreen=%(prefix)s.plc -*BottomSilkscreen=%(prefix)s.pls -*TopSoldermask=%(prefix)s.stc -*BottomSoldermask=%(prefix)s.sts -Drills=%(prefix)s.xln -BoardOutline=%(prefix)s.bor +#*TopLayer=%(prefix)s.cmp +#*BottomLayer=%(prefix)s.sol +#*TopSilkscreen=%(prefix)s.plc +#*BottomSilkscreen=%(prefix)s.pls +#*TopSoldermask=%(prefix)s.stc +#*BottomSoldermask=%(prefix)s.sts +#Drills=%(prefix)s.xln +#BoardOutline=%(prefix)s.bor # 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 @@ -271,7 +297,21 @@ BoardOutline=%(prefix)s.bor # 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 = 11 +# +############################################################################## + +[proj1] +Prefix=%(projdir)s/proj1 Repeat = 11 +*TopLayer=%(prefix)s.cmp +*BottomLayer=%(prefix)s.sol +*TopSilkscreen=%(prefix)s.plc +*BottomSilkscreen=%(prefix)s.pls +*TopSoldermask=%(prefix)s.stc +*BottomSoldermask=%(prefix)s.sts +Drills=%(prefix)s.xln +BoardOutline=%(prefix)s.bor [Hexapod] Prefix=%(projdir)s/hexapod @@ -280,3 +320,15 @@ Prefix=%(projdir)s/hexapod *TopSilkscreen=%(prefix)s.plc Drills=%(prefix)s.xln BoardOutline=%(prefix)s.bor + +# for Diptrace Generated PCBs, use the following as a template for each set of files: +#[myProj] +#Prefix=%(projdir)s/myProj +#*TopLayer=%(prefix)s/Top.gbr +#*BottomLayer=%(prefix)s/Bottom.gbr +#*TopSilkscreen=%(prefix)s/TopSilk.gbr +#*BottomSilkscreen=%(prefix)s/BottomSilk.gbr +#*TopSoldermask=%(prefix)s/TopMask.gbr +#*BottomSoldermask=%(prefix)s/BottomMask.gbr +#Drills=%(prefix)s/Drill.txt +#BoardOutline=%(prefix)s/BoardOutline.gbr