How To Set Up A GPIO Screen For Raspberry Pi - Waveshare 3.5 Inch Touch LCD

New guide out just finished all about setting up Tiny GPIO Screens for Raspberry Pi.

There are heaps of Sub-4 Inch Displays that attach directly to the GPIO pins of Raspberry Pi Palm-Sized Computers. What is great as well is all small GPIO screens for the Raspberry Pi go through a very similar process to set up. The Waveshare 3.5 Inch Touch LCD 480x320 is the perfect example to demonstrate this process.

Many of these screens are touch devices and increase the usability of your Raspberry Pi whilst making almost no size sacrifices. The GPIO also offers a very rugged sturdy connection and together make for a compact nugget of practical computing power.

Read more


Using Pi4 and 3.5inch screen I have got to the set resolution part but cannot find CEA mode 109 480x320 59Hz 15:9, tried DCA mode 88 480x320. My 3.5 inch screen now shows some code on boot up buts thats as far as I can go. Bit stuck here any ideas?

1 Like

Hey Corey,

Welcome to the forum, thanks for posting! :partying_face:

Which operating system are you running on your Pi? And if you use another display, does the OS correctly and fully boot into the GUI?

1 Like

Running the latest Pi OS and also tried running Victron Venus OS on another SD card but thats a diffrent problem I believe :joy: Based on the colour of the screen between the two OS I’ve tried im sure its just a resolution issue. Unfortunately I only have a 65inch TV to use as a second monitor which is no help I did get Venus working correctly on that but I think I really just need a smaller monitor to set up Pi OS correctly on. Maybe Im not seeing all the settings I need to change on the big TV. Sorry forgot to mention I have been trying to input the commands on the big TV to set up for 3.5inch screen so thats probably the issue right?

I’m running bullseye (Arm64) on an Rpi3B+. I’m trying to get this waveshare Rpi 3.5" (A) display to work and it’s been a nightmare. I’m embarrassed to say I’ve been at this for 26 hours now.

After I run LCD35-show the display DOES turn on and show the bootup service/system messages but then stalls and won’t load the GUI. I can drop down to the shell and I’ve tried all manner of changes to config.txt. I’ve tried using dtoverlay=waveshare35a and also using dtoverlay=ads7846 with various options I’ve found on other forums.

I’ll try anything anyone will recommend. I’ll provide details anyone needs. Waveshare provided me with some manual update info (dropped here) but that makes the screen not work at all.

I’m not sure if it’s the ORDER that I’m doing things in, or if I’m missing something assumed to be obvious at the very beginning (like running sudo apt update then full-upgrade BEFORE doing anything else). I’m not sure if raspi-config needs to be run either.

It hasn’t been any fun, but I do appreciate your tutorial even though it seems to be out of date as of now.

I’ll take any suggestions you have

1 Like

I ordered the same screen last week for RPi 4B 8GB and having the same issue. The boot logs show up but not the GUI.

I went on and read all I could about the flags, compilation and use the fbcp drivers. Supposedly it can run at 30hz with the optimizations.

I actually was able to get the screen to almost work in the Rasp OS GUI, but there were refresh issues and artifacts galore. I started digging into those but it felt less and less worth it so I smashed the 3.5" screen to bits and got the 5" capacitive touch version from waveshare, which worked as advertised in 64bit bullseye Rasp OS image.

As far as I can tell, this is a new problem. Older videos or tutorials from years ago are no longer valid.
If you proceed and have better success and can get a good picture… I would be delighted to know how becaus I didn’t really smash it to bits even though I really really wanted to.

1 Like

Created an account to give my 5c worth.
I have spent the best part of 2 days attempting to get the 3.5 (c) version of this screen working with a 64bit bookworm lite install. Like all of the above, nothing I did could get a workable screen. 32 bit no worries, 64bit find another screen.

1 Like