You are not logged in.

#1 2019-10-05 22:57:16

dviktor
Member
From: Moscow
Registered: 2015-10-18
Posts: 162

DPMS settings have no effect

I have setup with single monitor and single VGA card:

[viktor@desolve-nettop ~]$ lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation HD Graphics 530 (rev 06)

I have the following Xorg packages installed:

[viktor@desolve-nettop ~]$ pacman -Q | grep xorg
xorg-bdftopcf 1.1-1
xorg-font-util 1.3.2-1
xorg-font-utils 7.6-5
xorg-fonts-encodings 1.0.5-1
xorg-luit 1.1.1-3
xorg-mkfontscale 1.2.1-1
xorg-server 1.20.5-2
xorg-server-common 1.20.5-2
xorg-setxkbmap 1.3.2-1
xorg-xauth 1.1-1
xorg-xcmsdb 1.0.5-2
xorg-xdpyinfo 1.3.2-2
xorg-xinit 1.4.1-1
xorg-xkbcomp 1.4.2+7+g29fda8e-1
xorg-xmessage 1.0.5-1
xorg-xmodmap 1.0.10-1
xorg-xrandr 1.5.1-1
xorg-xrdb 1.2.0-1
xorg-xset 1.2.4-1
xorgproto 2019.1-2

I'm trying to set up DPMS on my system. According to the wiki article I've added the following to my /etc/X11/xorg.conf.d/10-dpms.conf:

Section "Monitor"
    Identifier  "Monitor0"
    Option      "DPMS"          "true"
EndSection

Section "ServerLayout"
    Identifier  "ServerLayout0"
    Option      "BlankTime"     "0"
    Option      "StandbyTime"   "20"
    Option      "SuspendTime"   "20"
    Option      "OffTime"       "30"
EndSection

However, after relogin to my X session I see the following output of xset q:

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/TTF,built-ins
DPMS (Energy Star):
  Standby: 0    Suspend: 0    Off: 0
  DPMS is Enabled
  Monitor is On

This looks like screensaver blank settings are in effect (I checked with different BlankTime values and had right results) while DPMS standby, suspend and off settings are not applied at all. I tried even add the following line:

xset dpms 1200 1200 1800

to my .xinitrc before exec cinnamon-session incantation and still with no luck. However, if I execute this line by hand in terminal after successful X login then DPMS settings becomes alive:

Screen Saver:
  prefer blanking:  yes    allow exposures:  yes
  timeout:  0    cycle:  0
Colors:
  default colormap:  0x20    BlackPixel:  0x0    WhitePixel:  0xffffff
Font Path:
  /usr/share/fonts/TTF,built-ins
DPMS (Energy Star):
  Standby: 1200    Suspend: 1200    Off: 1800
  DPMS is Enabled
  Monitor is On

So what is the problem with applying them?

Last edited by dviktor (2019-11-06 12:26:18)

Offline

#2 2019-10-06 07:30:28

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 77,739

Re: DPMS settings have no effect

cinnamon will probably nuke them during it's init phase - there may be a related settings item and if not (though seems weird) you could still override them w/ an autostarted script, https://wiki.archlinux.org/index.php/XDG_Autostart

To test whether that's the problem, just redirect xdpyinfo into some file before "exec cinnamon-session" (nb. that xinitrc is not invoked by the vast majority of DMs and only relevant for startx/xinit and xdm logins)

Offline

#3 2019-10-06 20:09:02

dviktor
Member
From: Moscow
Registered: 2015-10-18
Posts: 162

Re: DPMS settings have no effect

Seems you're right. Here are diffs for xdpyinfo and xset q dumps before exec cinnamon-session and after it:

[viktor@desolve-nettop ~]$ diff -ura xdpyinfo-pre xdpyinfo-post 
--- xdpyinfo-pre	2019-10-06 22:56:08.052846830 +0300
+++ xdpyinfo-post	2019-10-06 22:56:20.986423954 +0300
@@ -17,7 +17,7 @@
     depth 24, bits_per_pixel 32, scanline_pad 32
     depth 32, bits_per_pixel 32, scanline_pad 32
 keycode range:    minimum 8, maximum 255
-focus:  PointerRoot
+focus:  window 0x4e00004, revert to Parent
 number of extensions:    28
     BIG-REQUESTS
     Composite
@@ -62,7 +62,11 @@
   preallocated pixels:    black 0, white 16777215
   options:    backing-store WHEN MAPPED, save-unders NO
   largest cursor:    256x256
-  current input event mask:    0x0
+  current input event mask:    0xfa8033
+    KeyPressMask             KeyReleaseMask           EnterWindowMask          
+    LeaveWindowMask          ExposureMask             StructureNotifyMask      
+    SubstructureNotifyMask   SubstructureRedirectMask FocusChangeMask          
+    PropertyChangeMask       ColormapChangeMask       
   number of visuals:    94
   default visual id:  0x21
   visual:
[viktor@desolve-nettop ~]$ diff -ura xset-pre xset-post 
--- xset-pre	2019-10-06 22:57:09.224004441 +0300
+++ xset-post	2019-10-06 22:57:19.900874295 +0300
@@ -6,9 +6,9 @@
     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 repeat delay:  363    repeat rate:  33
   auto repeating keys:  00ffffffdffffbbf
-                        fadfffefffedffff
+                        fadfffeffffdffff
                         9fffffffffffffff
                         fff7ffffffffffff
   bell percent:  50    bell pitch:  400    bell duration:  100
@@ -22,6 +22,6 @@
 Font Path:
   /usr/share/fonts/TTF,built-ins
 DPMS (Energy Star):
-  Standby: 1200    Suspend: 1200    Off: 1800
+  Standby: 0    Suspend: 0    Off: 0
   DPMS is Enabled
   Monitor is On

I've found energy saving settings in Cinnamon menu but even after changing power off time to Never DPMS settings are still overridden.

UPD: there is an issue and upstream says that Xorg is responsible for DPMS, not Cinnamon, but it seems that Cinnamon interfere with it somehow...

Last edited by dviktor (2019-10-06 20:32:10)

Offline

#4 2019-10-06 20:37:03

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 77,739

Re: DPMS settings have no effect

Ah yeah - dpms is actually not in xdpyinfo. Thanks for covering me ;-)

I know nothing about cinnamon, so the best advise I can give you is to override it in a session autostart script - though 0/0/0 is essentially never. Can you set your desired parameters effecetively in cinnamon?

Offline

#5 2019-10-06 20:38:38

dviktor
Member
From: Moscow
Registered: 2015-10-18
Posts: 162

Re: DPMS settings have no effect

Method with XDG_autostart worked perfectly. However, I want to find the cause of this in Cinnamon. I think this thread could be marked as SOLVED and next investigation will be on GitHub. Thank you for idea!

PS: seems like I'm still experiencing such issues. Sometimes autostart scripts are executed before Cinnamon power settings take effect. As for now I've suggested fix for this, will see if upstream will take a look at this

Last edited by dviktor (2019-11-06 00:00:27)

Offline

Board footer

Powered by FluxBB