⚡️

Geminiにはんだ付けをサポートするサイトを作ってもらった

に公開

はじめに

はんだ付け初心者の友人に自作基板の実装を手伝ってもらったのですが、

  • 設計通りの値の素子をつけたか自信がない
  • 実装し忘れている部品がある
  • 基板ごとに実装状況が異なる

などの珍事件(?)が多発してしまい、基板の動作確認になかなか入れないというエラーが発生しました。そこでこういった事態を防ぐべく、基板のはんだ付けをサポートしてくれるサイト(ソフトウェア)を開発したいと考えました。

しかしながら、私のWebに関する知識は初心者に毛が生えたレベルであったため、Geminiに制作のほとんどをお願いしました。すると、かなり良いものができたため、皆さんに共有すべく、記事を執筆しております。

作りたいもの

詳細な要件定義等はせず、見切り発車をしてしまいましたが、なんとなく作りたいなあと考えていたイメージは以下のような感じです。

  • はんだ付けに関する技術さえあれば、基板の実装をスムーズに行えるようなサポートをする
  • *.kicad_pcbのアップロードだけで使えるようにする
  • 素子を順に表示し、実装する場所や値(抵抗なら抵抗値)を表示する
  • 後から、実装状況(ログ)をダウンロードできるようにする

ひとまず、これらのイメージを生成AIに投げつけるところから始めました。

Geminiによる生成

使用したGeminiに関する詳細は以下の通りです。

  • モデル
    • Gemini 2.5 Pro with Canvas
  • プロンプト
    • 今から自作基板のはんだづけをサポートするWEBアプリを作りたい。*.kicad_pcbをアップロードしたら、左側に基板の全体図が表示されて右側の上部につけるべき素子の型番やサイズ、値が表示され、下側に「つけた」・「すでについていた」・「未実装のまま」ボタンがあって、管理できるようにして欲しい。

Geminiのコーディング能力は凄まじく一発目からなかなか良いデザインのサイトを生成してくれましたが、肝心の*.kicad_pcbの読み取りに失敗してしまいました。そこで、サンプルとして*.kicad_pcbを送り、解析・改善してもらったところ、数回で自分のイメージ通りの働きをしてくれるサイトが完成しました。

しかしながら、まだユーザに優しいインターフェースにこだわった生成をすることが不得手なようで、無駄なスクロールが多かったり、はみ出しや不揃いなどのデザイン崩れが存在したりと残念な点が多かったので、そういった点は逐次Geminiにお願いしたり、自身で修正したりすることでどんどんと修正することができました。(GeminiのCanvas機能はなんとユーザがコードの編集をし、それを生成結果に反映させることが可能です!AIと共にコーディングを行う時代ってわけですね...。)

その後は自信が所属する衛星開発プロジェクトの友人に使ってもらい、意見を聞きながら、さまざまな機能(はんだ付けの順番変更機能など)を追加・修正し、初期版としてリリースできるレベルにまで到達することが出来ました!

本サイトの名前は『KiCad はんだ付けアシスタント』です。Geminiによる命名だと一瞬で見抜かれてしまいそうな名前ですが、その点を逆に気に入ったため、そのままGeminiによる命名を採用した形です。

Geminiとひたすら会話する様子
Geminiとひたすら会話する様子

完成品

無事Geminiとの長い会話(喧嘩?)を終え、自信が満足できる初期版が完成したため、2025年8月27日に初期版をリリースしました。本サイトはフロントエンドのみで実装されているため、皆さんのパソコン上で簡単に利用することができますし、基板データが外部に送信されることもないため、安心して利用することができます。
KiCad はんだ付けアシスタントの利用風景
KiCad はんだ付けアシスタントを利用する様子

ご利用はGitHubのリポジトリよりどうぞ。(導入方法などの詳細はREADME.mdをご覧ください。)
https://github.com/k42um/KiCad_Solder_Helper.github.io

また、GitHub Pages でも公開しておりますので、ぜひお気軽にご利用ください。導入の作業が一切いらないため、基本こちらでの利用をお勧めします。
https://k42um.github.io/KiCad_Solder_Helper.github.io/

さいごに

自身でも何度か利用してみましたが、はんだ付けに慣れていない人が部品数の少ない基板を実装する際にはかなり有用なサイトになっているのではないかと思います。まだまだものづくりにも、Web開発にも未熟な私でありますので、改善点やバグ報告等ございましたら、先述のリポジトリのissuePull Request (PR)よりお願いいたします。どんどんものづくりに優しいサイトへと進化させていくことができればと思います。

GitHubで編集を提案

Discussion