Turn off HDMI on Pi-Star (Easier)

Here’s an even easier way to turn off HDMI on your Pi-Star image running under Raspbian. If you’re running one of the Pi-Star 4.0 release candidates, the tvservice command may already be installed. You can check by issuing the following command:

which tvservice

If it is installed, just add the HDMI off command to /etc/rc.local.

# Turn off HDMI
/usr/bin/tvservice -o

If you’re running Pi-Star 3.x, I learned that you can install tvservice from a .deb package.

sudo apt-get install libraspberrypi-bin

For some reason this did not turn up during my initial searches but was pointed out over in the Pi-Star Forums by Dennis (W1MT).

It also seems that Andy (MM0MWZ) is considering adding a button in the future which would allow turning off HDMI from the web interface.

Turn off HDMI on Pi-Star Image

It is common practice on headless Raspberry Pi computers to turn off the HDMI to save some power. Even without a monitor attached, the HDMI hardware seems to draw ~ 50 ma of current. However, in the interest of saving space in the image, Pi-Star (as distributed) lacks the necessary tvservice command to turn off the HDMI hardware.

This command is part of the Raspberry PI “userland” package, which for some reason is not packaged as a .deb. So you’ll have to grab the code off github, but it is pretty easy. Before starting, make certain that you have expanded the filesystem of your image to fill the SD card.

sudo pistar-expand
sudo reboot

After the reboot, do the following:

rpi-rw
git clone https://github.com/raspberrypi/userland
sudo apt-get install cmake -y
cd userland
./buildme

Add the libraries to the ld.so search patch by creating a file named “userland.conf” in /etc/ld.so.conf.d. In that file add the following line:

/opt/vc/lib

Next, update the ld.so search path:

sudo ldconfig -v

You can now run the tvservice command:

## Status
sudo /opt/vc/bin/tvservice -s
## Turn off HDMI
sudo /opt/vc/bin/tvservice -o

All that is left to be done is to add the HDMI off command to your /etc/rc.local file so that it will run every time the system boots.