I am running a single board computer (Intel Atom based) off a battery, with Ubuntu 18.04 as the OS, to do some remote monitoring and processing.

Aim is to get the system to run for 72 hours which I have done.

However, I have noted that though there is no monitor connected, with monitor output enabled an extra 0.1A is drawn.
Disabling monitor output using a xset dpms force off command or xrandr --output HDMI-I --off saves me my 0.1A.
However, whilst both commands work fine when issued from an application running in a terminal, they don't work when the application autostarts on boot up (I am using cron to fire up the application on boot using @reboot python3 /bin/bootapp.py &).

Application is Python and the commands to switch are issued using os.system(xset dpms force off) or os.system(xrandr --output HDMI-I --off). I note that the application is up and running well before Ubuntu finishes booting so thinking that Ubuntu might be overriding the command I also issue it 5 minutes after boot up.
But still, the monitor output is enabled.

How do you disable the monitor output? I could usefully do with the extra 0.1A.

  • walloftextishardtoread
    – Tetsujin
    Aug 8 '19 at 17:23
  • @Mark Jordan, the formatting of text requires two spaces before a hard return to end a paragraph. Editing tips are at superuser.com/editing-help#code .
    – K7AAY
    Aug 8 '19 at 17:38

The DISPLAY-variable is not set for a daemon. xset-command won't know which display to target. On an interactive shell session, the variable is set on login.

Suggestion: use -display argument to specify.

  • Thanks, in the end I solved it by adding a bash script, to disable the monitor, into startup applications, though this needed a short delay (I used 20 seconds) to guarantee the monitor was disabled. Aug 24 '19 at 6:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.