-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathconfig.kibot.yaml
299 lines (287 loc) Β· 12.4 KB
/
config.kibot.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
kibot:
version: 1
preflight:
# [boolean=false] Zones are filled before doing any operation involving PCB layers.
check_zone_fills: true
# [list(dict)] A list of entries to filter out ERC/DRC messages.
# filters:
# - filter: 'Filter description'
# error: '10'
# regex: 'Regular expression to match'
# [boolean=false] Option for `run_drc`. Ignores the unconnected nets. Useful if you didn't finish the routing.
ignore_unconnected: false
# [boolean=false] Runs the DRC (Distance Rules Check). To ensure we have a valid PCB.
# The report file name is controlled by the global output pattern (%i=drc %x=txt).
run_drc: true
# [boolean=false] Runs the ERC (Electrical Rules Check). To ensure the schematic is electrically correct.
# The report file name is controlled by the global output pattern (%i=erc %x=txt).
run_erc: true
# [boolean=false] Update the XML version of the BoM (Bill of Materials).
# To ensure our generated BoM is up to date.
# Note that this isn't needed when using the internal BoM generator (`bom`).
update_xml: true
outputs:
- name: 'print schema'
comment: "Print schematic (PDF)"
type: pdf_sch_print
dir: 'docs/pdf'
options:
output: '%p-Schematic.%x'
- name: 'print board'
comment: "Print board (PDF) front"
type: pdf_pcb_print
layers:
- layer: Edge.Cuts
- layer: Dwgs.User
- layer: F.CrtYd
- layer: F.Fab
dir: 'docs/pdf'
options:
output: '%p-Board_top.%x'
drill_marks: full
- name: 'print board'
comment: "Print board (PDF) bottom"
type: pdf_pcb_print
layers:
- layer: Edge.Cuts
- layer: Dwgs.User
- layer: B.CrtYd
- layer: B.Fab
dir: 'docs/pdf'
options:
output: '%p-Board_bottom.%x'
drill_marks: full
- name: 'print schema'
comment: "Print schematic (SVG)"
type: svg_sch_print
dir: 'docs/expansion-board'
options:
output: '%p-Schematic.%x'
# PcbDraw - Beautiful 2D PCB render:
# Uses configurable colors.
# Can also render the components if the 2D models are available
- name: 'plot images of pcb TOP'
comment: 'Exports the PCB as a 2D model (SVG, PNG or JPG).'
type: 'pcbdraw'
dir: 'docs/expansion-board'
options:
# [boolean=false] render the bottom side of the board (default is top side)
bottom: false
# [number=300] [10,1200] dots per inch (resolution) of the generated image
dpi: 300
# [string='svg'] [svg,png,jpg] output format. Only used if no `output` is specified
format: 'svg'
# [list(string)] list of components to highlight
# highlight:
# [list(string)] list of libraries
libs: ['/usr/share/pcbdraw/footprints/KiCAD-base']
# [boolean=false] mirror the board
mirror: false
# [boolean=false] do not make holes transparent
no_drillholes: false
# [string='%f-%i.%x'] name for the generated file . Affected by global options
output: '%f-Board_%i.%x'
# [boolean=false] show placeholder for missing components
placeholder: false
# [dict|None] replacements for PCB references using components (lib:component)
remap:
# [string|list(string)] [none,all] list of components to draw, can be also a string for none or all.
# The default is none
show_components: none
# [string|dict] PCB style (colors). An internal name, the name of a JSON file or the style options
style: '/usr/share/pcbdraw/styles/jlcpcb-green-hasl.json'
# [boolean=false] render V-CUTS on the Cmts.User layer
vcuts: false
# [string='visible'] [visible,all,none] using visible only the warnings about components in the visible side are generated
warnings: 'visible'
# PcbDraw - Beautiful 2D PCB render:
# Uses configurable colors.
# Can also render the components if the 2D models are available
- name: 'plot images of pcb TOP components'
comment: 'Exports the PCB as a 2D model (SVG, PNG or JPG).'
type: 'pcbdraw'
dir: 'docs/expansion-board'
options:
# [boolean=false] render the bottom side of the board (default is top side)
bottom: false
# [number=300] [10,1200] dots per inch (resolution) of the generated image
dpi: 300
# [string='svg'] [svg,png,jpg] output format. Only used if no `output` is specified
format: 'svg'
# [list(string)] list of components to highlight
# highlight:
# [list(string)] list of libraries
libs: ['/usr/share/pcbdraw/footprints/KiCAD-base']
# [boolean=false] mirror the board
mirror: false
# [boolean=false] do not make holes transparent
no_drillholes: false
# [string='%f-%i.%x'] name for the generated file . Affected by global options
output: '%f-Board_%i_components.%x'
# [boolean=false] show placeholder for missing components
placeholder: false
# [dict|None] replacements for PCB references using components (lib:component)
remap:
# [string|list(string)] [none,all] list of components to draw, can be also a string for none or all.
# The default is none
show_components: all
# [string|dict] PCB style (colors). An internal name, the name of a JSON file or the style options
style: '/usr/share/pcbdraw/styles/jlcpcb-green-hasl.json'
# [boolean=false] render V-CUTS on the Cmts.User layer
vcuts: false
# [string='visible'] [visible,all,none] using visible only the warnings about components in the visible side are generated
warnings: 'visible'
- name: 'plot images of pcb BOTTOM'
comment: 'Exports the PCB as a 2D model (SVG, PNG or JPG).'
type: 'pcbdraw'
dir: 'docs/expansion-board'
options:
# [boolean=false] render the bottom side of the board (default is top side)
bottom: true
# [number=300] [10,1200] dots per inch (resolution) of the generated image
dpi: 300
# [string='svg'] [svg,png,jpg] output format. Only used if no `output` is specified
format: 'svg'
# [list(string)] list of components to highlight
# highlight:
# [list(string)] list of libraries
libs: ['/usr/share/pcbdraw/footprints/KiCAD-base']
# [boolean=false] mirror the board
mirror: false
# [boolean=false] do not make holes transparent
no_drillholes: false
# [string='%f-%i.%x'] name for the generated file . Affected by global options
output: '%f-Board_%i.%x'
# [boolean=false] show placeholder for missing components
placeholder: false
# [dict|None] replacements for PCB references using components (lib:component)
remap:
# [string|list(string)] [none,all] list of components to draw, can be also a string for none or all.
# The default is none
show_components: none
# [string|dict] PCB style (colors). An internal name, the name of a JSON file or the style options
style: '/usr/share/pcbdraw/styles/jlcpcb-green-hasl.json'
# [boolean=false] render V-CUTS on the Cmts.User layer
vcuts: false
# [string='visible'] [visible,all,none] using visible only the warnings about components in the visible side are generated
warnings: 'visible'
- name: 'plot images of pcb BOTTOM components'
comment: 'Exports the PCB as a 2D model (SVG, PNG or JPG).'
type: 'pcbdraw'
dir: 'docs/expansion-board'
options:
# [boolean=false] render the bottom side of the board (default is top side)
bottom: true
# [number=300] [10,1200] dots per inch (resolution) of the generated image
dpi: 300
# [string='svg'] [svg,png,jpg] output format. Only used if no `output` is specified
format: 'svg'
# [list(string)] list of components to highlight
# highlight:
# [list(string)] list of libraries
libs: ['/usr/share/pcbdraw/footprints/KiCAD-base']
# [boolean=false] mirror the board
mirror: false
# [boolean=false] do not make holes transparent
no_drillholes: false
# [string='%f-%i.%x'] name for the generated file . Affected by global options
output: '%f-Board_%i_components.%x'
# [boolean=false] show placeholder for missing components
placeholder: false
# [dict|None] replacements for PCB references using components (lib:component)
remap:
# [string|list(string)] [none,all] list of components to draw, can be also a string for none or all.
# The default is none
show_components: all
# [string|dict] PCB style (colors). An internal name, the name of a JSON file or the style options
style: '/usr/share/pcbdraw/styles/jlcpcb-green-hasl.json'
# [boolean=false] render V-CUTS on the Cmts.User layer
vcuts: false
# [string='visible'] [visible,all,none] using visible only the warnings about components in the visible side are generated
warnings: 'visible'
- name: Step
comment: "Generate 3D model (STEP)"
type: step
dir: docs/CAD
options:
metric_units: true
origin: grid # "grid" or "drill" o "X,Y" i.e. 3.2,-10
no_virtual: true # exclude 3D models for components with 'virtual' attribute
output: '%f.%x'
# Gerber format:
# This output is what you get from the File/Plot menu in pcbnew.
- name: 'gerber'
comment: 'This is the main fabrication format for the PCB.'
type: 'gerber'
dir: 'docs/gerber'
options:
# [boolean=true] Creates a file with information about all the generated gerbers.
# You can use it in gerbview to load all gerbers at once
create_gerber_job_file: false
# [boolean=false] Disable aperture macros (workaround for buggy CAM software) (KiCad 6)
disable_aperture_macros: false
# [string|list(string)=''] Name of the filter to mark components as not fitted.
# A short-cut to use for simple cases where a variant is an overkill
dnf_filter: ''
# [string=''] Used to configure the edge cuts layer extension for Protel mode. Include the dot
edge_cut_extension: ''
# [boolean=true] Do not include the PCB edge layer
exclude_edge_layer: true
# [boolean=false] Do not plot the component pads in the silk screen (KiCad 5.x only)
exclude_pads_from_silkscreen: false
# [boolean=false] Include references and values even when they are marked as invisible
force_plot_invisible_refs_vals: false
# [string='%f-%i%v.%x'] Name for the gerber job file (%i='job', %x='gbrjob'). Affected by global options
gerber_job_file: '%f-%i%v.%x'
# [number=4.6] This the gerber coordinate format, can be 4.5 or 4.6
gerber_precision: 4.6
# [string=''] Used to change the Protel style extensions for inner layers.
# The replacement pattern can contain %n for the inner layer number and %N for the layer number.
# Example '.g%n'
inner_extension_pattern: ''
# [number=0.1] [0.02,2] Line_width for objects without width [mm] (KiCad 5)
line_width: 0.1
# [string='%f-%i%v.%x'] Output file name, the default KiCad name if empty. Affected by global options
output: '%f-%i%v.%x'
# [boolean=true] Include the footprint references
plot_footprint_refs: true
# [boolean=true] Include the footprint values
plot_footprint_values: true
# [boolean=false] Currently without effect
plot_sheet_reference: false
# [boolean=false] Substract the solder mask from the silk screen
subtract_mask_from_silk: false
# [boolean=true] Cover the vias
tent_vias: true
# [boolean=false] Use uppercase names for the extensions
uppercase_extensions: false
# [boolean=false] Use the auxiliary axis as origin for coordinates
use_aux_axis_as_origin: false
# [boolean=true] Include netlist metadata
use_gerber_net_attributes: true
# [boolean=true] Use the extended X2 format (otherwise use X1 formerly RS-274X)
use_gerber_x2_attributes: true
# [boolean=false] Use legacy Protel file extensions
use_protel_extensions: false
# [string=''] Board variant to apply
variant: ''
layers:
- layer: F.Cu
- layer: F.Mask
- layer: F.SilkS
- layer: F.Paste
- layer: B.Cu
- layer: B.Mask
- layer: B.SilkS
- layer: B.Paste
- layer: Edge.Cuts
- name: 'Excellon drills'
comment: 'Excellon drill files'
type: 'excellon'
dir: 'docs/gerber'
options:
use_aux_axis_as_origin: true
metric_units: true
pth_and_npth_single_file: false
minimal_header: true
mirror_y_axis: false