You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
GitHub Action
kicad-exports
v2.1
Auto generate exports (schematics, gerbers, plots) for any KiCAD5 project.
You could run it locally or on every git push
with Github Actions.
name: example
on:
push:
paths:
- '**.sch'
- '**.kicad_pcb'
pull_request:
paths:
- '**.sch'
- '**.kicad_pcb'
jobs:
example:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: nerdyscout/kicad-exports@v2.1
with:
# Required - kibot config file
config: docs.kibot.yaml
# optional - prefix to output defined in config
dir: docs
# optional - schematic file
schema: '*.sch'
# optional - PCB design file
board: '*.kicad_pcb'
- name: upload results
uses: actions/upload-artifact@v2
with:
name: docs
path: docs
The predefined configs do run a ERC and DRC in advance, if these checks fail no exports will be generated. You could write your own config file and define filters to ignore these errors therefore forcing to export the data. In this case be careful not to end up with some faulty PCB.
- bom.kibot.yaml generates interactive BoM, kibom.xlsx and kibom.csv in folder
docs/bom/
- docs.kibot.yaml plots the PCB with user layers and schematics as *.pdf and *.svg in folder
docs/
- fabrications.kibot.yaml generates all gerber data, bom.csv with all components and position.csv, used for Pick and Place maschienes, in folder
gerbers/
- model.kibot.yaml does generate 3D step file in folder
cad/
- plot.kibot.yaml runs pcbdraw to generate plots of bottom and top of the PCB into
docs/img/
- report.kibot.yaml just runs DRC and ERC
You need to have Docker installed.
git clone --recursive https://github.com/nerdyscout/kicad-exports /some/where/kicad-exports
cd /some/where/kicad-exports
make && make install
go to your KiCad project folder and run kicad-exports
cd /my/kicad/example-project
kicad-exports -d $DIR_OUT -e $SCHEMA -b $BOARD -c $CONFIG
kicad-exports -c docs.kibot.yaml
place config file in directory of your kicad project and use relative path.
kicad-exports -c myconfig.kibot.yaml -v -s all
running localy enables additional paramaters
-v, --verbose
is useful while developing own config files-s, --skip $arg
skips preflight from given config file