Categories: 工作・開発

PCの電源を遠隔で入れるPCIeカードを自作、スロットの待機電源で動く

別室の作業台にモニターとキーボードを延ばしても、電源を入れるときだけはPC本体まで歩く必要がある。マザーボードの電源スイッチ用ピンにリレーをつなげば遠隔で押せるが、ケースの外にモジュールと電源ケーブルがぶら下がる。scavenrage氏が公開したのは、ケースの中で完結するPCIe x1カードだ。ESP32-H2を載せ、Zigbee経由でHome Assistantから電源とリセットを操作できる。

電源はPCIeスロットのB10ピンから取る。ここに来ている3.3Vの待機電源はPCの電源を切っている間も生きているため、カードは常に無線につながったまま待機できる。外部電源も追加のケーブルも要らない。操作の中身は物理ボタンの再現だ。マザーボードのPWR_SWとRESETの各ピンに、電子スイッチとして使うMOSFETを1個ずつ挟み、300ミリ秒だけ接点を閉じる。ネットワーク経由で起こすWake-on-LANと違い、ボタンを指で押したのと区別が付かない。

設計の要はもう1本の配線にある。PCIeスロットには待機用とは別に、PCが動いているときだけ電気が来る3.3Vのラインがある。scavenrage氏はこれをマイコンの入力に引き込み、100ミリ秒ごとに読んで、2秒間値が変わらなければ確定としてZigbeeに流す。電源ユニットの立ち上がりで一瞬だけ電圧が揺れても誤検知しない仕組みだ。おかげでHome Assistant上のスイッチは、送ったコマンドではなくPCの実際の状態を映す。切ったつもりでPCが落ちていなければ、スイッチの表示はオンに戻る。

使うには下ごしらえがいる。マザーボードのUEFI設定で待機電力を絞るErP Readyを無効にし、PCI Expressからの起動を有効にする。カードにはケース前面のボタンをそのまま並列につなぐヘッダーが2組あり、元の電源ボタンも従来どおり使える。Windowsの高速スタートアップは、物理ボタンを押す動作と同じ扱いなので影響しない。基板は2層の1.6mm厚で、回路図とガーバー、部品表はOSHWLabに、ファームウェアはGitHubに置かれている。同氏はESP32-H2にWi-Fiがない点も明記しており、Zigbeeの子機として使う前提の設計になっている。

関連情報

FabScene編集部

FabScene編集部