aboutsummaryrefslogtreecommitdiff
path: root/justfile
blob: eabb06ba1904f79e4e6a8850ff77107ca91364b7 (plain) (blame)
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
OUTDIR := "output"
KICAD_CLI := "kicad-cli"

open:
  kicad pantsonfyre.kicad_pro

gerbers: clean gen-gerbers gen-drill zip-gerbers

svg: svg-schematic svg-pcb

drc:
  {{KICAD_CLI}} pcb drc --output --all-track-errors --schematic-parity --format=json --severity-all ./pantsonfyre.kicad_pcb

@clean:
  rm -rf "{{OUTDIR}}"

zip-gerbers:
  cd "{{OUTDIR}}/gerbers" && zip -r pantsonfyre-gerbers.zip ./pantsonfyre

svg-schematic:
  {{KICAD_CLI}} sch export svg -t arcana --output "{{OUTDIR}}" ./pantsonfyre.kicad_sch

svg-pcb:
  {{KICAD_CLI}} pcb export svg --layers '*' --mode-single -o pcb.svg --output "{{OUTDIR}}" ./pantsonfyre.kicad_pcb

bom:
  {{KICAD_CLI}} sch export bom pantsonfyre.kicad_sch -o ../output/pantsonfyre-bom.csv

@gen-gerbers:
  {{KICAD_CLI}} pcb export gerbers \
    -l B.Cu,B.Mask,B.Silkscreen,B.Paste,F.Cu,F.Mask,F.Silkscreen,F.Paste,Edge.Cuts \
    --precision 6 --no-x2 \
    --output "{{OUTDIR}}/gerbers/pantsonfyre" \
    ./pantsonfyre.kicad_pcb

@gen-drill:
  {{KICAD_CLI}} pcb export drill \
    --format excellon --drill-origin absolute \
    --excellon-zeros-format decimal --excellon-oval-format alternate --excellon-units mm --excellon-separate-th \
    --generate-map --map-format gerberx2 \
    --output "{{OUTDIR}}/gerbers/pantsonfyre" \
    ./pantsonfyre.kicad_pcb