skidl
Pythonで論理回路を設計するためのモジュール
KiCadのネットリストを出力できるので、基板設計のフローに組み込みやすそう 以下のような記述で回路を定義できる
code:sample.py
from skidl import *
# Create part templates.
q = Part("Device", "Q_PNP_CBE", dest=TEMPLATE)
r = Part("Device", "R", dest=TEMPLATE)
# Create nets.
gnd, vcc = Net("GND"), Net("VCC")
a, b, a_and_b = Net("A"), Net("B"), Net("A_AND_B")
# Instantiate parts.
gndt = Part("power", "GND") # Ground terminal.
vcct = Part("power", "VCC") # Power terminal.
q1, q2 = q(2) # Two transistors.
r1, r2, r3, r4, r5 = r(5, value="10K") # Five 10K resistors.
# Make connections between parts.
a & r1 & q1"B C" & r4 & q2"B C" & a_and_b & r5 & gnd gnd += gndt
generate_netlist()
まだ使ったことがないinajob.icon
キーボード作ってる例
繰り返しが使えるのはいいかもね。
pcbflowは開発途絶してるようで縛りが多いのとプレビューが難しいのでskidlのネットリストをkicadのpcbnewで読み込むワークフローをおすすめします。