FootPrintEditorでは、台形、円、矩形のパッドしか無い。
でもいろいろ作りたいですね。
そんなに難しくないのだけれど、急いでいる時に思い出す時間がもったいないのでまとめ書き。
LibreOffice Draw で実物大のパッドを描く
- LibreOffice Drawでなくてもいいのだけれど、Drawは冷遇されているのでここぞとばかりに使おう。
- 実物大じゃなくてもいいのだけれど、わかりやすいので。
- 複数のパッドが必要なときも、まとめて描いておく。
PNGファイルを作る
描いた図形を選択して、PNG形式でエクスポート。
「選択範囲」のチェックを忘れずに。
デフォルトの解像度でエクスポートすると後で悲しいことになるので高解像度を指定する。
どういうわけかDPI指定が効かないので1cmあたり100pxぐらいに手動で指定。
フットプリントに変換
「Load Bitmap」で先ほどのPNGを読み込みます。
Resolutionの指定でサイズの辻褄を合わせます。
Pcbnew(.kicad_mod file)を選んでExportします。
エディターでファイルを書き換え
vimや使い慣れたテキストエディターで先ほどExportしたファイルを書き換えます。
(module LOGO (layer F.Cu)
(at 0 0)
(fp_text reference "G***" (at 0 0) (layer F.SilkS) hide
(effects (font (thickness 0.3)))
)
(fp_text value "LOGO" (at 0.75 0) (layer F.SilkS) hide
(effects (font (thickness 0.3)))
)
(fp_poly (pts (xy -3.229477 -3.837265) (xy -3.206797 -3.572840) (xy -3.185994 -3.156355) (xy -3.167826 -2.607629) (xy -3.153053 -1.946480) (xy -3.142433 -1.192727) (xy -3.140441 -0.983500) (xy -3.115094 1.962811)
(xy -2.252452 2.319929) (xy -1.869705 2.473857) (xy -1.547172 2.595224) (xy -1.329904 2.667500) (xy -1.270000 2.680410) (xy -1.230907 2.638919) (xy -1.200685 2.500203) (xy -1.178429 2.246592)
(xy -1.163237 1.860416) (xy -1.154206 1.324002) (xy -1.150434 0.619681) (xy -1.150188 0.335472) (xy -1.150647 -0.409886) (xy -1.148539 -0.984135) (xy -1.138634 -1.407843) (xy -1.115705 -1.701581)
(xy -1.074524 -1.885918) (xy -1.009862 -1.981425) (xy -0.916491 -2.008671) (xy -0.789183 -1.988225) (xy -0.622709 -1.940658) (xy -0.575094 -1.927144) (xy -0.335471 -1.860567) (xy -0.287547 0.667132)
(xy -0.239622 3.194831) (xy 0.718868 3.463384) (xy 1.123747 3.575272) (xy 1.458815 3.664963) (xy 1.681864 3.721329) (xy 1.749246 3.735025) (xy 1.768876 3.644321) (xy 1.786463 3.387519)
(xy 1.801240 2.990217) (xy 1.812439 2.478010) (xy 1.819293 1.876497) (xy 1.821132 1.337544) (xy 1.821132 -1.063026) (xy 2.180566 -1.002388) (xy 2.383954 -0.972595) (xy 2.543559 -0.945567)
(xy 2.664642 -0.899935) (xy 2.752463 -0.814326) (xy 2.812283 -0.667369) (xy 2.849363 -0.437692) (xy 2.868963 -0.103925) (xy 2.876344 0.355304) (xy 2.876766 0.961367) (xy 2.875490 1.735634)
(xy 2.875472 1.820705) (xy 2.875472 4.491133) (xy 2.324340 4.706836) (xy 1.887457 4.827679) (xy 1.322238 4.912620) (xy 0.689095 4.959259) (xy 0.048439 4.965193) (xy -0.539317 4.928020)
(xy -1.013762 4.845339) (xy -1.032280 4.840287) (xy -1.886131 4.512939) (xy -2.677275 4.019490) (xy -3.338734 3.437321) (xy -3.911375 2.729160) (xy -4.342043 1.917388) (xy -4.626459 1.031767)
(xy -4.760340 0.102061) (xy -4.739407 -0.841965) (xy -4.559378 -1.770549) (xy -4.215975 -2.653927) (xy -4.215036 -2.655799) (xy -4.014483 -3.016222) (xy -3.787997 -3.363047) (xy -3.565194 -3.657043)
(xy -3.375691 -3.858978) (xy -3.253275 -3.929811) (xy -3.229477 -3.837265) )(layer F.SilkS) (width 0.010000)
)
(fp_poly (pts (xy 0.195496 -4.920150) (xy 1.081334 -4.742918) (xy 1.920605 -4.437358) (xy 2.674294 -4.010724) (xy 3.199701 -3.577001) (xy 3.818259 -2.882072) (xy 4.268009 -2.169809) (xy 4.566441 -1.400309)
(xy 4.731046 -0.533672) (xy 4.771258 0.008217) (xy 4.777101 0.525528) (xy 4.755678 1.022992) (xy 4.711540 1.465221) (xy 4.649239 1.816828) (xy 4.573325 2.042426) (xy 4.501119 2.108680)
(xy 4.454222 2.179210) (xy 4.470244 2.252453) (xy 4.463410 2.375411) (xy 4.413655 2.396227) (xy 4.346889 2.454343) (xy 4.361132 2.492076) (xy 4.350353 2.580257) (xy 4.313208 2.587925)
(xy 4.250703 2.646312) (xy 4.265283 2.683774) (xy 4.254504 2.771955) (xy 4.217359 2.779623) (xy 4.152920 2.836657) (xy 4.165794 2.869581) (xy 4.141256 2.982304) (xy 4.051639 3.058365)
(xy 3.955117 3.137424) (xy 3.977736 3.161572) (xy 3.994654 3.204123) (xy 3.929812 3.256840) (xy 3.805020 3.372122) (xy 3.783823 3.423108) (xy 3.722228 3.535013) (xy 3.571805 3.719873)
(xy 3.520239 3.776072) (xy 3.258868 4.053653) (xy 3.247545 2.338336) (xy 3.239772 1.659161) (xy 3.225891 0.929001) (xy 3.207569 0.217412) (xy 3.186477 -0.406047) (xy 3.175658 -0.657806)
(xy 3.115095 -1.938631) (xy 2.204529 -2.300763) (xy 1.293963 -2.662896) (xy 1.268355 -0.277108) (xy 1.258645 0.376356) (xy 1.244782 0.961467) (xy 1.227799 1.452513) (xy 1.208730 1.823780)
(xy 1.188607 2.049556) (xy 1.172505 2.108145) (xy 1.042117 2.084160) (xy 0.807312 2.025401) (xy 0.742831 2.007791) (xy 0.383397 1.907971) (xy 0.383397 -3.120742) (xy -0.599056 -3.383160)
(xy -1.009679 -3.490980) (xy -1.350485 -3.576987) (xy -1.579686 -3.630845) (xy -1.653396 -3.643920) (xy -1.673237 -3.551923) (xy -1.690981 -3.294181) (xy -1.705832 -2.896642) (xy -1.716998 -2.385257)
(xy -1.723685 -1.785972) (xy -1.725283 -1.293962) (xy -1.725283 1.054340) (xy -2.067056 1.054340) (xy -2.270893 1.054711) (xy -2.431672 1.042292) (xy -2.554491 0.996788) (xy -2.644448 0.897902)
(xy -2.706644 0.725339) (xy -2.746177 0.458801) (xy -2.768146 0.077992) (xy -2.777650 -0.437383) (xy -2.779789 -1.107621) (xy -2.779622 -1.781969) (xy -2.779622 -4.419835) (xy -2.351273 -4.609315)
(xy -1.559823 -4.860604) (xy -0.697895 -4.961797) (xy 0.195496 -4.920150) )(layer F.SilkS) (width 0.010000)
)
)
fp_poly の(layer F.SilkS) を(layer F.Cu)に書き換えます。例では2ヶ所です。
ちなみに、以下の箇所は変更しません。
(fp_text reference "G***" (at 0 0) (layer F.SilkS) hide
(effects (font (thickness 0.3)))
)
(fp_text value "LOGO" (at 0.75 0) (layer F.SilkS) hide
(effects (font (thickness 0.3)))
)
フットプリントとして手を加える
KiCadのFootprint Editorを起動します。
メニューの「Import footprint」(画像の赤丸)で先ほどのファイルを読み込みます。
「Edit」→「Edit properties」でプロパティ値をセットします。
「File」→「Set Active Library」でフットプリントを含めたいライブラリをセットします。
ドーナッツマークを押して配線引き出し部分にパッドを追加、プロパティ値の位置を調整します。
Save Footprint in active libralyで保存したらおしまいです。
問題発生!
ソルダーレジストが塗られたままになってしまいました!! う〜む
仕方なく、紙ヤスリでソルダーレジストを削って辻褄を合わせました。
F.Paste F.Maskを付け加える
先ほど保存した、kicad_modファイルをエディターで開いて、(layer F.Cu)となっているところを(layers F.Cu F.Paste F.Mask)と書き換えます。
(2018/02/08 追記) layer を layersに変更しないといけません。
以下は書き換えた例です。
(module LOGO (layer F.Cu)
(at 0 0)
(fp_text reference "G***" (at 0 0) (layer F.SilkS) hide
(effects (font (thickness 0.3)))
)
(fp_text value "LOGO" (at 0.75 0) (layer F.SilkS) hide
(effects (font (thickness 0.3)))
)
(fp_poly (pts (xy -3.229477 -3.837265) (xy -3.206797 -3.572840) (xy -3.185994 -3.156355) (xy -3.167826 -2.607629) (xy -3.153053 -1.946480) (xy -3.142433 -1.192727) (xy -3.140441 -0.983500) (xy -3.115094 1.962811)
(xy -2.252452 2.319929) (xy -1.869705 2.473857) (xy -1.547172 2.595224) (xy -1.329904 2.667500) (xy -1.270000 2.680410) (xy -1.230907 2.638919) (xy -1.200685 2.500203) (xy -1.178429 2.246592)
(xy -1.163237 1.860416) (xy -1.154206 1.324002) (xy -1.150434 0.619681) (xy -1.150188 0.335472) (xy -1.150647 -0.409886) (xy -1.148539 -0.984135) (xy -1.138634 -1.407843) (xy -1.115705 -1.701581)
(xy -1.074524 -1.885918) (xy -1.009862 -1.981425) (xy -0.916491 -2.008671) (xy -0.789183 -1.988225) (xy -0.622709 -1.940658) (xy -0.575094 -1.927144) (xy -0.335471 -1.860567) (xy -0.287547 0.667132)
(xy -0.239622 3.194831) (xy 0.718868 3.463384) (xy 1.123747 3.575272) (xy 1.458815 3.664963) (xy 1.681864 3.721329) (xy 1.749246 3.735025) (xy 1.768876 3.644321) (xy 1.786463 3.387519)
(xy 1.801240 2.990217) (xy 1.812439 2.478010) (xy 1.819293 1.876497) (xy 1.821132 1.337544) (xy 1.821132 -1.063026) (xy 2.180566 -1.002388) (xy 2.383954 -0.972595) (xy 2.543559 -0.945567)
(xy 2.664642 -0.899935) (xy 2.752463 -0.814326) (xy 2.812283 -0.667369) (xy 2.849363 -0.437692) (xy 2.868963 -0.103925) (xy 2.876344 0.355304) (xy 2.876766 0.961367) (xy 2.875490 1.735634)
(xy 2.875472 1.820705) (xy 2.875472 4.491133) (xy 2.324340 4.706836) (xy 1.887457 4.827679) (xy 1.322238 4.912620) (xy 0.689095 4.959259) (xy 0.048439 4.965193) (xy -0.539317 4.928020)
(xy -1.013762 4.845339) (xy -1.032280 4.840287) (xy -1.886131 4.512939) (xy -2.677275 4.019490) (xy -3.338734 3.437321) (xy -3.911375 2.729160) (xy -4.342043 1.917388) (xy -4.626459 1.031767)
(xy -4.760340 0.102061) (xy -4.739407 -0.841965) (xy -4.559378 -1.770549) (xy -4.215975 -2.653927) (xy -4.215036 -2.655799) (xy -4.014483 -3.016222) (xy -3.787997 -3.363047) (xy -3.565194 -3.657043)
(xy -3.375691 -3.858978) (xy -3.253275 -3.929811) (xy -3.229477 -3.837265) )(layer F.Cu F.Paste F.Mask) (width 0.010000)
)
(fp_poly (pts (xy 0.195496 -4.920150) (xy 1.081334 -4.742918) (xy 1.920605 -4.437358) (xy 2.674294 -4.010724) (xy 3.199701 -3.577001) (xy 3.818259 -2.882072) (xy 4.268009 -2.169809) (xy 4.566441 -1.400309)
(xy 4.731046 -0.533672) (xy 4.771258 0.008217) (xy 4.777101 0.525528) (xy 4.755678 1.022992) (xy 4.711540 1.465221) (xy 4.649239 1.816828) (xy 4.573325 2.042426) (xy 4.501119 2.108680)
(xy 4.454222 2.179210) (xy 4.470244 2.252453) (xy 4.463410 2.375411) (xy 4.413655 2.396227) (xy 4.346889 2.454343) (xy 4.361132 2.492076) (xy 4.350353 2.580257) (xy 4.313208 2.587925)
(xy 4.250703 2.646312) (xy 4.265283 2.683774) (xy 4.254504 2.771955) (xy 4.217359 2.779623) (xy 4.152920 2.836657) (xy 4.165794 2.869581) (xy 4.141256 2.982304) (xy 4.051639 3.058365)
(xy 3.955117 3.137424) (xy 3.977736 3.161572) (xy 3.994654 3.204123) (xy 3.929812 3.256840) (xy 3.805020 3.372122) (xy 3.783823 3.423108) (xy 3.722228 3.535013) (xy 3.571805 3.719873)
(xy 3.520239 3.776072) (xy 3.258868 4.053653) (xy 3.247545 2.338336) (xy 3.239772 1.659161) (xy 3.225891 0.929001) (xy 3.207569 0.217412) (xy 3.186477 -0.406047) (xy 3.175658 -0.657806)
(xy 3.115095 -1.938631) (xy 2.204529 -2.300763) (xy 1.293963 -2.662896) (xy 1.268355 -0.277108) (xy 1.258645 0.376356) (xy 1.244782 0.961467) (xy 1.227799 1.452513) (xy 1.208730 1.823780)
(xy 1.188607 2.049556) (xy 1.172505 2.108145) (xy 1.042117 2.084160) (xy 0.807312 2.025401) (xy 0.742831 2.007791) (xy 0.383397 1.907971) (xy 0.383397 -3.120742) (xy -0.599056 -3.383160)
(xy -1.009679 -3.490980) (xy -1.350485 -3.576987) (xy -1.579686 -3.630845) (xy -1.653396 -3.643920) (xy -1.673237 -3.551923) (xy -1.690981 -3.294181) (xy -1.705832 -2.896642) (xy -1.716998 -2.385257)
(xy -1.723685 -1.785972) (xy -1.725283 -1.293962) (xy -1.725283 1.054340) (xy -2.067056 1.054340) (xy -2.270893 1.054711) (xy -2.431672 1.042292) (xy -2.554491 0.996788) (xy -2.644448 0.897902)
(xy -2.706644 0.725339) (xy -2.746177 0.458801) (xy -2.768146 0.077992) (xy -2.777650 -0.437383) (xy -2.779789 -1.107621) (xy -2.779622 -1.781969) (xy -2.779622 -4.419835) (xy -2.351273 -4.609315)
(xy -1.559823 -4.860604) (xy -0.697895 -4.961797) (xy 0.195496 -4.920150) )(layes F.Cu F.Paste F.Mask) (width 0.010000)
)
)