bigtreetech / TFT35-SPI

45 stars 5 forks source link

TFT35 SPI V1.2 always white screen no working display #8

Open Tony-g80 opened 1 year ago

Tony-g80 commented 1 year ago

i received my BTT PI and TFT35 SPI today and have managed to get the pi all setup, however no matter what i cannot get my tft35 spi display to show anything other than a white screen.

i can use a browser to view the klipper landing page for the pi and i can SSH into it so i know its working.

i followed bigtreetech's instructions for enabling the display in the board.env file and enabled spidev v1.2 but i cannot get this didplay to work even though biqu state the diplay works with the btt pi but right now it doesnt and i cant seem to find any real help to solve the issue.

my pi is running the current CB1 image v2.3.1 but im now sat here with a glaring white touchscreen that i cant use and cant find a solution.

TmmcHero commented 1 year ago

i am having the same issue, running cb1 with current OS release and on a Manta-m4p only getting the white screen. it looks like the like the ILI9488 driver isnt available with the OS, and neither the SPI or the Touch drivers are listed with lsmod. tried with the io2can module and without

dury10 commented 1 year ago

Hi i have the same problem, white screen when i connect my TFT35 SPI V2.1 to my Manta M4p + CB1

kingtricky commented 1 year ago

Im also having the same issue. Manta m8p + cb1. Ive tried a manta m8p v1 and v1.1 and two different tft35 spi screens and ive got the exact same issue. White screen that flashes and sometimes shows weird static.

dury10 commented 1 year ago

solved the problem

i had to install the latest releas for the CB1

https://github.com/bigtreetech/CB1/releases/download/V2.3.2/CB1_Debian11_Klipper_kernel5.16_20230303.img.xz

and to add this

/boot/BoardEnv.txt look like this

bootlogo=true
overlay_prefix=sun50i-h616

## 'sun50i-h616-biqu-sd' for CB1, 'sun50i-h616-biqu-emmc' for CB1 eMMC version
fdtfile=sun50i-h616-biqu-sd

## default 'display' for debug, 'serial' for /dev/ttyS0
console=display

## Specify HDMI output resolution (eg. extraargs=video=HDMI-A-1:800x480-24@60)
#extraargs=video=HDMI-A-1:1024x600-24@60

## uncomment for ws2812
#overlays=ws2812

## uncomment for i2c-gpio, pwm3, disable uart0 for pwm3
#overlays=light

## uncomment for TFT35_SPI screen
overlays=tft35_spi mcp2515

## uncomment MCP2515 spi to canbus module
#overlays=mcp2515

## uncomment to release 'spidev0.0' to user space
#overlays=spidev0_0

## uncomment to release 'spidev1.0' to user space
#overlays=spidev1_0

## uncomment to release 'spidev1.1' to user space
#overlays=spidev1_1

## uncomment to release 'spidev1.2' to user space
#overlays=spidev1_2

## uncomment to set 'PH10' for IR
#overlays=ir

## write the config after the 'overlays' and separate it with a space when multiple functions are enabled
#overlays=disable_uart0 pwm ws2812 light tft35_spi mcp2515 spidev0_0 spidev1_0 spidev1_1 spidev1_2 ir

#------------------------------------------------#
rootdev=UUID=680f8206-1a5c-4dd7-b39f-1229d5017302
rootfstype=ext4

`

Later edit: If after restarting the printer the mcu no longger connect to the mcu you need to edit some line

edit what you will find here Check klipper.env file in the printer_data/systemd it should look like this

KLIPPER_ARGS="/home/biqu/klipper/klippy/klippy.py /home/biqu/printer_data/config/printer.cfg -l /home/biqu/printer_data/logs/klippy.log -a /tmp/klippy_uds"
kingtricky commented 1 year ago

Thats the exact same version i installed last week and ive still got the white screen issue. Ill have to check my boards.env

I see your boards.env has mcp2515 after overlays=tft35_spi. Is that a typo?

kingtricky commented 1 year ago

Update: i changed my cb1 from the version 2.1 to the 2.2 and everything instantly worked.

3DPrintingGeek commented 11 months ago

@dury10 That saved the day! I was almost sending back that display. @kingtricky It seems the msp2515 is not needed. I wonder if it will be evaluated at all at this point, since everything's workin like a charme after removing that part.

PepinhoDD commented 11 months ago

I am using the Btt tft35 spi on a p14b adapter board with cb1 and io2can. On the io2can board is a switch (cm4 or cb1). My board was by default at cm4, after toggling to cb1, my white screen passed. May be this will help you.

DrKlipper commented 9 months ago

Hi, had the same issue that the display stays white. I figured out that you can´t have Display and IR enabled at the same time. As soon as I enable IR, the display is frozen (or stays white when you recycle power).

3DPrintingGeek commented 9 months ago

Hi, had the same issue that the display stays white. I figured out that you can´t have Display and IR enabled at the same time. As soon as I enable IR, the display is frozen (or stays white when you recycle power).

I think you can. The trick is that you only can have one overlays line, which has to contain all overlays you need, separated by a space. So for having the display and IR receiver both working, try:

overlays=tft35_spi ir

Hope it helps!

killrob commented 6 months ago

Hi all, i'm actually on V2.3.3 of CB1, all packages are updated, Klipper, Moonraker, Fluidd, KlipperScreen, in all the logs there is no error at all. KlipperScreen service is up and running. [ 10.177] Current Operating System: Linux BTT-CB1 5.16.17-sun50iw9 #2.3.3 SMP Wed Jul 12 11:07:49 CST 2023 aarch64 Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,072 [printer.py:reinit()] - Klipper version: v0.12.0-25-g99d7af87 Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,072 [printer.py:reinit()] - # Extruders: 1 Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,073 [printer.py:reinit()] - # Temperature devices: 2 Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,073 [printer.py:reinit()] - # Fans: 2 Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,073 [printer.py:reinit()] - # Output pins: 1 Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,073 [printer.py:reinit()] - # Leds: 0 Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,096 [KlippyRest.py:_do_request()] - Sending request to http://127> Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,098 [KlippyWebsocket.py:object_subscription()] - Sending printer.> Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,371 [KlippyRest.py:_do_request()] - Sending request to http://127> Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,398 [KlippyRest.py:_do_request()] - Sending request to http://127> Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,423 [printer.py:init_temp_store()] - Temp store: ['heater_bed', '> Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,444 [KlippyRest.py:_do_request()] - Sending request to http://127> Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,446 [screen.py:init_tempstore()] - Temperature store size: 1200 Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,447 [files.py:initialize()] - Gcodes path: /home/biqu/titan1_data> Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,448 [KlippyWebsocket.py:get_file_list()] - Sending server.files.l> Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,449 [screen.py:init_printer()] - Printer initialized Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,450 [printer.py:change_state()] - Changing state from 'disconnect> Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,451 [printer.py:change_state()] - Adding callback for state: star> Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,810 [printer.py:change_state()] - Changing state from 'startup' t> Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,811 [printer.py:change_state()] - Adding callback for state: ready Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,818 [screen.py:show_panel()] - Reinitializing panel Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,941 [main_menu.py:__init__()] - ### Making MainMenu Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,954 [main_menu.py:add_device()] - Adding device: extruder Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,964 [main_menu.py:add_device()] - Adding device: heater_bed Dec 09 18:15:19 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:19,975 [main_menu.py:add_device()] - Adding device: temperature_fan > Dec 09 18:15:20 BTT-CB1 KlipperScreen-start.sh[1098]: 2023-12-09 18:15:20,034 [screen.py:attach_panel()] - Current panel hierarchy: main_me>

I see no error but my TFT35SPI is all white this is my BoardEnv BoardEnv.txt

i do not use canbus i'm out of ideas

killrob commented 6 months ago

for everyone intrested, i've solved in this way: in BoardEnv overlays=tft35_spi25 set speed at 25000 instead of 50000 commented

overlays=spidev1_2

added Identifier ""

to dpms.conf in /etc/X11/xorg.conf.d/

saved all, rebooted and now works

yetimc commented 6 months ago

sorted it i disabled default display

default 'display' for debug, 'serial' for /dev/ttyS0

console=display

having the ir or anything othe thank lights unchecked makes it jump back to hdmi? hope this helps some.

gerrrciu commented 6 months ago

Try only "overlays=tft35_spi spidev0_0". Uncomment every other "overlays=spidev" It worked for me, screen and touch work great IMG_20231229_085221

KevinSspine commented 1 month ago

Hi! I updated the Btt pi to the new V2.3.4 version and I updated klipperscreen to get rid of the ghost touch problem in the tft35 but now the display stays white no matter what I do. I don't like to change back to the older version because the random touch inputs stopped some of my prints. Any recommendations?