Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Ore Keybord #1

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for Asakura Shinsuke Asakura Shinsuke
June 15, 2026
420

Ore Keybord #1

#orestudy

Avatar for Asakura Shinsuke

Asakura Shinsuke

June 15, 2026

Transcript

  1. 俺のキーボード 〜 Claude Code でキーボードを作る 〜 俺の勉強会 #6 / 2026-06-15

    @スタメン名古屋本社 俺のキーボード / 俺の勉強会 #6 (2026-06-15)
  2. 自己紹介 あさしん @asashin227 職業 / 肩書き:株式会社スタメン エンジニアリングマネージャ 興味 / 関心:自作キーボード・Claude

    Code / AIエージェント・iOS開発 SNS / リンク: GitHub: github.com/asashin227 X: @asashin227 最近は Claude Code でキーボードを自作するのにハマり中 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 2
  3. 今日話すこと 自作キーボードを Claude Code と一緒に作っている話 KiCad も触ったことのない人間が、AI と対話しながら 基板(PCB)を設計し 3Dケースを作り

    ファームウェアを書く 「ハードウェアづくり」に Claude Code がどこまで使えるのか ソフトの自動化はよく聞く。じゃあハンダゴテの世界ではどうなのか? 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 4
  4. なぜ作ろうと思ったか 普段は Keyball39(左右分割・トラックボール付き)を愛用 でも 出張・外出先 に持ち出すには、もう少し小さく・身軽にしたい 欲しかったもの Keyball39 の配列はそのまま(指の記憶を活かしたい) とにかく小さく

    → キーピッチを 19.05mm → 15mm に詰める 完全無線で、出張カバンにスッと入るサイズ 「出張で使う前提だから、まず小さいこと」が 15mm ピッチの理由 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 6
  5. 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
  6. 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
  7. そもそも、キーボードはどう動く? スイッチを 格子状(マトリクス) に並べ、マイコンが高速スキャン 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
  8. 例:交点で「どのキーか」が分かる 行を 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
  9. 調べてみたら、意外とシンプル キーの正体は 「2つの接点が触れて通電する」だけ スイッチは単なる ON / OFF、押されたかどうかをマイコンが読むだけ 複雑な部品も特殊な仕組みもいらない → 「これなら自分でも作れるのでは?」

    仕組みが単純だと分かって、自作のハードルがグッと下がった 電子回路の設計や半田付けは 経験あり・問題なし ところが…基板(PCB)の設計=KiCad は未経験 「KiCad とはなんですか?」から始まった → Claude「無料のOSS基板CAD。自作キーボードの事実上の標準です」 回路は分かる。でもCADツールと製造データの壁が立ちはだかる 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 11
  10. 全体フロー(6フェーズ) # フェーズ 状態 補足 ① PCB設計(KiCad) 完了 左右とも配線完成・DRCクリーン ②

    製造データ出力 完了 ガーバー/ドリル(v0.0.3再出力) ③ 部品調達 ほぼ完了 — ④ 組み立て 直前 3D印刷データ準備完了 ⑤ ファームウェア(RMK) ビルド完了 — ⑥ 動作確認・デバッグ これから — 設計・データ・ドキュメント工程は Claude Code でほぼ完結 左右の基板とも配線完成 → DRCクリーン、ケースの 3D印刷データ(A1 mini用)まで準備 完了 進捗は docs/build-roadmap.md に単一の真実として集約 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 13
  11. ① 自然文で指示 → 画像で目視レビュー 指示はふつうの日本語 「最下行4つ目を0度、5つ目を-10度、6つ目を-20度に」 「左手の XIAO を 3mm右・2mm上に移動」

    Claude が基板を画像にレンダリング → 目で見て指摘 → 修正 mm・度の単位で高速に反復 ハードはテキストで検証しづらい。 「画像生成 → 目視 → 微修正」のループが事実上のテストになる 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 16
  12. ② マルチエージェントで分業 PCB配線を役割分担したチームを編成(keyboard- design プラグイン) エージェント 役割 pcb-designer 違反の原因特定・修正案 electronics-engineer

    電気的に成立するか検証 pcb-router ゼロから配線を設計 pcb-assembler プランを基板に実装 drc-reviewer DRC実行・違反推移を判定 「設計/実装/レビュー」を分けて相互チェック。右は完成し た右手基板 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 17
  13. ③ 設計→製造を貫くパイプライン 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
  14. パイプラインの出力(3Dケース) 左手側 / 右手側 — いずれも PCB の実座標から自動生成 設計を 「トップシェル式」

    に確定(キー間フレーム無し・底面カバーから基板を挿入) USB-C=上面 / 電源SW=側面開口、全高 ≈13mm の低背 右手側は最内にトラックボールの切り欠きが入る 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 19
  15. ④ 自律運用ループ 「部下のレビューを受けて then sleep」を投げる ScheduleWakeup / Monitor と組み合わせ、 ユーザー不在でもエージェントチームが回り続ける

    designer → implementer → reviewer → (DRC 判定) ↑__________________ 差し戻し ___________________| ↓ 完了まで sleep して再開 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 20
  16. 痛い教訓 XIAO BLE の取り付け向きを間違えていた 実装面(B.Cu)や回転を取り違え、組立向きが合わない状態に → 設計を見直し、部品実装面と XIAO の向きを整合させて解消 穴越しハンダ用の空間が無く、つけられなかった

    XIAO の裏面パッドは「穴越しはんだ付け」が必要なのに、こてを差し込む空間が無かっ た → 基板に BAT+/GND の切り欠きを追加して穴越しハンダ可能に 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 23
  17. AIにできたこと / 苦手だったこと ハード × Claude Code で見えた、ソフト開発にも効く境界線。 できたこと 苦手だったこと

    自然文→設計の高速反復(mm・度で指示) 「正しいか」の最終判断=検算は人が要る 画像レンダで目視レビュー=事実上のテスト テキストだけでの空間・物理の検証 役割分担で設計/実装/レビューを分離 記憶値の思い込み(一次資料で要訂正) 座標データ→ケース→STL の自動連鎖 発注後の手戻り(前提固定は人の責任) 効くのは「反復・分業・自動化」/効かせる鍵は「検算と一次資料を人が握る」 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 25
  18. まとめ KiCad 未経験から、Claude Code と対話して 43キー無線キーボードを設計 効いた使い方 自然文の指示 + 画像レビューの反復ループ

    PCB設計のマルチエージェント分業 PCB座標 → ケース → STL の自動パイプライン いま フェーズ④ 組み立て(ハンダ付け) の直前 基板は左右とも配線完成・DRCクリーン、3D印刷データ(A1 mini用)も準備完了 次回は「実際に動いた/動かなかった」を話したい 俺のキーボード、もうすぐ手元に届きます 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 27
  19. そして今、v0.0.3 を製作中(基板+ケース) 基板(PCB) :外形を左右で完全な鏡像に(104.67 × 80.50mm)/ 電源SWを入手しやすい MSK-12D19 に変更 →

    ガーバー再出力 ケース:トップシェル式に確定し、A1 mini向け印刷データ(3MF)も並行で製作 基板とケースを同時に作り込み中 — あとは刷って組むだけ 俺のキーボード / 俺の勉強会 #6 (2026-06-15) 28
  20. 告知: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