Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Ore Keybord #1
Search
Asakura Shinsuke
June 15, 2026
1.6k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Ore Keybord #1
#orestudy
Asakura Shinsuke
June 15, 2026
More Decks by Asakura Shinsuke
See All by Asakura Shinsuke
Cla ude Code で0からキーボードを作る
asashin227
1
67
Creating an English conversation app using the Foundation Models framework
asashin227
0
13
Build AI app with AI agent
asashin227
0
20
ReactNative入門
asashin227
0
86
アウトプットしようね
asashin227
0
35
SwiftUIでキラキラを作る
asashin227
0
95
ローカル拠点でのEMの役割
asashin227
0
300
XcodeCloud移行奮闘記
asashin227
0
140
現場主導の開発効率向上の仕組みづくり
asashin227
0
410
Featured
See All Featured
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
320
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
520
The Curious Case for Waylosing
cassininazir
1
500
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
430
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.5k
Designing for Timeless Needs
cassininazir
1
470
Amusing Abliteration
ianozsvald
1
290
Bash Introduction
62gerente
615
220k
Documentation Writing (for coders)
carmenintech
77
5.5k
A designer walks into a library…
pauljervisheath
211
25k
The agentic SEO stack - context over prompts
schlessera
0
910
Transcript
俺のキーボード 〜 Claude Code でキーボードを作る 〜 俺の勉強会 #6 / 2026-06-15
@スタメン名古屋本社 俺のキーボード / 俺の勉強会 #6 (2026-06-15)
自己紹介 あさしん @asashin227 職業 / 肩書き:株式会社スタメン エンジニアリングマネージャ 興味 / 関心:自作キーボード・Claude
Code / AIエージェント・iOS開発 SNS / リンク: GitHub: github.com/asashin227 X: @asashin227 最近は Claude Code でキーボードを自作するのにハマり中 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 2
登壇のきっかけ フロントエンドカンファレンス名古屋で、主催の KokiMiura さん・Wabi さんと話す機会が そこで 自作キーボードの話になり、みんな関心が高そうだった 「これは話したら面白がってもらえそう」と思い立ち… → 自分から「俺の勉強会」で「俺のキーボード」を語ることに
せっかくなので、Claude Code を絡めた制作の話をします 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 3
今日話すこと 自作キーボードを Claude Code と一緒に作っている話 KiCad も触ったことのない人間が、AI と対話しながら 基板(PCB)を設計し 3Dケースを作り
ファームウェアを書く 「ハードウェアづくり」に Claude Code がどこまで使えるのか ソフトの自動化はよく聞く。じゃあハンダゴテの世界ではどうなのか? 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 4
作っているもの 俺のキーボード / 俺の勉強会 #6 (2026-06-15)
なぜ作ろうと思ったか 普段は Keyball39(左右分割・トラックボール付き)を愛用 でも 出張・外出先 に持ち出すには、もう少し小さく・身軽にしたい 欲しかったもの Keyball39 の配列はそのまま(指の記憶を活かしたい) とにかく小さく
→ キーピッチを 19.05mm → 15mm に詰める 完全無線で、出張カバンにスッと入るサイズ 「出張で使う前提だから、まず小さいこと」が 15mm ピッチの理由 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 6
as-mini-43 左右分割・完全無線・右手トラックボール付き 43 キー キーボード 項目 仕様 キー数 43キー(左23 /
右20) キーピッチ 15mm(出張用に小型化) MCU XIAO BLE(nRF52840) トラックボール PMW3610 + 25mm バッテリー LiPo 303040 × 2 ファーム RMK(Vial対応・BLE) 3Dケース+キーの組立プレビュー(右手側・トラックボ ール切り欠きあり) 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 7
Keyball39 と何が違う? 普段使いの Keyball39 をベースに、出張向けに全部小さく・完全無線へ。 項目 Keyball39(普段使い) as-mini-43(今回) 接続 有線(TRS+ProMicro
USB) 完全無線(BLE / XIAO BLE) キー数 39キー 43キー(左23 / 右20) キーピッチ 19.05mm(MX標準) 15mm(小型化) トラックボール 34mm(親指) 25mm(PMW3610) 配列 カラムスタガー Keyball系を踏襲(指の記憶) 「指の記憶=配列は残す/サイズと配線は出張向けに刷新」が狙い 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 8
そもそも、キーボードはどう動く? スイッチを 格子状(マトリクス) に並べ、マイコンが高速スキャン COL0 COL1 COL2 ROW0 ──[K]───[K]───[K]── ROW1
──[K]───[K]───[K]── K = スイッチ + ダイオード ROW2 ──[K]───[K]───[K]── 行と列を高速に走査し、通電した交点(行×列)で押されたキーを特定 各キーにダイオードを1個 → 同時押しの誤検出(ゴースト)を防ぐ マイコンがキーコードに変換し、USB / BLE でPCへ送信(HID) as-mini-43 では XIAO BLE がスキャン&無線送信。配列は COL2ROW 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 9
例:交点で「どのキーか」が分かる 行を A・B・C、列を 1・2・3 とすると、各キーは交点に対応 列1 列2 列3 行A [a]
[b] [c] 行B [d] [e] [f] 行C [g] [h] [i] マイコンが 行A と 列1 の通電を検知 → 交点 A1 が押された 「A1 = a」という対応表(キーマップ)で "a" と判断 XIAO BLE はこの対応表を持ち、押下をキーコードに変換して送信 配線が「どの行×どの列」かを決め、キーマップが「何の文字か」を決める 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 10
調べてみたら、意外とシンプル キーの正体は 「2つの接点が触れて通電する」だけ スイッチは単なる ON / OFF、押されたかどうかをマイコンが読むだけ 複雑な部品も特殊な仕組みもいらない → 「これなら自分でも作れるのでは?」
仕組みが単純だと分かって、自作のハードルがグッと下がった 電子回路の設計や半田付けは 経験あり・問題なし ところが…基板(PCB)の設計=KiCad は未経験 「KiCad とはなんですか?」から始まった → Claude「無料のOSS基板CAD。自作キーボードの事実上の標準です」 回路は分かる。でもCADツールと製造データの壁が立ちはだかる 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 11
制作の流れ 俺のキーボード / 俺の勉強会 #6 (2026-06-15)
全体フロー(6フェーズ) # フェーズ 状態 補足 ① PCB設計(KiCad) 完了 左右とも配線完成・DRCクリーン ②
製造データ出力 完了 ガーバー/ドリル(v0.0.3再出力) ③ 部品調達 ほぼ完了 — ④ 組み立て 直前 3D印刷データ準備完了 ⑤ ファームウェア(RMK) ビルド完了 — ⑥ 動作確認・デバッグ これから — 設計・データ・ドキュメント工程は Claude Code でほぼ完結 左右の基板とも配線完成 → DRCクリーン、ケースの 3D印刷データ(A1 mini用)まで準備 完了 進捗は docs/build-roadmap.md に単一の真実として集約 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 13
設計したPCB(左右) 左手(5行×6列)/ 右手(4行×5列+トラックボール) 赤=表層・青=裏層の配線。未配線 0本まで通した 俺のキーボード / 俺の勉強会 #6 (2026-06-15)
14
Claude Code の使い方 俺のキーボード / 俺の勉強会 #6 (2026-06-15)
① 自然文で指示 → 画像で目視レビュー 指示はふつうの日本語 「最下行4つ目を0度、5つ目を-10度、6つ目を-20度に」 「左手の XIAO を 3mm右・2mm上に移動」
Claude が基板を画像にレンダリング → 目で見て指摘 → 修正 mm・度の単位で高速に反復 ハードはテキストで検証しづらい。 「画像生成 → 目視 → 微修正」のループが事実上のテストになる 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 16
② マルチエージェントで分業 PCB配線を役割分担したチームを編成(keyboard- design プラグイン) エージェント 役割 pcb-designer 違反の原因特定・修正案 electronics-engineer
電気的に成立するか検証 pcb-router ゼロから配線を設計 pcb-assembler プランを基板に実装 drc-reviewer DRC実行・違反推移を判定 「設計/実装/レビュー」を分けて相互チェック。右は完成し た右手基板 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 17
③ 設計→製造を貫くパイプライン PCBを「実座標を持つデータ」として扱うと、全工程が連鎖する PCB (KiCad) └─ extract_case_geometry.py └─ geometry.json ←
スイッチ43 個の座標・取付穴・外形 └─ generate_scad.py └─ OpenSCAD (.scad) └─ STL (3D プリント用ケース/キーキャップ) 基板を直すと、再実行でケースも自動追従 ファームも GitHub Actions で .uf2 を自動ビルド 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 18
パイプラインの出力(3Dケース) 左手側 / 右手側 — いずれも PCB の実座標から自動生成 設計を 「トップシェル式」
に確定(キー間フレーム無し・底面カバーから基板を挿入) USB-C=上面 / 電源SW=側面開口、全高 ≈13mm の低背 右手側は最内にトラックボールの切り欠きが入る 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 19
④ 自律運用ループ 「部下のレビューを受けて then sleep」を投げる ScheduleWakeup / Monitor と組み合わせ、 ユーザー不在でもエージェントチームが回り続ける
designer → implementer → reviewer → (DRC 判定) ↑__________________ 差し戻し ___________________| ↓ 完了まで sleep して再開 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 20
苦労した点 俺のキーボード / 俺の勉強会 #6 (2026-06-15)
配線・設計の試行錯誤 15mm 狭ピッチは「片側通行の道路網」 最後の未配線2ネットに十数セッションハマる → 自前の多層BFSルーターを書いて打開 DRC違反は全ゼロを狙わない 製造を阻害する CRITICAL /
HIGH のみゼロに 結果: CRITICAL 100→0 / HIGH 42→0 / 未配線 20→0 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 22
痛い教訓 XIAO BLE の取り付け向きを間違えていた 実装面(B.Cu)や回転を取り違え、組立向きが合わない状態に → 設計を見直し、部品実装面と XIAO の向きを整合させて解消 穴越しハンダ用の空間が無く、つけられなかった
XIAO の裏面パッドは「穴越しはんだ付け」が必要なのに、こてを差し込む空間が無かっ た → 基板に BAT+/GND の切り欠きを追加して穴越しハンダ可能に 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 23
学び・知見 PCBを座標データにすると、設計変更が3Dケースまで自動で伝わる ハードのレビューは視覚レンダリングが主役 DRCはベースライン管理で割り切ると前に進む 配線を通すだけでなく、電気的妥当性は専任エージェントに担保させる 設計ルールを明文化(①左右対称 ②外形最小化 ③配線最短) CADツール未経験でも、対話 +
役割分担 + 自動パイプラインで形になる 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 24
AIにできたこと / 苦手だったこと ハード × Claude Code で見えた、ソフト開発にも効く境界線。 できたこと 苦手だったこと
自然文→設計の高速反復(mm・度で指示) 「正しいか」の最終判断=検算は人が要る 画像レンダで目視レビュー=事実上のテスト テキストだけでの空間・物理の検証 役割分担で設計/実装/レビューを分離 記憶値の思い込み(一次資料で要訂正) 座標データ→ケース→STL の自動連鎖 発注後の手戻り(前提固定は人の責任) 効くのは「反復・分業・自動化」/効かせる鍵は「検算と一次資料を人が握る」 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 25
まとめ 俺のキーボード / 俺の勉強会 #6 (2026-06-15)
まとめ KiCad 未経験から、Claude Code と対話して 43キー無線キーボードを設計 効いた使い方 自然文の指示 + 画像レビューの反復ループ
PCB設計のマルチエージェント分業 PCB座標 → ケース → STL の自動パイプライン いま フェーズ④ 組み立て(ハンダ付け) の直前 基板は左右とも配線完成・DRCクリーン、3D印刷データ(A1 mini用)も準備完了 次回は「実際に動いた/動かなかった」を話したい 俺のキーボード、もうすぐ手元に届きます 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 27
そして今、v0.0.3 を製作中(基板+ケース) 基板(PCB) :外形を左右で完全な鏡像に(104.67 × 80.50mm)/ 電源SWを入手しやすい MSK-12D19 に変更 →
ガーバー再出力 ケース:トップシェル式に確定し、A1 mini向け印刷データ(3MF)も並行で製作 基板とケースを同時に作り込み中 — あとは刷って組むだけ 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 28
ありがとうございました 質問・ツッコミ歓迎 俺のキーボード / 俺の勉強会 #6 (2026-06-15)
告知:mobile.stmn #18 スタメン主催のモバイル開発 LT会、次回 #18 を開催します! 項目 内容 日時 2026/6/19(金)19:30〜21:30
形式 オフライン LT会・参加無料 会場 スタメン イベントスペース(名古屋・下広井町) テーマ モバイルアプリ開発(ネイティブ / クロスプラットフォーム) 枠 参加 20名 / LT 4名 申し込みは connpass から(右のQRも) stmn.connpass.com/event/391863 モバイル開発に興味がある方、LT登壇も大歓迎です! 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 30