# スイッチ種別の保持先 (旧 PHY P-7) ## 結論 PHYは端子配置(terminal) / ソケット方式(socket) / スイッチの向き(orientation)の3軸を持つ。ブランドは持たない。 実際のPCBフットプリントは3軸の積として出力時に決まる。KLEの sm, sb, st はBeyond KLEの端子配置と対応させず、不透明なまま退避して書き戻す。 ## 案の比較 | 論点 | 案 | 採否 | | --- | --- | --- | | ブランド | KLEの sb 相当をPHYで持つ | 不採用 | | ブランド | 持たない | 採用 | | 種別の定義 | (a) スイッチ側の足の配置。MX-3pin と MX-5pin は別タイプ | 採用 | | 種別の定義 | (b) PCBに開ける穴の配置。MXは1タイプ、ボス穴・LED穴はオプション | 不採用 | | 分類 | 端子配置を階層化(MX系 > MX-3pin, MX-5pin) | 不採用 | | 分類 | 平坦な識別子 + 定義表の属性列 | 採用 | | 未知の種別 | 未知のときだけ出力時にフットプリントを指定させる | 不採用(既知も同じ仕組みで足りる) | | 未知の種別 | 識別子 → フットプリントの対応表を常に出力設定に置く | 採用 | | KLE sm/sb/st | Beyond KLEの端子配置に変換して取り込む | 不採用 | | KLE sm/sb/st | 不透明なまま退避して書き戻す | 採用 | ## 根拠 - ブランドは同じボードに対して利用者が選ぶもので、穴もパッドも配線対象も変えない。ボード設計の情報ではない - KLEの st は `MX1A-11Nx` のようなベンダー品番で、ブランド・種別・バリエーションが混ざった文字列。ここから穴形状を機械的に導けないため、 Beyond KLEの端子配置との対応づけは成立しない。名前も意味もKLEと別物なので、同名を避けて terminal とした - 端子配置は電気的インターフェース(2端子接点 / アナログ / 光学)も決める。PHYが持てばELCが別途スイッチ情報を持つ必要がない。 これがPHYに置く根拠になった - 向きは90度と270度で別物(LED穴・ボス穴の位置が変わる)なので4方向。キーの回転とは別の値で、キーのローカル座標系に対して持つ - 階層化を採らなかったのは、欲しいのが分類ラベルであって継承ではないため。低背かどうかも定義表の列で表せる - 未知の種別を特別扱いしなかったのは、KiCadのフットプリント名がライブラリ依存で、既知の種別でも出力時のマッピングが要るため。 未知は「マッピングが未登録」なだけになる ## (b)案を捨てた経緯 5pin穴のPCBには3pinスイッチも刺さるため、3pin/5pinの差は「スイッチの選択」ではなく「PCBの選択」だという整理ができる。 これはブランドを落とした理屈と同じ形なので、(b) のほうが一貫するとして提案した。 ユーザーの判断: 3pinを明示的に使いたい制作者が多く、設計データ上で3pinと5pinを区別したい。よって (a)。 LED穴も (b) と同じ形の論点だが、LED専用ノードを立てる可能性が出たため、端子配置のオプションとしては扱わず別途詰める。 ## 捨てた仮説 - 「マウント方式」をKLEの sm と同じ軸だと考えていた。KLEの sm は cherry / alps のような軸規格で、 プレートマウント/PCBマウントでもホットスワップ/直付けでもない。ユーザーの意図はソケット有無だったため socket に落ち着いた