I tried "User-space SPI TFT Python Library - ILI9341" first:
https://learn.adafruit.com/user-space-s ... w?view=all
Although I followed the described steps exactly I failed always on missing "SPI.py" ...

I already new of framebuffers, and then read chapter "TFT 2.4" 320x240 – TJCTM24024-SPI" of Kolban's book. That provided all information needed. It turned out that all is available in Raspbian already and just needs to be turned on.
First the framebuffer device needs to be enabled, Kolban proposed to use rpi-display for ILI9341 displays:
Code: Select all
pi@raspberrypi01:~ $ sudo modprobe fbtft_device name=rpi-display gpios=reset:23,dc:24,led:18 rotate=90
pi@raspberrypi01:~ $
Code: Select all
$ dmesg
...
...
[ 703.864352] fbtft_device: module is from the staging directory, the quality is unknown, you have been warned.
[ 703.870840] spidev spi0.1: spidev spi0.1 500kHz 8 bits mode=0x00
[ 703.870917] bcm2708_fb soc:fb: soc:fb id=-1 pdata? no
[ 704.184479] graphics fb1: fb_ili9341 frame buffer, 320x240, 150 KiB video memory, 16 KiB DMA buffer memory, fps=20, spi0.0 at 32 MHz
[ 704.184566] fbtft_device: GPIOS used by 'rpi-display':
[ 704.184581] fbtft_device: 'reset' = GPIO23
[ 704.184591] fbtft_device: 'dc' = GPIO24
[ 704.184599] fbtft_device: 'led' = GPIO18
[ 704.184618] spidev spi0.1: spidev spi0.1 500kHz 8 bits mode=0x00
[ 704.184633] fb_ili9341 spi0.0: fb_ili9341 spi0.0 32000kHz 8 bits mode=0x00
$
Code: Select all
$ sudo tail --bytes 153600 /var/log/messages > /dev/fb1
$ yes | head --bytes 76800 > /dev/fb1
$

Next I took the giraffe.565 sample 16bit picture from my favorate Arduino Due DMA high speed ILI9341_due library SD card sample:
Code: Select all
$ tail --bytes 153600 giraffe.565 > /dev/fb1
$

Next steps will be to get console displayed on 320x240 TFT, the trigger for me in trying to get TFT running with Pi Zero was this cool youtube video I found yesterday -- I have never seen a X session on a 320x240 display, wow!
https://www.youtube.com/watch?v=fPTaWHc ... e=youtu.be

Oops, that is quick -- 200 frames in 5.090s is 39.3 frames per second!
Code: Select all
pi@raspberrypi01:~ $ time ( for((i=0; i<100; ++i)); do tail --bytes 153600 giraffe.565 > /dev/fb1; yes | head --bytes 153600 > /dev/fb1; done )
real 0m5.090s
user 0m1.520s
sys 0m2.010s
pi@raspberrypi01:~ $
Code: Select all
pi@raspberrypi01:~ $ time ( for((i=0; i<20; ++i)); do tail --bytes 153600 giraffe.565 > /dev/fb1; sleep 0.07; yes | head --bytes 153600 > /dev/fb1; sleep 0.07; done )
real 0m4.136s
user 0m0.390s
sys 0m0.410s
pi@raspberrypi01:~ $