Files
Beyond-KLE/keyboard-making-workflow.md
T
ewdernaandClaude Opus 5 2eb2867c13 IDX: キー番号の正本としてIDXレイヤーを確定し、MAPの参照をPHYへ移す
キー番号はPHYの幾何からもELCの配線からも導出できない決めごとなので、IDXが正本を持つ。
公開した基板のキー番号は他人のキーマップが依存する公開インターフェースであり、
出力のたびに生成し直さず固定する。

「最も重要な抽象化層」「最も欠けている層」という位置づけは誤りだったので落とした。
QMKのLAYOUTマクロの引数順、ZMKのmatrix transformのmap、KMKのcoord_mappingとして
既に存在していて、形式化されていないだけである。

あわせて2点。MAPはキー番号ではなくPHYのキーIDを参照する(IDXへの挿入でMAPがずれないため)。
IDXの保存形式は order: string[] とし、ELCのLEDChain.orderと同じく並びの位置を番号とする。

phase1-json-schema.md の P-1 を解消。

Journal: journal/2026-09-21-idx-necessity.md

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-21 08:52:27 +09:00

103 lines
3.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 自作キーボード制作ワークフロー分析
既存の制作フローの各工程が、どのレイヤーに当たるかを見る文書。
レイヤーの定義と役割は `keyboard-design-layers.md` を正とする。
## 現在の一般的な制作手順
### 1. デザイン・設計段階
#### a) レイアウト設計
- **ツール**: KLE (Keyboard Layout Editor)
- **作業内容**:
- キーの物理配置を決定
- キーサイズ・間隔・角度を調整
- 視覚的な配置確認
- **出力**: KLE JSON ファイル
- **Beyond KLE対応**: **PHYレイヤー**
#### b) 回路設計・マトリックス設計
- **ツール**: 手動計算、KiCad等の回路図エディタ
- **作業内容**:
- キーマトリックスの行列構成を決定
- マイコンピンとの対応付け
- ダイオード配置の検討
- **出力**: 回路図、ピン配置表
- **現在の課題**: KLEからマトリックス情報への変換が手動
- **Beyond KLE対応**: **ELCレイヤー**。行列構成という工程は持たず、キーの端子とピンの対応として書く
### 2. PCB設計段階
#### a) フットプリント配置
- **ツール**: KiCad、Eagle、Fusion360等
- **作業内容**:
- KLE JSONから座標を抽出(手動またはスクリプト)
- スイッチフットプリントの配置
- マイコン・コネクタ等の部品配置
- **現在の課題**: KLEとPCBツール間の座標変換
- **Beyond KLE対応**: **PHYレイヤー** → PCBツール連携。渡すのは配置であって、フットプリントの選択はPCBツール側に残る
#### b) 配線・ルーティング
- **ツール**: PCB CADソフト
- **作業内容**:
- マトリックス配線の実装
- 電源・信号線のルーティング
- **Beyond KLE対応**: **ELCレイヤー**情報の活用
### 3. ファームウェア設定段階
#### a) ファームウェア基本設定
- **ツール**: QMK、KMK、VIA等
- **作業内容**:
- マトリックス定義(ROW/COL)
- ピン配置設定
- 物理レイアウト定義
- キーマップ配列の並び順を決める(QMKなら `LAYOUT` マクロの引数順、ZMKなら matrix transform の
`map`、KMKなら `coord_mapping`)
- **現在の課題**: KLEとファームウェア設定の手動変換。並び順は手書きで、引数の数え間違いがそのまま
キーのずれになる
- **Beyond KLE対応**: **PHY** + **IDX** + **ELC** → ファームウェア自動生成。
ROW/COLはELCの配線から出力時に割り当てる。並び順は**IDXレイヤー**が正本として持つ
#### b) キーマップ設定
- **ツール**: QMK Configurator、VIA、Remap等
- **作業内容**:
- 各キーへのキーコード割り当て
- レイヤー設計
- マクロ・特殊機能の設定
- **Beyond KLE対応**: **MAPレイヤー**。キーの参照にはPHYのキーIDを使い、配列への並べ替えは出力時にIDXの順で行う
### 4. 製造・組み立て段階
#### a) PCB製造
- **出力**: Gerberファイル、BOM、Pick&Place
- **Beyond KLE対応**: なし。部品の品種とフットプリントを持たないため、この段階はPCB設計ツールが担う
#### b) 部品調達・組み立て
- **作業内容**: はんだ付け、組み立て、動作確認
## 現在のワークフローの問題点
### 1. データの分断
- **問題**: KLE → PCB → ファームウェアで毎回手動変換
- **影響**: 一箇所変更時の全体への反映が困難
### 2. 設計変更時のトレーサビリティ不足
- **問題**: どのレイヤーでの変更が他に影響するかが不明確
- **影響**: デバッグ・修正作業の複雑化
### 3. ツール間連携の脆弱性
- **問題**: 手動変換によるヒューマンエラー
- **影響**: 設計ミス、製造後の修正コスト