KiCad において複数の部品からなるフットプリントを作成する

#1. はじめに
　KiCad[^1](5.1.6)-1において、DIP スイッチ[^2]にハンダジャンパー[^3]を組み合わせたフットプリントを作成しました。DIP スイッチは設定変更の容易さが身上ですが、設定変更の頻度がごく少ない場合はハンダブリッジによるジャンパー接続で代用可能な場合もあります。この場合、部品代の節約になります。わざわざフットプリントを作成しなくても、DIP スイッチとハンダジャンパーを回路図上で接続しプリント基板レイアウトで配線すれば実現できます。しかし DIP スイッチの外形の内側にハンダジャンパーを配置するとなると、デザインルールチェックの回避など、かなり面倒なことになると思います。
[^1]: [KiCad](https://kicad-pcb.org/)
[^2]: [秋月電子通商 ＤＩＰスイッチ　８Ｐ](http://akizukidenshi.com/catalog/g/gP-00587/)
[^3]: [PCB Libraries "Footprint For Solderable Jumper?"](https://www.pcblibraries.com/forum/footprint-for-solderable-jumper_topic2089.html)
![dip.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/378410/2a8c2f3c-c3d5-03ec-2dbd-b106472d0784.png)

#2. フットプリントエディタ
　KiCad は、プリント基板を設計するための高機能な CAD ソフトウェアで、誰でも無料で使うことができます。プリント基板上に部品などを配置する際に使用する図形データをフットプリントと呼びます。KiCadには予め数多くのフットプリントがライブラリとして用意されています。必要なフットプリントがライブラリにない場合、自分でフットプリントを作成や修正するためのフットプリントエディタが用意されています。フットプリントエディタの操作方法やライブラリの管理方法については、解説本[^4]などを参照ください。
[^4]: [「KiCad Basics for 5.x」マッハ新書](https://booth.pm/ja/items/941963)

#3. フットプリントのコピー
　KiCad で用意されているフットプリントから以下の2つをコピーしました。
![dip8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/378410/8e316305-3c2a-7a77-ea22-f0d6a67b111a.png)
![pad.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/378410/2e74cea3-a8cd-8083-03e3-d6a996893da1.png)
　コピー元のフットプリントで範囲を選択してコピーを選ぶと、基点を指定する様に求められます。基点としてフットプリントやパッドの基準点を慎重に指定します。グリッドをできるだけ大きな値にすることで基点がずれるミスが少なくなります。貼り付け先のグリッドもできるだけ大きくして、グリッド上に張り付けます。
![paste.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/378410/942f5505-de25-6adc-f870-8fb42e9b7c0f.png)

#4. シルク等の修正
　シルク(F.SilkS)の DIP スイッチの図柄は諦めて削除します。ハンダジャンパーの周囲のシルクも削除します。シルクのみ修正するには、F.SilkS レイヤーを選択しハイコントラスト表示モードを有効化すると便利です。製造情報(F.Fab)や外形図(F.CrtYd)も不要なものを削除します。グリッドを1.27mmにしてハンダジャンパーを DIP スイッチのピンに間に移動しました。
![silk.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/378410/dcf272b3-f093-7974-0997-c0ec9782c9d0.png)

#5. パッドの接続
　SMD のパッドを修正してスルーホールのパッドと接続します。スルーホール側を修正すると表面・裏面両方のパッドが修正されるため希望通りにはいきません。
![p1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/378410/f91f6884-12d4-06b2-d3a9-a1f260d834a2.png)

　パッドのプロパティを表示します。形状を「カスタム形状(矩形アンカー)」に変更します。これから描く配線パターンをレジストするためレジストマスク(F.Mask)の選択を外します。ジャンパーパッドにはあとでレジストマスクを設けます。
![p2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/378410/4e3e4862-339b-f3d8-0ef3-e67d9248be26.png)

　カスタム形状の基本要素でセグメントを追加します。SMDパッドの基準点(0,0)から接続先のスルーホールの中心(-3.175mm,0)までを正確に指定します。パターンの太さは一般配線で使う0.25mmとしました。
![p3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/378410/5ade62da-7f2e-3832-864e-213fb63cff63.png)

　パッドの形状が変わりました。
![p4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/378410/e6ab7e7f-2971-9a78-1197-0eefee2edd70.png)

　スルーホールの中心に接続できました。接続が不完全だと、レイアウト設計後ののデザインルールチェックで未接続エラーが検出されます。
![p5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/378410/6dea4517-da8a-e55e-8b8c-89a03db2ed16.png)

　作成したパッドをコピーして、パッド番号を合わせこみます。
![p6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/378410/52d91f77-d199-8a0d-3f9b-04b1a49597bf.png)

　レジストマスクを追加して、完成です。
![p7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/378410/9a0efe86-3836-5025-0c32-d934235c898d.png)

#6. おわりに
　できてみれば素直で簡単ですが、たどり着くまでに結構試行錯誤してしまいました。アンカーなど言葉の意味するものもよく理解できていない状態でしたが、少し理解が深まりました。DIPスイッチに限らず、回路図やレイアウト設計が楽になる場面で参考にしていただければと思います。