How do I keep the screen on a console-only Raspberry Pi?

Buildroot for RPi3 B+ without X server (console only). Monitor connected on HDMI.
I want to keep the monitor on.

After 10 minutes (if I’m not wrong) of no keyboard activity the screen turns off.
From my old notes I did the following:

echo -ne "33[9;0]" >> /etc/issue

but it does not work. I find a lot of advice but only for X.

Asked By: Mark

||

I probably do not bring an easy solution but I do provide some ideas.

Some quick questions first: Did you do reboot or do some action that makes issue to be copied to the terminal? Is not issue corrupted by excess control characters? What is the result of plain echo -ne "33[9;0] — does it change the behaviour?

I confirm that the echo sequence works on very recent Ubuntu. (The plain echo; I did not try issue.)

Your echo command corresponds to the line

 ESC [ 9 ; n ]       Set screen blank timeout to n minutes.

in man 4 console_codes.

But the support may possibly be conditional – compilation of the code may possibly be skipped in builds for smallest machines.

You may try to compile a small program that would use

       TIOCLINUX, subcode=TIOCL_SETVESABLANK
              Handles the Power Saving feature of the new generation of
              monitors.  VESA screen blanking mode is set to argp[1],
              which governs what screen blanking does:

              0      Screen blanking is disabled.

or

      TIOCLINUX, subcode=4
              Unblank the screen.

from man 4 ioctl_console

Answered By: minorChaos

You can edit/disable the timeout as explained in the Raspberry Pi Documentation section Configuring Screen Blanking / On console.

In /boot/cmdline.txt add consoleblank=X where X is the number of seconds of inactivity (for example consoleblank=120 will wait for two minutes).

If you want to disable the feature, set X to zero: consoleblank=0.

Answered By: Eduardo Trápani