DPMS はディスプレイを繋いだまま画面をオフにできるためリモートゲーミングの時などに便利な技術ですが、4Kディスプレイの MSI MPG 274URF QD には DPMS にバグ (?) があるようです。しかしながらこのバグを迂回する方法を見つけたのでここに記しておきます。なおPC本体との接続は HDMI1 で行っています。
まずディスプレイのボタンを押してOSDメニューを出して、「設定」→「電源ボタン」という謎オプションを「スタンバイ」に設定してください。これを設定しないとDPMSでディスプレイをoffにしたあとonにできないようです。
まずは必要なパッケージをインストールします。Ubuntu 24.04では以下のような感じです。
sudo apt install ddcutil ddccontrol
ディスプレイのi2cパスを調べるには以下で行います。
$ sudo ddcutil detect
Display 1
I2C bus: /dev/i2c-4
DRM connector: card1-HDMI-A-1
EDID synopsis:
Mfg id: MSI - Microstep
Model: MPG 274URF QD
Product code: 48322 (0xbcc2)
Serial number:
Binary serial number: 1 (0x00000001)
Manufacture year: 2024, Week: 16
VCP version: 2.1
画面をoffにするには以下で行います(環境変数はdbusのLimitsExceeded問題の回避です)。/dev/i2c-4の部分は上で検出したパスを使用してください。
DDCCONTROL_NO_DAEMON=1 ddccontrol -r 0xd6 -w 4 dev:/dev/i2c-4
画面をonにするには以下で行います。これは誤記ではなく書き込む値は 1 (DPM On) や 0 (?) ではダメで 2 (DPMS Standby) でないと復帰できないようです…。
DDCCONTROL_NO_DAEMON=1 ddccontrol -r 0xd6 -w 2 dev:/dev/i2c-4