I am having a hard time to get the Waveshare 5inch DSI LCD display working with the CM4 and the official I/O board. I followed these steps:

  1. Plug the Compute Module 4 on the CM4 I/O board
  2. Flash the last Raspberry OS 64 (Bullseye) with desktop to the eMMC.
  3. Test it working through the SSH, enable all the interfaces (including VNC) on the configuration
  4. Following the instructions directly from Waveshare (https://www.waveshare.com/wiki/Compute-Module-4 , I added the dt-blob.bin to the /boot/ path:
wget https://www.waveshare.com/w/upload/7/75/CM4_dt_blob_Source.zip
unzip -o  CM4_dt_blob_Source.zip -d ./CM4_dt_blob_Source
sudo chmod 777 -R CM4_dt_blob_Source
cd CM4_dt_blob_Source/
sudo  dtc -I dts -O dtb -o /boot/dt-blob.bin dt-blob-disp0-double_cam.dts
  1. Edit the /boot/config.txt (instructions on https://www.waveshare.com/wiki/5inch_DSI_LCD):
    # 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
    # uncomment the following to adjust overscan. Use positive numbers if console
    # goes off screen, and negative if there is too much border
    # uncomment to force a console size. By default it will be display's size minus
    # overscan.
    # uncomment if hdmi display is not detected and composite is being output
    # uncomment to force a specific HDMI mode (this will force VGA)
    # uncomment to force a HDMI mode rather than DVI. This can make audio work in
    # DMT (computer monitor) modes
    # uncomment to increase signal to HDMI, if you have interference, blanking, or
    # no display
    # uncomment for composite PAL
    #uncomment to overclock the arm. 700 MHz is the default.
    # Uncomment some or all of these to enable the optional hardware interfaces
    # Uncomment this to enable infrared communication.
    # Additional overlays and parameters are documented /boot/overlays/README
    # Enable audio (loads snd_bcm2835)
    # dtparam=audio=on
    # Automatically load overlays for detected cameras
    # camera_auto_detect=1
    # Automatically load overlays for detected DSI displays
    # Enable DRM VC4 V3D driver
    # dtoverlay=vc4-kms-v3d
    # Run in 64-bit mode
    # Disable compensation for displays with overscan
    # Enable host mode on the 2711 built-in XHCI USB controller.
    # This line should be removed if the legacy DWC2 controller is required
    # (e.g. for USB device mode) or if USB support is not required.
    # dtoverlay=vc4-fkms-v3d
    # Run as fast as firmware / board allows
  1. Connect the I/O Board and the Waveshare 5inch DSI LCD display through an adaptor, tested on the DISP0 and DISP1 connectors. I also added the J6 jumpers, but should only be for the I2C touchscreen features.
  2. Get frustrated as the black screen returns the empty image of my own failure.

Any idea/tip of where is the problem?

  • #7 is unclear ... is the screen completely blank?
    – jsotola
    Nov 11, 2022 at 20:56
  • is completely black, except for a first flash when I power the CM4IO board
    – Jon
    Nov 12, 2022 at 15:51

1 Answer 1


The solution was patience: it needs around 1-2 minutes to boot correctly the drivers after doing the sudo dtc -I dts -O dtb -o /boot/dt-blob.bin dt-blob-disp0-double_cam.dts and rebooting the board.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.