Categories
computers suck

Headless Raspberry Pi + VNC: useful resolution

Breadboards of Canada …

I just set up a Raspberry Pi Zero to be a little breadboard computer. Running a headless machine only through SSH gets a bit dull at times, so the inclusion of VNC Connect in Raspbian is handy.

Only problem was that the default screen size — something like 720×480 — was too small for most dialogue windows. Here’s how to enable a more useful resolution of 1024 × 768.

All of these are enabled from the raspi-config tool, so open a terminal and start it with:

sudo raspi-config

Enable Boot to Desktop

Select 3 Boot OptionsB1 Desktop / CLIB4 Desktop Autologin:



Enable VNC on Startup

Select 5 Interfacing OptionsP3 VNC, and answer Yes to Would you like the VNC Server to be enabled?:


Set Screen Resolution

Select 7 Advanced OptionsA5 ResolutionDMT Mode 16 (1024×768) …:


Once you’ve enabled all of these, raspi-config will ask if you wish to reboot your Raspberry Pi. Once it has rebooted, you should have a usable remote desktop.

(All of the above screenshots were taken from a headless Raspberry Pi Zero via VNC.)

Before & After

These were taken later on a Raspberry Pi 2 I’m setting up for a maker festival booth:

decidedly smol: 720×480
fix it to 1024×768 …
so much better!

7 replies on “Headless Raspberry Pi + VNC: useful resolution”

  • What did you try?
  • What went wrong?
  • Are you running Raspbian at the latest version?

I just ran through this, and all the options are in the right places still.

Rats, it looked promising but had no effect on my Raspberry Pi 4 either. After reboot, the VNC server came back still offering 1024×768, even though when I went back in to raspi-config, it showed the 1280×1024 option I had chosen as still selected. There must be something else overriding this.

What I ended up having to do in order to get this to work was find the following lines in /boot/config.txt and uncomment the last two. Change the values to whatever works for you, I liked width=1280 and height=1024.

# uncomment to force a console size. By default it will be display’s size minus
# overscan.
#framebuffer_width=1280
#framebuffer_height=720

Leave a Reply

Your email address will not be published. Required fields are marked *