Monitor doesn't stay in standby when using a DP cable

Having another little issue with my new monitor. I switched the connection from a HDMI cable to a DP one, as there are a few improvements to using DisplayPort instead. This introduces a small annoyance I don’t know how to fix.

Whenever the monitor goes into standby, it only stays that way for a few seconds before turning itself back on. Power Management - Energy Saving - Screen Energy Saving is set to 5 minutes; The OS does indeed power the monitor off after this idle time and I even see its power LED indicating that. However it only stays this way for roughly 6 - 8 seconds: Despite not moving the mouse or pressing any key, the monitor always powers back on after this amount before I do so. The problem only started after changing the cable type.

Anyone else experiencing this issue and knows how to solve it? Is this perhaps a kernel / X11 bug that I should report? openSUSE Tumbleweed x64 KDE, amdgpu module, monitor is a ViewSonic VX2758-C-MHD 23.6.

Some interesting insight: I tried the following commands, all of which will put the monitor into standby once ran but in every case it still only stays that way for 6 seconds before coming back on:

xset dpms force off
xset dpms force standby
xset dpms force suspend

Hi
Does the monitor have a menu system, if so is the ‘sleep’ mode on or off? I have mine set to off (use DP and HDMI) on the GNOME DE and the power off/on as expected.

It has two settings in that regard: Auto Power Off and Sleep, the later giving me large intervals as an option (30 minutes, 60 minutes, etc). I tried enabling them both but it doesn’t affect the issue unfortunately.

Here are the X11 power settings too, in case something should be tweaked here as well. It should be noted the monitor is marked as being Energy Star compliant from what I could find.

mircea@linux-qz0r:~> 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:  660    repeat rate:  25
  auto repeating keys:  00ffffffdffffbbf
                        fadfffefffedffff
                        9fffffffffffffff
                        fff7ffffffffffff
  bell percent:  50    bell pitch:  400    bell duration:  100
Pointer Control:
  acceleration:  2/1    threshold:  4
Screen Saver:
  prefer blanking:  yes    allow exposures:  yes
  timeout:  0    cycle:  600
Colors:
  default colormap:  0x20    BlackPixel:  0x0    WhitePixel:  0xffffff
Font Path:
  /usr/share/fonts/misc:unscaled,/usr/share/fonts/Type1/,/usr/share/fonts/100dpi:unscaled,/usr/share/fonts/75dpi:unscaled,/usr/share/fonts/ghostscript/,/usr/share/fonts/cyrillic:unscaled,/usr/share/fonts/truetype/,built-ins
DPMS (Energy Star):
  Standby: 300    Suspend: 450    Off: 600
  DPMS is Enabled
  Monitor is On
Font cache:
  Server does not have the FontCache Extension

Is behavior same if you open some kind of session other than Plasma? You probably already have IceWM at the ready to try.

If you switch back to HDMI and proper behavior is restored, I’d report both an openSUSE bug and to ViewSonic tech support.

Hi
Mine are all zero…


DPMS (Energy Star):
  Standby: 0    Suspend: 0    Off: 0
  DPMS is Enabled
  Monitor is On

Interesting. Maybe those are some delays for the system to wait for a response from the monitor or something similar? How do you change them?

Rarely used IceWM but I guess I could try. Would be more tempted to try a Wayland session, I’m already waiting to switch to that once it’s stable enough. Will probably look into it later.

Hi
Do you have configuration mods in /etc/X11/xorg.conf.d/50-monitor.conf or another file in the directory?

No, I didn’t edit those especially since the last time I reinstalled openSUSE from scratch.

Hi
It also sounds like this users issue as well;
https://forums.opensuse.org/showthread.php/537858-DPMS-turns-screen-off-but-turns-back-light-on-intermittently-and-does-not-allow-it-to-sleep

If you run the following, does it help?


xset dpms 0 0 0 

Doesn’t seem to unfortunately. It did change the settings to “Standby: 0 Suspend: 0 Off: 0” but still does the same issue.

Now that I’ve permanently switched from X11 to Wayland I decided to do a few more tests. Via HDMI cable, the monitor will go into standby properly including on WL! Unfortunately I need to use DisplayPort for a few reasons… such as the HDMI connection only working at 120 Hz instead of the full 144 Hz, while also requiring me to boot with “amdgpu.dc=0” else the monitor won’t turn on through this cable. It appears whatever the issue is, clearly only DP is affected… is it even the monitor’s fault or a Kernel bug in the end? Does Wayland offer any monitor power management settings I can play with? I really don’t wish to wear my monitor out nor waste electricity by keeping it turned on throughout the night… and I can’t manually power it off either since if I do Wayland will freak out that there’s no display and crash the session to the login screen, or switch to my VR headset as a primary display making it impossible to see anything and bring my monitor back on without rebooting.

I am running xorg not wayland. I run using display port with a 165 Hz refresh rate and screen resolution of 2560x1440. I do not have any problem with suspending the monitor. GPU is a Vega 64.

Silly question; are you using a Display Port cable that is D8k certified, or at least a version 1.4 cable?

To be fair I don’t quite know: I got a simple one from a nearby store thinking it wouldn’t make a difference. Only info I can find so far is a label on it, photo below. On the official page of my exact monitor model, it suggests DisplayPort 1.2 is used… I’m thus assuming that as long as the cable is at least 1.2 itself, which it should be unless it’s some crazy ancient model, that shouldn’t make a difference.

https://i.imgur.com/PXnkwvU.jpg

Any new thoughts on this please? I really don’t wish to leave my monitor on during the night like that. If I could I’d use the HDMI cable which doesn’t have this issue, but I can only use the monitor in 120 Hz mode over HDMI not 144 Hz like DP. Perhaps a different driver or kernel module is used for DisplayPort which isn’t properly sending the standby signal to the monitor?

Have you tested using DP with 120 instead of 144? If it behaves so configured, I’d think you found a(nother) bug to blame on Wayland that likely needs reporting upstream. I’m guessing not many testers or developers running 144 with 1080P on Wayland.

WRT overnight, what about switching to empty login screen on vtty3 before off to bed?

Another thought - what happens if connecting both HDMI and DP cables? I don’t know if I’d want to try on a display that isn’t under warranty, but yours is new. Does it have a manual that says don’t do that?

What if you try a live Fedora 32 stick boot, same problem with 144?

Interesting suggestion: I didn’t try putting the monitor in standby over DP at 120 Hz, didn’t think that would make a difference. Might give that a go next… thanks.

One thing to clarify: This issue exists on both X11 and Wayland (always KDE Plasma). In both cases HDMI will properly go and stay in standby, but DP will fully cut off the signal instead. This makes me suspect it could be an amdgpu or other kernel issue.

Tried enabling standby on both 120 Hz and 60 Hz, no difference. Also set the monitor to request the YUV color format too but this didn’t help either.

Anything else? I’d really appreciate more input from anyone who: Uses openSUSE Tumbleweed, an AMD card on the amdgpu module, an 144 Hz monitor, and is connecting their monitor via DisplayPort… should be common things and hopefully a known bug somewhere.

Edit: It appears another OS-TW user posted about the exact same problem with the same hardware and configuration as me. No responses to their thread yet but I’m clearly not the only one.

Hi
Any firmware updates available for the Monitor?


hwinfo --monitor (Intel GPU though)

31: None 00.0: 10002 LCD Monitor                                
  [Created at monitor.125]
  Unique ID: rdCR.F2LL03FelvF
  Parent ID: _Znp.4KXirhzsgSC
  Hardware Class: monitor
  Model: "E24"
  Vendor: SPT 
  Device: eisa 0x099d "E24"
  Resolution: 720x400@70Hz
  Resolution: 640x480@60Hz
  Resolution: 640x480@67Hz
  Resolution: 640x480@72Hz
  Resolution: 640x480@75Hz
  Resolution: 800x600@56Hz
  Resolution: 800x600@60Hz
  Resolution: 800x600@72Hz
  Resolution: 800x600@75Hz
  Resolution: 832x624@75Hz
  Resolution: 1024x768@60Hz
  Resolution: 1024x768@70Hz
  Resolution: 1024x768@75Hz
  Resolution: 1280x1024@75Hz
  Resolution: 1920x1080@60Hz
  Resolution: 1280x1024@60Hz
  Size: 521x293 mm
  Year of Manufacture: 2018
  Week of Manufacture: 17
  Detailed Timings #0:
     Resolution: 1920x1080
     Horizontal: 1920 1968 2000 2080 (+48 +80 +160) +hsync
       Vertical: 1080 1083 1088 1119 (+3 +8 +39) +vsync
    Frequencies: 174.50 MHz, 83.89 kHz, 74.97 Hz
  Year of Manufacture: 2018
  Week of Manufacture: 17
  Detailed Timings #1:
     Resolution: 1920x1080
     Horizontal: 1920 2008 2052 2200 (+88 +132 +280) +hsync
       Vertical: 1080 1084 1089 1125 (+4 +9 +45) +vsync
    Frequencies: 148.50 MHz, 67.50 kHz, 60.00 Hz
  Driver Info #0:
    Max. Resolution: 1920x1080
    Vert. Sync Range: 48-76 Hz
    Hor. Sync Range: 30-85 kHz
    Bandwidth: 174 MHz
  Config Status: cfg=new, avail=yes, need=no, active=unknown
  Attached to: #27 (VGA compatible controller)

32: None 01.0: 10002 LCD Monitor
  [Created at monitor.125]
  Unique ID: wkFv.F2LL03FelvF
  Parent ID: _Znp.4KXirhzsgSC
  Hardware Class: monitor
  Model: "E24"
  Vendor: SPT 
  Device: eisa 0x099d "E24"
  Resolution: 720x400@70Hz
  Resolution: 640x480@60Hz
  Resolution: 640x480@67Hz
  Resolution: 640x480@72Hz
  Resolution: 640x480@75Hz
  Resolution: 800x600@56Hz
  Resolution: 800x600@60Hz
  Resolution: 800x600@72Hz
  Resolution: 800x600@75Hz
  Resolution: 832x624@75Hz
  Resolution: 1024x768@60Hz
  Resolution: 1024x768@70Hz
  Resolution: 1024x768@75Hz
  Resolution: 1280x1024@75Hz
  Resolution: 1920x1080@60Hz
  Resolution: 1280x1024@60Hz
  Size: 521x293 mm
  Year of Manufacture: 2019
  Week of Manufacture: 31
  Detailed Timings #0:
     Resolution: 1920x1080
     Horizontal: 1920 1968 2000 2080 (+48 +80 +160) +hsync
       Vertical: 1080 1083 1088 1119 (+3 +8 +39) +vsync
    Frequencies: 174.50 MHz, 83.89 kHz, 74.97 Hz
  Year of Manufacture: 2019
  Week of Manufacture: 31
  Detailed Timings #1:
     Resolution: 1920x1080
     Horizontal: 1920 2008 2052 2200 (+88 +132 +280) +hsync
       Vertical: 1080 1084 1089 1125 (+4 +9 +45) +vsync
    Frequencies: 148.50 MHz, 67.50 kHz, 60.00 Hz
  Driver Info #0:
    Max. Resolution: 1920x1080
    Vert. Sync Range: 50-76 Hz
    Hor. Sync Range: 30-83 kHz
    Bandwidth: 174 MHz
  Config Status: cfg=new, avail=yes, need=no, active=unknown
  Attached to: #27 (VGA compatible controller)

Only amdgpu systems are laptops with HDMI…

Could be the monitor(s), could be the card, could be the desktop… So if you logout and login into ICEwm, does the issue duplicate?

Haven’t used IceWM in a while, if nothing else comes up I might try it there.

mircea@linux-qz0r:~> sudo hwinfo --monitor
48: None 00.0: 10002 LCD Monitor                                
  [Created at monitor.125]
  Unique ID: rdCR.oue3Y6rzDH3
  Parent ID: cuhJ.Cf9Q95zza+7
  Hardware Class: monitor
  Model: "WVR1"
  Vendor: SEN 
  Device: eisa 0x1019 "WVR1"
  Resolution: 1080x1920@60Hz
  Year of Manufacture: 2017
  Week of Manufacture: 35
  Detailed Timings #0:
     Resolution: 1080x1920
     Horizontal: 1080 1092 1132 1272 (+12 +52 +192) -hsync
       Vertical: 1920 1934 1936 1942 (+14 +16 +22) -vsync
    Frequencies: 148.50 MHz, 116.75 kHz, 60.12 Hz
  Driver Info #0:
    Max. Resolution: 1080x1920
    Vert. Sync Range: 20-120 Hz
    Hor. Sync Range: 1-255 kHz
    Bandwidth: 148 MHz
  Config Status: cfg=new, avail=yes, need=no, active=unknown
  Attached to: #17 (VGA compatible controller)

49: None 01.0: 10002 LCD Monitor
  [Created at monitor.125]
  Unique ID: wkFv.LzdDmDaycr5
  Parent ID: cuhJ.Cf9Q95zza+7
  Hardware Class: monitor
  Model: "VIEWSONIC VX2458 Series"
  Vendor: VSC "VIEWSONIC"
  Device: eisa 0x36af "VX2458 Series"
  Serial ID: "VFA194700316"
  Resolution: 720x400@70Hz
  Resolution: 640x480@60Hz
  Resolution: 640x480@67Hz
  Resolution: 640x480@72Hz
  Resolution: 640x480@75Hz
  Resolution: 800x600@56Hz
  Resolution: 800x600@60Hz
  Resolution: 800x600@72Hz
  Resolution: 800x600@75Hz
  Resolution: 832x624@75Hz
  Resolution: 1024x768@60Hz
  Resolution: 1024x768@70Hz
  Resolution: 1024x768@75Hz
  Resolution: 1280x1024@75Hz
  Resolution: 1280x720@60Hz
  Resolution: 1280x960@60Hz
  Resolution: 1280x1024@60Hz
  Resolution: 1400x1050@60Hz
  Resolution: 1920x1080@60Hz
  Size: 521x293 mm
  Year of Manufacture: 2019
  Week of Manufacture: 47
  Detailed Timings #0:
     Resolution: 1920x1080
     Horizontal: 1920 1944 1976 2056 (+24 +56 +136) +hsync
       Vertical: 1080 1083 1088 1098 (+3 +8 +18) +vsync
    Frequencies: 325.07 MHz, 158.11 kHz, 144.00 Hz
  Driver Info #0:
    Max. Resolution: 1920x1080
    Vert. Sync Range: 48-144 Hz
    Hor. Sync Range: 180-180 kHz
    Bandwidth: 325 MHz
  Config Status: cfg=new, avail=yes, need=no, active=unknown
  Attached to: #17 (VGA compatible controller)