# 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: '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