adapted for non-panelized boards
This commit is contained in:
50
export.sh
50
export.sh
@@ -11,55 +11,29 @@ usage() {
|
||||
}
|
||||
|
||||
PCB_FILE="$1"
|
||||
PCB_FILE_PREFIX="$(basename "$PCB_FILE" .kicad_pcb)" # Fix this
|
||||
PCB_FILE_PREFIX="$(basename "$PCB_FILE" .kicad_pcb)"
|
||||
|
||||
mkdir -p "$GERBERS_DIR"
|
||||
mkdir -p "$GCODE_DIR"
|
||||
|
||||
# Export drill, front and back layers as gerber files.
|
||||
# Export drill, outline, front and back layers as gerber files.
|
||||
echo "Exporting gerbers..."
|
||||
kicad-cli pcb export drill --generate-map -o "$GERBERS_DIR" "$PCB_FILE"
|
||||
# kicad-cli pcb export gerbers -o "$GERBERS_DIR" -l Front "$PCB_FILE"
|
||||
# kicad-cli pcb export gerbers -o "$GERBERS_DIR" -l Back "$PCB_FILE"
|
||||
kicad-cli pcb export gerbers -o "$GERBERS_DIR" -l Edge.Cuts "$PCB_FILE"
|
||||
kicad-cli pcb export svg -o "$GERBERS_DIR" -l Edge.Cuts \
|
||||
--mode-multi --page-size-mode 1 --black-and-white \
|
||||
--drill-shape-opt 0 --exclude-drawing-sheet "$PCB_FILE"
|
||||
kicad-cli pcb export gerbers -o "$GERBERS_DIR" -l Front "$PCB_FILE"
|
||||
kicad-cli pcb export gerbers -o "$GERBERS_DIR" -l Back "$PCB_FILE"
|
||||
# kicad-cli pcb export svg -o "$GERBERS_DIR" -l Edge.Cuts \
|
||||
# --mode-multi --page-size-mode 1 --black-and-white \
|
||||
# --drill-shape-opt 0 --exclude-drawing-sheet "$PCB_FILE"
|
||||
|
||||
echo "Exporting Gcode for drilling and outline routing..."
|
||||
docker run --rm -i -t \
|
||||
echo "Exporting Gcode for drilling, outline and isolation traces routing..."
|
||||
docker run --rm -it \
|
||||
-u "$(id -u):$(id -g)" \
|
||||
-v "$(pwd):/data" \
|
||||
ptodorov/pcb2gcode \
|
||||
--config millproject \
|
||||
--output-dir "$GCODE_DIR" \
|
||||
--front "$GERBERS_DIR/$PCB_FILE_PREFIX-Front.gtl" \
|
||||
--back "$GERBERS_DIR/$PCB_FILE_PREFIX-Back.gbl" \
|
||||
--drill "$GERBERS_DIR/$PCB_FILE_PREFIX.drl" \
|
||||
--outline "$GERBERS_DIR/$PCB_FILE_PREFIX-Edge_Cuts.gm1"
|
||||
|
||||
# Export outlines of the panelized board i.e. use the layer 'User.Eco1'.
|
||||
echo "Exporting panelized outline from layer 'User.Eco1'..."
|
||||
python3 export_panel_outlines_gerber.py \
|
||||
--layers User.Eco1 \
|
||||
--output "$GERBERS_DIR" \
|
||||
"$PCB_FILE"
|
||||
|
||||
echo "Exporting Gcode for panelized board's slot routing..."
|
||||
# Use the 'User-Eco1' layer instead of 'Edge.Cuts' as it contains panelized board's slot outlines only.
|
||||
docker run --rm -i -t \
|
||||
-u "$(id -u):$(id -g)" \
|
||||
-v "$(pwd):/data" \
|
||||
ptodorov/pcb2gcode \
|
||||
--config millproject \
|
||||
--output-dir "$GCODE_DIR" \
|
||||
--outline "$GERBERS_DIR/$PCB_FILE_PREFIX-User-Eco1.gbr" \
|
||||
--outline-output "slot_outline.ngc"
|
||||
|
||||
# echo "Exporting Gcode for isolation traces routing..."
|
||||
# docker run --rm -i -t \
|
||||
# -u "$(id -u):$(id -g)" \
|
||||
# -v "$(pwd):/data" \
|
||||
# ptodorov/pcb2gcode \
|
||||
# --config millproject \
|
||||
# --output-dir "$GCODE_DIR" \
|
||||
# --front "$GERBERS_DIR/$PCB_FILE_PREFIX-Front.gtl" \
|
||||
# --back "$GERBERS_DIR/$PCB_FILE_PREFIX-Back.gbl" \
|
||||
--outline "$GERBERS_DIR/$PCB_FILE_PREFIX-Edge_Cuts.gm1"
|
||||
Reference in New Issue
Block a user