Waveshare TFT for Raspberry Pi

For some projects, having a display for the Raspberry Pi is necessary to help convey what the Raspberry Pi is currently doing. I’ve acquired some Waveshare 3.5” TFT displays for my Raspberry Pi for a few projects that I’m working on. Getting them to work on the latest Raspbian Jessie was really easy as opposed to the Wheezy versions.

Below are the steps I used to get it working.

  1. Log in to your Raspberry Pi and make sure you escalate your privilege to user root.
  2. Download the Waveshare drivers
    • wget -c http://www.waveshare.com/w/upload/7/74/LCD-show-170309.tar.gz
  3. Extract the drivers and switch to the new directory
    • tar xf LCD-show-170309.tar.gz
    • cd LCD-show
  4. Execute the command to download, install and configure the display
    • chmod +x LCD35-show
    • ./LCD35-show
  5. Wait for the tool to download all the necessary tools and it will automatically reboot the Raspberry Pi.
  6. If there is still no display on the Raspberry Pi, perform the following steps
    • Edit /boot/config.txt
    • Ensure SPI is turned on
      • dtparam=spi=on
    • Ensure the Display Overlay exists for this screen at the end of the file
      • dtoverlay=waveshare35a
    • Remove any other Display Overlay that exists such as ads7846 even if it was added by the script above. The Waveshare doesn’t display anything if it exists.

Rotating the Screen

Sometimes, you may want to reorient the screen to different locations. Doing this is simply adding the :rotate=XXX option to the dtoverlay option above.

  • To rotate the screen 90 degrees, modify the dtoverlay to dtoverlay=waveshare35a:rotate=90

  • To rotate the screen 180 degrees, modify the dtoverlay to dtoverlay=waveshare35a:rotate=180

  • To rotate the screen 270 degrees, modify the dtoverlay to dtoverlay=waveshare35a:rotate=270

Try out the different orientations to see which suits your requirements the best.

Happy Pi-ing :)