3.4: HDMI output
If video output sucks, it's not a bad idea to run
raspi-config and give 128Mb memory to the GPU (under 'advanced settings').
If you want your Pi to continuously show something (like a website in kiosk mode), you'll notice that the screen will automatically turn off after a while of inactivity. You might also experience that nothing shows after turning your monitor off and on again, or when plugging in the HDMI cable after booting the Pi.
To make sure HDMI-output is always on, do the following (found here). It should make sure that a) HDMI output is active even when the monitor is off and b) doesn't turn it off again after a while of inactivity.
Add this line to
Before you close the file, you might also want to enable audio over HDMI in the same file, as described below. When done, reboot.
Note: when the Pi boots to terminal, you'll need to follow the steps below as well to prevent the screen from going blank.
For power consumption purposes, you might actually want to disable HDMI output. In that case, execute
Add that line to
/etc/rc.local to run it automatically on every boot. To re-enable, execute
Prevent terminal blanking (source)
When booting into the terminal, the screen will go black after a while. To prevent this, edit
/etc/rc.local. Above the
exit 0, insert:
setterm -blank 0 -powerdown 0 -powersave off
First, install needed packages:
sudo apt-get install x11-xserver-utils
/etc/xdg/lxsession/LXDE/autostart and comment out the line that says
@xscreensaver -no-splash. Also add the following:
@xset s off @xset -dpms @xset s noblank
Fix audio over HDMI (source)
If your monitor or tv has speakers but the sound is not working, make sure the following line exists in
If the file contains
hdmi_drive=1 instead, change the
1 to a
2. This makes sure a normal HDMI output (with audio) is used instead of DVI mode (without audio). You'll probably want that if you use your Pi as a home theater box.
Launch website in kiosk mode (fullscreen)
The following explains how to launch a website in kiosk mode. Make sure you have followed the steps above to keep HDMI-output always-on and the screensaver always-off. Since Chrome (or in this case: Chromium) is a rather heavy browser for the Pi, you might want to consider using a more lightweight one that supports kiosk mode, but since I don't know any, here's how to do it using Chromium:
Start by installing Chromium and Unclutter (to hide the mouse cursor):
sudo apt-get install chromium unclutter
/etc/xdg/lxsession/LXDE/autostart and add:
@chromium --kiosk --incognito http://howcoldisit.com
--incognito is used to make sure it loads freshly on reboot, e.g. in case you have changed JS or CSS files and are unable to Ctrl+F5 the thing for lack of attached keyboard.
Note: this launches for every user that logs in in desktop mode. For a per-user auto-launching application, use this.
Hide the mouse pointer
To hide the mouse pointer when running in kiosk mode, apt-get install
unclutter if you haven't done so in the previous step and add the following line into
@unclutter -idle 0.1 -root
Boot to GUI for new user (source)
In case you want to boot into a different use account, one specifically for the kiosk-mode instead of the default
pi user, you should first make sure that booting to desktop is enabled (instead of to the command line or to Scratch) by running
raspi-config. Do the following to add a user named 'kiosk':
useradd kiosk passwd kiosk
Then edit this file:
sudo nano /usr/bin/raspi-config
And search for this line:
Edit the 16th line by replacing
pi with the new username:
sed /etc/lightdm/lightdm.conf -i -e "s/^#autologin-user=.*/autologin-user=pi/"