Skip to content

Instantly share code, notes, and snippets.

@TG9541
Last active May 28, 2025 19:48
Show Gist options
  • Save TG9541/43cd10e479ae440071401f056311e5d5 to your computer and use it in GitHub Desktop.
Save TG9541/43cd10e479ae440071401f056311e5d5 to your computer and use it in GitHub Desktop.
Raspberry Pi Zero W with a simple

Using a cheap video display as a Raspberry Pi monitor

Displays with 4.3" and 16:9 ratio like the one below are available from Chinese outlets for less than $10. Resolution is 480x272 but it's not clear if that's the raw resolution or actual RGB pixels. Power supply is 12-24V (actually 9-34V). Two video inputs are provided, one has priority. If used with a rear-view camera the lower-priority input can be used as a status display. If no video input is provided the display is in standby.

image

Using the Raspberry Pi TV monitor output

My monitor has a native resolution of 272 lines. I'm not sure to which TV standard that corresponds (maybe PAL?) but with the help of an SSH session the command tvservice -c "NTSC 4:3 P" results in a stable image. I'd like switch to TV-out mode; for this purpose the command shows the corresponing sdtv_mode value for /boot/config.txt. I had to adjust the overscan settings to use the full area of the display.

## https://mlagerberg.gitbooks.io/raspberry-pi/content/3.5-analog-video-output.html
hdmi_ignore_hotplug=1

## uncomment for composite PAL
sdtv_mode=16

# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
# https://forums.raspberrypi.com/viewtopic.php?t=4684
overscan_left=-18
overscan_right=-12
overscan_top=-12
overscan_bottom=-28

# Disable compensation for displays with overscan
# disable_overscan=1

Choosing a suitable console Font

The resolution of a cheap composite display is much lower than that of a VGA monitor, and even lower than an old-fashioned NTSC CRT: there is only a half frame (no interlace), and also the horizontal resolution isn't great due to the composite video encoding. Using a console font that's too small leads to fuzzy horizontal pixels and to dropped vertical lines. Using a large console font like TerminusBold "14x28" results in a 49x16 character display with very good readability. The readability of "Terminus 16x32" isn't much different but the number of characters is even lower.

In order to permanently change the console font run sudo dpkg-reconfigure console-setup and select:

  • UTF-8
  • Guess optimal character set
  • TerminusBold
  • 14x28

Keyboard

I'm using an USB keyboard/mouse combination right now. Bluetooth might also work.

GPIO might also work (e.g., https://github.com/mmoller2k/pikeyd)

Single Window WM

For experiments I use the Awesome WM. In order to use the monitor as a display unit a single window WM might be a better choice, e.g., https://bbs.archlinux.org/viewtopic.php?id=92948

Initial X11 installation

cp /etc/X11/xinit/xinitrc ~/.xinitrc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment