Adafruit is open and shipping! Let's build back better, together!
0

7.0" TFT Display Installation
Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.

7.0" TFT Display Installation

by rbingham on Thu Nov 12, 2020 12:37 pm

Quick question about getting the 7" TFT display (https://www.adafruit.com/product/2353) working. I'm using an RPi with the DPI display kippah (https://www.adafruit.com/product/2454), and after following the setup instructions for the kippah I'm getting weird behavior. When I reboot the display, it shows the Raspbian welcome/startup screen correctly on the display, but once the system is fully started the display just shows blank white. Is this a driver/installation issue or a backlight thing? Unsure of where to start fixing.

rbingham
 
Posts: 5
Joined: Thu Nov 12, 2020 12:34 pm

Re: 7.0" TFT Display Installation

by mikeysklar on Fri Nov 13, 2020 10:26 pm

@rbingham,

Are you running the current up Raspbian with the packages up to date?

Please post your /boot/config.txt here.

Are you setup to boot into X-Windows (using raspi-config to control this). If so what resolution is set under raspi-config?

Is there another monitor plugged?

Which model of Raspberry Pi?

mikeysklar
 
Posts: 2389
Joined: Mon Aug 01, 2016 8:10 pm

Re: 7.0" TFT Display Installation

by rbingham on Mon Nov 30, 2020 3:31 pm

Hey Mikey - sorry for the slow reply, this got lost in my email.

I'm using a Raspberry Pi 3B, and I completed the installation tutorial for the kippah product, including the steps where you update the OS, culminating in "sudo rpi-update". I assume this would fully update my system to current versions and packages.

There is no other monitor plugged in, though I am viewing the system through VNC Viewer (the problem persists even when VNC is not on/in use).

I don't see options to specifically control XWindows in raspi-config (maybe I'm confused about what XWindows would be called there?). The boot/login option is set to "B4 Desktop Autologin", and I also tried setting it to "B2 Console Autologin", but this just locks me out from seeing the display through VNC until I reset it via SSH.

The display was initially set to 1280x720, but I've tried setting it to every other resolution option and rebooting, and none of the available resolutions work. Could this be because the TFT display is 5:3 ratio, which doesn't match any of the options? Not sure how to pick the right option in raspi-config in that case.

My impression was that the changes made to /boot/config.txt in the installation tutorial were supposed to fix this possible resolution issue. I changed my file to match that in the tutorial by adding the requisite lines. The full text of the file is now:

"
# For more options and information see
# http://rpf.io/config.txt
# Some settings may impact device functionality. See link above for details

# uncomment if you get no picture on HDMI for a default “safe” mode
# I’ve tried uncommenting this and it changes nothing
#hdmi_safe=1

# uncomment this if your display has a black border of unused pixels visible
# and your display can output without overscan
#disable_overscan=1

# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16

# uncomment to force a console size. By default it will be display’s size minus
# overscan.
#framebuffer_width=1280
#framebuffer_height=720

# uncomment if hdmi display is not detected and composite is being output
# I’ve tried with this toggled on and off
#hdmi_force_hotplug=1

# uncomment to force a specific HDMI mode (this will force VGA)
# I’ve tried with these enabled as well
#hdmi_group=2
#hdmi_mode=82

#uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
# tried this toggle
#hdmi_drive=2

# uncomment to increase signal to HDMI, if you have interference, blanking, or
# no display
# tried this toggle
#config_hdmi_boost=4

# uncomment for composite PAL
#sdtv_mode=2

#uncomment to overclock the arm. 700 MHz is the default.
#arm_freq=800

# Uncomment some or all of these to enable the optional hardware interfaces
#dtparam=i2c_arm=on
#dtparam=i2s=on
#dtparam=spi=on

# Uncomment this to enable infrared communication.
#dtoverlay=gpio-ir,gpio_pin=17
#dtoverlay=gpio-ir-tx,gpio_pin=18

# Additional overlay and parameters are documented /boot/overlays/README

# Enable audio (loads snd_bcm2835)
dtparam=audio=on

#[pi4]
# Enable DRM VC4 V3D driver on top of the dispmanx display stack
# tried with these toggled
#dtoverlay=vc4-fkms-v3d
#max_framebuffers=2

[all]
#dtoverlay=vc4-fkms-v3d
gpu_mem=128

#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

# 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
"

Let me know if there's any other info that might help, and thanks so much for your time.

rbingham
 
Posts: 5
Joined: Thu Nov 12, 2020 12:34 pm

Re: 7.0" TFT Display Installation

by rbingham on Mon Nov 30, 2020 3:42 pm

PS: I just compared my current config file to the one on the product Github, and commented out the "gpu_mem=128" line so that my file exactly matches the one on Github. Still not working.

rbingham
 
Posts: 5
Joined: Thu Nov 12, 2020 12:34 pm

Re: 7.0" TFT Display Installation

by mikeysklar on Mon Nov 30, 2020 7:09 pm

Please run the follow commands so we can confirm you are Pi is up to date. You can enclose the command output in CODE brackets to keep things neat.

Code: Select all | TOGGLE FULL SIZE
cat /etc/os-release
uname -a


Your /boot/config.txt looks good. Did you donwload the blob into the /boot bin?

Code: Select all | TOGGLE FULL SIZE
cd ~
wget https://raw.githubusercontent.com/adafruit/Adafruit-DPI-Kippah/master/dt-blob.bin
sudo cp dt-blob.bin /boot/


The raspi-config being set to boot Desktop Autologin in the correct option. That is booting into a graphical user login.

When you connect into the Pi via VNC are you getting the correct resolution of 800x480 that this display runs at? Yes, the /boot/config.txt should be setting that appropriately for you, but I don't know if raspi-config can also override that in any way. I thought it was writing to the same file. It might make sense to move your kernel /boot/config.txt out of the way and try just using the text we give for a boot and see if that works.

Code: Select all | TOGGLE FULL SIZE
# 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

# 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


Note the display can be slow to wake up. Be patient when it boots to see it.

mikeysklar
 
Posts: 2389
Joined: Mon Aug 01, 2016 8:10 pm

Re: 7.0" TFT Display Installation

by rbingham on Tue Dec 01, 2020 1:37 pm

Hey Mikey - thanks for the quick reply.

Running "cat /etc/os-release" gives the following output:
"
PRETTY_NAME="Raspbian GNU/Linux 10 (buster)"
NAME="Raspbian GNU/Linux"
VERSION_ID="10"
VERSION_CODENAME=buster
ID=raspbian
ID_like=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
"

Running "uname -a" gives:
"Linux ixe00 5.4.75-v7+ #1367 SMP Mon Nov 9 15:03:59 GMT 2020 armv71 GNU/Linux"

I believe that I downloaded the blob as part of the tutorial, but I ran the provided lines again to be sure. No change, and I've given it several minutes of clicking around through VNC to try and wake up the display.

When the VNC Viewer window opens, my screenshot tool measures the window size as 800x480, which seems to indicate that the resolution setting has worked. This also makes sense that this was working already, because when I was testing out all the different raspi-config resolution settings yesterday, they didn't seem to change anything about the display.

Is there some way that this could be a hardware thing about how I've plugged things in? The kippah is slotted into all the GPIO pins, and the TFT is plugged all the way into the kippah. Not sure if theres some other switch or button to play around with...

Let me know what info I can provide that would help debug.

rbingham
 
Posts: 5
Joined: Thu Nov 12, 2020 12:34 pm

Re: 7.0" TFT Display Installation

by mikeysklar on Wed Dec 02, 2020 2:39 pm

I noticed your 'dtoverlay' line is commented out in the /boot/config.txt

Could you try uncommenting the line and let's see if it makes a difference:

Code: Select all | TOGGLE FULL SIZE
dtoverlay=vc4-fkms-v3d


Also please try these variations with reboots in between if the above does not take:

Code: Select all | TOGGLE FULL SIZE
dtoverlay=vc4-kms-v3d

Code: Select all | TOGGLE FULL SIZE
dtoverlay=dpi24

mikeysklar
 
Posts: 2389
Joined: Mon Aug 01, 2016 8:10 pm

Re: 7.0" TFT Display Installation

by rbingham on Wed Dec 02, 2020 8:50 pm

Hey Mikey,

Thanks again for taking the time to respond.

Tried all three of those dtoverlay options, and saw no change with any of them. Must be something else (I also waited for about a minute with each one to see if it would wake up from all-white to operational, and nothing doing).

Not sure if this is helpful, but I'm seeing some slightly weird reboot behavior. When I reboot with "sudo reboot", the only change to the screen is that it flickers slightly (truly barely noticeable). However, when I manually power cycle the Pi, the screen goes completely off then shows the attached image as it's powering up. Could it be that "sudo reboot" is not actually fully restarting the kippah or loading the new config options? That would make most of my tests invalid, as I've been checking config options with sudo reboot.
Attachments
IMG_4732.jpg
Power cycle boot display
IMG_4732.jpg (638.14 KiB) Viewed 10 times

rbingham
 
Posts: 5
Joined: Thu Nov 12, 2020 12:34 pm

Re: 7.0" TFT Display Installation

by mikeysklar on Thu Dec 03, 2020 3:42 pm

@rbingham,

Interesting observation. I would have thought a soft 'reboot' would be sufficient, but you might be right that there is a lower level initialization happening with the Pi being reset.

Do you think there are any tests worth retrying using a hard reset?

I found an interesting thread on the Pi forum and wanted to ask you to try this configuration. You might need to also grab the dpi24.dtbo they mentioned, but this thread is old enough that might already be shipping.

Code: Select all | TOGGLE FULL SIZE
# For more options and information see
# http://rpf.io/configtxt
# Some settings may impact device functionality. See link above for details

# uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1

# uncomment this if your display has a black border of unused pixels visible
# and your display can output without overscan
disable_overscan=1

# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16

# uncomment to force a console size. By default it will be display's size minus
# overscan.
#framebuffer_width=1280
#framebuffer_height=720

# uncomment if hdmi display is not detected and composite is being output
#hdmi_force_hotplug=1

# uncomment to force a specific HDMI mode (this will force VGA)
#hdmi_group=1
#hdmi_mode=1

# uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
#hdmi_drive=2

# uncomment to increase signal to HDMI, if you have interference, blanking, or
# no display
#config_hdmi_boost=4

# uncomment for composite PAL
#sdtv_mode=2

#uncomment to overclock the arm. 700 MHz is the default.
#arm_freq=800

# Uncomment some or all of these to enable the optional hardware interfaces
#dtparam=i2c_arm=on
#dtparam=i2s=on
#dtparam=spi=on

# Uncomment this to enable infrared communication.
#dtoverlay=gpio-ir,gpio_pin=17
#dtoverlay=gpio-ir-tx,gpio_pin=18

# Additional overlays and parameters are documented /boot/overlays/README

# Enable audio (loads snd_bcm2835)
#dtparam=audio=on

#[pi4]
# Enable DRM VC4 V3D driver on top of the dispmanx display stack
#dtoverlay=vc4-fkms-v3d
#max_framebuffers=2

[all]
#dtoverlay=vc4-fkms-v3d

######################################################################
# Aggiunto da P.A. per gestione LCD 7"
######################################################################

# Ignora l'hotplug del cavo HDMI per evitare un ritardo all'avvio
hdmi_ignore_hotplug=1

# Disabilita le periferiche SPI e I2C nel bank0
#dtparam=spi=off
tparam=i2c1=on
dtparam=i2c_arm=on

# Inizializza la porta seriale per il debug sui pin GPIO32, GPIO33
#force_turbo=1
#dtoverlay=uart1,txd1_pin=32,rxd1_pin=33

# Attivo la periferica I2C per il touchscreen sui pin GPIO44 e GPIO45
#dtparam=i2c1=on
#dtoverlay=i2c1,sda1_pin=44,scl1_pin=45,pin_func=6
dtoverlay=i2c1,pins_44_45
dtoverlay=goodix-7.btbo

# Abilito la porta DPI per interfacciarmi con il Display
dtoverlay=dpi24
overscan_left=0
overscan_right=0
overscan_top=0
overscan_bottom=0
#Vertical size display
#framebuffer_width=600
#framebuffer_height=1024
#Horizontal size display
#framebuffer_width=1024
#framebuffer_height=600
enable_dpi_lcd=1
display_default_lcd=1
dpi_group=2
dpi_mode=87
dpi_output_format=0x047027
dpi_timings=1024 0 40 48 88 600 0 13 3 32 0 0 0 60 0 32000000 6
#Rotate display 270 degree
#display_lcd_rotate=3

[all]
dtoverlay=vc4-kms-v3d

mikeysklar
 
Posts: 2389
Joined: Mon Aug 01, 2016 8:10 pm

Please be positive and constructive with your questions and comments.