web-dev-qa-db-ja.com

HDMIディスプレイを省電力モード(または省電力モード)にするにはどうすればよいですか?

Raspberry Piを使用してオフィスで情報ディスプレイを実行しています。営業時間外のディスプレイを省電力モードにしたい。 1日の始めと終わりにcronを使用して何かを実行する予定でしたが、xset dpms force offが機能しません。

xset s offファイルにxset -dpmsxset s noblank/etc/xdg/lxsession/LXDE/autostartを追加して、スクリーンセーバーを無効にしました(そのため、日中はディスプレイがオンのままです)。

xset qの結果は次のとおりです:

Keyboard Control:
  auto repeat:  on    key click percent:  0    LED mask:  00000000
  XKB indicators:
    00: Caps Lock:   off    01: Num Lock:    off    02: Scroll Lock: off
    03: Compose:     off    04: Kana:        off    05: Sleep:       off
    06: Suspend:     off    07: Mute:        off    08: Misc:        off
    09: Mail:        off    10: Charging:    off    11: Shift Lock:  off
    12: Group 2:     off    13: Mouse Keys:  off
  auto repeat delay:  500    repeat rate:  33
  auto repeating keys:  00ffffffdffffbbf
                        fadfffefffedffff
                        9fffffffffffffff
                        fff7ffffffffffff
  bell percent:  0    bell pitch:  400    bell duration:  100
Pointer Control:
  acceleration:  20/10    threshold:  10
Screen Saver:
  prefer blanking:  no    allow exposures:  yes
  timeout:  0    cycle:  600
Colors:
  default colormap:  0x20    BlackPixel:  0x0    WhitePixel:  0xffff
Font Path:
  built-ins
DPMS (Energy Star):
  Standby: 600    Suspend: 600    Off: 600
  DPMS is Disabled

PDATE:xset s blank && xset +dpms && xset dpms force offはディスプレイをブランクにしますが、省電力モードにはなりません。たくさんのスレッドを読んでも、システム時間を正しく取得することができません(ファイアウォールの問題かもしれません)...

20
shaun5

この質問は、Raspberry Pi固有の問題であるため、実際にはraspberrypi.stackexchange.comに属しています。RaspberryPiのカーネルフレームバッファードライバーは、Xがモニターをスリープ状態にするために使用する関数をサポートしていません。

https://github.com/raspberrypi/linux/issues/487

この問題が修正されるまで、XがDPMSを使用してモニターをスリープ状態にすることはできません。

/opt/vc/bin/tvserviceプログラム:tvservice -o HDMIの電源を切り、tvservice -p HDMIの電源を入れ直す必要があります。

9
AGWA

間違ったパスを払拭する

まず、事実上すべての最新のディスプレイがスリープモードをサポートしています。また、xset dpms force off(またはXサーバーに通知する他の方法)は、(Xの下で)モニターをオフにする正しい方法です。私は何の問題もなく何年もそれを使ってきました。

次に、DPMS is Disabledという言及は、あなたのxset -dpmsからのものです。 xset dpms force offまたは他のDPMS関連のxsetオプションを発行するとすぐに再度有効になるため、xset +dpmsを使用してもしなくても同じ結果が得られるのは通常のことです。

仮説

今、あなたはあなたが「静的」を見ると書いた。このディスプレイは、従来のアナログTV信号をサポートしていますよね?

仮説の1つは、テレビがスリープ状態になる代わりに、実際にはアナログテレビに切り替わるというものです。信号がないため、通常は「静的」と呼ばれるものを示しています。

その仮説をテストする

ここに試すオプションがあります。別のディスプレイを接続してみてください。理想的には、アナログテレビをサポートしていないディスプレイを接続してください。そのディスプレイがxset dpms force offでスリープ状態になるかどうかを確認します。はいの場合、セットアップはPi側で問題ありません。

バリアントを試す

おそらく、他のビデオステートは、テレビに正しいチャネルに留まるように指示しますが、電力使用量は削減されます。 xset dpms force offの代わりに、以下をお試しください:

xset dpms force standby
xset dpms force suspend

そして、それらの1つが必要なものを生み出しているかどうかを確認してください。それぞれが何をするかを確認するために、少なくとも10秒待ってください。 Piキーボードの任意のキーを押すと、表示が再開されます(リモートではxset dpms force onを使用できます)。

生産に入る

上記のバリアントのいずれかが必要な機能を実行している場合は、問題なく共有してください!

そうでない場合で、元のディスプレイを本当に使用する必要がある場合は、アナログTV機能を何らかの方法で無効にできるかどうかをメニューで確認してください。

これらの試みから学んだことを共有してください。

2

vbetoolは機能しませんか?

画面を一時停止します(物理的には、モニターをスタンバイモードにするように言います):vbetool dpms suspend再開(スタンバイモードを終了):vbetool dpms on

1
CDuv

HDMI自体のオンとオフを切り替えることができます。

  • HDMIオン:/opt/vc/bin/tvservice -p

  • HDMIオフ:/opt/vc/bin/tvservice -o

tvserviceバイナリの詳細:

# dpkg -S /opt/vc/bin/tvservice
libraspberrypi-bin: /opt/vc/bin/tvservice

# dpkg -s libraspberrypi-bin
Package: libraspberrypi-bin
Maintainer: Serge Schneider <[email protected]>
Description: Miscellaneous Raspberry Pi utilities
 This package contains various utilities for interacting with the Raspberry
 Pi's VideoCore IV.
Homepage: https://github.com/raspberrypi/firmware

# /opt/vc/bin/tvservice
Usage: tvservice [OPTION]...
  -p, --preferred                   Power on HDMI with preferred settings
  -e, --explicit="GROUP MODE DRIVE" Power on HDMI with explicit GROUP (CEA, DMT, CEA_3D_SBS, CEA_3D_TB, CEA_3D_FP, CEA_3D_FS)
                                      MODE (see --modes) and DRIVE (HDMI, DVI)
  -t, --ntsc                        Use NTSC frequency for HDMI mode (e.g. 59.94Hz rather than 60Hz)
  -c, --sdtvon="MODE ASPECT [P]"    Power on SDTV with MODE (PAL or NTSC) and ASPECT (4:3 14:9 or 16:9) Add P for progressive
  -o, --off                         Power off the display
  -m, --modes=GROUP                 Get supported modes for GROUP (CEA, DMT)
  -M, --monitor                     Monitor HDMI events
  -s, --status                      Get HDMI status
  -a, --audio                       Get supported audio information
  -d, --dumpedid <filename>         Dump EDID information to file
  -j, --json                        Use JSON format for --modes output
  -n, --name                        Print the device ID from EDID
  -h, --help                        Print this information
0
Alec Istomin