ラップトップはどのようにしてHDMIケーブルが接続されていることを検出するのでしょうか?

ラップトップはどのようにしてHDMIケーブルが接続されていることを検出するのでしょうか?

安価な HDMI スイッチを購入しました。ボタンを押すと、入力 1、2、3 が同じ出力に切り替わります。自宅のラップトップをデスクの上に閉じたまま、仕事用のラップトップをその上に開いて置き、外部モニターで 2 つのラップトップを切り替えるのが好きです。モニターの両方の HDMI 入力を使用すると、自宅のラップトップは、仕事用のラップトップを表示している場合でも、まだ接続されていると認識し、スリープ状態になりません。

しかし、問題は、HDMI スイッチが安物だということです。スイッチを使用して、自宅の (閉じた) ラップトップからスイッチを離すと、スイッチはラップトップへのすべての信号を遮断します。その後、ラップトップはディスプレイが接続されていないことを認識し、閉じられているためスリープ状態になります。これで、鶏が先か卵が先かという問題が発生しました。ディスプレイが接続されていないため、USB キーボードでコンピューターを起動できず、ラップトップはスリープ状態で信号を出力しないため、HDMI スイッチはラップトップに切り替わりません。

私の質問は次のとおりです:ラップトップはHDMIが接続されていることをどのように検出するのでしょうか?正しいピンに +5 ボルトが表示されているのを確認するだけの簡単な問題であれば、3 つの +5 ボルト ピンをすべて接続するだけで、ラップトップは接続されていると認識し、スリープ状態にならないようになります。より複雑な方法 (たとえば、ラップトップとモニター間の何らかのデータ転送) の場合は、運が悪いかもしれません。

答え1

HDMI のピンのほとんどは、シールド付きのツイストペアです。ただし、シングル ピンもいくつかあります。CEC は一部のデバイスでのみ使用され、複数の HDMI デバイスが相互に通信してコマンドを送信できるようにします。ホット プラグ ピンは常に使用され、プラグの抜き差しイベントを検出して HDMI ドライバーを再初期化します。

冗談はさておき、ドライバーを再初期化するには Raspberry Pi を再起動する必要があります。起動後にプラグを差し込むと、送信されなくなります。

次に、電源と暗号化用のピンがいくつかあります。DDC はデバイス情報と HDCP 暗号化です。

質問にお答えすると、ホット プラグですが、単にハイに接続することはできません。そうすると、ドライバーは再起動時にのみ再初期化されます。どこかでハングしている場合は、これは良くありません。通常、ハイまたはローのままである場合は、ライン上の何かがそれを保持していることを意味します。別の競合デバイス、不適切な分離、またはプルアップ、プルダウンの不良がある可能性があります。HDMI ハブを介して試してみて、それが修正されるかどうか確認することをお勧めします。ライン プルをより適切に処理できる可能性があります。

答え2

探しているのは、拡張ディスプレイ識別データである EDID かもしれません。EDID は、ディスプレイ モニターを照会し、ディスプレイを駆動しているハードウェアに情報を返すように設計されたプロトコルです。情報には、ディスプレイでサポートされているタイミング、ディスプレイ サイズなどが含まれます。

EDID は通常、HDMI ケーブルからの +5V でホットトリガーされますが、すべてのメーカーが堅牢なハードウェアを備えているわけではありません (場合によっては、HDMI ケーブルをホットプラグしてもモニターが起動しなくなります)。

関連情報