Please check if using
dtoverlay=vc4-kms-v3d,nohdmi
dtoverlay=vc4-kms-dsi-7inch
in “/boot/userconfig.txt” helps.
Please check if using
dtoverlay=vc4-kms-v3d,nohdmi
dtoverlay=vc4-kms-dsi-7inch
in “/boot/userconfig.txt” helps.
Unfortunately adding to userconfig.txt did not help
dtoverlay=vc4-kms-v3d,nohdmi
dtoverlay=vc4-kms-dsi-7inch
… and what about
dtoverlay=vc4-kms-v3d-pi5,nohdmi
dtoverlay=vc4-kms-dsi-7inch
?
I tested it by adding it to userconfig.txt
dtoverlay=vc4-kms-v3d-pi5,nohdmi
dtoverlay=vc4-kms-dsi-7inch
Unfortunately, the LCD still doesn’t work
Photo showing the LCD connection to the RP5.
As you can see, it works with RoPieee, but after changing the card to Volumio, the LCD is black, even the screen backlight does not turn on.
Being a bit suspicious of the problem - documented steps.
Waveshare 4.3 inch DSI LCD:
Raspberry Pi 5 4GB:
Since I am planning to use this build for variety of tasks - added RTC battery.
NVMe HAT PoE
This particular HAT has Power Over Ethernet and M.2 PCIe port.
GEN3 NVMe
Heatsink attached with clips to the Raspberry Pi 5, DSI port 1 connected to the screen
NVMe PoE HAT mounted and PCIe ribbon connected
Boot from MicroSD and NVMe requires the same steps and produces identical result
After initial setup with a browser using ssh client as volumio user and password
Without any changes to any files only edit
nano /boot/userconfig.txt
and add
dtoverlay=vc4-kms-dsi-7inch
Reboot
After reboot the standard linux prompt is visible on the screen
Install Touch Display plugin
After reboot Volumio screen is available
Touch navigation also works as expected
Kind Regards,
yeah seems your rev2.2 is supported, the lower revs are failing:
According to Waveshare,
If you purchased the product earlier, such as the Rev2.1 version (or older), due to the power detection mechanism of Pi5, it may misidentify the capacitors on the DSI LCD as a false short-circuit state, preventing the system from booting. In this situation, you can manually remove the large capacitors at the four positions marked in red circles in the image below.
Comparing images with revision 2.2 board it seems to be the case.
Kind Regards,
I have recorded Raspberry Pi OS 64 bit on another card.
The display works fine, the touch works fine too.
My display is rev. 2.1 with capacitors removed. Without removing these 5 pcs. capacitors RP5 does not start. I did it according to WaveShare recommendations.
Thank you @Piteros,
Can you post result from uname -a
on Raspberry Pi OS 64 bit please?
Kind Regards,
Linux raspberrypi 6.6.47+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.6.47-1+rpt1 (2024-09-02) aarch64 GNU/Linux
Kind Regards
Hey @Piteros,
This is interesting. Seems that RPi5 64bit 16k page size kernel makes a play here.
Let’s take this to the next level.
On Raspberry Pi OS 64 at the beginning of the /boot/firmware/config.txt
please force different page size kernel:
kernel=kernel8.img
Does the screen still work after reboot?
Kind Regards,
Feels like I am being stupid or fooled…
Seems an identical screen:
Just dead, but working on the official rpi OS…
rPi OS:
sudo dmesg | grep -i dsi
[ 1.094466] platform 1f00130000.dsi: Fixed dependency cycle(s) with /axi/pcie @120000/rp1/dsi@128000/bridge@0/ports/port@0/endpoint
[ 1.098519] platform 1f00130000.dsi: bcm2712_iommu_probe_device: MMU 10000052 80.iommu
[ 1.098522] platform 1f00130000.dsi: bcm2712_iommu_device_group: MMU 10000052 80.iommu
[ 1.098527] platform 1f00130000.dsi: Adding to iommu group 2
[ 1.098534] platform 1f00130000.dsi: bcm2712_iommu_attach_dev: MMU 1000005280 .iommu
[ 1.575684] drm-rp1-dsi 1f00130000.dsi: bcm2712_iommu_of_xlate: MMU 100000528 0.iommu
[ 1.575945] mipi-dsi 1f00130000.dsi.0: Fixed dependency cycle(s) with /panel_ disp@1/port/endpoint
[ 11.741203] mipi-dsi 1f00130000.dsi.0: deferred probe pending
[ 16.157266] drm-rp1-dsi 1f00130000.dsi: rp1dsi_host_attach: Attach DSI device name=tc358762 channel=0 lanes=1 format=0 flags=0x815 hs_rate=0 lp_rate=0
[ 16.157973] [drm] Initialized drm-rp1-dsi 1.0.0 0 for 1f00130000.dsi on minor 0
[ 30.581091] drm-rp1-dsi 1f00130000.dsi: [drm] rp1dsi: Nominal byte clock 7200 0000; scale by 4/12
[ 49.147672] drm-rp1-dsi 1f00130000.dsi: [drm] fb0: drm-rp1-dsidrmf frame buff er device
[ 49.166127] drm-rp1-dsi 1f00130000.dsi: rp1dsi_bind succeeded
volumio@rpi5:~$
volumio@rpi5:~$ dmesg | grep -i dsi
[ 1.098472] platform 1f00130000.dsi: Fixed dependency cycle(s) with /axi/pcie@120000/rp1/dsi@128000/bridge@0/ports/port@0/endpoint
[ 1.102674] platform 1f00130000.dsi: bcm2712_iommu_probe_device: MMU 1000005280.iommu
[ 1.102677] platform 1f00130000.dsi: bcm2712_iommu_device_group: MMU 1000005280.iommu
[ 1.102683] platform 1f00130000.dsi: Adding to iommu group 2
[ 1.102691] platform 1f00130000.dsi: bcm2712_iommu_attach_dev: MMU 1000005280.iommu
[ 1.587934] drm-rp1-dsi 1f00130000.dsi: bcm2712_iommu_of_xlate: MMU 1000005280.iommu
[ 1.588189] mipi-dsi 1f00130000.dsi.0: Fixed dependency cycle(s) with /panel_disp@1/port/endpoint
[ 11.741249] mipi-dsi 1f00130000.dsi.0: deferred probe pending
[ 21.301241] drm-rp1-dsi 1f00130000.dsi: rp1dsi_host_attach: Attach DSI device name=tc358762 channel=0 lanes=1 format=0 flags=0x815 hs_rate=0 lp_rate=0
[ 21.301860] [drm] Initialized drm-rp1-dsi 1.0.0 0 for 1f00130000.dsi on minor 0
[ 21.303531] drm-rp1-dsi 1f00130000.dsi: [drm] rp1dsi: Nominal byte clock 72000000; scale by 4/12
[ 50.107650] drm-rp1-dsi 1f00130000.dsi: [drm] fb0: drm-rp1-dsidrmf frame buffer device
[ 50.129001] drm-rp1-dsi 1f00130000.dsi: rp1dsi_bind succeeded
Complete configuration on my working setup
### DO NOT EDIT THIS FILE ###
### APPLY CUSTOM PARAMETERS TO userconfig.txt ###
initramfs volumio.initrd
gpu_mem=128
gpu_mem_256=32
gpu_mem_512=32
gpu_mem_1024=128
max_usb_current=1
[pi5]
usb_max_current_enable=1
[all]
include volumioconfig.txt
include userconfig.txt
### DO NOT EDIT THIS FILE ###
### APPLY CUSTOM PARAMETERS TO userconfig.txt ###
[cm4]
dtoverlay=dwc2,dr_mode=host
otg_mode=1
[pi5]
dtoverlay=vc4-kms-v3d-pi5
# dtparam=uart0_console # Disabled by default
dtparam=nvme
dtparam=pciex1_gen=2
[all]
arm_64bit=0
dtparam=audio=on
audio_pwm_mode=2
dtparam=i2c_arm=on
disable_splash=1
hdmi_force_hotplug=1
force_eeprom_read=0
# Add your custom config.txt options to this file, which will be preserved during updates
dtoverlay=vc4-kms-dsi-7inch
Section “OutputClass”
Identifier “rp1”
MatchDriver “rp1-vec|rp1-dsi|rp1-dpi”
Driver “modesetting”
Option “PrimaryGPU” “true”
EndSection
# This file is managed by the Touch Display plugin: Do not alter!
# It will be deleted when the Touch Display plugin gets uninstalled.
Section “InputClass”
Identifier “Touch rotation”
MatchIsTouchscreen “on”
MatchDevicePath “/dev/input/event*”
MatchDriver “libinput|evdev”
EndSectionSection “Monitor”
Identifier “DSI-2”
Option “Rotate” “normal”
EndSection
Please compare.
Copied over the files, which where already identical.
Left out the touch-display part as the prompt is not even showing.
/boot/userconfig.txt
/boot/volumioconfig.txt
/boot/config.txt
The wiki of Waveshare mention you need Bookworm on a rPi5, but since your running the same screen with Volumio V3.742…
Lets see the drm handling:
dmesg | grep -iE ‘dsi|drm|fb0|mipi|rp1|vc4’
Kind Regards,