2020年12月14日月曜日

KiCadのライブラリのパスは、手動で変更すればプロジェクトの外のディレクトリを相対パスで指定できる


背景

KiCadで基板を作っている時に、ライブラリを読み込むパスを書き換えていたら、${KIPROJMOD}を利用することでプロジェクトの外のディレクトリを相対パスで指定できることに気づきました。

便利たと思うので、具体的に便利な場合と共に書き方を紹介します。

使ったもの

  • KiCad
    バージョンは5.1.7です
  • KiCadのライブラリ
    今回は自分用に作っているmy-kicad-symbolsmy-kicad-footprintsをKiCadのプロジェクトに読み込ませます。

プロジェクトのディレクトリ内部のライブラリをファイルエクスプローラーで指定した場合は${KIPRJMOD}の相対パスになる

KiCadでプロジェクトに紐づくライブラリを指定する際、プロジェクトのディレクトリの(*.proファイルがあるディレクトリ)中にあるライブラリを指定すると、プロジェクトのディレクトリを ${KIPRJMOD} とした相対パスが設定されます。




プロジェクトのディレクトリ外部のライブラリをファイルブラウザで指定した場合は、絶対パスになる

一方、プロジェクトのディレクトリの外にあるライブラリを指定すると、絶対パスが設定されます。




絶対パスは${KIPRJMOD}を利用して相対パスに書き換え可能

このパスは手動で書き換え可能です。
そのため${KIPROJMOD}を利用するパスにすれば、プロジェクトのディレクトリ外部のライブラリも相対パスで指定できます。

今回は下記のようにプロジェクトのディレクトリの1つ下の階層にあるライブラリを指定します。

${KIPRJMOD}/../my-kicad-symbols/my-kicad-symbols.lib
パスはダブルクリックすると編集モードになります。



この状態でSymbol Editorでシンボルを確認すると、期待通りにライブラリを読み込めることが確認できます。


フットプリントも${KIPRJMOD}を利用してプロジェクトのディレクトリ外部を相対パスで指定可能

フットプリントのライブラリも同じように、${KIPROJMOD}でプロジェクト外部のディレクトリを指定できます。



どんなときに嬉しいの? ひとつのgitプロジェクトでライブラリを共有した基板を複数設計する場合

プロジェクト外部のディレクトリの相対パスでの指定ができると、1つのプロジェクトで複数の基板を管理する際に、ライブラリをそれぞれの基板ごとに配置せず一箇所に配置して相対パスで指定できます。

同じコンセプトの若干形が異なる基板を作るときに便利です。
自分はgroveのコネクタの拡張基板設計データに対して、この記述を適用しました。


まとめ

KiCadのライブラリはファイルエクスプローラーを利用するとプロジェクトの外部のディレクトリのパスが絶対パスになりますが、手動で${KIPRJMOD}を利用した相対パスに書き換え可能です。
この記述を利用すると、gitで管理しているディレクトリの中でライブラリを使い回せるので、同じ方針の基板を作りやすくなると思います。
そのような場面があれば、利用してみるのはいかがでしょう?

0 件のコメント :