5inch DSI LCD (B)

From Waveshare Wiki
Jump to: navigation, search
5inch DSI LCD (B)
5inch-DSI-LCD-1.jpg

5inch Capacitive Touch Screen LCD for Raspberry Pi, DSI Interface
{{{name2}}}

{{{name3}}}

{{{name4}}}

{{{name5}}}

{{{name6}}}

Features

  • 5inch IPS display screen, 800 x 480 hardware resolution.
  • Capacitive touch panel, support 5-point touch.
  • Toughened glass capacitive touch panel, hardness up to 6H.
  • Supports Pi5/4B/CM4/3B+/3A+/3B/CM3/CM3+/2B/B+/A+.
  • Directly drive the LCD by the DSI interface on the Raspberry Pi, with up to 60Hz refreshing rate.
  • When working with Raspberry Pi, support Raspberry Pi OS / Ubuntu / Kali / Volumio and Retropie, driver-free.
  • When working with VisionFive 2, support Debian, single-point touch control, and driver-free.
  • When working with Tinker Board 2, support Linux/Android, five-point touch control, and driver-free.
  • When working with Core3566, support Debian/Ubuntu, five-point touch control, and driver-free.
  • Support brightness adjustable through software control.

Hardware Connection

Work with Pi 4B/3B+/3A+/3B/2B/B+/A+

  • Use an FFC cable to connect the 5-inch DSI LCD (B) to the 15-pin DSI interface on the Raspberry Pi board.
  • For convenience, you can fix the Raspberry Pi on the backside of the 5-inch DSI LCD (B) with screws and assemble the copper column. As shown in the following figure:
4.3inch-DSI-LCD-2.jpg

Work with Pi 5/CM4/CM3+/CM3

  • Use a DSI-Cable-12cm cable to connect the 5-inch DSI LCD (B) to the 22-pin DSI1 interface on the Raspberry Pi board.
  • For convenience, you can secure the Raspberry Pi 5 to the back of the 5-inch DSI LCD (B) using screws and assemble standoffs as shown in the following diagram:
5inch DSI LCD (B)PI5.jpg

Software Settings

For Bookworm and Bullseye System

Method 1: Use Raspberry Pi Imager to Flash Latest Official Image

For Raspberry Pi OS/Ubuntu/Kali/Volumio and Retropie systems.

  • 1. Connect the TF card to the PC, download and use Raspberry Pi Imager to flash the corresponding system image.

800x480-DSI-LCD-0.png

  • 2. After the image flashing is completed, open the config.txt file in the root directory of the TF card, add the following code at the end of the config.txt, save and safely eject the TF card.
dtoverlay=vc4-kms-v3d
#DSI1 Use
dtoverlay=vc4-kms-dsi-7inch
#DSI0 Use(Only Pi5/CM4)
#dtoverlay=vc4-kms-dsi-7inch,dsi0
  • 3. Insert the TF card into the Raspberry Pi, power on the Raspberry Pi, and wait for a few seconds normally to enter the display. After the system starts, it can be touched normally.
  • Note: For the Bookworm system on the Raspberry Pi 5, it is recommended to manually update to the latest system version and reboot (network connection is required).
#Update the system
sudo apt-get update
sudo apt-get full-upgrade -y
#Reboot the system
sudo reboot

Method 2: Use the Pre-installed Image

1. Select the corresponding Raspberry Pi version image, download and unzip it as .img file.
Raspberry 3/4B/CM4/5 version download: Waveshare DSI LCD - Pi3/4B/CM4/5 pre-installed image
2. Connect the TF card to the PC, format the TF card with SDFormatter.
3. Open Win32DiskImager, select the prepared system image, and click "Write" to start flashing.
4. After the flashing is completed, open the config.txt file in the root directory of the TF card, find the line "[all]", according to your display model, uncomment the relevant lines to enable the DSI display, and then save and safely eject the TF card. Note: For Pi5/CM4/CM3+/CM3, since there are two MIPI DSI display interfaces, please make sure to use the correct display interface and instructions, the DSI1 display interface is recommended by default. Let's take the 800*480 DSI LCD display as an example:
Use DSI1 interface:

#800*480 resolution DSI LCD display
dtoverlay=vc4-kms-dsi-7inch

Use DSI0 interface:

#800*480 resolution DSI LCD display
dtoverlay=vc4-kms-dsi-7inch,dsi0

5. Insert the TF card into the Raspberry Pi, power on and start, wait for a few seconds to enter the system display, and the touch function can also work normally.

Adjust Backlight Brightness

  • 1. Open the "Screen Configuration" application;

Pi5-mipiDSI-Brightness-0.png

  • 2. Go to "Screen" -> "DSI-2" -> "Brightness", check the backlight brightness you need to set, and finally click "Apply" to complete the backlight setting.

Pi5-mipiDSI-Brightness.png

Waveshare also provides a corresponding demo (the demo is only used for Bookworm and Bullseye systems), users can download, install and use in the following way:

wget https://files.waveshare.com/wiki/common/Brightness.zip
unzip Brightness.zip
cd Brightness
sudo chmod +x install.sh
./install.sh

After the installation is completed, you can open the demo in the Start Menu -> Accessories -> Brightness, as shown below:

43H-800480-IPS-CT-details-13.gif

In addition, you can also control the brightness of the backlight by entering the following command on the terminal:

echo X | sudo tee /sys/class/backlight/*/brightness

Where X represents any number from 0 to 255. 0 means the darkest backlight, and 255 means the brightest backlight. For example:

echo 100 | sudo tee /sys/class/backlight/*/brightness
echo 0 | sudo tee /sys/class/backlight/*/brightness
echo 255 | sudo tee /sys/class/backlight/*/brightness

Display Rotation

Bookworm Display Rotation

GUI interface rotation

  • 1. Open the "Screen Configuration" application;

DSI-LCD-Bookworm-Rotate-01.png

  • 2. Go to "Screen" - > "DSI-1" - > "Touchscreen" and check "6-0038 generic ft5x06(79)"

DSI-LCD-Bookworm-Rotate-02.png

  • 3. Click "Apply" and close the current window. Restart according to the pop-up prompt, and then touch screen select Done.

DSI-LCD-Bookworm-Rotate-03.png
DSI-LCD-Bookworm-Rotate-05.png

  • 4.Go to "Screen" -> "DSI-1" -> "Orientation", check the direction you need to rotate, and finally click "Apply" to complete the display and touch synchronous rotation.

DSI-LCD-Bookworm-Rotate-04.png -->
Note: Only the Bookworm system supports the above synchronization rotation method. Note: Only the Bookworm system supports the above synchronous rotation methods. For Bullseye and Butser systems, after displaying rotation, touch rotation needs to be manually set separately.

lite version display rotation

  • 1. Need to modify the /boot/cmdline.txt file:
sudo nano /boot/cmdline.txt
  • 2. At the beginning of the cmdline.txt file, add the command for displaying the rotation angle: (Please note, this command needs to be on the same line, with each command separated by a space.)
video=DSI-1:800x480M@60,rotate=90

Change the display rotation angle by modifying the rotate value to 90, 180, or 270.

  • 3. Save and restart
sudo reboot

Bullseye/Buster Display Rotation

GUI interface rotation

  • 1. Open the "Screen Configuration" application;

DSI-LCD-Bullseye-Rotate-02.png

  • 2. Go to "Screen" -> "DSI-1" -> "Orientation", check the direction you need to rotate, and finally click "Apply" to complete the display rotation.

DSI-LCD-Bullseye-Rotate-03.pngDSI-LCD-Bullseye-Rotate-04.png


lite version display rotation

  • 1. Need to modify the /boot/cmdline.txt file:
sudo nano /boot/cmdline.txt
  • 2. At the beginning of the cmdline.txt file, add the command for displaying the rotation angle: (Please note, this command needs to be on the same line, with each command separated by a space.)
video=DSI-1:800x480M@60,rotate=90

Change the display rotation angle by modifying the rotate value to 90, 180, or 270.

  • 3. Save and restart
sudo reboot

Stretch/Jessie Display Rotation

For some older systems, they do not use the vc4-kms-v3d or vc4-fkms-v3d driver modes, and the display rotation method is as follows:

  • 1. Add a statement to the config.txt file (the config file is located in the root directory of the TF card, i.e., in the /boot folder):
display_rotate=1 #1:90;2: 180; 3: 270
  • 2. Save the changes and then reboot the Raspberry Pi
sudo reboot

Touch Rotation

Bookworm Touch

If you use the graphical interface for rotation, you can tick "Touchscreen" in the screen layout editor window to synchronize the touch rotation. Please refer to the previous introduction for how to rotate the screen. For the command line rotation method, please refer to the following text:
1. Create a new file named 99-waveshare-touch.rules

sudo nano /etc/udev/rules.d/99-waveshare-touch.rules

2. Add the following lines as needed:

#90°:
ENV{ID_INPUT_TOUCHSCREEN}=="1", ENV{LIBINPUT_CALIBRATION_MATRIX}="0 -1 1 1 0 0"

#180°:
#ENV{ID_INPUT_TOUCHSCREEN}=="1", ENV{LIBINPUT_CALIBRATION_MATRIX}="-1 0 1 0 -1 1"

#270°:
#ENV{ID_INPUT_TOUCHSCREEN}=="1", ENV{LIBINPUT_CALIBRATION_MATRIX}="0 1 0 -1 0 1"

3. Save and reboot

sudo reboot

Bullseye/Buster Touch

After some systems display rotation, the touch direction is inconsistent, and you need to perform the following operations to perform touch rotation:
1. Install libinput

sudo apt-get install xserver-xorg-input-libinput
  • If you have Ubuntu or Jetson Nano installed. The installation code is:
sudo apt install xserver-xorg-input-synaptics

2. Create the xorg.conf.d directory under /etc/X11 (if the directory already exists, proceed directly to step 3).

sudo mkdir /etc/X11/xorg.conf.d

3. Copy the 40-libinput-conf file to the directory you created just now.

sudo cp /usr/share/X11/xorg.conf.d/40-libinput.conf /etc/X11/xorg.conf.d/

4. Edit this file.

sudo nano /etc/X11/xorg.conf.d/40-libinput.conf
#Find the touchscreen section, add the corresponding rotation angle command in it, and save it
#"90° Right touch rotation:
Option "CalibrationMatrix" "0 1 0 -1 0 1 0 0 1"
#180° Inverted touch rotation: 
#Option "CalibrationMatrix" "-1 0 1 0 -1 1 0 0 1"
#270° Left touch rotation: 
#Option "CalibrationMatrix" "0 -1 1 1 0 0 0 0 1"
Similar to the position in the following image:

Touch roate.jpg
5. Reboot Raspberry Pi

sudo reboot

After completing the above steps, touch will cause a rotation.

Screen Sleep

Run the following command on the Raspberry Pi terminal and the screen will enter sleep mode:

xset dpms force off

Note: The above command is only for Bullseye and Buster systems.

Disable Touch

At the end of the config.txt file, add the following command corresponding to disabling touch (the config file is located in the root directory of the TF card, which can also be accessed via the command: sudo nano /boot/config.txt):

disable_touchscreen=1

Note: After adding a command, it needs to be restarted to take effect.


Resources

3D Drawing

Software

FAQ

 Answer:

Power the 5inch DSI LCD (B) using the Raspberry Pi's DSI interface, with a power consumption of approximately 1.3W.

{{{5}}}


 Answer:

The default state is to support software adjustment, it is recommended to view #Backlight Control, you can also weld PWM to control the backlight as follows:
As shown in the figure below, first remove the original soldered resistor, and then connect the pad (left pad) of the resistor to the P1 pin of the Raspberry Pi, and you can use GPIO to control the backlight.
5inch-DSI-faq.png

  • gpio -g pwm 18 0
  • gpio -g mode 18 pwm (the occupied pins are PWM pins)
  • gpio pwmc 1000
  • Control brightness:
  • gpio -g pwm 18 X (X is between 0 and 1024, 0 is the darkest, and 1024 is the brightest)
  • PS: To ensure a good customer experience, the default factory minimum brightness is the visible state. If you need to completely turn off the backlight to achieve a black screen effect, please manually change the 100K resistor as shown below to a 68K resistor(Chip resistor 68K 0603 ±1%) :

4.3DSI-brightness-2.png

{{{3}}}
{{{4}}}

{{{5}}}


 Answer:

1. The hardware connection between DSI LCD and Pi5 as below:
(1) A DSI cable (official Raspberry Pi cable or Waveshare Pi5-Display-Cable-200mm) for Pi 5 is required. Please ensure the proper orientation with the SODIMM.
(2) Priority usage for Pi5's DSI1 interface.

If using the DSI0 interface, you need to add "dtoverlay=vc4-kms-dsi-7inch,dsi0" in the config.txt file

4.3inch DSI LCD-faq-20.png
2. Check the DSI LCD version.
(1) The latest DSI LCD version compatible with Pi5 is Rev2.2, which can be directly used.
(2) 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.
4.3inch DSI LCD-faq-21.png
3. Software Setup:
For the Pi5, use the Bookworm system. (Please note, Pi5 currently only supports Bookworm, not Bullseye or Buster.)
(1) Connect the TF card to the PC, download and burn the corresponding system image using Raspberry Pi Imager.
7inch DSI LCD C Image.png
(2) After the image is burned, open the config.txt file in the root directory of the TF card, add the following code at the end of the config.txt, save and safely eject the TF card.

dtoverlay=vc4-kms-v3d
#DSI1 Use
dtoverlay=vc4-kms-dsi-7inch
#DSI0 Use
#dtoverlay=vc4-kms-dsi-7inch,dsi0

(3) Connect the TF card to the Raspberry PI, start the Raspberry PI, and log in to the Raspberry PI terminal (you can connect the Raspberry PI to the HDMI display or log in remotely using ssh).

#Update system
sudo apt-get update
sudo apt-get full-upgrade -y
#Reboot system
sudo reboot

(4) Wait for the system restart, it will be able to display and touch normally.

Note that if use the DSI0 interface at the same time, you need to add the additional commands: "dtoverlay=vc4-kms-dsi-7inch,dsi0"

{{{5}}}



Anti-Piracy

Since the first-generation Raspberry Pi released, Waveshare has been working on designing, developing, and producing various fantastic touch LCDs for the Pi. Unfortunately, there are quite a few pirated/knock-off products in the market. They're usually some poor copies of our early hardware revisions, and comes with none support service.

To avoid becoming a victim of pirated products, please pay attention to the following features when purchasing:

RPi-LCD-Anti-Piracy.jpg

(Click to enlarge)

Beware of knock-offs

Please note that we've found some poor copies of this item in the market. They are usually made of inferior materials and shipped without any testing.

You might be wondering if the one you're watching or you've purchased in other non-official stores is original, feel free to contact us.

Support



Technical Support

If you need technical support or have any feedback/review, please click the Submit Now button to submit a ticket, Our support team will check and reply to you within 1 to 2 working days. Please be patient as we make every effort to help you to resolve the issue.
Working Time: 9 AM - 6 PM GMT+8 (Monday to Friday)