【小ネタ】KiCadのシンボルはどのようにできているかgitを使って確認してみた
こんにちはCX事業本部Delivery部のさかじです。
今期から部が変わりました。引き続きIoT関係の業務を担当していきます。
環境
- Windows10
- KiCad 5.1.10
はじめに
弊社のハードウェア作成プロジェクトではKiCadのデータをGitHubで管理しています。
KiCadはテキストファイルで構成されていますので比較しやすくわかりやすいgitを使用して、シンボルの内容も簡単に確認してみたいという好奇心と少し試したいことがありましたので試してみました。
シンボルを作ってみる
空の環境をコミット
シンボルエディターを開き「新規ライブラリー」を作成します。 以下のようにファイルができました。これから一つひとつ比較していきたいので一旦コミットします。
$ git status On branch feature/kicad_library Untracked files: (use "git add <file>..." to include in what will be committed) sym-lib-table test_Library.dcm test_Library.lib nothing added to commit but untracked files present (use "git add" to track) $ git add sym-lib-table test_Library.dcm test_Library.lib $ git commit -m "add new symble library"
シンボルを作る
新しいシンボルを作成します。シンボルライブラリーは先程作成したライブラリーを選択します。
まずはコネクターを作ってみます。
プロパティはこのようにしました。
部品ができました。ファイルの内容を確認したいので枠などは追記せずシンプルに作成しました。
空の状態とシンボルを作った状態を比較
シンボルエディターを保存しまして、gitで差分を見てみます。
$ git status On branch feature/kicad_library Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory) modified: test_Library.lib Untracked files: (use "git add <file>..." to include in what will be committed) test_Library.bck no changes added to commit (use "git add" and/or "git commit -a") $ git diff diff --git a/kicad_library_text/lib_test/test_Library.lib b/kicad_library_text/lib_test/test_Library.lib index a41a90e..af66b23 100644 --- a/kicad_library_text/lib_test/test_Library.lib +++ b/kicad_library_text/lib_test/test_Library.lib @@ -1,4 +1,16 @@ EESchema-LIBRARY Version 2.4 #encoding utf-8 # +# test-connector-1 +# +DEF test-connector-1 J 0 40 Y Y 1 F N +F0 "J" 0 0 50 H V C CNN +F1 "test-connector-1" 0 100 50 H V C CNN +F2 "" 0 0 50 H I C CNN +F3 "" 0 0 50 H I C CNN +DRAW +X 1 1 -50 -150 100 R 50 50 1 1 P +ENDDRAW +ENDDEF +# #End Library
実際のファイルを見てみます。
EESchema-LIBRARY Version 2.4 #encoding utf-8 # # test-connector-1 # DEF test-connector-1 J 0 40 Y Y 1 F N F0 "J" 0 0 50 H V C CNN F1 "test-connector-1" 0 100 50 H V C CNN F2 "" 0 0 50 H I C CNN F3 "" 0 0 50 H I C CNN DRAW X 1 1 -50 -150 100 R 50 50 1 1 P ENDDRAW ENDDEF # #End Library
先程作成したシンボルをコミットします。
$ git add test_Library.lib $ git commit -m "add connector-1"
ピンを増やして比較してみる
ピン1本から2本へ増やしたコネクタを再度保存します。
差分を比較します。
$ git status On branch feature/kicad_library Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory) modified: test_Library.lib Untracked files: (use "git add <file>..." to include in what will be committed) test_Library.bck no changes added to commit (use "git add" and/or "git commit -a") $ git diff diff --git a/kicad_library_text/lib_test/test_Library.lib b/kicad_library_text/lib_test/test_Library.lib index af66b23..8044aa3 100644 --- a/kicad_library_text/lib_test/test_Library.lib +++ b/kicad_library_text/lib_test/test_Library.lib @@ -10,6 +10,7 @@ F2 "" 0 0 50 H I C CNN F3 "" 0 0 50 H I C CNN DRAW X 1 1 -50 -150 100 R 50 50 1 1 P +X 2 2 -50 -250 100 R 50 50 1 1 P ENDDRAW ENDDEF #
2番目のピンの追加すると、座標等とともに追加されるようです。
手でファイルを書き換えてみた
テキスト管理ですので、試しにテキストエディタで3番目のピンを増やしてみます。
X 3 3 -50 -350 100 R 50 50 1 1 P
一度シンボルエディターを閉じて、再度開きます。
想定通りピンが増えました。
推奨される方法では無い可能性がありますので、実際回路を作成する際には気をつけてお試しください。
ピンテーブルを使ってみた
ピンを、通常より手間を減らして増やす方法があります。
"編集" - "ピンテーブル"を選択するとピンの一覧が出てきます。
適当に3, 4ピンを追加します
"OK"を押すと追加したピンが追加されます。
参考サイト
最後に
ピンテーブル機能はこのブログを書くまで知らず、50ピンぐらい手動で追加したことがありました。小ネタのつもりでしたが、私にとっては非常に良い学びがありました。