🛠 Piloter un écran parallèle 24 bits en DPI sur le CM3

Raspberry Pi Compute Module 3 (CM3 / CM3L) · avance · Schéma : dalle LCD à interface parallèle RGB 24 bits reliée au bus DPI 24 bits du connecteur SODIMM d'un CM3 sur carte porteuse custom, avec les signaux R0-R7, G0-G7, B0-B5, PCLK, HSYNC, VSYNC, DE.

Objectives

Output the display on the DPI bus (24-bit parallel RGB) of the SODIMM instead of HDMI: this is the native interface for industrial panels without an HDMI controller, and one of the I/O features that distinguish the CM3 from a classic Pi 3 (datasheet RP-008161-DS §2.2). DPI is mapped to alternate functions of bank0 GPIOs — it therefore consumes a large part of this bank. This tutorial configures the display controller via config.txt and service mode, then verifies the wiring.

Hardware

Complete code

# 1. Réserver le DPI via config.txt. Exemple pour une dalle 800x480 7" classique :
sudo tee -a /boot/firmware/config.txt <<'EOF'
# mode vidéo personnalisé 800x480 @ 60 Hz routé vers le DPI
hdmi_cvt=800 480 60 6 0 0 0
hdmi_group=2
hdmi_mode=87
EOF
sudo reboot

# 2. Vérifier la sortie vidéo côté firmware
/opt/vc/bin/tvservice -s      # affiche le mode actif résolu

# 3. Tester un affichage
sudo apt install -y fbv
ls /dev/fb*                   # /dev/fb0 doit exister
fbv test.png

Expected verification

tvservice -s indicates an active 800x480 mode and the test image appears on the panel. ls /dev/fb* shows /dev/fb0. On recent images using KMS, modetest (libdrm-tests package) lists the DPI encoder and allows pushing solid colors to verify the R/G/B wiring pin by pin.

Common errors

Other tutorials for this board

Code examples for this board

← Back to the board 🛠 All tutorials