Files
kicad-ci/default.kibot.yaml
ac 804440f8f4 Changed job strategy to find all projects and run kibot on them.
Also added:
- script to produce neoden yy1 compatible pnp files
- panelisation capability which runs for all compabatible .json files.
2023-04-05 19:50:35 +10:00

201 lines
4.4 KiB
YAML

# Example KiPlot config file
kibot:
version: 1
preflight:
run_erc: true
update_xml: true
run_drc: true
check_zone_fills: false
ignore_unconnected: false
global:
environment:
models_3d: "/models_3d"
outputs:
- name: 'print_sch'
comment: "Print schematic (PDF)"
type: pdf_sch_print
dir: .
options:
output: Schematic.pdf
- name: 'print_front'
comment: "Print F.Cu+Dwgs.User"
type: pdf_pcb_print
dir: .
options:
output_name: PCB_Top.pdf
layers:
- layer: B.Cu
- layer: F.SilkS
- name: 'bom'
comment: "BOM in csv format"
type: bom
dir: .
options:
columns:
- field: Value
name: Query
- field: Quantity Per PCB
name: Qty
- Description
- field: References
name: Schematic Reference
csv:
hide_pcb_info: true
hide_stats_info: true
format: "CSV"
- name: 'drill'
comment: "excellon drill files"
type: excellon
dir: Gerbers
# options:
- name: 'step'
comment: "Step file of pcb"
type: step
dir: .
options:
download: true
kicad_3d_url: https://gitlab.com/kicad/libraries/kicad-packages3D/-/raw/master/
- name: 'position'
comment: "Pick and place"
type: position
options:
output: '%f_cpl.%x'
format: CSV
units: millimeters
separate_files_for_front_and_back: false
only_smd: true
- name: 'assembly'
comment: "Pick and place file, JLC style"
type: position
options:
output: '%f_cpl.%x'
format: CSV
units: millimeters
separate_files_for_front_and_back: false
only_smd: true
columns:
- id: Ref
name: Designator
- Val
- Package
- id: PosX
name: "Mid X"
- id: PosY
name: "Mid Y"
- id: Rot
name: Rotation
- id: Side
name: Layer
- name: 'gerbers'
comment: "Gerbers for the board house"
type: gerber
dir: Gerbers
options:
# generic layer options
exclude_edge_layer: true
exclude_pads_from_silkscreen: false
use_aux_axis_as_origin: false
plot_sheet_reference: false
plot_footprint_refs: true
plot_footprint_values: true
force_plot_invisible_refs_vals: false
tent_vias: true
# gerber options
line_width: 0.1
subtract_mask_from_silk: false
use_protel_extensions: false
gerber_precision: 4.6
create_gerber_job_file: true
use_gerber_x2_attributes: true
use_gerber_net_attributes: true
layers:
- 'copper'
- 'technical'
- layer: Edge.Cuts
suffix: Edge_Cuts
- name: JLCPCB_gerbers
comment: Gerbers compatible with JLCPCB
type: gerber
dir: JLCPCB
options:
exclude_edge_layer: true
exclude_pads_from_silkscreen: true
plot_sheet_reference: false
plot_footprint_refs: true
plot_footprint_values: false
force_plot_invisible_refs_vals: false
tent_vias: true
use_protel_extensions: true
create_gerber_job_file: false
disable_aperture_macros: true
gerber_precision: 4.6
use_gerber_x2_attributes: false
use_gerber_net_attributes: false
line_width: 0.1
subtract_mask_from_silk: true
inner_extension_pattern: '.g%n'
layers:
# Note: a more generic approach is to use 'copper' but then the filenames
# are slightly different.
- F.Cu
- B.Cu
- In1.Cu
- In2.Cu
- In3.Cu
- In4.Cu
- In5.Cu
- In6.Cu
- F.SilkS
- B.SilkS
- F.Mask
- B.Mask
- Edge.Cuts
- name: JLCPCB_drill
comment: Drill files compatible with JLCPCB
type: excellon
dir: JLCPCB
options:
pth_and_npth_single_file: false
pth_id: '-PTH'
npth_id: '-NPTH'
metric_units: true
map: gerber
route_mode_for_oval_holes: false
output: "%f%i.%x"
- name: JLCPCB_fab
comment: ZIP file for JLCPCB
type: compress
dir: JLCPCB
options:
files:
- from_output: JLCPCB_gerbers
dest: /
- from_output: JLCPCB_drill
dest: /
- name: 'diff_pcb'
comment: "Diff for visual comparison"
type: diff
dir: .
options:
only_different: true
- name: 'diff_sch'
comment: "Diff for visual comparison"
type: diff
dir: .
options:
only_different: true
pcb: false