KiCAD 6: Projekt auf der Kommandozeile initialisieren

English Deutsch

Hinweis: Dieser Beitrag bezieht sich auf KiCad 6. Falls Sie KiCAD 10 (veröffentlicht 2026) verwenden, lesen Sie bitte KiCAD 10: Projekt auf der Kommandozeile initialisieren.

TL;DR

Führen Sie im Verzeichnis, in dem Sie das Projekt erstellen möchten, Folgendes aus:

kicad6-init.sh
wget -qO- https://techoverflow.net/scripts/kicad6-init.sh | bash /dev/stdin MyProject

Ersetzen Sie MyProject (am Ende des Befehls) durch Ihren Projektnamen.

Hinweis: Dies initialisiert ein leeres KiCAD-Projekt ohne jegliche Bibliotheken. Dies ist äquivalent zum Erstellen eines neuen Projekts in KiCAD selbst (über die GUI).

Funktionsweise

Unser Skript ist ein einfaches bash-Skript, das die Dateien erstellt, die KiCAD beim manuellen Erstellen eines neuen Projekts anlegt.

Es erstellt folgende Dateien (MyProject ist der Standardprojektname, kann aber über ein Kommandozeilenargument geändert werden):

Die Dateien sind an KiCAD 5.1.4 angelehnt, wir erwarten jedoch, dass sie mit jeder aktuellen KiCAD-Version funktionieren.

kicad6-init.sh
#!/bin/bash
# TechOverflow KiCAD-Projekt-Initialisierer (mit Projekt-FP- & SYM-Bibliotheken)
# Verwendung: $0 <Dateinamen-Präfix>
if [ $# -ne 1 ]
then
    echo "Usage: $0 <filename prefix>"
    exit 1
fi

# Projektnamen und Pfad berechnen
proj=$(basename "$1")
dir=$(dirname "$1")

# Projektdatei erstellen
cat <<EOT > ${1}.pro
update=22/05/2015 07:44:53
version=1
last_client=kicad
[general]
version=1
RootSch=
BoardNm=
[pcbnew]
version=1
LastNetListRead=
UseCmpFile=1
PadDrill=0.600000000000
PadDrillOvalY=0.600000000000
PadSizeH=1.500000000000
PadSizeV=1.500000000000
PcbTextSizeV=1.500000000000
PcbTextSizeH=1.500000000000
PcbTextThickness=0.300000000000
ModuleTextSizeV=1.000000000000
ModuleTextSizeH=1.000000000000
ModuleTextSizeThickness=0.150000000000
SolderMaskClearance=0.000000000000
SolderMaskMinWidth=0.000000000000
DrawSegmentWidth=0.200000000000
BoardOutlineThickness=0.100000000000
ModuleOutlineThickness=0.150000000000
[cvpcb]
version=1
NetIExt=net
[eeschema]
version=1
LibDir=
[eeschema/libraries]
EOT

# Schaltbilddatei erstellen
cat <<EOT > ${1}.kicad_sch
(kicad_sch (version 20211123) (generator eeschema)

  (uuid df87b081-37a2-452c-8581-7eff2c408a17)

  (paper "A4")

  (lib_symbols
  )

  (sheet_instances
    (path "/" (page "1"))
  )
)

EOT

cat <<EOT > ${1}.kicad_pcb
(kicad_pcb (version 4) (host kicad "dummy file") )
EOT

#
# Schaltbild-Symbolbibliothek-Mapping erstellen
#
mkdir -p ${dir}/libraries
cat <<EOT > ${dir}/sym-lib-table
(sym_lib_table
  (lib (name "${proj}")(type "KiCad")(uri "\${KIPRJMOD}/libraries/${proj}.kicad_sym")(options "")(descr ""))
)
EOT

cat <<EOT > ${dir}/libraries/${proj}.kicad_sym
(kicad_symbol_lib (version 20211014) (generator kicad_converter))
EOT

#
# Footprint-Bibliothek-Mapping erstellen (nur ein leeres Verzeichnis)
#
mkdir -p ${dir}/libraries/footprints

cat <<EOT > ${dir}/fp-lib-table
(fp_lib_table
  (lib (name ${proj})(type KiCad)(uri \${KIPRJMOD}/libraries/footprints)(options "")(descr ""))
)
EOT

#
# Verzeichnis für 3D-Modelle erstellen.
# Der Suchpfad muss möglicherweise manuell konfiguriert werden,
# da er nicht in einem Projekt gespeichert wird
#
mkdir -p ${dir}/libraries/3D

#
# .gitignore erstellen
#
cat <<EOT > .gitignore
*-bak
*-backups
*-cache*
*-bak*
_autosave*
\#auto_saved_files\#
EOT

Beispielsweise ausführen mit

run_kicad6_init.sh
bash kicad6-init.sh MyProject

Check out similar posts by category: Electronics, KiCad, Shell