If you just plug in the DPI Kippah, it won't work on a fresh installation of Raspbian! You must set up the special device tree overlay configuration!
However, its not too bad, check it out below!
Connect Display
The DPI Kippah has a 40-pin TFT connector. This is a semi-standard connector. A majority of 3.5", 4.3", 5.0" and 7.0" dot-clock DPI displays have this 'standard 40-pin' connector.
Check the Downloads page for an example datasheet so you can check if your display is compatible. All Adafruit 40-pin TFT TTL displays work, we do not guarantee any other displays work.
In fact, if you connect a display that does not match the right pinout, you could easily fry the display if the 20V backlight pin ends up connected to a logic pin!
To connect, gently pull on the two black 'ears' on the FPC connector, and plug in the display so the gold/silver metalic pins are facing 'up' away from the PCB.
Update & Upgrade
Start by updating and upgrading your Raspberry Pi to the latest software.
sudo apt-get update
sudo apt-get upgrade
We want to get the most recent recent kernel and firmware, so run
sudo apt-get install rpi-update
and then
sudo rpi-update
Then reboot with sudo reboot
Install and Try raspi-gpio
To help us debug/make sure we have the right device tree blob, we'll use a tool called raspi-gpio
Install it with
sudo apt-get install raspi-gpio
Then you can run it with
sudo raspi-gpio get
When you run it this time, you'll see the first 'bank' of GPIO pins set to, essentially
GPIO nn: level=1 fsel=0 alt= func=INPUT
Install Device Tree Blob
Now download and install the DPI device tree blob (tip o' the hat to aBUGsworstnightmare) from github by running:
% cd ~ % wget https://raw.githubusercontent.com/adafruit/Adafruit-DPI-Kippah/master/dt-blob.bin % sudo cp dt-blob.bin /boot/
in your Pi's command line, to change directories to the home directory, download the blob, then copy it in /boot
Update configuration
Finally, we'll tell the Pi to use the attached DPI display. The following will work for our 5" and 7" 800x480 displays. Both touch and non-touch displays use the same setup here
Start by editing with
sudo nano /boot/config.txt
and add the following lines at the bottom
# Disable spi and i2c, we need these pins. dtparam=spi=off dtparam=i2c_arm=off # Set screen size and any overscan required overscan_left=0 overscan_right=0 overscan_top=0 overscan_bottom=0 framebuffer_width=800 framebuffer_height=480 # enable the DPI display enable_dpi_lcd=1 display_default_lcd=1 # Enable DPI overlay dtoverlay=dpi24 # set up the size to 800x480 dpi_group=2 dpi_mode=87 # set up the hsync/vsync/clock polarity and format dpi_output_format=454661 # set up the size to 800x480 hdmi_timings=800 0 40 48 88 480 0 13 3 32 0 0 0 60 0 32000000 6
For 4.3" TFT use the following:
# Disable spi and i2c, we need these pins. dtparam=spi=off dtparam=i2c_arm=off # Set screen size and any overscan required overscan_left=0 overscan_right=0 overscan_top=0 overscan_bottom=0 framebuffer_width=480 framebuffer_height=272 # enable the DPI display enable_dpi_lcd=1 display_default_lcd=1 # set up the size to 480x272 dpi_group=2 dpi_mode=87 # set up the hsync/vsync/clock polarity and format dpi_output_format=520197 # set up the size to 480x272 hdmi_timings=480 0 40 48 88 272 0 13 3 32 0 0 0 60 0 32000000 3
This sets up the screen, if you ever want to temporarily 'undo the DPI Hat install' just delete these lines
enable_dpi_lcd=1
display_default_lcd=1
To finish installation, just run sudo reboot
Touch screen support
If you have a DPI HAT with touchscreen circuitry installed and a touch-screen display, you can easily use it for touch screen support
A microUSB cable is required (not included) connect it from the MicroUSB connector on the HAT into one of the Pi's USB port
No drivers are required! However, you'll likely want to calibrate the screen. We have a calibration helper python script. Start by installing python-pip and pyusb version 1.0.0b1
sudo apt-get install python-pip sudo pip install pyusb==1.0.0b1
Then grab the code and example gradient
cd ~ wget http://adafru.it/ar1100py mv ar1100py ar1100.py wget http://adafruit-download.s3.amazonaws.com/gradient800x480.jpg
If you are running it on a 5" display, continue as is.
If you are running it on a 7" display, edit with nano ar1100.py and change this line:
writeeeprom = CALIBRATED_5IN_800x480;
to
writeeeprom = CALIBRATED_7IN_800x480;
Then run the calibrator with:
cd ~ chmod +x ar1100.py sudo python ar1100.py
Its normal for the first time you run it, it will complain "Couldn't find generic either" just run it again!
Just hit the up arrow on your keyboard and return, to rerun sudo python ar1100.py
This time it will continue, program the AR1100 with the calibration data, and give you a rainbow display.
When done, hit Escape on your keyboard