Display Power Management Signaling
Display Power Management Signaling (DPMS) enables power saving behaviour of monitors when the computer is not in use. The time of inactivity before the monitor enters into a given saving power level, standby, suspend or off, can be set as described in DPMSSetTimeouts(3). Note that DPMS was developed for CRT monitors, and on LCD displays, there is normally no difference between the standby, suspend and off modes.
Linux console
To alter the terminal, setterm issues terminal-recognized escape codes. Essentially it just writes/echos the terminal sequences to the current terminal device, whether that be in screen, a remote ssh terminal, console mode, serial consoles, etc. Its syntax (where 0 disables):
$ setterm --blank [0-60|force|poke] $ setterm --powersave [on|vsync|hsync|powerdown|off] $ setterm --powerdown [0-60]
- Console blanking alone does not enable DPMS power saving. Console blanking is disabled by default. [1]
-
setterm --powerdown
does not seem to have any effect when theAPM_DISPLAY_BLANK
kernel configuration option is not enabled. [2] - Console blanking can also be enabled by the
consoleblank
kernel parameter. See the kernel documentation for details.
To see the escape codes used, pipe the output as follows:
$ setterm --powerdown 2>&1 | exec cat -v 2>&1 | sed "s/\\^\\[/\\\\033/g"
To modify a specific terminal, redirect the escape codes to it (with write permission):
$ setterm --powerdown 0 >> /dev/tty3
>>
is used instead of >
. For permission issues using sudo in a script or something, you can use tee to append the output of setterm to the tty device, which tty's let appending sometimes but not writing.Xorg
Configuration
To fully disable DPMS, create a configuration file:
/etc/X11/xorg.conf.d/10-extensions.conf
Section "Extensions" Option "DPMS" "false" EndSection
If you simply want to adjust the delays, change the duration (in minutes):
/etc/X11/xorg.conf.d/10-serverflags.conf
Section "ServerFlags" Option "StandbyTime" "10" Option "SuspendTime" "20" Option "OffTime" "30" EndSection
OffTime
option does not work, use screen blanking (i.e. BlankTime
) instead, which will keep the monitor turned on with a black image.Runtime settings
It is possible to turn off your monitor with the xset command which is provided by the xorg-xset package.
Examples:
Command | Description |
---|---|
xset s off
|
Disable screen saver blanking |
xset s 3600 3600
|
Change blank time to 1 hour |
xset -dpms
|
Turn off DPMS |
xset s off -dpms
|
Disable DPMS and prevent screen from blanking |
xset dpms force off
|
Turn off screen immediately |
xset dpms force standby
|
Standby screen |
xset dpms force suspend
|
Suspend screen |
To query the current settings:
$ xset q
... Screen Saver: prefer blanking: yes allow exposures: yes timeout: 600 cycle: 600 DPMS (Energy Star): Standby: 600 Suspend: 600 Off: 600 DPMS is Enabled Monitor is On
See xset(1) for all available commands.
- XScreenSaver and xfce4-power-manager use their own DPMS settings and override xset configuration. See XScreenSaver#DPMS and blanking settings and Xfce#Display blanking for more information.
- If using the command manually in a shell you may need to prefix it with
sleep 1;
for it to work correctly, for examplesleep 1; xset dpms force off
-
xset dpms 0 0 0
, which sets all the DPMS timeouts to zero, could be a better way to "disable" DPMS, since the effect of-dpms
would be reverted when, for example, turning off the screen withxset dpms force off
. - If using
xset
in xinitrc does not work, specify settings within a file in/etc/X11/xorg.conf.d/
, see #Configuration.