2026/06/29(月)今更ながら KiCAD への移行を始める・・・

2026/08/05 22:33 電子工作
いつもの個人メモですが、KiCAD を触ったことが無い方や関心だけお持ちの方には有益な内容かと思います。

概要・イントロダクション

KiCAD は、電子機器回路図の作成から、シミュレーション、プリント基板の配線パターン設計まで、ひとつのツールで行えるCADソフトウェアです。こういったものは一般に「EDA」と言われています。
大企業では、かつて大型コンピュータ(メインフレーム)を使って、既に業務に供していた開発ツールのひとつで、当方も業務の一環で使っていました。

ある程度、回路図プリント基板の配線パターン設計を自動化する機能があります。
まだ、試したことはないですが、シミュレーションはSpice モデルベースで、LTSpice や PSpice との互換があるようです。

また、別途3Dプリンタと FreeCAD という別途CADが必要ですが、kiCAD のプリント基板パターン設計にて、3Dモデルを扱う機能があり、この機能と FreeCAD を連携することで、ケース自体を3Dプリンタで製作することができるようです。

旧トライステート社の開発ボード継承を実現する上で、必ずしも KiCAD で設計業務をする必要性はないのですが、全体的な作業効率や今後の開発環境整備を考慮すると、こういう環境に順応しておくことは不可欠なので、移行をしようと決断した次第。

さて、早速インストール

KiCAD は 1992年頃、FreeCAD は 2002年10月下旬頃に初版リリースがなされ、両方共に無償利用が可能です。

https://www.kicad.org/download/ にWebブラウザでアクセスすると、下記のようなページが表示されます。〔2026/06/28 現在〕
20260628_1.png


最新バージョンは、記事公開時点で、10.0.5 です。やや頻繁にアップデートされています。
FreeBSD が無いのが不満ではあるが... ヽ(^^;
FreeBSD は正式サポートではないものの、有志な方々によって、Ports にて、KiCAD は最新バージョンへの追従がなされているようです。当然のことながら、 X11環境(いわゆる古き良きGUI)にて動作します。
FreeCAD も FreeBSD にて、最新版が Ports で提供されています。

「脱 Windows したい」と思いつつも、業務で必要なソフトウェアが、 FreeBSD 環境で揃わないため、仕方なく Windows を使い続けていますが、ここで Windows 版をダウンロードすると、インストーラ実行ファイルのサイズが 921MiB に達するため、それなりのダウンロード時間がかかりますし、空き容量も必要になります。

ダウンロードしたら、早速インストールの実行。
20260628_2.png
 
20260628_3.png
 
20260628_4.png


「NEXT >」をクリックしつつ、上記のように進めます。
次の画面で、必要な空き容量・インストール先と、残容量が表示されます。
20260628_5.png
 
20260628_6.png
 
20260628_7.png


通常はインストール先は変更せずに「Install」をクリック。しばしの時間がかかりますが、右側のような画面が表示されたらインストール完了です。

KiCAD の起動・使用する準備

起動すると、下記左側のようなメインメニュー画面が表示されます。
ここで、「ファイル(F)」→ 「新規プロジェクト...」をクリックします。
20260628_8.png
 
20260628_9.png


すると、「テンプレート」を選択する画面になります。
Arduino の拡張ボード製作用のテンプレート等あるようなのですが、ここでは迷わず「KiCAD のデフォルトテンプレート」を選びましょう。(下図画面参照)
また、KiCAD は、制作物を「プロジェクト」単位で管理するようになっているようです。
20260628_A.png
 
20260628_B.png


続いて、「プロジェクトフォルダ(ディレクトリ)」を設定する画面になります。
20260628_C.png

ここで指定した文字列がそのまま「プロジェクト名」になります。
日本語全角文字なんかが使えそうですが、予期せぬトラブルが起きると面倒なので、敢えて半角英数字を使いました。
また、「このプロジェクト用に新しいフォルダーを作成」はチェックを入れたままにしてください。

「プロジェクト」が作成されると、下記に示すように、
中身が空の回路図ファイルとプリント基板設計ファイルが作成され、準備完了です。
20260628_D.png


次は、KiCAD を使って、実際に回路図とプリント基板を設計し、気づいた点を簡単にまとめてみます。

2026/06/02(火)Icecast 2.5.0 は FreeBSD ではまともに動作しないので「ダウングレード」した

2026/06/02 13:37 サーバ運営・管理
自分メモ。表題通りです。

Icecast 2.5.0 と ezstream 0.5.6 の組合せは FreeBSD では使えない模様

Icecast は、Webラジオをサービスするにあたって、
おそらく最も使用されているサーバソフトウェアと思われます。
ところが、 Icecast 2.4.4 を Icecast 2.5.0(FreeBSD Ports での最新版)にアップデートすると、
こうなります ↓
20260602_2.jpg
20260602_1.png


「404 File Not Found」という謎のエラー。
動作ログを眺めると
EROR admin/admin_handle_request Error parsing command string or unrecognised command: \x21POKE
EROR util/util_http_select_best Input string does not parse as KVA. Selecting first option.
というのが残っています。
どうも、 '!POKE' (「\x21」は「!」の文字コードです)いうコマンド(?) が ezstream 側から発生しており、
Icecast 2.5 側で「意味不明」として処理されているのが直接の原因らしいです。

FreeBSD 14/15 で Webラジオストリーミングをする場合、
# pkg info | grep icecast

ezstream-0.5.6_11              Command line utility for streaming to icecast servers
icecast-2.5.0,1                Streaming mp3/ogg-vorbis audio server
このバージョンの組み合わせで Ports/Package で提供されており、ezstream の古さが際立っている感はあります。(ezstream の最新バージョンは 1.0.2)

おそらく、ezstream 1.0.2 を「ソースコードから適切にインストール」すればよいのでしょうが、
どうも上手くいきません・・・・・・

なのでIcecast 2.4.4 に「ダウングレード」することにしました。
あまり経験がないので、以下はその手順です。他のPorts でも応用が利きます。

Icecast 2.5.0 を ダウングレード

まず、 Ports から、 ports-mgmt/portdowngrade と、devel/subversion をインストールします。
# cd /usr/ports/ports-mgmt/portdowngrade
# make install clean 
# cd /usr/ports/devel/subversion
# make install clean
# rehash
# cd
実際、portdowngrade は、subversion が無いと動作しない(依存関係にある)のですが、
自動で依存関係のインストールをしないため、手動で2つのPorts をインストールします。
最後の cd は、ログインユーザのホームディレクトリに移動するためのものです。
一連の動作は root ユーザで行うとトラブルなく進みます。
次に
# portdowngrade audio/icecast | more
 または
# portdowngrade audio/icecast > (好きな名前のファイル名)
として、更新リビジョン履歴を取得・表示します。
通常、表示画面に収まらない分量なので、 上記のやりやすいほうでどうぞ。
こんな感じで、リビジョン情報が取得できます:
Choose a revision from this list and run /usr/local/sbin/portdowngrade audio/icecast revision
------------------------------------------------------------------------
r514128 | bapt | 2019-10-09 19:20:58 +0900 (2019/10/09 (水)) | 2 lines

Drop the ipv6 virtual category for a* category  as it is not relevant anymore

------------------------------------------------------------------------
r508834 | mat | 2019-08-14 01:00:39 +0900 (2019/08/14 (水)) | 2 lines

Convert to UCL & cleanup pkg-message (categories a-c)

------------------------------------------------------------------------
r484332 | sunpoet | 2018-11-07 06:09:42 +0900 (2018/11/07 (水)) | 8 lines

Update to 2.4.4

- Update MASTER_SITES
- Fix LIB_DEPENDS
- Use USES=gnome

Changes:        https://gitlab.xiph.org/xiph/icecast-server/raw/release-2.4.4/ChangeLog

------------------------------------------------------------------------
r483913 | sunpoet | 2018-11-04 07:15:38 +0900 (2018/11/04 (日)) | 5 lines

Move audio/icecast2 to audio/icecast

- Clean up Makefile
- Bump PORTREVISION for package change

------------------------------------------------------------------------
r478138 | sunpoet | 2018-08-27 03:41:03 +0900 (2018/08/27 (月)) | 2 lines

Update WWW
上記は、最初の一部です。直前の Icecast リビジョンは r514128 のようなので、このリビジョン(バージョン)へダウングレードします。

次に、該当リビジョンの Ports 取得を行います:
# portdowngrade audio/icecast r514128
コマンドを実行したカレントディレクトリに取得した Ports ディレクトリが作成されることに注意してください。
/usr/ports ディレクトリツリー配下で、 portdowngrade コマンドを実行しないようにしましょう。
本例示の場合は、カレントディレクトリに icecast ディレクトリが作成され、これが Ports ディレクトリになり
ます。

その次に、いよいよダウングレード作業ですが、
ここでの注意点は、「現在のリビジョンを先ず消去すること」です。
以下のように手順を進めます:
# cd /usr/ports/audio/icecast
# make deinstall
# cd 
# cd icecast
# make install clean
これで、icecast は 2.4.4 にダウングレードされ、ezstream 0.5.6 との組み合わせで不具合は解消しました。
こんな感じ ↓
# pkg info | grep icecast

ezstream-0.5.6_11              Command line utility for streaming to icecast servers
icecast-2.4.4,1                Streaming mp3/ogg-vorbis audio server
20260602_4.jpg
20260602_3.png


この Icecast ストリーミングは、エンドレスで数十曲の音楽垂れ流しをしていますが、
著作権上の問題があり非公開です。個人で聴取するためと、技術的検証目的で稼働させています。

最後に、ちょっと気になるのですが、最近の Ports は、確か git による管理に移行していて、 subversion での管理は過去のものだったような??