# KiBot configuration for 2/4/6 layer boards # Works with Gitea CI/CD pipeline kibot: version: 1 global: # Filters for ERC/DRC warnings filters: - number: 1007 - number: 1015 - number: 58 - number: 61 # Default output directory output: 'Fabrication' # Variant for assembly if needed variant: '' # Date format for filenames date_format: '%Y-%m-%d_%H-%M-%S' preflight: run_erc: true run_drc: true check_zone_fills: true ignore_unconnected: false update_xml: true outputs: # Schematic outputs - name: 'print_sch' comment: "Schematic PDF" type: pdf_sch_print dir: Schematic options: output: '%f-schematic.%x' - name: 'print_sch_svg' comment: "Schematic SVG" type: svg_sch_print dir: Schematic options: output: '%f-schematic.%x' # PCB 2D renders - name: 'pcb_top' comment: "PCB render top" type: pcbdraw dir: PCB/2D_render options: output: '%f-top.%x' format: svg show_components: all dpi: 300 - name: 'pcb_bottom' comment: "PCB render bottom" type: pcbdraw dir: PCB/2D_render options: output: '%f-bottom.%x' format: svg bottom: true show_components: all dpi: 300 # PCB PDF documentation - name: 'print_pcb' comment: "PCB PDF" type: pdf_pcb_print dir: PCB/PDF options: output: '%f-pcb.%x' plot_sheet_reference: true monochrome: false pages: - layers: - F.Cu - F.Paste - F.Silkscreen - Edge.Cuts sheet: 'Front copper' - layers: - B.Cu - B.Paste - B.Silkscreen - Edge.Cuts mirror: true sheet: 'Bottom copper' - layers: - In1.Cu - Edge.Cuts sheet: 'Inner layer 1' skip_if_no_layer: true - layers: - In2.Cu - Edge.Cuts sheet: 'Inner layer 2' skip_if_no_layer: true - layers: - In3.Cu - Edge.Cuts sheet: 'Inner layer 3' skip_if_no_layer: true - layers: - In4.Cu - Edge.Cuts sheet: 'Inner layer 4' skip_if_no_layer: true # Gerber files - automatically handles 2/4/6 layers - name: 'gerbers' comment: "Gerber files" type: gerber dir: Gerbers options: output: '%f%i.%x' 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: false create_gerber_job_file: true 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 layers: # Copper layers - automatically included if present - F.Cu - B.Cu - In1.Cu - In2.Cu - In3.Cu - In4.Cu # Technical layers - F.Paste - B.Paste - F.Silkscreen - B.Silkscreen - F.Mask - B.Mask - Edge.Cuts - User.Comments - F.Fab - B.Fab # Excellon drill files - name: 'drill' comment: "Drill files" type: excellon dir: Gerbers options: output: '%f%i.%x' metric_units: true minimal_header: false mirror_y_axis: false report: filename: '%f-drill_report.txt' pth_and_npth_single_file: false # Drill map - name: 'drill_map' comment: "Drill map" type: gerb_drill dir: Gerbers options: output: '%f-drill_map.%x' # Pick and place files - name: 'position' comment: "Pick and place file" type: position dir: Assembly options: output: '%f-position.%x' format: CSV units: millimeters separate_files_for_front_and_back: true only_smd: false # Interactive BOM - name: 'ibom' comment: "Interactive BOM" type: ibom dir: Assembly options: output: '%f-ibom.%x' dark_mode: false hide_pads: false show_fabrication: false hide_silkscreen: false highlight_pin1: true no_redraw_on_drag: false board_rotation: 0 check_extra_fields: false include_tracks: false include_nets: false # 3D model - name: 'step' comment: "3D STEP model" type: step dir: 3D options: output: '%f-3D.%x' metric_units: true origin: grid no_virtual: true # Board characteristics report - name: 'report' comment: "Board report" type: report dir: . options: output: '%f-report.%x' do_convert: true # Fabrication package (ZIP) - name: 'fabrication' comment: "Fabrication package" type: compress dir: . options: output: '%f-fabrication.%x' format: ZIP files: - source: Gerbers/* dest: / - source: PCB/PDF/* dest: /Documentation - source: Assembly/* dest: /Assembly - source: 3D/* dest: /3D # Variants for different layer counts (optional) variants: - name: 2layer comment: "2 layer board variant" type: kibom - name: 4layer comment: "4 layer board variant" type: kibom - name: 6layer comment: "6 layer board variant" type: kibom