Chuyển đến nội dung
Display Engineer
Xử lý sự cố

Màn hình Raspberry Pi không hiển thị? Cách khắc phục lỗi DSI, HDMI và cảm ứng trên Pi 4 và Pi 5

Danh sách kiểm tra từng bước cho màn hình Raspberry Pi không sáng, không có hình, bị xoay sai hoặc tự tắt màn hình: cáp DSI và nguồn, config.txt, chế độ HDMI trên Bookworm, xoay màn hình, cảm ứng và tính năng tắt màn hình.

DEDisplay Engineer Applications Team · Kỹ sư ứng dụng màn hìnhCập nhật 19 thg 10, 2026

Bắt đầu từ đây: bạn đang dùng loại kết nối nào?

Loại kết nối

Triệu chứng thường gặp

Kiểm tra trước tiên

Cáp dây bằng MIPI DSI (Touch Display chính hãng, hầu hết tấm nền 5–10")

Đèn nền không sáng, hoặc đèn nền sáng nhưng màn hình đen

Loại cáp và chiều cắm cáp, nguồn màn hình, config.txt

HDMI (màn hình máy tính, bo driver HDMI)

"No signal", độ phân giải sai, màn hình đen sau khi khởi động

Cổng đang dùng, chế độ ép bằng tham số video=

SPI trên header GPIO (tấm nền nhỏ 2,4–3,5")

Màn hình trắng, không hiển thị gì sau khi desktop khởi động

Driver và overlay do nhà cung cấp tấm nền cung cấp

Thực hiện lần lượt các bước trong phần dành cho loại kết nối của bạn. Mỗi bước loại trừ một nguyên nhân, và các bước đầu tiên là những bước hay bị lỗi nhất.

Màn hình DSI: màn hình đen hoặc chỉ có đèn nền

1. Dùng đúng loại cáp dây băng cho Pi của bạn

Raspberry Pi 5 có cổng DSI nhỏ hơn các model trước, nên cáp đi kèm với màn hình đời cũ sẽ không cắm vừa. Theo tài liệu của Raspberry Pi:

  • Raspberry Pi 4 và các model trước: cáp FFC (flat flexible cable) 15 chân nối với 15 chân.
  • Raspberry Pi 5: cáp FFC 22 chân sang 15 chân (Standard – Mini). Đầu 22 chân là đầu nhỏ hơn, cắm vào Pi; đầu to hơn cắm vào màn hình.
  • Touch Display 2, 10 inch, trên Raspberry Pi 5: dùng cáp FFC 22 chân sang 22 chân Mini – Mini đi kèm.

Các model Raspberry Pi Zero không có cổng DSI, nên hoàn toàn không thể dùng màn hình DSI trên chúng.

2. Kiểm tra cáp đã cắm chặt và đúng chiều

Mở chấu kẹp của giắc cắm, đẩy cáp vào hết cỡ rồi đóng kẹp lại. Trên Raspberry Pi 4B và các model trước, cổng màn hình có nhãn DISPLAY (không phải CAMERA), và các tiếp điểm kim loại quay về phía cổng Ethernet và USB-A. Cáp cắm ngược, cắm lỏng hoặc cầm nhầm vào cổng camera sẽ cho đúng triệu chứng y như một tấm nền bị hỏng.

3. Cấp nguồn 5 V riêng cho màn hình

Các màn hình chính hãng được cấp nguồn tách biệt khỏi cáp DSI:

  • Touch Display đời đầu: dây jumper từ header GPIO của Pi, dây đen vào chân 6 (GND) và dây đỏ vào chân 4 (5 V), hoặc chân 2 nếu chân 4 đã được dùng. Bạn có thể dùng nguồn micro USB thay thế, nhưng khi đó không được nối thêm dây nguồn GPIO.
  • Touch Display 2: dùng cáp nguồn GPIO đi kèm, đầu nhỏ cắm vào cổng J1 của màn hình, dây đỏ vào chân 2 và dây đen vào chân 6.

Nếu đèn nền không bao giờ sáng, nguồn là nghi phạm đầu tiên. Các tấm nền của bên thứ ba thường cần nguồn riêng cho đèn nền; hãy kiểm tra sơ đồ đấu dây của nhà cung cấp.

4. Không thêm dòng dtoverlay khi không cần thiết

Raspberry Pi OS được tích hợp sẵn display_auto_detect=1 trong /boot/firmware/config.txt, và nhờ đó firmware tự động nạp overlay cho các màn hình DSI được nhận diện. Trên Raspberry Pi tiêu chuẩn, các màn hình chính hãng do đó không cần dòng dtoverlay. Tự tay thêm một dòng, sai kích thước hoặc sai cổng, là nguyên nhân phổ biến gây màn hình đen.

Raspberry Pi Compute Module thì khác: chúng không tự nhận diện màn hình DSI, nên bạn phải tự thêm overlay:

  • Touch Display 2, 5 inch: dtoverlay=vc4-kms-dsi-ili9881-5inch
  • Touch Display 2, 7 inch: dtoverlay=vc4-kms-dsi-ili9881-7inch
  • Touch Display 2, 10 inch: dtoverlay=vc4-kms-dsi-ili79600-10-1inch
  • Touch Display 7 inch đời đầu: dtoverlay=vc4-kms-dsi-7inch

Mặc định là cổng có nhãn 1; thêm ,dsi0 để dùng cổng 0 (ví dụ dtoverlay=vc4-kms-dsi-7inch,dsi0). Với màn hình đời đầu, hãy xoá mọi dòng display_auto_detect nếu có.

5. Tấm nền DSI của bên thứ ba cần overlay riêng

Tính năng tự nhận diện chỉ áp dụng cho những màn hình mà firmware nhận ra. Tấm nền MIPI DSI của bên thứ ba cần một device-tree overlay tương ứng với controller, số lane và timing của nó, thường do nhà cung cấp tấm nền cung cấp. Nếu overlay của nhà cung cấp dành cho nhân (kernel) cũ hơn hoặc model Pi khác, tấm nền có thể vẫn đen dù đấu dây đúng. Hãy yêu cầu một overlay đã được kiểm chứng trên đúng model Pi và phiên bản OS của bạn. Ghi chú về màn hình Raspberry Pi 5 và tổng quan màn hình MIPI DSI của chúng tôi nêu rõ những gì cần hỏi.

Màn hình HDMI: báo "no signal" hoặc sai độ phân giải

1. Dùng cổng HDMI đầu tiên

Trên Raspberry Pi 4B và 5, cổng có nhãn HDMI0 trên bo mạch là ngõ hiển thị đầu tiên (HDMI-A-1 trong Linux). Hãy kết nối một màn hình duy nhất vào cổng này trước khi kiểm tra anything khác.

2. Các thiết lập HDMI trong config.txt cũ không còn hiệu lực

Nhiều hướng dẫn vẫn bảo bạn đặt hdmi_force_hotplug, hdmi_group và hdmi_mode trong config.txt. Tài liệu của Raspberry Pi hiện liệt kê các tùy chọn này là legacy, "không hoạt động với Raspberry Pi OS Bookworm trở lên". Với driver đồ họa KMS, Linux quản lý toàn bộ pipeline hiển thị, bao gồm cả các ngõ HDMI.

3. Ép chế độ hiển thị bằng video= trong cmdline.txt

Khi không đặt chế độ nào, Pi sẽ đọc EDID của màn hình và tự chọn độ phân giải. Một số bo driver HDMI nhỏ đôi khi báo EDID không khớp với panel, dẫn đến "no signal" hoặc hình bị cắt mất. Ép panel chạy ở chế độ gốc bằng cách thêm tham số video= vào dòng duy nhất trong /boot/firmware/cmdline.txt, ví dụ video=HDMI-A-1:1024x600M@60 cho panel 1024×600 ở 60 Hz.

Định dạng là video=<display>:<width>x<height>M@<refresh>. Dùng HDMI-A-2 cho cổng HDMI thứ hai và DSI-1 cho màn hình DSI hoặc DPI. Lấy độ phân giải và tần số quét từ datasheet của panel. Giữ toàn bộ nội dung cmdline.txt trên một dòng.

Hình bị xoay hoặc lật ngược

  • Desktop: vào Preferences > Control Centre > Screens, chọn màn hình, rồi đặt Orientation thành Normal, Left, Inverted hoặc Right.
  • Chỉ console: mở rộng tham số video=, ví dụ video=DSI-1:720x1280@60,rotate=90. Dùng reflect_x, reflect_y hoặc reflect_xy để lật ảnh gương.

Hai giới hạn cần lưu ý: tất cả các màn hình đang kết nối dùng chung một thiết lập rotate=, và rotate= chỉ xoay text console. Các ứng dụng vẽ trực tiếp lên DRM, chẳng hạn cvlc hay các ứng dụng libcamera, cần tự có tùy chọn xoay riêng.

Cảm ứng không khớp với hình hiển thị

Trên desktop, khi đặt hướng hiển thị trong Control Centre thì cảm ứng sẽ theo theo. Trong môi trường không phải desktop với màn hình đã xoay, hãy thêm các tham số cảm ứng vào overlay của màn hình trong config.txt: invx và invy đảo một trục, swapxy hoán đổi hai trục, còn disable_touch tắt cảm ứng. Ví dụ, dtoverlay=vc4-kms-dsi-ili9881-7inch,invx,invy đảo cả hai trục trên màn hình Touch Display 2 7-inch.

Với màn hình 7-inch thế hệ đầu, hãy xóa display_auto_detect=1 khi thêm overlay cảm ứng theo cách này. Raspberry Pi lưu ý rằng việc xoay cảm ứng trong device tree có thể xung đột với thư viện input của bạn, nên khi có thể hãy xoay sự kiện cảm ứng trong thư viện hoặc trên desktop.

Màn hình tối đen sau mười phút

Đó là tính năng screen blanking, không phải lỗi. Khi bật, Raspberry Pi OS sẽ tắt màn hình sau 600 giây không hoạt động. Tắt trong Control Centre (công tắc Screen Blanking) hoặc bằng sudo raspi-config > 2 Display Options > D2 Screen Blanking. Với text console, thêm consoleblank=0 vào cmdline.txt để không bao giờ tắt màn hình.

Khi lỗi nằm ở panel chứ không phải Pi

Nếu panel vẫn tối trên một Pi hoạt động tốt với cáp, nguồn và thiết lập đúng, hãy đo nguồn cấp backlight và thay thử panel khác trước khi can thiệp phần mềm. Với sản phẩm thương mại thay vì làm lẻ một chiếc, hãy chọn panel có nhà cung cấp cung cấp overlay, timing và trình tự cấp nguồn cho đúng host của bạn. Bài so sánh các giao diện màn hình của chúng tôi giải thích khi nào DSI hay HDMI là lựa chọn tốt hơn cho thiết kế Raspberry Pi.

Câu hỏi thường gặp

Tại sao màn hình Raspberry Pi 5 của tôi không hoạt động với cáp từ màn hình cũ?

Raspberry Pi 5 dùng cổng DSI 22 chân nhỏ hơn. Màn hình có đầu nối 15 chân cần cáp flat flexible chuyển từ 22 chân sang 15 chân, với đầu 22 chân nhỏ hơn cắm vào Pi.

Tôi có cần dòng dtoverlay cho Raspberry Pi Touch Display chính hãng không?

Không cần trên Raspberry Pi tiêu chuẩn: với display_auto_detect=1, là mặc định trong Raspberry Pi OS, firmware tự nạp overlay. Compute Module không tự dò màn hình DSI, nên bạn phải tự thêm overlay, ví dụ dtoverlay=vc4-kms-dsi-ili9881-7inch.

Tại sao hdmi_mode không còn hoạt động?

hdmi_group, hdmi_mode và hdmi_force_hotplug là các tùy chọn legacy trong config.txt, không hoạt động với Raspberry Pi OS Bookworm trở lên. Hãy ép chế độ bằng video= trong cmdline.txt, ví dụ video=HDMI-A-1:1024x600M@60.

Làm sao để màn hình Raspberry Pi không tự tắt?

Tắt Screen Blanking trong Control Centre hoặc trong raspi-config tại 2 Display Options > D2 Screen Blanking. Với text console, thêm consoleblank=0 vào cmdline.txt.

Nguồn

  1. Tài liệu Raspberry Pi: Touch Display 2
  2. Tài liệu Raspberry Pi: Touch Display (bản 7 inch đầu tiên)
  3. Tài liệu Raspberry Pi: config.txt (display_auto_detect)
  4. Tài liệu Raspberry Pi: Các tùy chọn config.txt phiên bản cũ (Legacy)
  5. Tài liệu Raspberry Pi: Cấu hình hiển thị, xoay màn hình và tắt màn hình khi không hoạt động

Chưa chắc màn hình nào phù hợp thiết kế của bạn?

Gửi kích thước, giao tiếp và bộ xử lý host. Kỹ sư màn hình sẽ phản hồi trong 12 giờ với 2–3 phương án, datasheet và mã khởi tạo. Mẫu từ 1 chiếc.