Overview 

LCD-PI32 Picture

The LCD-PI32 shield provides a 3.2” display for the Raspberry Pi (RPi). It features a 3.2” TFT LCD 320x240 resolution display with 65k colors, a touchscreen and five push buttons.

The LCD-PI32 connects directly to the GPIO connector of the RPi. LCD-PI32 uses only SPI pins and one GPIO pin. The rest of pins are free for other use. Push buttons require no additional pins, their status canbe read over SPI. The shield also includes 4 mounting holes for easy mounting.

The LCD-PI32's driver makes it a primary display for RPi which means that there is no need for any special libraries or software to controll the LCD. Common software like Qt, Xwindows, etc. can be used for developing applications.

Features

o   3.2” TFT LCD Display, 320x240 Resolution

o   5 push buttons, status available over SPI

o   Linux framebuffer driver, no special software required for working with display

o   Mounting holes for standard M3 screws/bolts to fasten the display

o   Powered directly from the Raspberry Pi, no additional power required

Media

Downloads

Schematic
Linux driver
2013-07-26-wheezy-raspbian image with LCD-PI32 driver compiled into kernel

3.6.11+ kernel with LCD-PI32 driver (compiled ito kernel) and modules (tested on fresh 2013-09-10-wheezy-raspbian image)

backup: sudo tar -czvf my_kernel+modules.tar.gz /boot /lib
install: sudo tar -C / -xzvf LCD-PI32_kernel+modules.tar.gz
 

Ready to compile 3.6.11+ kernel (for developers)

New driver:

-better picture on some modules,
-added backlight control (on/off):

echo 0 > /sys/class/backlight/lcd-pi/brightness
echo 1 > /sys/class/backlight/lcd-pi/brightness


2013-09-25-wheezy-raspbian image with new driver (kernel 3.6.11+)

2013-12-20-wheezy-raspbian image with new driver (kernel 3.10.25)

For LCD-PI33 another driver needs to be loaded on startup. Edit /etc/moduled and replace ssd1289 with d51. Use the prepared xorg.conf file:

cp /etc/X11/xorg.conf_LCD-PI33 /etc/X11/xorg.conf

 

Driver installation

tested with fresh 2013-07-26-wheezy-raspbian image

username: pi

password: raspberry

 

ssh to RPi and login as pi

 

pi@raspberrypi ~ $ sudo su -

 

expand file system and reboot.

 

ssh to RPi and login as pi:

pi@raspberrypi ~ $ wget https://www.hwlevel.com/PI32/LCD-PI32.tar.gz

pi@raspberrypi ~ $ sudo tar -xzf LCD-PI32.tar.gz

pi@raspberrypi ~ $ cd LCD-PI32

 

#next step replaces kernel image

#current kernel image will be saved in /boot/kernel_original.img

 

pi@raspberrypi ~ $ sudo ./kernel_update.sh

 

/boot/kernel.img zImage differ: byte 45, line 1

Installed 3.6.11+ kernel with PI32 support.

spi driver is enabled

Reboot is required for changes to take effect

 

pi@raspberrypi ~ $ sudo reboot

 

login as pi

pi@raspberrypi ~ $ cd LCD-PI32

pi@raspberrypi ~ $ sudo ./PI32

 

now you should have a new framebuffer (fb1)

ls /dev/fb*

/dev/fb0 /dev/fb1

 

check some of the following…

pi@raspberrypi ~ $ ./startx

 

pi@raspberrypi ~ $ cd PiMan-master

pi@raspberrypi ~/PiMan-master $ ./start

pi@raspberrypi ~/PiMan-master $ cd ..

 

pi@raspberrypi ~ $ sudo apt-get update

pi@raspberrypi ~ $ sudo apt-get install mplayer

pi@raspberrypi ~ $ ./video_test

# you need a video named t1.flv for this to work...

 

pi@raspberrypi ~ $ con2fbmap 1 1

pi@raspberrypi ~ $ con2fbmap 1 0