I've been trying to switch off the built-in screen of a device I've got, but I can't seem to completely control it without X running.

If I run a GUI (I've tried Kubuntu 12.10) and issue the command xset dpms force off, the screen goes black, including the backlight. If I run a console OS (12.04 LTS), the screen blanks as expected after a few minutes of inactivity, but the backlight stays on dimly. I've tried using setterm to manipulate the powersaving mode (setterm -powersave powerdown, as well as a couple of variations), but there is a very faint glow from the backlight when the screen blanks in this way. The same happens if I use the sysfs interface, which does have a control method for the backlight (it just doesn't switch it off completely).

I've looked at the xset source and discovered that it sends an internal "opcode" seemingly called DPMSForceLevel to the X server. At this point, I got a bit lost and ran out of time. I intend to have another go at following the source, but I'd love it if anyone can offer any insight!


The device is an O2 Joggler. It's an Intel Atom based device with what I'm led to believe is a Sharp touchscreen and an Intel GMA500 GPU). I was hoping not to have to run X, so if I can send the screen hardware the correct commands without, I'd be happy.

I am aware of vbetool, which is supposed to offer this sort of control of display hardware, but unfortunately, I tried it and got nowhere (Error: something went wrong performing real mode interrupt).

  • I was just about to recommend you vbetool, which unlike setterm does work here on this old EeePC, also an Atom CPU. – Did you find a solution already? Mar 23 '14 at 16:21
  • No, unfortunately I haven't. I've tried several other things, including writing a small C program to send an ioctl to the framebuffer graphics interface but I've had no luck. Apr 1 '14 at 8:58

Your Answer

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

Browse other questions tagged or ask your own question.