|
1 | | -#!/usr/bin/env bash |
2 | | - |
3 | | -set -xeuo pipefail |
4 | | - |
5 | | -SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) |
6 | | -ROOT_SCH=${SCRIPT_DIR}/Kicad/neotron-pico.kicad_sch |
7 | | -ROOT_PCB=${SCRIPT_DIR}/Kicad/neotron-pico.kicad_pcb |
8 | | -BUILD_DIR=${SCRIPT_DIR}/docs |
9 | | -LAYERS=F.Cu,In1.Cu,In2.Cu,B.Cu,F.Mask,B.Mask,Edge.Cuts,F.Silkscreen,B.Silkscreen |
10 | | - |
11 | | -# Does a build using kicad-cli |
12 | | - |
13 | | -MY_DATE=$(git log -1 --format="%as") |
14 | | -if [ -z ${SOURCE_TAG+x} ]; then |
15 | | - SOURCE_TAG=$(git describe --exact-match --tags 2> /dev/null || git rev-parse --short HEAD) |
16 | | -fi |
17 | | - |
18 | | -DEFINES="-D date=${MY_DATE} -D version=${SOURCE_TAG}" |
19 | | - |
20 | | -mkdir -p ${BUILD_DIR} |
21 | | -cd ${BUILD_DIR} |
22 | | - |
23 | | - |
24 | | -kicad-cli sch erc ${DEFINES} ${ROOT_SCH} --severity-warning |
25 | | -cat neotron-pico-erc.rpt |
26 | | -kicad-cli sch erc ${DEFINES} ${ROOT_SCH} --exit-code-violations --severity-error |
27 | | -kicad-cli sch export bom --output neotron-pico-bom-all.csv --fields '${DNP},LCSC Part#,Reference,Value,Footprint,${QUANTITY},${ITEM_NUMBER}' ${ROOT_SCH} |
28 | | -cat neotron-pico-bom-all.csv | grep -e "QUANTITY" -e '^"0"' > neotron-pico-bom-fitted.csv |
29 | | -cat neotron-pico-bom-all.csv | grep -e "QUANTITY" -e '^"0","C' > neotron-pico-bom-jlcpcb.csv |
30 | | -kicad-cli sch export pdf --output neotron-pico-sch.pdf ${DEFINES} ${ROOT_SCH} |
31 | | - |
32 | | -kicad-cli pcb drc ${DEFINES} ${ROOT_PCB} --severity-warning |
33 | | -cat neotron-pico-drc.rpt |
34 | | -kicad-cli pcb drc ${DEFINES} ${ROOT_PCB} --exit-code-violations --severity-error |
35 | | -kicad-cli pcb export pos ${ROOT_PCB} |
36 | | -kicad-cli pcb export pdf -l ${LAYERS} --output neotron-pico-pcb.pdf ${DEFINES} ${ROOT_PCB} |
37 | | -mkdir -p gerbers |
38 | | -cd gerbers |
39 | | -kicad-cli pcb export drill ${ROOT_PCB} |
40 | | -kicad-cli pcb export gerbers -l ${LAYERS} ${DEFINES} ${ROOT_PCB} |
41 | | -zip ../neotron-pico-gerbers.zip * |
42 | | -cd .. |
43 | | -rm -rf gerbers |
44 | | - |
45 | | -kicad-cli pcb render --output neotron-pico.jpg ${ROOT_PCB} |
| 1 | +#!/usr/bin/env bash |
| 2 | + |
| 3 | +set -xeuo pipefail |
| 4 | + |
| 5 | +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) |
| 6 | +ROOT_SCH=${SCRIPT_DIR}/Kicad/neotron-pico.kicad_sch |
| 7 | +ROOT_PCB=${SCRIPT_DIR}/Kicad/neotron-pico.kicad_pcb |
| 8 | +BUILD_DIR=${SCRIPT_DIR}/docs |
| 9 | +LAYERS=F.Cu,In1.Cu,In2.Cu,B.Cu,F.Mask,B.Mask,Edge.Cuts,F.Silkscreen,B.Silkscreen |
| 10 | + |
| 11 | +# Does a build using kicad-cli |
| 12 | + |
| 13 | +MY_DATE=$(git log -1 --format="%as") |
| 14 | +if [ -z ${SOURCE_TAG+x} ]; then |
| 15 | + SOURCE_TAG=$(git describe --exact-match --tags 2> /dev/null || git rev-parse --short HEAD) |
| 16 | +fi |
| 17 | + |
| 18 | +DEFINES="-D date=${MY_DATE} -D version=${SOURCE_TAG}" |
| 19 | + |
| 20 | +mkdir -p ${BUILD_DIR} |
| 21 | +cd ${BUILD_DIR} |
| 22 | + |
| 23 | + |
| 24 | +kicad-cli sch erc ${DEFINES} ${ROOT_SCH} --severity-warning |
| 25 | +cat neotron-pico-erc.rpt |
| 26 | +kicad-cli sch erc ${DEFINES} ${ROOT_SCH} --exit-code-violations --severity-error |
| 27 | +kicad-cli sch export bom --output neotron-pico-bom-all.csv --fields '${DNP},LCSC Part#,Reference,Value,Footprint,${QUANTITY},${ITEM_NUMBER}' ${ROOT_SCH} |
| 28 | +cat neotron-pico-bom-all.csv | grep -e "QUANTITY" -e '^"0"' > neotron-pico-bom-fitted.csv |
| 29 | +cat neotron-pico-bom-all.csv | grep -e "QUANTITY" -e '^"0","C' > neotron-pico-bom-jlcpcb.csv |
| 30 | +kicad-cli sch export pdf --output neotron-pico-sch.pdf ${DEFINES} ${ROOT_SCH} |
| 31 | + |
| 32 | +kicad-cli pcb drc ${DEFINES} ${ROOT_PCB} --severity-warning |
| 33 | +cat neotron-pico-drc.rpt |
| 34 | +kicad-cli pcb drc ${DEFINES} ${ROOT_PCB} --exit-code-violations --severity-error |
| 35 | +kicad-cli pcb export pos ${ROOT_PCB} |
| 36 | +kicad-cli pcb export pdf -l ${LAYERS} --output neotron-pico-pcb.pdf ${DEFINES} ${ROOT_PCB} |
| 37 | +mkdir -p gerbers |
| 38 | +cd gerbers |
| 39 | +kicad-cli pcb export drill ${ROOT_PCB} |
| 40 | +kicad-cli pcb export gerbers -l ${LAYERS} ${DEFINES} ${ROOT_PCB} |
| 41 | +zip ../neotron-pico-gerbers.zip * |
| 42 | +cd .. |
| 43 | +rm -rf gerbers |
| 44 | + |
| 45 | +kicad-cli pcb render --output neotron-pico.jpg ${ROOT_PCB} |
0 commit comments