KlipperScreen / KlipperScreen

GUI for Klipper
https://klipperscreen.github.io/KlipperScreen/
GNU Affero General Public License v3.0
1.08k stars 355 forks source link

Touch did not work after Update (OS related, not caused by KS) #928

Closed Andi3D-tech closed 1 year ago

Andi3D-tech commented 1 year ago

I use the BTT PiTFT50 without problems. After the update, i can see klipperscreen on the display, but touch did not work anymore. I use MainsailOS 32bit Bullseye. Klipper v0.11.0-128 Moonraker v0.8.0-29 Mainsail v2.5.0

AP4130 commented 1 year ago

Same issue here, with the same hardware (on an RPi 4). I have verified the touchscreen touch function works without issue on a different Pi running another OS.

There appears to be a building Reddit thread on the issue, too: https://www.reddit.com/r/klippers/comments/11m0678/klipperscreen_touch_stopped_working/?utm_source=share&utm_medium=ios_app&utm_name=iossmf

Andi3D-tech commented 1 year ago

Follow this and it will work again!!!

https://klipperscreen.readthedocs.io/en/latest/Troubleshooting/#touch-not-working-on-debian-bullseye

AP4130 commented 1 year ago

Confirmed on mine as well! I'm an idiot- I saw those steps on the Klipperscreen site, but didn't think to try because my screen had been working without issue on Bullseye previously.

Andi3D-tech commented 1 year ago

Confirmed on mine as well! I'm an idiot- I saw those steps on the Klipperscreen site, but didn't think to try because my screen had been working without issue on Bullseye previously.

You are not an idiot!!! It works on mine as well without problems. Dont know what happens during the update...

hmouridsen commented 1 year ago

I've just reinstalled Mainsail and Klipperscreen - witch means upgrade to Bullseye as well.

Does this issue also freeze up the display? Not just touch is unresponsive but screen freeze up also 😕

My screen is the BTT tft50

virtualcomputerguy commented 1 year ago

Well that was fun. I did not have the option to select G2 from the pi config. Guess I will look at that later. Had to manually edit the - /boot/config.txt

From ssh - sudo nano /boot/config.txt You can then find the line - dtoverlay=vc4-kms-v3d change it to dtoverlay=vc4-fkms-v3d

Save the file and reboot everything. Touch screen is working.

Seems like this is from a bad update...?? Mine was working until a small update yesterday then it all went bad. Had to reload Klipper and then get the touch screen working again.

dctrjones commented 1 year ago

I had a similar issue after performing all updates on my RPI (Debian Bullseye) through Mainsail (including OS update). The screen is a Waveshare 4.3", Klipper screen displays correctly but now all touch inputs only work on the left side of the screen.

It's as if the touch sensitive area has been scaled by 0.5 on X. For example to click the far right button on the screen I have to click just left of the centre of the screen.

I went through the troubleshooting steps using raspi-config, but didn't find the "FKMS" option there so had to edit the /boot/config.txt file to add the appropriate dtoverlay=vc4-fkms-v3d

To correct the "half screen" touch input I followed the instructions for ROTATING the screen here. To find the touch input device I ran:

DISPLAY=:0 xinput

With the following results: ⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎜ ↳ raspberrypi-ts id=7 [slave pointer (2)] ⎣ Virtual core keyboard id=3 [master keyboard (2)] ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)] ↳ UVC Camera (046d:0825) id=6 [slave keyboard (3)]

But instead of INVERTING the touch area I had to scale it using using the following command:

DISPLAY=:0 xinput set-prop 'raspberrypi-ts' 'Coordinate Transformation Matrix' 0.5 0 0 0 1 0 0 0 1

NOTE: in the above command 'raspberry-ts' may NOT be the same on your system.

To make that change persistent after a reboot, I followed the instructions listed at the bottom of the article, editing the /usr/share/X11/xorg.conf.d/40-libinput.conf file. This seems to have fixed my issue, for the most part, not perfectly accurate when using the smaller keyboard on the screen, but passable for the bigger buttons.

Get0ffMyLawnV2 commented 1 year ago

Thank you very much for this. Been at this for far too long and this worked for me. I really appreciate it! Edit: To be more specific, I'm running a BTT TFT50 and the buttons seem to line up just fine now with touch.

dctrjones commented 1 year ago

Thank you very much for this. Been at this for far too long and this worked for me. I really appreciate it! Edit: To be more specific, I'm running a BTT TFT50 and the buttons seem to line up just fine now with touch.

Glad it helped! I was surprised by the change in the touchscreen after updating Bullseye.

Eclypse3D commented 1 year ago

Yeah my bud has the same issue with his BTT TFT50 V2, he got the touch working but everything is off matrix wise. I have 3 other units myself two Pi based BTT TFT50 V2 and a TFT43 on my trident and my SPI TFT35 on my other Trident. The SPI screen works fine but now it does not wake up from sleep till the print ends then the touch screen no longer works so that is a slightly different behavior to the DSI screens. I have not updated the other 2.4 or Trident as they have been offline for a few days while I finished building the Trident with eh SPI screen, so now I am not going to touch those two update wise I think till there is a functioning patch fix for it. :) On the SPI screen I disabled DPMS or whatever and extended the time to go to sleep mode.

harlock3 commented 1 year ago

New install BTT PD5 with CM4 (emmc version). Touch screen doesn't work. Printer isn't connected yet but I assume screen should respond to touch when I press on kipper restart, firmware restart or Menu icons. Tried the fix mentioned but no change. Using mainsail; all software installs (pi, klipper, mainsail, etc) on current versions

Eclypse3D commented 1 year ago

Simply comment out the kms overlay line altogether if changing it does not work.

harlock3 commented 1 year ago

Simply comment out the kms overlay line altogether if changing it does not work.

no change

Nephiel commented 1 year ago

For the record, I got this 5-inch DSI touchscreen to work thanks to the information in this issue.

  1. I did need to set dtoverlay=vc4-fkms-v3d in /boot/config.txt by hand, since the raspi-config menu did not show the right option. Without this, the touch input does not work, and the error rpi_touchscreen_attiny 10-0045: Failed to read REG_ID reg: -5 pops up in dmesg. After a reboot, KlipperScreen did not start,
  2. I did need to sudo bash -c "echo needs_root_rights=yes>>/etc/X11/Xwrapper.config" as per the troubleshooting docs, otherwise KlipperScreen didn't start and the error xf86OpenConsole: Cannot open virtual console 2 (Permission denied) popped up in /var/log/Xorg.0.log.
  3. I did need to set the calibration matrix using echo 'ACTION=="add", ATTRS{name}=="raspberrypi-ts", ENV{LIBINPUT_CALIBRATION_MATRIX}="0.5 0 0 0 1 0 0 0 1"' | sudo tee /etc/udev/rules.d/51-touchscreen.rules as per dctrjones' comment and the hardware docs (EDITED: just set max_framebuffers=1 in /boot/config.txt instead, see this comment), otherwise the touch input area was scaled to 50% horizontally and only responded to touches on the left half of the screen.
    • I did not need to enable I2C nor SPI for either the screen or the touch input to work.
dctrjones commented 1 year ago

Just saw this solution to the touch input offset on the Klipper Discord

To keep the info in one place, the solution is to edit your /boot/config.txt and change: max_framebuffers=2 to max_framebuffers=1

Haven't tried it yet, but looks like a simpler and less intrusive fix, rather than editing the calibration matrix.

UPDATE: This fix worked in my situation!

KennyBeaudoin commented 1 year ago

Follow this and it will work again!!!

https://klipperscreen.readthedocs.io/en/latest/Troubleshooting/#touch-not-working-on-debian-bullseye

it doesnt even show FKMS anymore so i dont know how i can fix it .. and if i got to the boot config and edit that file to add FKMS line well the screen is all white then

KennyBeaudoin commented 1 year ago

Follow this and it will work again!!!

https://klipperscreen.readthedocs.io/en/latest/Troubleshooting/#touch-not-working-on-debian-bullseye

it does not even show the FKMS anymore in the new updates.... and if you manually add it goes to a blank screen

KennyBeaudoin commented 1 year ago

pi@DELTABUSTER:~ $ dmesg [ 0.000000] Booting Linux on physical CPU 0x0 [ 0.000000] Linux version 6.1.21+ (dom@buildbot) (arm-linux-gnueabihf-gcc-8 ( Ubuntu/Linaro 8.4.0-3ubuntu1) 8.4.0, GNU ld (GNU Binutils for Ubuntu) 2.34) #164 2 Mon Apr 3 17:19:14 BST 2023 [ 0.000000] CPU: ARMv6-compatible processor [410fb767] revision 7 (ARMv7), cr =00c5387d [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT nonaliasing instruc tion cache [ 0.000000] OF: fdt: Machine model: Raspberry Pi Zero W Rev 1.1 [ 0.000000] random: crng init done [ 0.000000] Memory policy: Data cache writeback [ 0.000000] Reserved memory: created CMA memory pool at 0x0bc00000, size 256 MiB [ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id share d-dma-pool [ 0.000000] Zone ranges: [ 0.000000] Normal [mem 0x0000000000000000-0x000000001bffffff] [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000000000000-0x000000001bffffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001bffffff] [ 0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768 [ 0.000000] pcpu-alloc: [0] 0 [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 113680 [ 0.000000] Kernel command line: coherent_pool=1M 8250.nr_uarts=1 snd_bcm2835 .enable_headphones=0 snd_bcm2835.enable_hdmi=1 video=HDMI-A-1:480x320M@59D smsc9 5xx.macaddr=B8:27:EB:6E:41:82 vc_mem.mem_base=0x1ec00000 vc_mem.mem_size=0x20000 000 console=ttyS0,115200 console=tty1 root=PARTUUID=81272009-02 rootfstype=ext4 fsck.repair=yes rootwait [ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes, l inear) [ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes, li near) [ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off [ 0.000000] Memory: 177016K/458752K available (8985K kernel code, 1450K rwdat a, 2772K rodata, 432K init, 589K bss, 19592K reserved, 262144K cma-reserved) [ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1 [ 0.000000] ftrace: allocating 33370 entries in 98 pages [ 0.000000] ftrace: allocated 98 pages with 3 groups [ 0.000000] trace event string verifier disabled [ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16 [ 0.000005] sched_clock: 32 bits at 1000kHz, resolution 1000ns, wraps every 2 147483647500ns [ 0.000068] clocksource: timer: mask: 0xffffffff maxcycles: 0xffffffff, max idle_ns: 1911260446275 ns [ 0.000152] bcm2835: system timer (irq = 27) [ 0.000970] Console: colour dummy device 80x30 [ 0.001518] printk: console [tty1] enabled [ 0.001602] Calibrating delay loop... 697.95 BogoMIPS (lpj=3489792) [ 0.060288] pid_max: default: 32768 minimum: 301 [ 0.060503] LSM: Security Framework initializing [ 0.060801] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linea r) [ 0.060875] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear) [ 0.062373] cgroup: Disabling memory control group subsystem [ 0.062776] CPU: Testing write buffer coherency: ok [ 0.064317] cblist_init_generic: Setting adjustable number of callback queues . [ 0.064391] cblist_init_generic: Setting shift to 0 and lim to 1. [ 0.064624] cblist_init_generic: Setting shift to 0 and lim to 1. [ 0.064929] Setting up static identity map for 0x8220 - 0x8258 [ 0.066189] devtmpfs: initialized [ 0.078758] VFP support v0.3: implementor 41 architecture 1 part 20 variant b rev 5 [ 0.079148] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, ma x_idle_ns: 19112604462750000 ns [ 0.079236] futex hash table entries: 256 (order: -1, 3072 bytes, linear) [ 0.115642] pinctrl core: initialized pinctrl subsystem [ 0.117563] NET: Registered PF_NETLINK/PF_ROUTE protocol family [ 0.120661] DMA: preallocated 1024 KiB pool for atomic coherent allocations [ 0.126987] audit: initializing netlink subsys (disabled) [ 0.128469] thermal_sys: Registered thermal governor 'step_wise' [ 0.129239] hw-breakpoint: found 6 breakpoint and 1 watchpoint registers. [ 0.129327] hw-breakpoint: maximum watchpoint size is 4 bytes. [ 0.129569] Serial: AMBA PL011 UART driver [ 0.130627] audit: type=2000 audit(0.120:1): state=initialized audit_enabled= 0 res=1 [ 0.137501] bcm2835-mbox 2000b880.mailbox: mailbox enabled [ 0.160709] raspberrypi-firmware soc:firmware: Attached to firmware from 2023 -03-17T10:52:42, variant start [ 0.170734] raspberrypi-firmware soc:firmware: Firmware hash is 82f3750a65fad ae9a38077e3c2e217ad158c8d54 [ 0.221238] kprobes: kprobe jump-optimization is enabled. All kprobes are opt imized if possible. [ 2.409473] bcm2835-dma 20007000.dma: DMA legacy API manager, dmachans=0x1 [ 2.412062] SCSI subsystem initialized [ 2.412551] usbcore: registered new interface driver usbfs [ 2.412692] usbcore: registered new interface driver hub [ 2.412811] usbcore: registered new device driver usb [ 2.413157] usb_phy_generic phy: supply vcc not found, using dummy regulator [ 2.413473] usb_phy_generic phy: dummy supplies not allowed for exclusive req uests [ 2.414125] pps_core: LinuxPPS API ver. 1 registered [ 2.414184] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giome tti giometti@linux.it [ 2.414262] PTP clock support registered [ 2.416907] clocksource: Switched to clocksource timer [ 2.539638] VFS: Disk quotas dquot_6.6.0 [ 2.539827] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes) [ 2.540071] FS-Cache: Loaded [ 2.540464] CacheFiles: Loaded [ 2.558427] NET: Registered PF_INET protocol family [ 2.558794] IP idents hash table entries: 8192 (order: 4, 65536 bytes, linear ) [ 2.561303] tcp_listen_portaddr_hash hash table entries: 1024 (order: 0, 4096 bytes, linear) [ 2.561424] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear) [ 2.561497] TCP established hash table entries: 4096 (order: 2, 16384 bytes, linear) [ 2.561613] TCP bind hash table entries: 4096 (order: 3, 32768 bytes, linear) [ 2.561755] TCP: Hash tables configured (established 4096 bind 4096) [ 2.561914] UDP hash table entries: 256 (order: 0, 4096 bytes, linear) [ 2.561987] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes, linear) [ 2.562374] NET: Registered PF_UNIX/PF_LOCAL protocol family [ 2.563303] RPC: Registered named UNIX socket transport module. [ 2.563378] RPC: Registered udp transport module. [ 2.563410] RPC: Registered tcp transport module. [ 2.563438] RPC: Registered tcp NFSv4.1 backchannel transport module. [ 2.564449] armv6-pmu arm-pmu: hw perfevents: no irqs for PMU, sampling event s not supported [ 2.564560] hw perfevents: enabled with armv6_1176 PMU driver, 3 counters ava ilable [ 2.568952] Initialise system trusted keyrings [ 2.569427] workingset: timestamp_bits=14 max_order=17 bucket_order=3 [ 2.583210] zbud: loaded [ 2.587528] NFS: Registering the id_resolver key type [ 2.587645] Key type id_resolver registered [ 2.587682] Key type id_legacy registered [ 2.587891] nfs4filelayout_init: NFSv4 File Layout Driver Registering... [ 2.587941] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering ... [ 2.590095] Key type asymmetric registered [ 2.590174] Asymmetric key parser 'x509' registered [ 2.590516] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 2 47) [ 2.590573] io scheduler mq-deadline registered [ 2.590610] io scheduler kyber registered [ 2.594926] simple-framebuffer 1eb64000.framebuffer: framebuffer at 0x1eb6400 0, 0x96000 bytes [ 2.595023] simple-framebuffer 1eb64000.framebuffer: format=a8r8g8b8, mode=48 0x320x32, linelength=1920 [ 2.598624] Console: switching to colour frame buffer device 60x40 [ 2.603995] simple-framebuffer 1eb64000.framebuffer: fb0: simplefb registered ! [ 2.612165] Serial: 8250/16550 driver, 1 ports, IRQ sharing enabled [ 2.618609] bcm2835-rng 20104000.rng: hwrng registered [ 2.621043] vc-mem: phys_addr:0x00000000 mem_base=0x1ec00000 mem_size:0x20000 000(512 MiB) [ 2.626301] gpiomem-bcm2835 20200000.gpiomem: Initialised: Registers at 0x202 00000 [ 2.650333] brd: module loaded [ 2.663329] loop: module loaded [ 2.666172] Loading iSCSI transport class v2.0-870. [ 2.670237] usbcore: registered new interface driver smsc95xx [ 2.673831] dwc_otg: version 3.00a 10-AUG-2012 (platform bus) [ 3.405610] Core Release: 2.80a [ 3.407561] Setting default values for core params [ 3.409398] Finished setting default values for core params [ 3.613116] Using Buffer DMA mode [ 3.614960] Periodic Transfer Interrupt Enhancement - disabled [ 3.618545] Multiprocessor Interrupt Enhancement - disabled [ 3.622160] OTG VER PARAM: 0, OTG VER FLAG: 0 [ 3.624104] Dedicated Tx FIFOs mode

[ 3.626882] WARN::dwc_otg_hcd_init:1074: FIQ DMA bounce buffers: virt = cbd04 000 dma = 0x8bd04000 len=9024 [ 3.632286] FIQ FSM acceleration enabled for : Non-periodic Split Transactions Periodic Split Transactions High-Speed Isochronous Endpoints Interrupt/Control Split Transaction hack enabled [ 3.642230] dwc_otg: Microframe scheduler enabled

[ 3.642418] WARN::hcd_init_fiq:457: FIQ on core 0

[ 3.645643] WARN::hcd_init_fiq:458: FIQ ASM at c065d3d8 length 36

[ 3.650436] WARN::hcd_init_fiq:497: MPHI regs_base at dc810000 [ 3.655220] dwc_otg 20980000.usb: DWC OTG Controller [ 3.656943] dwc_otg 20980000.usb: new USB bus registered, assigned bus number 1 [ 3.660194] dwc_otg 20980000.usb: irq 56, io mem 0x00000000 [ 3.663425] Init: Port Power? op_state=1 [ 3.665057] Init: Power Port (0) [ 3.667022] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bc dDevice= 6.01 [ 3.670222] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber= 1 [ 3.673371] usb usb1: Product: DWC OTG Controller [ 3.675000] usb usb1: Manufacturer: Linux 6.1.21+ dwc_otg_hcd [ 3.678235] usb usb1: SerialNumber: 20980000.usb [ 3.680978] hub 1-0:1.0: USB hub found [ 3.682772] hub 1-0:1.0: 1 port detected [ 3.685478] dwc_otg: FIQ enabled [ 3.685506] dwc_otg: NAK holdoff enabled [ 3.685517] dwc_otg: FIQ split-transaction FSM enabled [ 3.685542] Module dwc_common_port init [ 3.686054] usbcore: registered new interface driver usb-storage [ 3.689948] mousedev: PS/2 mouse device common for all mice [ 3.696272] sdhci: Secure Digital Host Controller Interface driver [ 3.699902] sdhci: Copyright(c) Pierre Ossman [ 3.702289] sdhci-pltfm: SDHCI platform and OF driver helper [ 3.707186] ledtrig-cpu: registered to indicate activity on CPUs [ 3.711322] hid: raw HID events driver (C) Jiri Kosina [ 3.713468] usbcore: registered new interface driver usbhid [ 3.717160] usbhid: USB HID core driver [ 3.719392] bcm2835_vchiq 2000b840.mailbox: there is not valid maps for state default [ 3.728274] Initializing XFRM netlink socket [ 3.730613] NET: Registered PF_PACKET protocol family [ 3.733194] Key type dns_resolver registered [ 3.736286] registered taskstats version 1 [ 3.738313] Loading compiled-in X.509 certificates [ 3.757902] uart-pl011 20201000.serial: cts_event_workaround enabled [ 3.761702] 20201000.serial: ttyAMA0 at MMIO 0x20201000 (irq = 81, base_baud = 0) is a PL011 rev2 [ 3.767743] bcm2835-aux-uart 20215040.serial: there is not valid maps for sta te default [ 3.772150] printk: console [ttyS0] disabled [ 3.774249] 20215040.serial: ttyS0 at MMIO 0x20215040 (irq = 53, base_baud = 50000000) is a 16550 [ 3.807725] Indeed it is in host mode hprt0 = 00021501 [ 4.081413] usb 1-1: new high-speed USB device number 2 using dwc_otg [ 4.081586] Indeed it is in host mode hprt0 = 00001101 [ 4.387567] usb 1-1: New USB device found, idVendor=1a40, idProduct=0101, bcd Device= 1.11 [ 4.387604] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0 [ 4.387622] usb 1-1: Product: USB 2.0 Hub [ 4.388722] hub 1-1:1.0: USB hub found [ 4.388858] hub 1-1:1.0: 4 ports detected [ 4.813268] usb 1-1.2: new full-speed USB device number 3 using dwc_otg [ 5.008827] printk: console [ttyS0] enabled [ 5.017029] bcm2835-wdt bcm2835-wdt: Broadcom BCM2835 watchdog timer [ 5.028043] bcm2835-power bcm2835-power: Broadcom BCM2835 power domains drive r [ 5.041320] mmc-bcm2835 20300000.mmcnr: mmc_debug:0 mmc_debug2:0 [ 5.051279] mmc-bcm2835 20300000.mmcnr: DMA channel allocated [ 5.064625] usb 1-1.2: New USB device found, idVendor=1d50, idProduct=606f, b cdDevice= 0.00 [ 5.077085] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber =3 [ 5.088329] usb 1-1.2: Product: FLY-UTOC USB to CAN adapter [ 5.097817] usb 1-1.2: Manufacturer: Mellow. [ 5.104086] usb 1-1.2: SerialNumber: 00290042480000024E534A4D [ 5.127738] sdhost: log_buf @ 9b98a7ae (8bd03000) [ 5.182570] mmc0: sdhost-bcm2835 loaded - DMA enabled (>1) [ 5.195243] of_cfs_init [ 5.201131] of_cfs_init: OK [ 5.208696] Waiting for root device PARTUUID=81272009-02... [ 5.247397] mmc0: host does not support reading read-only switch, assuming wr ite-enable [ 5.262020] mmc0: new high speed SDHC card at address 0001 [ 5.272863] mmcblk0: mmc0:0001 GB1QT 29.8 GiB [ 5.283586] mmcblk0: p1 p2 [ 5.289821] mmcblk0: mmc0:0001 GB1QT 29.8 GiB [ 5.342721] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Q uota mode: none. [ 5.355396] VFS: Mounted root (ext4 filesystem) readonly on device 179:2. [ 5.375162] devtmpfs: mounted [ 5.385339] Freeing unused kernel image (initmem) memory: 432K [ 5.394982] Kernel memory protection not selected by kernel config. [ 5.405039] Run /sbin/init as init process [ 5.411111] with arguments: [ 5.411126] /sbin/init [ 5.411138] with environment: [ 5.411147] HOME=/ [ 5.411158] TERM=linux [ 5.418746] mmc1: new high speed SDIO card at address 0001 [ 6.048642] systemd[1]: System time before build time, advancing clock. [ 6.386836] NET: Registered PF_INET6 protocol family [ 6.396356] Segment Routing with IPv6 [ 6.402209] In-situ OAM (IOAM) with IPv6 [ 6.512317] systemd[1]: systemd 247.3-7+rpi1+deb11u1 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRY PT +GNUTLS +ACL +XZ +LZ4 +ZSTD +SECCOMP +BLKID +ELFUTILS +KMOD +IDN2 -IDN +PCRE2 default-hierarchy=unified) [ 6.546706] systemd[1]: Detected architecture arm. [ 6.572555] systemd[1]: Set hostname to . [ 9.295779] systemd[1]: Queued start job for default target Multi-User System . [ 9.318773] systemd[1]: Created slice system-getty.slice. [ 9.331969] systemd[1]: Created slice system-modprobe.slice. [ 9.346822] systemd[1]: Created slice system-serial\x2dgetty.slice. [ 9.362453] systemd[1]: Created slice system-systemd\x2dfsck.slice. [ 9.377548] systemd[1]: Created slice User and Session Slice. [ 9.390870] systemd[1]: Started Dispatch Password Requests to Console Directo ry Watch. [ 9.406352] systemd[1]: Started Forward Password Requests to Wall Directory W atch. [ 9.423006] systemd[1]: Set up automount Arbitrary Executable File Formats Fi le System Automount Point. [ 9.440412] systemd[1]: Reached target Local Encrypted Volumes. [ 9.454552] systemd[1]: Reached target Paths. [ 9.464450] systemd[1]: Reached target Slices. [ 9.474324] systemd[1]: Reached target Swap. [ 9.489057] systemd[1]: Listening on Syslog Socket. [ 9.500947] systemd[1]: Listening on fsck to fsckd communication Socket. [ 9.515337] systemd[1]: Listening on initctl Compatibility Named Pipe. [ 9.531200] systemd[1]: Listening on Journal Audit Socket. [ 9.545234] systemd[1]: Listening on Journal Socket (/dev/log). [ 9.559898] systemd[1]: Listening on Journal Socket. [ 9.584169] systemd[1]: Listening on udev Control Socket. [ 9.596576] systemd[1]: Listening on udev Kernel Socket. [ 9.609172] systemd[1]: Condition check resulted in Huge Pages File System be ing skipped. [ 9.630490] systemd[1]: Mounting POSIX Message Queue File System... [ 9.687471] systemd[1]: Mounting RPC Pipe File System... [ 9.722173] systemd[1]: Mounting Kernel Debug File System... [ 9.787471] systemd[1]: Mounting Kernel Trace File System... [ 9.817908] systemd[1]: Condition check resulted in Kernel Module supporting RPCSEC_GSS being skipped. [ 9.843685] systemd[1]: Starting Restore / save the current clock... [ 9.886378] systemd[1]: Starting Set the console keyboard layout... [ 9.966358] systemd[1]: Starting Create list of static device nodes for the c urrent kernel... [ 10.054463] systemd[1]: Starting Load Kernel Module configfs... [ 10.139001] systemd[1]: Starting Load Kernel Module drm... [ 10.225237] systemd[1]: Starting Load Kernel Module fuse... [ 10.283473] systemd[1]: Condition check resulted in Set Up Additional Binary Formats being skipped. [ 10.366839] systemd[1]: Starting File System Check on Root Device... [ 10.508809] systemd[1]: Starting Journal Service... [ 10.658523] systemd[1]: Starting Load Kernel Modules... [ 10.701511] fuse: init (API version 7.37) [ 10.813801] systemd[1]: Starting Coldplug All udev Devices... [ 11.036241] systemd[1]: Mounted POSIX Message Queue File System. [ 11.152593] systemd[1]: Mounted RPC Pipe File System. [ 11.250841] systemd[1]: Mounted Kernel Debug File System. [ 11.339578] systemd[1]: Mounted Kernel Trace File System. [ 11.396121] i2c_dev: i2c /dev entries driver [ 11.457374] systemd[1]: Finished Restore / save the current clock. [ 11.557148] systemd[1]: Finished Create list of static device nodes for the c urrent kernel. [ 11.633904] systemd[1]: modprobe@configfs.service: Succeeded. [ 11.717352] systemd[1]: Finished Load Kernel Module configfs. [ 11.773157] systemd[1]: modprobe@drm.service: Succeeded. [ 11.829420] systemd[1]: Finished Load Kernel Module drm. [ 11.883163] systemd[1]: modprobe@fuse.service: Succeeded. [ 11.961888] systemd[1]: Finished Load Kernel Module fuse. [ 12.008092] systemd[1]: Finished File System Check on Root Device. [ 12.057325] systemd[1]: Finished Load Kernel Modules. [ 12.167782] systemd[1]: Mounting FUSE Control File System... [ 12.387466] systemd[1]: Mounting Kernel Configuration File System... [ 12.538607] systemd[1]: Started File System Check Daemon to report status. [ 12.648841] systemd[1]: Starting Remount Root and Kernel File Systems... [ 12.778598] systemd[1]: Starting Apply Kernel Variables... [ 12.949322] systemd[1]: Started Journal Service. [ 13.737234] EXT4-fs (mmcblk0p2): re-mounted. Quota mode: none. [ 14.192200] systemd-journald[106]: Received client request to flush runtime j ournal. [ 18.765043] vc_sm_cma: module is from the staging directory, the quality is u nknown, you have been warned. [ 18.770170] mc: Linux media interface: v0.10 [ 18.882449] bcm2835_vc_sm_cma_probe: Videocore shared memory driver

[ 18.907551] [vc_sm_connected_init]: installed successfully [ 20.035138] videodev: Linux video capture interface: v2.00 [ 20.168876] snd_bcm2835: module is from the staging directory, the quality is unknown, you have been warned. [ 20.232402] bcm2835_audio bcm2835_audio: card created with 8 channels [ 20.774642] bcm2835_mmal_vchiq: module is from the staging directory, the qua lity is unknown, you have been warned. [ 20.898025] bcm2835_mmal_vchiq: module is from the staging directory, the qua lity is unknown, you have been warned. [ 20.899644] bcm2835_mmal_vchiq: module is from the staging directory, the qua lity is unknown, you have been warned. [ 21.104788] bcm2835_isp: module is from the staging directory, the quality is unknown, you have been warned. [ 21.171021] bcm2835_v4l2: module is from the staging directory, the quality i s unknown, you have been warned. [ 21.224564] bcm2835-isp bcm2835-isp: Device node output[0] registered as /dev /video13 [ 21.242780] bcm2835-isp bcm2835-isp: Device node capture[0] registered as /de v/video14 [ 21.246482] bcm2835-isp bcm2835-isp: Device node capture[1] registered as /de v/video15 [ 21.259479] bcm2835-isp bcm2835-isp: Device node stats[2] registered as /dev/ video16 [ 21.259546] bcm2835-isp bcm2835-isp: Register output node 0 with media contro ller [ 21.259583] bcm2835-isp bcm2835-isp: Register capture node 1 with media contr oller [ 21.259615] bcm2835-isp bcm2835-isp: Register capture node 2 with media contr oller [ 21.259643] bcm2835-isp bcm2835-isp: Register capture node 3 with media contr oller [ 21.317540] bcm2835-isp bcm2835-isp: Device node output[0] registered as /dev /video20 [ 21.328946] bcm2835-isp bcm2835-isp: Device node capture[0] registered as /de v/video21 [ 21.338347] bcm2835-isp bcm2835-isp: Device node capture[1] registered as /de v/video22 [ 21.357131] bcm2835-isp bcm2835-isp: Device node stats[2] registered as /dev/ video23 [ 21.357198] bcm2835-isp bcm2835-isp: Register output node 0 with media contro ller [ 21.357240] bcm2835-isp bcm2835-isp: Register capture node 1 with media contr oller [ 21.357298] bcm2835-isp bcm2835-isp: Register capture node 2 with media contr oller [ 21.357337] bcm2835-isp bcm2835-isp: Register capture node 3 with media contr oller [ 21.377154] bcm2835-isp bcm2835-isp: Loaded V4L2 bcm2835-isp [ 21.464174] bcm2835_codec: module is from the staging directory, the quality is unknown, you have been warned. [ 21.730300] bcm2835-codec bcm2835-codec: Device registered as /dev/video10 [ 21.730386] bcm2835-codec bcm2835-codec: Loaded V4L2 decode [ 21.844761] bcm2835-codec bcm2835-codec: Device registered as /dev/video11 [ 21.844847] bcm2835-codec bcm2835-codec: Loaded V4L2 encode [ 21.890241] bcm2835-codec bcm2835-codec: Device registered as /dev/video12 [ 21.890324] bcm2835-codec bcm2835-codec: Loaded V4L2 isp [ 21.917129] bcm2835-codec bcm2835-codec: Device registered as /dev/video18 [ 21.917222] bcm2835-codec bcm2835-codec: Loaded V4L2 image_fx [ 21.970860] bcm2835-codec bcm2835-codec: Device registered as /dev/video31 [ 21.970946] bcm2835-codec bcm2835-codec: Loaded V4L2 encode_image [ 27.788709] Adding 102396k swap on /var/swap. Priority:-2 extents:1 across:1 02396k SSFS [ 27.790942] uart-pl011 20201000.serial: no DMA platform data [ 28.369678] CAN device driver interface [ 29.177059] gs_usb 1-1.2:1.0: Configuring for 1 interfaces [ 29.254419] usbcore: registered new interface driver gs_usb [ 30.548754] 8021q: 802.1Q VLAN Support v1.8 [ 30.569022] cfg80211: Loading compiled-in X.509 certificates for regulatory d atabase [ 30.931339] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7' [ 30.944235] cfg80211: loaded regulatory.db is malformed or signature is missi ng/invalid [ 31.877535] Console: switching to colour dummy device 80x30 [ 31.885664] [drm] forcing HDMI-A-1 connector on [ 31.885853] vc4-drm soc:gpu: bound 20600000.firmwarekms (ops vc4_fkms_ops [vc 4]) [ 31.886591] vc4-drm soc:gpu: bound 20c00000.v3d (ops vc4_v3d_ops [vc4]) [ 31.930746] [drm] Initialized vc4 0.0.0 20140616 for soc:gpu on minor 0 [ 32.028886] Console: switching to colour frame buffer device 60x40 [ 32.047181] vc4-drm soc:gpu: [drm] fb0: vc4drmfb frame buffer device [ 32.193245] brcmfmac: F1 signature read @0x18000000=0x1541a9a6 [ 32.227649] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43430-sdio f or chip BCM43430/1 [ 32.229446] usbcore: registered new interface driver brcmfmac [ 32.459611] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM43430/1 wl0: Jul 19 2021 03:24:18 version 7.45.98 (TOB) (56df937 CY) FWID 01-8e14b897 [ 33.153497] Bluetooth: Core ver 2.22 [ 33.153674] NET: Registered PF_BLUETOOTH protocol family [ 33.153692] Bluetooth: HCI device and connection manager initialized [ 33.153725] Bluetooth: HCI socket layer initialized [ 33.153747] Bluetooth: L2CAP socket layer initialized [ 33.153787] Bluetooth: SCO socket layer initialized [ 33.200252] Bluetooth: HCI UART driver ver 2.3 [ 33.200296] Bluetooth: HCI UART protocol H4 registered [ 33.200433] Bluetooth: HCI UART protocol Three-wire (H5) registered [ 33.200679] Bluetooth: HCI UART protocol Broadcom registered [ 33.930493] SPI driver ads7846 has no spi_device_id for ti,tsc2046 [ 33.930535] SPI driver ads7846 has no spi_device_id for ti,ads7843 [ 33.930547] SPI driver ads7846 has no spi_device_id for ti,ads7845 [ 33.930559] SPI driver ads7846 has no spi_device_id for ti,ads7873 [ 33.930994] ads7846 spi0.1: supply vcc not found, using dummy regulator [ 33.997442] ads7846 spi0.1: touchscreen, irq 160 [ 34.001617] fbtft: module is from the staging directory, the quality is unkno wn, you have been warned. [ 34.006011] input: ADS7846 Touchscreen as /devices/platform/soc/20204000.spi/ spi_master/spi0/spi0.1/input/input0 [ 34.108694] fb_ili9486: module is from the staging directory, the quality is unknown, you have been warned. [ 34.109415] SPI driver fb_ili9486 has no spi_device_id for ilitek,ili9486 [ 34.109680] fb_ili9486 spi0.0: fbtft_property_value: regwidth = 16 [ 34.109712] fb_ili9486 spi0.0: fbtft_property_value: buswidth = 8 [ 34.109733] fb_ili9486 spi0.0: fbtft_property_value: debug = 0 [ 34.109751] fb_ili9486 spi0.0: fbtft_property_value: rotate = 90 [ 34.109771] fb_ili9486 spi0.0: fbtft_property_value: fps = 30 [ 34.109788] fb_ili9486 spi0.0: fbtft_property_value: txbuflen = 32768 [ 34.801805] graphics fb1: fb_ili9486 frame buffer, 480x320, 300 KiB video mem ory, 32 KiB buffer memory, fps=33, spi0.0 at 16 MHz [ 36.586691] Bluetooth: BNEP (Ethernet Emulation) ver 1.3 [ 36.586733] Bluetooth: BNEP filters: protocol multicast [ 36.586768] Bluetooth: BNEP socket layer initialized [ 36.640028] Bluetooth: MGMT ver 1.22 [ 36.785642] NET: Registered PF_ALG protocol family [ 37.065414] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save enabled [ 39.518142] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready [ 150.320118] ICMPv6: process `dhcpcd' is using deprecated sysctl (syscall) net .ipv6.neigh.wlan0.retrans_time - use net.ipv6.neigh.wlan0.retrans_time_ms instea d pi@DELTABUSTER:~ $ reboot

bistory commented 1 year ago

For the record, I got this 5-inch DSI touchscreen to work thanks to the information in this issue.

1. I _did_ need to set `dtoverlay=vc4-fkms-v3d` in `/boot/config.txt` by hand, since the `raspi-config` menu did not show the right option. Without this, the touch input does not work, and the error `rpi_touchscreen_attiny 10-0045: Failed to read REG_ID reg: -5` pops up in `dmesg`. After a reboot, KlipperScreen did not start,

2. I _did_ need to `sudo bash -c "echo needs_root_rights=yes>>/etc/X11/Xwrapper.config"` as per the [troubleshooting docs](https://klipperscreen.readthedocs.io/en/latest/Troubleshooting/#cannot-open-virtual-console), otherwise KlipperScreen didn't start and the error `xf86OpenConsole: Cannot open virtual console 2 (Permission denied)` popped up in `/var/log/Xorg.0.log`.

3. ~I _did_ need to set the calibration matrix using `echo 'ACTION=="add", ATTRS{name}=="raspberrypi-ts", ENV{LIBINPUT_CALIBRATION_MATRIX}="0.5 0 0 0 1 0 0 0 1"' | sudo tee /etc/udev/rules.d/51-touchscreen.rules` as per [dctrjones' comment](https://github.com/jordanruthe/KlipperScreen/issues/928#issuecomment-1475026572) and [the hardware docs](https://klipperscreen.readthedocs.io/en/latest/Hardware/#touchscreen-touch-rotation)~ (EDITED: just set `max_framebuffers=1` in `/boot/config.txt` instead, see [this comment](https://github.com/jordanruthe/KlipperScreen/issues/928#issuecomment-1497430252)), otherwise the touch input area was scaled to 50% horizontally and only responded to touches on the left half of the screen.

* I did _not_ need to enable I2C nor SPI for either the screen or the touch input to work.

Unfortunately, I did those manipulations on a freshly installed Raspbian Lite, I used Kiauh to install KS but touch control still doesn't work...

alfrix commented 1 year ago

closing since this fixes have been added to the docs

if more issues appear under bookworkm then it should be on another thread