ヘッドの手の早見表
印刷用: 図面一式「NES controller-port bridge, v1b」TM-NESB-001 版 P (PDF、英語)。
tools/cheatsheet.py --sheet bench-v1b-head が生成する。ジャンパ、配線の一覧、
各モジュールの「このベンチでは」の列は、回路図の三枚目 (bench-v1b-3.svg) から
読み出す。ブレイクアウトの線は立ち上げツール自身の表から来る。書き下ろしの文は
各モジュールのピンが部品の上で何をするかだけで、それはそのツールの一箇所に
置かれ、回路図がピンを別の名で呼んでいれば拒まれる。ブレイクアウトのどの 2 極が
リセットの対なのかは 2026-09-17 にコンソールで当たって測った。その読みが
書いてあるのは下の J3 の表だ。同じ配線を直角で描いたもの:
wiring-v1b-head.svg。
シート: bench-v1b-head。
シート 3 の全配線
ネットごとに 1 行、回路図から読み取ったもの。RST_HI が 3 橙、RST_LO が 4 黄で、 これがリセットボタンだ。橙が二つのうち電位の高い側。PWR_BROWN と PWR_RED は リレーをフロントパネルの電源スイッチに並列で渡す。ヘッドが電源を握っている間、 そのスイッチは切ったままだ。
| ネット | から | へ |
|---|---|---|
| LAN | PI ETH | LAN 越しの SCPI |
| PI_USB | PI USB-A | Pi への USB |
| PWR_BROWN | K1 COM | J3-1 1 茶、電源 |
| PWR_DRIVE | PI GPIO27 (位置 13) | K1 IN |
| PWR_RED | K1 NO | J3-2 2 赤、電源 |
| RST_DRIVE | PI GPIO17 (位置 11) | OK1 INPUT + |
| RST_HI | OK1 OUT | J3-3 3 橙、リセット + |
| RST_LO | OK1 GND | J3-4 4 黄、リセット - |
| GND | PI GND (位置 6) | OK1 INPUT -; K1 GND |
| PI_5V | PI 5V (位置 2) | K1 VCC |
ヘッドの四本のジャンパ
Pi のヘッダから出るデュポン線 4 本、ブレイクアウトは無し (2026-09-10)。位置は Pi 自身の番号で、奇数が内側の列。反対側の端はシート 3 から読み取ってある。 ここからコンソールへ行く線は無い: Pi のグラウンドがコンソールに届くのは UNO の USB ケーブル経由だけだ。
| Pi のピン | 位置 | 先 | 役割 |
|---|---|---|---|
| 5V | 2 | PI_5V レール | コイルの電源 |
| GND | 6 | GND レール | 貸す唯一のグラウンド |
| GPIO17 | 11 | OK1 INPUT + | リセット、100 ms の高 |
| GPIO27 | 13 | K1 IN | 電源: 高でオン |
電源とリセットのブレイクアウト、J3
5 極が素通しで、フロントパネルのハーネスと色は色のまま、1 番ピンが奥、パネルと 並列で分岐させてある。どの極が何なのかは 2026-09-17 にテスタで測った。グラウンド の極は無い。コンソールがオンでボタンを離した状態で、橙は黄より 4.40 V 高い (2026-09-17)。だから OK1 の OUT は橙へ、その GND は黄へ行く。
| 極 | NES のハーネス | ブレイクアウトの線 | それが何か |
|---|---|---|---|
| 1 | 茶 | 茶 | 電源スイッチ |
| 2 | 赤 | 赤 | 電源スイッチ |
| 3 | 橙 | 橙 | リセット、+ 側 (4.40 V) |
| 4 | 黄 | 黄 | リセット、- 側、および LED |
| 5 | 白 | 白 | LED |
OK1: PC817 モジュール
キャリア基板に載ったフォトカプラ一つ: 入力側は直列抵抗の先の LED、出力側は フォトトランジスタ、両者を繋ぐものは光だけだ。キャリア基板は OUT から VCC への プルアップを足している。VCC を開けておけば OUT は素のコレクタ、GND はエミッタに なるので、出力側は自分の GND へのスイッチであってそれ以上ではない: つまり リセットボタンで、ヘッドがそれを閉じる。INPUT + を高にすると (Pi のピンの 3.3 V で足りる) LED が点き、スイッチが閉じる。
| 側 | ピン | 部品では | このベンチでは |
|---|---|---|---|
| 入力 | INPUT + | 直列抵抗を介した LED のアノード: 高で点く | RST_DRIVE: PI GPIO17 (位置 11) |
| 入力 | INPUT - | LED のカソード、入力側の帰り | GND レール |
| 出力 | OUT | コレクタ: LED が点いている間 GND に引かれる | RST_HI: J3-3 |
| 出力 | GND | エミッタ、出力側自身のグラウンド | RST_LO: J3-4 |
| 出力 | VCC | OUT のプルアップ電源。開けてあるので OUT はオープンコレクタ | 未接続: 意図して開けてある |
K1: リレーモジュール、5 V コイル
5 V コイルのリレーがキャリア基板に載り、入力はフォトカプラで絶縁され、それが コイルのトランジスタを駆動する。コイルは VCC から約 80 mA を取る。だからこれは GPIO ではなく Pi の 5V ピンに繋がっている。接点は切り替えで、COM が NO か NC に 付く。モジュールの表記から読むのではなく、コンソールで 2026-09-17 に実測: GPIO27 の HIGH でコンソールに電源が入り、LOW で切れる。だから起動時の設定は これを低で休ませている。
| 側 | ピン | 部品では | このベンチでは |
|---|---|---|---|
| コイル | VCC | コイルとキャリア基板の電源、5 V | PI_5V レール |
| コイル | GND | コイルとキャリア基板の帰り | GND レール |
| コイル | IN | 制御: GPIO27 の高でコンソールがオン (実測) | PWR_DRIVE: PI GPIO27 (位置 13) |
| 接点 | COM | 接点の共通 | PWR_BROWN: J3-1 |
| 接点 | NO | 常開: コイルがオンの間 COM に付く | PWR_RED: J3-2 |
| 接点 | NC | 常閉: コイルがオフの間 COM に付く | 未接続: 意図して開けてある |
立ち上げツールが走らせるままの、二つの手順
tools/bringup.py から。docs/build-guide.md もこれと同じ表から書かれている。
手順ごとに一つ、Pi の上で:
cd ~/nes-bench && yes '' | python3 tools/bringup.py --step 6.2 --bridge /dev/ttyACM0 --scope SCOPE --operator NAME
cd ~/nes-bench && yes '' | python3 tools/bringup.py --step 6.3 --bridge /dev/ttyACM0 --scope SCOPE --operator NAME
6.2 リセットのフォトカプラがコンソールにパルスを入れる
- ブレイクアウト J3 は 5 極が素通しで、色は色のまま (1 茶、2 赤、3 橙、4 黄、 5 白)。3 橙と 4 黄がリセットボタンで、コンソールがオンのとき橙は黄より 4.40 V 高い (実測 2026-09-17)。
- PC817 モジュール: OUT を 3 橙へ、その GND を 4 黄へ、VCC は未接続、Pi の GPIO17 を INPUT + へ、INPUT - を Pi の GND へ。フロントパネルのボタンは並列の ままにしておく。
6.3 電源リレーがコンソールを切り替える
- リレーの COM と NO を J3 の 1 茶と 2 赤、つまりフロントパネルの電源スイッチ (2026-09-17 にテスタで確認) に、それと並列に渡す。この手順の間、前面の スイッチは切ったままにする。商用電源の安全: ここにあるものは一つも商用電源側 には無い。
- リレーモジュールの VCC を Pi の 5V ピンへ、IN を GPIO27 へ (高でコンソールに 電源が入る、実測 2026-09-17)、GND を Pi の GND へ。
ビルド時に nes-bench/docs/cheat-sheet-head.md から取り込んだもの。リポジトリが唯一の写しだ。報告は独自の作業用の言葉をいくつか使う: 報告書で使われる言葉。