3.4inch DSI LCD (C)

From Waveshare Wiki
Jump to: navigation, search

Feature

  • 3.4-inch DSI round display with 10-point capacitive touch.
  • IPS display panel with a hardware resolution of 800×800.
  • Up to 6H hardness toughened glass panel.
  • Optical bonding technology for clearer imaging.
  • Support Pi5/4B/CM4/3B+/3A+/3B/CM3+/CM3.
  • Directly drive LCD via Raspberry Pi's DSI interface, refresh rate up to 60Hz.
  • When working with Raspberry Pi, support Bookworm/Bullseye/Buster.
  • Support adjusting the backlight via the software.

Hardware Connection

Working with Pi4B/3B+/3B/3A+

1. Connect the DSI connector of the display to the DSI connector on the Raspberry Pi board with a 15PIN FPC cable.
2. Install the Raspberry Pi back side down to the display backplane and connect the 5V power supply and I2C communication through the 4PIN.
3. The final connection is shown in the following figure.

3.4inch DSI LCD (C)01.png

Working with Pi5/CM4/CM3+/CM3

1. Use the "DSI-Cable-12cm" ribbon cable to connect the LCD screen's DSI interface to the Raspberry Pi's 22PIN DSI1 interface.
2. Install the Raspberry Pi with its back facing downwards onto the display board, and connect it to the 5V power supply and I2C communication via the 4-pin header.
3.4inch DSI LCD (C) pi5.jpg

Software Setting

For Bookworm and Bullseye System

  • 1. Insert the TF card into the PC, download it, and use Raspberry Pi Imager to program the corresponding image.

7inch DSI LCD C Image.png

  • 2. After programming the image, open the "config.txt" file located in the root directory of the TF card. Add the following code at the end of config.txt, save the file, and safely eject the TF card.
Note: As Pi 5/CM4/CM3+/CM3 has two MIPI DSI interfaces, please ensure to use the correct DSI interface and command. DSI1 is recommended by default.
dtoverlay=vc4-kms-v3d
#DSI1 Use
dtoverlay=vc4-kms-dsi-waveshare-panel,3_4_inch
#DSI0 Use
#dtoverlay=vc4-kms-dsi-waveshare-panel,3_4_inch,dsi0
  • 3. Insert the TF card into the Raspberry Pi, power on the Raspberry Pi, and wait for a few seconds. After the system boots up, you should be able to enter the display interface and the LCD should touch normally.

For Buster System

Method 1: Install Driver Manually

1. Download the latest image from the Raspberry Pi website, download the compressed file to the PC, and then unzip it to get the ".img" file.
2. Connect the TF card to the PC, and format the TF card with the SDFormatter.
3. Open Win32DiskImager, choose the system image prepared in the first step, and click 'Write' to program the system image.
4. After programming, connect the TF card to the Raspberry Pi, boot the Raspberry Pi, and then log in to the terminal of the Raspberry Pi (you can connect the Raspberry Pi to an HDMI display or log in remotely with ssh).
#Step 1: Download and enter the Waveshare-DSI-LCD driver folder.
git clone https://github.com/waveshare/Waveshare-DSI-LCD
cd Waveshare-DSI-LCD
 
#Step 2: Enter uname --all in the terminal to check the kernel version and type cd to the corresponding file directory
#For 6.1.21, run the following command.
cd 6.1.21
 
#Step 3: Please check the system bits you are currently using, the 32 directory is for a 32-bit system, and the 64 directory is for a 64-bit system.
cd 32
#cd 64
 
#Step 4: Enter your corresponding model command to install the driver, pay attention to the I2C dip switch selection
#3.4inch DSI LCD (C) 800×800 driver.
sudo bash ./WS_xinchDSI_MAIN.sh 34C I2C0
 
#Step 5: Wait for a few seconds, when the driver installation is finished and there is no error, reboot to load the DSI driver for normal use.
sudo reboot

#Note: The above steps need to ensure that the Raspberry Pi can be connected to the Internet properly.

5. After the system reboots, it can display and be touched normally.

Method 2: Program the Pre-install Image

1. Click to download Waveshare DSI LCD - Pi4 pre-install image and then unzip it to get the ".img" file.
2. Connect the TF card to the PC, and format the TF card with SDFormatter.
3. Open Win32DiskImager, choose the system image prepared in the first step, and click "write" to program the system image.
4. After writing, open the config.txt file in the TF card root directory. Add the following code under [all], save, and then safely remove the TF card.
dtoverlay=WS_xinchDSI_Screen,SCREEN_type=9,I2C_bus=10
dtoverlay=WS_xinchDSI_Touch,invertedy,swappedxy,I2C_bus=10
5. Insert the TF card into the Raspberry Pi, boot it, and then it can display and be touched normally after 30 seconds.

Buster System Notices

1. Update the system and run the following commands:

sudo apt-get update
sudo apt-get full-upgrade

Note: After updating the system, some diver files installed before may be covered, and you need to install the driver again so that it can display normally.
2. Replace the main board.
If the driver installed was for the Raspberry Pi 4 Model B and the user decides to change the mainboard, for example, to the Raspberry Pi 3 Model B+, it may result in the display screen not showing properly.
This is because the Pi 4 and Pi 3 require loading different driver files. To ensure proper display functionality on the new mainboard, the user needs to reinstall the drivers according to the instructions #For Buster System.

Backlight Control

WaveShare provides the corresponding demo for the application (only supports Bookworm and Bullseye systems). Users can install it by the following commands:

wget https://files.waveshare.com/upload/f/f4/Brightness.zip
unzip Brightness.zip
cd Brightness
sudo chmod +x install.sh
./install.sh

After installation, you can open it: Menu -》Accessories -》Brightness:

43H-800480-IPS07.GIF

In addition, you can also input the following commands to control the backlight brightness:

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

Where X indicates any number from 0 to 255. 0 means the backlight is the darkest, and 255 means the backlight is the brightest. 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

Bookworm Touchscreen Rotation

  • 1. Open "Screen Configuration" application:

DSI-LCD-Bookworm-Rotate-01.png

  • 2. Enter "Screen" -> "DS-1" -> "Touchscreen", and select "6-0038 generic ft5x06(79)".

DSI-LCD-Bookworm-Rotate-02.png

  • 3. Click "Apply", and then close the current window. Reboot according to the pop-up prompts to complete the specified touchscreen;

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

  • 4. Enter "Screen" -> "DS-1"->"Orientation", and select the rotation direction. Then click on "Apply".

DSI-LCD-Bookworm-Rotate-04.png
Note: Only the Bookworm system supports the above-synchronized rotation method, for Bullseye and Butser systems, after displaying the rotation, you need to set the touch rotation additionally.

Bullseye/Buster Display Rotation

  • 1. Open "Screen Configuration" application:

DSI-LCD-Bullseye-Rotate-02.png

  • 2. Enter "Screen"->"DS-1"->"Orientation", select the rotation direction, and then click on "Apply".

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

Bullseye/Buster Touch Rotation

sudo nano /boot/config.txt
#Change the command for the touch rotation angle at the end of the config.txt file, reboot it to take effect (the command for 0° touch direction exists by default) 
#0°:
dtoverlay=WS_xinchDSI_Touch,invertedx,swappedxy
#90°:
dtoverlay=WS_xinchDSI_Touch,invertedx,invertedy
#180°:
dtoverlay=WS_xinchDSI_Touch,invertedy,swappedxy
#270°:
dtoverlay=WS_xinchDSI_Touch

lite Version Rotation

sudo nano /boot/cmdline.txt
#Add the command to display the rotation angle at the beginning of the cmdline.txt file, save and reboot to take effect
#Display rotates 90°
video=DSI-1:800x800M@60,rotate=90
#Display rotates 180°
video=DSI-1:800x800M@60,rotate=180
#Display rotates 270°
video=DSI-1:800x800M@60,rotate=270

Sleep Mode

Run the following commands on the Raspberry Pi, and the screen can enter the sleep mode:

xset dpms force off

Disable Touching

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

disable_touchscreen=1

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

FAQ

 Answer:
Replace the custom image with the image in this directory /usr/share/plymouth/themes/pix/splash.png.

{{{5}}}


Resource

3D Drawing

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 AM GMT+8 (Monday to Friday)