Hoping someone has the same hardware combination running. Display is up, but I can’t make touch work through any overlay path I’ve tried.
Hardware
- Raspberry Pi CM4104000 Lite (4GB, no eMMC) on a CM4 IO Board, microSD boot
- BTT Pi TFT43 V2.1 (4.3", FT5406 capacitive touch)
- Kadimendium 15-pin → 22-pin DSI FFC adapter (panel’s 15-pin ribbon → DISP1 on the IO Board)
- Connected to the IO Board’s DISP1 (verified — DISP0 was tried first, didn’t work as expected)
OS
- Raspberry Pi OS Bookworm, kernel 6.6.x
- Klipper + Moonraker + Mainsail installed via KIAUH
- KlipperScreen 0.5.x
What works
- Display lights up and renders KlipperScreen correctly under full KMS
- Display rotation 180° via cmdline.txt video=DSI-1:800x480M@60,rotate=180
- The panel’s ATTINY-equivalent regulator chip at I2C 0x45 is detected and bound by rpi_touchscreen_attiny
What doesn’t work
- FT5406 touch controller never responds. I get exactly:
edt_ft5x06 10-0038: supply iovcc not found, using dummy regulator
edt_ft5x06 10-0038: touchscreen probe failed
edt_ft5x06 10-0038: probe with driver edt_ft5x06 failed with error -110 - Error -110 = ETIMEDOUT — chip is silent on I2C. i2cdetect -y 10 shows UU at 0x45 (the regulator chip is alive) but nothing at 0x38.
What I’ve tried
| Driver path | Result |
|---|---|
vc4-kms-v3d + vc4-kms-dsi-7inch |
Display ✓, touch fails (-110) |
vc4-kms-v3d + vc4-kms-dsi-7inch,disable_touch + rpi-ft5406 |
Display ✓, raspberrypi-ts enumerates, no events on tap |
vc4-fkms-v3d + rpi-ft5406 (no vc4-kms-dsi-7inch since it requires KMS) |
Display fails (no DSI on CM4 without explicit overlay), touch still no events |
My theory
Looking at the vc4-kms-dsi-7inch overlay source, the FT5406 reset is wired through the regulator chip’s GPIO 1:
&ft5406 {
reset-gpio = <®_display 1 1>;
};
The official Pi 7" panel uses an ATTINY at 0x45 whose GPIO 1 reaches the FT5406’s reset pin. The BTT panel has something at 0x45 that responds to the regulator driver, but its GPIO 1 evidently doesn’t reach the FT5406 reset, so the touch chip stays held in reset. The display_auto_detect=1 workaround that fixes this on Pi 4B doesn’t apply on CM4 because firmware auto-detect is disabled on Compute Modules.
Question
Has anyone gotten the BTT Pi TFT43 V2.1 (or the V2.0 — same architecture I think) running with touch on a CM4 IO Board? Specifically:
- Does the BTT panel use the same ATTINY-mediated FT5406 reset, or is reset wired to a Pi GPIO directly through the FFC?
- If the latter — which Pi GPIO?
- Anyone know if BTT publishes a schematic for this panel?
Happy to provide more diagnostic output. Thanks.