If you are using a touchscreen with your Raspberry Pi, then this guide is for you.
Xstroke (Gesture recognition) is the perfect tool to help you get more out of your touhscreen. I am using a PiScreen
Gesture recognition allows you to draw “strokes” on your touchscreen, which get interpreted as commands or text. Xstroke allows these to be entered anywhere on the screen. In some cases, Xstroke can be used instead of a keyboard.
To accept input from a touchscreen we have to use the event interface of the Linux input system. We use the ioctl capabilities of the event interface, in addition to the normal read and write calls to get information from the touchscreen. This blog post explains how to use the touchscreen within your own programs using C as well as writing directly to the framebuffer.
I’m using a shield from Texy to attach my TFT to my Pi.
This is soooo much easier then connecting up the cables individually, which requires me to always refer to the wiring diagram… and it always takes me two or three goes to get it right. This just requires a quick snap onto the top of the GPIO pins. It also includes wiring to use 3 buttons on the GPIO pins not being used by the TFT.
Notro has done some great work with developing drivers for different models of TFT displays for the Pi. He successfully created one for the Adafruit 2.2″ TFT . This is a great little display and is very clear.
The 1.8″ TFT from Adafruit is the perfect display to attached to a Raspberry Pi.
These instructions also help with the Sainsmart display and you can find more info for both here: http://www.whence.com/rpi/
The TFT isn’t ‘plug & play’ with the Raspberry, a patch has to be applied to the kernel to be able to interface via SPI with the ST7735R controller chip on the TFT. Once working, the display will act as a framebuffer device.
I spent two weeks trying to get it working, so I thought I would document it to help others.
###UPDATE 14th Nov 2013### After a large number of request, I have now posted the compiled version of the kernel that supports the 1.8” TFT. Based on 2013-09-25-wheezy-raspbian.img. There are two links below, one for the Kernel the other is the instructions.
Thanks go to Kamal (http://www.whence.com/rpi/) and Neil for responding to my emails & forum post, and their work on the ST7735R driver. Thanks also go to Adafruit for their cool products.
As it takes over three hours to compile the kernel on the PI, I will show how to cross compile from another Linux PC. In my case, it is Ubuntu 12.10 running within VMWare on a Windows 7 Quad core PC. Kernel compile time is 15 mins.
Wire it up
Sainsmart wiring details are here on Kamal’s page: http://www.whence.com/rpi/ You could also use a shield to make the wiring a lot easier, look here
Prepare the Raspberry Pi
-Download and install Raspbian “wheezy”. This guide is based on 2013-02-09-wheezy-raspbian which is running 3.6.11 kernel