Difference between revisions of "11.9inch DSI LCD"

From Waveshare Wiki
Jump to: navigation, search
 
(56 intermediate revisions by 5 users not shown)
Line 7: Line 7:
 
|{{#ifeq: {{#urlget:amazon|0}}|{{#urlget:Amazon|0}}| default|}}=display
 
|{{#ifeq: {{#urlget:amazon|0}}|{{#urlget:Amazon|0}}| default|}}=display
 
|website_cn=[https://www.waveshare.net/shop/11.9inch-DSI-LCD.htm 官网]
 
|website_cn=[https://www.waveshare.net/shop/11.9inch-DSI-LCD.htm 官网]
|website_en=[ Website]
+
|website_en=[https://www.waveshare.com/11.9inch-dsi-lcd.htm Website]
|interface1=DSi
+
|interface1=DSI
 
}}
 
}}
 
=Overview=
 
=Overview=
 
==Feature==
 
==Feature==
*11.9inch IPS display with capacitive touch panel, hardware resolution is 320 x 1480.
+
*11.9-inch DSI display with 5-point capacitive touch support.
*Capacitive touch, supports up to 5-point touch.
+
*IPS display panel with a hardware resolution of 320 x 1480.
*Toughened glass capacitive touch panel, 6H hardness.
+
*Toughened glass panel with up to 6H hardness.
 +
*Support Pi5/4B/CM4/3B+/3A+/3B/CM3+/CM3.
 
*DSI interface, refresh rate up to 60Hz.
 
*DSI interface, refresh rate up to 60Hz.
*Working with Raspberry Pi, we provide the driver for Raspberry Pi OS.
+
*When working with Raspberry Pi, supports Bookworm/Bullseye/Buster.
 
*Brightness is adjustable by software.
 
*Brightness is adjustable by software.
*Support Pi 4B/3B+/3A+, CM3+/4,must be used with [https://www.waveshare.com/dsi-cable-15cm.htm adapter cable].
 
  
==Working with RPi==
+
==Hardware Connection==
===Hardware Connection===
+
===Working with Pi4B/3B+/3B/3A+===
1. Turn the DIP switch on the back of the LCD to I2C0 or I2C1 mode, the Bullseye branch uses I2C0, and the Buster branch uses I2C1. The default is I2C0 mode.<br/>
+
1. Use a 15PIN FPC cable to connect the display DSI interface to the DSI interface of the Raspberry Pi board.<br/>
[[File:7.9chCD001.jpg]]<br/>
+
2. The Raspberry Pi is installed on the display board with the back facing down, and the 5V power supply and I2C communication are connected through the 4PIN.<br/>
2. Use a 15PIN FPC cable to connect the 11.9inch DSI LCD to the DSI interface of the Raspberry Pi.<br/>
+
The back lock installation effect is as follows:<br/>
3. Fix the Raspberry Pi to the screen with screws, and pay attention to the alignment of the ejector pins. The final connection is shown below:<br/>
 
 
[[File:7.9inch DSI LCD2.png]]<br/>
 
[[File:7.9inch DSI LCD2.png]]<br/>
Note: If you don't know the difference between the two branches of Raspberry Pi OS, you can check the following #Raspberry Pi OS branch introduction.<br/>
 
4. If the Raspberry Pi and the screen are not locked in the back lock as described above, an additional Dupont cable is required to provide power and I2C communication through the Raspberry Pi.<br/>
 
  
==Software Debugging==
+
===Working with Pi5/CM4/CM3+/CM3===
1) Download image from the [https://www.raspberrypi.com/software/operating-systems/ Raspberry Pi website].
+
1. Use the "DSI-Cable-12cm" ribbon cable to connect the display screen DSI interface to the 22-pin DSI1 interface on the Raspberry Pi board.<br>
 +
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.<br>
 +
'''The installation effect as shown below:'''<br>
 +
[[File:11.9inch DSI LCD Pi5.png]]
  
2) Connect the TF card to the PC, use [http://www.waveshare.com/w/upload/d/d7/Panasonic_SDFormatter.zip SDFormatter] software to format the TF card.
+
=Software Setting=
 +
==For Bookworm and Bullseye System==
 +
*1. Insert the TF card into the PC, download it, and use [https://www.raspberrypi.com/software/ Raspberry Pi Imager] to program the corresponding image.
 +
[[File: 7inch DSI LCD C Image.png]]<br>
 +
*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.
 +
<source lang="c">
 +
dtoverlay=vc4-kms-v3d
 +
#DSI1 Use
 +
dtoverlay=vc4-kms-dsi-waveshare-panel,11_9_inch
 +
#DSI0 Use
 +
#dtoverlay=vc4-kms-dsi-waveshare-panel,11_9_inch,dsi0
 +
</source>
 +
*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.
 +
<div class="toccolours mw-collapsible mw-collapsed">
 +
==For Buster System==
 +
<div class="mw-collapsible-content">
 +
===Method 1: Install Manually===
 +
1) Download the image from the [https://www.raspberrypi.com/software/operating-systems/ Raspberry Pi website].  
  
3) Open the [http://www.waveshare.com/w/upload/7/76/Win32DiskImager.zip Win32DiskImager] software, select the system image downloaded in step 1, and click ‘Write’ to burn the system image.
+
2) Connect the TF card to the PC, and use [https://files.waveshare.com/upload/d/d7/Panasonic_SDFormatter.zip SDFormatter] software to format the TF card.
  
4) After the programming is completed, connect the TF card to the Raspberry Pi, start it and 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.)
+
3) Open the [https://files.waveshare.com/upload/7/76/Win32DiskImager.zip Win32DiskImager] software, select the system image downloaded in step 1, and click 'Write' to burn the system image.
  
 +
4) After the programming is completed, connect the TF card to the Raspberry Pi, start it, and 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.)
 +
<!--
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
 
git clone https://github.com/waveshare/11.9inch-DSI-LCD.git
 
git clone https://github.com/waveshare/11.9inch-DSI-LCD.git
 
cd 11.9inch-DSI-LCD
 
cd 11.9inch-DSI-LCD
#Check the bits of the current system. If your system is 32 bits, then it will enter 32 directory. If your system is 64 bits, then your system will enter 64 directory
+
#Check the bits of the current system. If your system is 32 bits, then it will enter the 32 directory. If your system is 64 bits, then your system will enter 64 directory
 
cd 32
 
cd 32
 
#cd 64
 
#cd 64
#Enter uname -a in the terminal to view the kernel version and enter the corresponding file directory
+
#Enter uname --all in the terminal to view the kernel version and enter the corresponding file directory
 
cd 5.15.32
 
cd 5.15.32
 
sudo ./WS_11_9inchDSI320x1480_MAIN.sh
 
sudo ./WS_11_9inchDSI320x1480_MAIN.sh
 
sudo reboot
 
sudo reboot
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
-->
 +
<source lang="c">
 +
#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 view the kernel version and cd to the corresponding file directory
 +
#6.1.21 then run the following command
 +
cd 6.1.21
 +
 +
#Step 3: Please check the bits of your system, enter the 32 directory for 32-bit systems, and enter the 64 directory for 64-bit systems
 +
cd 32
 +
#cd 64
 +
 +
#Step 4: Enter your corresponding model command to install the driver, pay attention to the selection of the I2C DIP switch
 +
#11.9inch DSI LCD 320×1480 driver:
 +
sudo bash ./WS_xinchDSI_MAIN.sh 119 I2C0
 +
 +
#Step 5: Wait for a few seconds, when the driver installation is complete and no error is prompted, restart and load the DSI driver and it can be used normally
 +
sudo reboot
 +
</source>
 +
 
<font color="#FF0000">
 
<font color="#FF0000">
 
Note: The above steps need to ensure that the Raspberry Pi can be connected to the Internet normally.</font><br/>
 
Note: The above steps need to ensure that the Raspberry Pi can be connected to the Internet normally.</font><br/>
 
5. Wait for the system to restart, it will be able to display and touch normally.
 
5. Wait for the system to restart, it will be able to display and touch normally.
===Rotation===
+
<!--{{Waveshare-DSI-LCD-choose}}-->
====Method 1====
+
 
 +
===Method 2: Program Pre-install Image===
 +
1. Select your corresponding Raspberry Pi version image, download it, and decompress it as a ".img" file.<br/>
 +
'''Raspberry Pi 4B/CM4 version  download:''' [https://drive.google.com/file/d/1jLDQe-9bJgT9N4j6K8wmen64xkQ9yVax/view Waveshare DSI LCD - Pi4 pre-install image]<br/>
 +
'''Raspberry Pi 3B/3B+/CM3 version download:''' [https://drive.google.com/file/d/1lJLzrlXGnWi1E_Yby3tWqKlB50TGtJpn/view Waveshare DSI LCD - Pi3 pre-install image]<br/>
 +
2. Connect the TF card to the PC and use [https://files.waveshare.com/upload/d/d7/Panasonic_SDFormatter.zip SDFormatter] to format the TF card.<br/>
 +
3. Open [https://files.waveshare.com/upload/7/76/Win32DiskImager.zip Win32DiskImager] software, choose the system image prepared in the first step and then click "write" to write the system image.<br/>
 +
4. After the programming is finished, open the config.txt file in the root directory of the TF card, add the following code under [all], save, and eject the TF card safely.<br/>
 +
<syntaxhighlight lang="c">
 +
dtoverlay=WS_xinchDSI_Screen,SCREEN_type=6,I2C_bus=10
 +
dtoverlay=WS_xinchDSI_Touch,invertedx,invertedy,I2C_bus=10
 +
</syntaxhighlight>
 +
5. Connect the TF card to the Raspberry Pi, and start the Raspberry Pi, wait for about 30 seconds to display and touch normally. <br>
 +
===Buster System Notices===
 +
1. Update the system and run the following commands:
 +
<pre>
 +
sudo apt-get update
 +
sudo apt-get full-upgrade
 +
</pre>
 +
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.<br>
 +
2. Replace the main board.<br>
 +
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. <br>
 +
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]].
 +
<!--
 +
==Rotation==
 +
===Graphical Interface Rotation===
 
In the start menu, select: Preferences->Screen Configuration->Configure->Screens->DSI-1->Orientation, select the corresponding angle in it, click "√", select Yes, and restart.<br/>
 
In the start menu, select: Preferences->Screen Configuration->Configure->Screens->DSI-1->Orientation, select the corresponding angle in it, click "√", select Yes, and restart.<br/>
 
[[File:4inch-DSI-LCD-Manual-02.jpg]]<br/>
 
[[File:4inch-DSI-LCD-Manual-02.jpg]]<br/>
  
====Method 2====
+
===Method 2: Rotation Display In Lite Version===
Display Rotation<br/>
 
 
<pre>
 
<pre>
sudo nano /etc/xdg/lxsession/LXDE-pi/autostart
+
sudo nano /boot/cmdline.txt
#Enter the command corresponding to the display rotation angle at the end of the autostart file, and it will take effect after restarting
+
#Add a command corresponding to the display rotation angle at the beginning of the cmdline.txt file, save it, and restart it to take effect
 
#display rotated 90 degrees
 
#display rotated 90 degrees
xrandr --output DSI-1 --rotate right
+
video=DSI-1:320x1480M@60,rotate=90
 
#display rotated 180 degrees
 
#display rotated 180 degrees
xrandr --output DSI-1 --rotate inverted
+
video=DSI-1:320x1480M@60,rotate=180
 
#display rotated 270 degrees
 
#display rotated 270 degrees
xrandr --output DSI-1 --rotate left
+
video=DSI-1:320x1480M@60,rotate=270
</pre>
 
Touch to Rotate:<br/>
 
<pre>
 
sudo nano /boot/config.txt
 
#Modify the instruction of the touch rotation angle at the end of the config.txt file, and it will take effect after restarting (there is a 0° touch direction instruction by default)
 
#90°:
 
dtoverlay=WS_11_9inchDSI400x1280_Touch,invertedy,swappedxy
 
#180°:
 
#dtoverlay=WS_11_9inchDSI400x1280_Touch
 
#270°:
 
#dtoverlay=WS_11_9inchDSI400x1280_Touch,invertedx,swappedxy
 
#0°:
 
#dtoverlay=WS_11_9inchDSI400x1280_Touch,invertedx,invertedy
 
 
</pre>
 
</pre>
  
===Backlight Control===
+
[[File:2.8inch DSI LCD05582.png]]
====Method 1====
 
Put dtoverlay=WS_11_9inchDSI320x1480_Screen in the /boot/config.txt file.<br/>
 
 
 
Change to: dtoverlay=WS_11_9inchDSI320x1480_Screen,Backlight=x # (x is 0-255, 0 is the darkest, 255 is the brightest, the default is the brightest.)<br/>
 
  
Such as: dtoverlay=WS_11_9inchDSI320x1480_Screen,Backlight=255.<br/>
 
  
Restart after reboot.<br/>
+
==Touch To Rotate==
 
+
sudo nano /boot/config.txt
====Method 2====
+
#Modify the instruction of the touch rotation angle at the end of the config.txt file, and it will take effect after restarting (there is a 0° touch direction command by default)
Corresponding application is provided (this program is only used for raspbian system), users can download, install and use in the following ways:
+
#90
 +
dtoverlay=WS_xinchDSI_Touch,invertedx,invertedy
 +
#180
 +
dtoverlay=WS_xinchDSI_Touch,invertedy,swappedxy
 +
#270
 +
#dtoverlay=WS_xinchDSI_Touch
 +
#0
 +
#dtoverlay=WS_xinchDSI_Touch,invertedx,swappedxy
 +
-->
 +
</div></div>
 +
{{800*480 DSI LCD software backlight}}
 +
<!--
 +
==Backlight Control==
 +
===Method 1: Graphical Interface Dimming===
 +
Using the application provided by Waveshare:<br/>
 
<pre>
 
<pre>
cd 11.9inch-DSI-LCD
+
cd Waveshare-DSI-LCD
cd brightness
+
# Determine the currently used kernel version, such as the 5.15.61 kernel, and run the following command
 +
cd 5.15.61
 +
#Check the bits of the system, the 32-bit system enters the 32 directory, and the 64-bit system enters 64 directory
 +
cd 32
 +
#cd 64
 +
cd Backlight
 
sudo ./install.sh
 
sudo ./install.sh
 
</pre>
 
</pre>
After the installation is complete, you can open the program in the Start menu - "Accessories - "Brightness, as shown below:<br/>
+
After the installation is complete, you can open the program in the Start menu - > Accessories - > Brightness, as shown below:<br/>
[[File:11_iSpt.png|800px]]<br/>
+
[[File:top-2.png]]
 
 
===How To Use CSI In Buster===
 
Note: If you don't know the difference between the two branches of Raspberry Pi OS, you can check the following #Raspberry Pi OS branch introduction.<br/>
 
 
 
*Description
 
When the DSI LCD is used, the KMS display driver needs to be loaded, which will clash with the default camera subsystem raspicam of the Buster branch.<br/>
 
 
 
The libcamera camera subsystem needs to be compiled and installed before the CSI camera related to the Raspberry Pi can be used normally.<br/>
 
 
 
If you use the Bullseye branch, no operation is required and you can use the Raspberry Pi related CSI camera directly.<br/>
 
 
 
*Hardware Connection
 
Turn off the Raspberry Pi first, connect the Raspberry Pi camera, and power on the Raspberry Pi.<br/>
 
<font color="#FF0000">
 
Note: It is not allowed to plug and unplug the Raspberry Pi camera when power is on, otherwise it may cause the related circuit to burn out.</font>
 
*Update and open the camera interface
 
The libcamera-apps application supports Pi3 and Pi4. Before installing, you need to update your Raspberry Pi software:
 
<pre>
 
sudo apt update
 
</pre>
 
Set the correct dtoverlay in /boot/config.txt according to the actual camera.
 
<pre>
 
sudo nano /boot/config.txt
 
</pre>
 
Add at the end of the document:
 
<pre>
 
# Take RPi Camera V2 as an example, the photosensitive chip is Sony IMX219, then add the following code:
 
dtoverlay=imx219
 
#Similarly, OV5647 chip:
 
#dtoverlay=ov5647
 
#IMX477 chip:
 
#dtoverlay=imx477
 
</pre>
 
Open the camera interface and execute the following commands:<br/>
 
<pre>
 
sudo raspi-config
 
</pre>
 
Select 3 Inteface Options -> P1 Camera -> Enter -> Yes -> Finish -> Yes, then the Raspberry Pi will restart.
 
 
 
===Install Libcamera===
 
====Method 1====
 
<font color="#FF0000">
 
Note 1: It is recommended to use Pi4 to install and compile libcamera-apps instead of Pi3, because Pi4 has stronger performance and compilation is not prone to errors. The compiled image can also be used on Pi3.<br/>
 
  
Note 2: In the process of installing libcamera, it is very likely that some steps will go wrong. If you are a novice, it is recommended to directly burn #Method 1: Use a pre-installed driver image, in which we have installed libcamera.</font><br/>
+
===Method 2: Lite Version Dimming Command===
Install all required dependencies for libcamera:<br/>
+
To adjust the system command of the lite version, after entering the root privilege, execute the following command on the Raspberry Pi terminal:<br/>
<pre>
+
echo X > /sys/waveshare/rpi_backlight/brightness
sudo apt install libboost-dev -y
+
(X value in the range of 0~255)<br/>
sudo apt install libgnutls28-dev openssl libtiff5-dev -y
+
For example:<br/>
sudo apt install qtbase5-dev libqt5core5a libqt5gui5 libqt5widgets5 -y
 
sudo apt install meson -y
 
sudo pip3 install pyyaml ply
 
sudo pip3 install --upgrade meson
 
</pre>
 
Now we can download and build libcamera:<br/>
 
<pre>
 
git clone git://linuxtv.org/libcamera.git
 
cd libcamera
 
meson build
 
cd build
 
meson configure -Dpipelines=raspberrypi -Dtest=false
 
cd ..
 
ninja -C build
 
sudo ninja -C build install
 
</pre>
 
*'''libepoxy'''
 
Libcamera-apps requires libepoxy to be installed. First, install its prerequisites:<br/>
 
<pre>
 
sudo apt install libegl1-mesa-dev
 
</pre>
 
Then download and build libepoxy:<br/>
 
<pre>
 
cd
 
git clone https://github.com/anholt/libepoxy.git
 
cd libepoxy
 
mkdir _build
 
cd _build
 
meson
 
ninja
 
sudo ninja install
 
</pre>
 
*'''libcamera-apps'''
 
Libcamera-apps further operates as follows:<br/>
 
<pre>
 
sudo apt install cmake libboost-program-options-dev libdrm-dev libexif-dev
 
</pre>
 
To build libcamera-apps, enter:<br/>
 
<pre>
 
cd
 
git clone https://github.com/raspberrypi/libcamera-apps.git
 
cd libcamera-apps
 
mkdir build
 
cd build
 
cmake ..
 
make -j4
 
</pre>
 
Finally, use the libcamera-hello command to open a 5-second preview camera screen:<br/>
 
<pre>
 
./libcamera-hello
 
</pre>
 
Introduction to related instructions:<br/>
 
<pre>
 
libcamera-still # can be used instead of raspistill.
 
libcamera-vid # can be used instead of raspivid.
 
libcamera-raw A version of #libcamera-vid that saves uncompressed raw video files.
 
libcamera-hello #Startup command, run it to see the camera image on the display.
 
libcamera-jpeg # A stripped-down version of libcamera - can still run preview and capture JPEG, uninterrupted by other options.
 
</pre>
 
<font color="#FF0000">
 
Note: After installing libcamera-apps, the original DSI driver will be overwritten. In order to make the DSI LCD work normally, you need to reinstall the driver:</font><br/>
 
 
<pre>
 
<pre>
#For 7inch DSI LCD (C) use:
+
sudo su root
cd 7inch-DSI-LCD-C
+
echo 100 > /sys/waveshare/rpi_backlight/brightness
cd xxx/xxx #Use different kernels, different interfaces, need to enter different directories
 
sudo ./WS_7inchDSI1024x600_MAIN.sh
 
sudo reboot
 
#For 4inch DSI LCD use:
 
cd 4inch-DSI-LCD
 
cd xxx/xxx #Different kernels and interfaces require different directories
 
sudo ./WS_4inchDSI480x800_MAIN.sh
 
sudo reboot
 
#For 2.8inch DSI LCD use:
 
cd 2.8inch-DSI-LCD
 
cd xxx/xxx #Different kernels and interfaces require different directories
 
sudo ./WS_2_8inchDSI480x640_MAIN.sh
 
sudo reboot
 
#For 7.9inch DSI LCD use:
 
cd 7.9inch-DSI-LCD
 
cd xxx/xxx #Different kernels and interfaces require different directories
 
sudo ./WS_7_9inchDSI400x1280_MAIN.sh
 
sudo reboot
 
#For 11.9inch DSI LCD use:
 
cd 11.9inch-DSI-LCD
 
cd xxx/xxx #Different kernels and interfaces require different directories
 
sudo ./WS_11_9inchDSI320x1480_MAIN.sh
 
sudo reboot
 
 
</pre>
 
</pre>
 
+
-->
====Method 2====
+
<!--
Since there are many steps to install libcamera, it takes a long time. So we provide a script for direct installation.<br/>
+
==Libcamera Installation Method 2==
 
+
Since there are many steps to install libcamera, it takes a long time. We provide a script for direct installation.<br/>
 
The specific operation steps are as follows:<br/>
 
The specific operation steps are as follows:<br/>
 
+
1. Update the list of available packages<br/>
1. Update the list of available packages.<br/>
+
sudo apt update
<pre>
+
2. Download libcamera-install file and install<br/>
sudo apt update
 
</pre>
 
2. Download the libcamera-install file and install it.<br/>
 
 
<pre>
 
<pre>
 
git clone https://github.com/waveshare/libcamera-install.git
 
git clone https://github.com/waveshare/libcamera-install.git
Line 257: Line 194:
 
sudo ./install_libcamera_all.sh
 
sudo ./install_libcamera_all.sh
 
</pre>
 
</pre>
3. When echo "install Succeed" appears, the installation is successful. When echo "install Fail" appears, the installation failed.<br/>
+
3. The echo "install Succeed" appears to indicate a successful installation. When echo "install Fail" appears, the installation failed.<br/>
 
+
After successful installation, three folders, libcamera, libcamera-apps, and libepoxy will be generated in the libcamera-install directory. If you need to reinstall, you should delete these three folders first, and then reinstall.<br/>
After successful installation, three folders, libcamera, libcamera-apps and libepoxy will be generated in the libcamera-install directory. If you need to reinstall, you should delete these three folders first, and then reinstall.<br/>
+
<font color="#FF0000">Affected by the network, the installation may be unsuccessful if you run it once, and you can run it several times.<br/>
 
+
Note: After installing libcamera-apps, the original DSI driver will be overwritten. To make the DSI LCD work normally, you need to reinstall the driver:</font><br/>
Affected by the network, the installation may be unsuccessful if you run it once, and you can run it several times.<br/>
 
Note: After installing libcamera-apps, the original DSI driver will be overwritten. In order to make the DSI LCD work normally, you need to reinstall the driver:
 
 
<pre>
 
<pre>
 
#For 7inch DSI LCD (C) use:
 
#For 7inch DSI LCD (C) use:
Line 289: Line 224:
 
sudo reboot
 
sudo reboot
 
</pre>
 
</pre>
4. Reboot
+
4. reboot
<pre>
+
sudo reboot
sudo reboot
+
5. Test, and display the camera image for 5 seconds
</pre>
 
5. Test, and display 5 seconds camera image.
 
 
<pre>
 
<pre>
 
cd /home/pi/libcamera-install/libcamera-apps/build
 
cd /home/pi/libcamera-install/libcamera-apps/build
Line 300: Line 233:
 
*Advanced
 
*Advanced
 
For more instructions on using libcamera, please refer to:<br/>
 
For more instructions on using libcamera, please refer to:<br/>
 +
https://www.raspberrypi.org/documentation/linux/software/libcamera/README.md<br/>
 +
https://github.com/raspberrypi/libcamera-apps/blob/main/README.md<br/>
 +
https://www.raspberrypi.org/documentation/linux/software/libcamera/rpi_SOFT_libcamera_1p2.pdf<br/>
 +
-->
 +
 +
<!--
 +
==Raspberry Pi OS==
 +
On December 2, 2021, the Raspberry Pi OS for Raspberry Pi split into two branches, the Buster branch, and the Bullseye branch.<br/>
 +
 +
The Buster branch is a continuation of the old system, which is more stable and uses raspicam as the default camera subsystem.<br/>
 +
 +
The Bullseye branch adds some new features, including KMS as the default display driver and libcamera as the default camera subsystem.<br/>
 +
 +
For the project used with this display, we recommend users use the Bullseye branch system, because on this system, it can be used normally with simple configuration, and the default I2C0 in the DSI interface can be used for communication without occupying the Raspberry Send I2C1 in 40PIN GPIO.<br/>
 +
 +
For users who must use the Buster branch, we also provide related drivers, but because the DSI driver needs to load the KMS display driver by default, the default camera subsystem of raspicam under the Buster branch cannot be used and needs to be recompiled and installed. The libcamera camera subsystem (for beginners, it is difficult), and to make the raspicam camera subsystem not conflict with the DSI driver, the DSI driver will occupy the I2C1 in the 40PIN GPIO of the Raspberry Pi.<br/>
 +
 +
For the Bullseye branch, the Micro Snow R&D team will maintain the update for a long time. As for the Buster branch, we will continue to support it until June 2024 (because the Raspberry Pi Foundation will not support the Buster branch after this time).<br/>
 +
 +
The following is a list of system support for this display:<br/>
 +
{|class="wikitable" style="text-align:center"
 +
!System!!Branch!!Operating System Bits
 +
|-
 +
|2022-01-28-raspios-bullseye-arm64||bullseye||64 bits
 +
|-
 +
|2022-01-28-raspios-bullseye-armhf||bullseye||32 bits
 +
|-
 +
|2022-01-28-raspios-buster-armhf||buster||32 bits
 +
|-
 +
|2021-10-30-raspios-bullseye-armhf||bullseye||32 bits
 +
|-
 +
|2021-12-02-raspios-buster-armhf||buster||32 bits
 +
|}
 +
[https://www.raspberrypi.com/software/operating-systems/ Download Images]<br/>
 +
[[File:dsi-lcd.png]]<br/>
 +
Raspberry Pi OS and Raspberry Pi OS (64-bit) are the Bullseye branch, and Raspberry Pi OS (Legacy) is the Buster branch.<br/>
 +
More detailed information can be found at:<br/>
 +
[https://www.raspberrypi.com/news/new-old-functionality-with-raspberry-pi-os-legacy/ Raspberry Pi Branch Details]<br/>
 +
 +
[https://downloads.raspberrypi.org/raspios_oldstable_armhf/release_notes.txt Buster]<br/>
 +
 +
[https://downloads.raspberrypi.org/raspios_armhf/release_notes.txt Bullseye]<br/>
 +
<font color="#afafaf">Note: The above information was updated on February 10, 2022. Due to the frequent update of the Raspberry Pi image, when you see this information, the relevant information may be out of date. The actual performance of the image shall prevail. This is for reference only .</font>
 +
-->
 +
{{DSI-LCD-Bookworm-Rotate}}
  
https://www.raspberrypi.org/documentation/linux/software/libcamera/README.md<br/>
+
== Bullseye/Buster Display Rotation==
 +
* 1. Open "Screen Configuration" application:<br>
 +
[[File:DSI-LCD-Bullseye-Rotate-02.png|600px]]
 +
* 2. Enter "Screen"->"DS-1"->"Orientation", select the rotation direction, and then click on "Apply". <br>
 +
[[File:DSI-LCD-Bullseye-Rotate-03.png|600px]][[File:DSI-LCD-Bullseye-Rotate-04.png|400px]]
 +
==Bullseye/Buster Touch Rotation==
 +
<pre>
 +
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)
 +
#90°:
 +
dtoverlay=WS_xinchDSI_Touch,invertedx,invertedy
 +
#180°:
 +
dtoverlay=WS_xinchDSI_Touch,invertedy,swappedxy
 +
#270°:
 +
#dtoverlay=WS_xinchDSI_Touch
 +
#0°:
 +
dtoverlay=WS_xinchDSI_Touch,invertedx,swappedxy
 +
</pre>
 +
==lite Version Rotation==
 +
<pre>
 +
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:320x1480M@60,rotate=90
 +
#Display rotates 180°
 +
video=DSI-1:320x1480M@60,rotate=180
 +
#Display rotates 270°
 +
video=DSI-1:320x1480M@60,rotate=270
 +
</pre>
  
https://github.com/raspberrypi/libcamera-apps/blob/main/README.md<br/>
+
==Sleep Mode==
 +
Run the following commands to enter the sleep mode:
 +
xset dpms force off
  
https://www.raspberrypi.org/documentation/linux/software/libcamera/rpi_SOFT_libcamera_1p2.pdf<br/>
+
==Disable Touch==
 +
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):<br/>
 +
disable_touchscreen=1
 +
Note: After adding the command, it needs to be restarted to take effect.
  
 
=Resource=
 
=Resource=
 
==Software==
 
==Software==
*[https://{{SERVERNAME}}/w/upload/d/d7/Panasonic_SDFormatter.zip Panasonic_SDFormatter]
+
*[https://files.waveshare.com/upload/d/d7/Panasonic_SDFormatter.zip Panasonic_SDFormatter]
*[https://{{SERVERNAME}}/w/upload/7/76/Win32DiskImager.zip Win32DiskImager]
+
*[https://files.waveshare.com/upload/7/76/Win32DiskImager.zip Win32DiskImager]
*[https://{{SERVERNAME}}/w/upload/5/56/Putty.zip putty]
+
*[https://files.waveshare.com/upload/5/56/Putty.zip putty]
 +
==3D Drawing==
 +
*[https://files.waveshare.com/upload/0/01/119inch-lcd-dsi-asm-20221112.zip 11.9inch DSI LCD 3D Drawing]
 +
==Pre-install image==
 +
*[https://drive.google.com/file/d/1JmA8A_h7qf5HROfE6fVvRA8H0eCe7daX/view Waveshare DSI LCD - Pi4 pre-install image]
 +
*[https://drive.google.com/file/d/1lJLzrlXGnWi1E_Yby3tWqKlB50TGtJpn/view?usp=sharing Waveshare DSI LCD - Pi3 pre-install image]
 +
 
 +
=FAQ=
 +
{{FAQ|How to replace the logo image of Raspberry Pi Booting?
 +
|Replace the custom image with the image in this directory /usr/share/plymouth/themes/pix/splash.png
 +
}}
 +
=Support=
 +
{{Servicebox1}}

Latest revision as of 01:20, 26 March 2024

11.9inch DSI LCD
11.9inch DSI LCD.png

320 x 1480, RPI, DSI
{{{name2}}}

{{{name3}}}

{{{name4}}}

{{{name5}}}

Overview

Feature

  • 11.9-inch DSI display with 5-point capacitive touch support.
  • IPS display panel with a hardware resolution of 320 x 1480.
  • Toughened glass panel with up to 6H hardness.
  • Support Pi5/4B/CM4/3B+/3A+/3B/CM3+/CM3.
  • DSI interface, refresh rate up to 60Hz.
  • When working with Raspberry Pi, supports Bookworm/Bullseye/Buster.
  • Brightness is adjustable by software.

Hardware Connection

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

1. Use a 15PIN FPC cable to connect the display DSI interface to the DSI interface of the Raspberry Pi board.
2. The Raspberry Pi is installed on the display board with the back facing down, and the 5V power supply and I2C communication are connected through the 4PIN.
The back lock installation effect is as follows:
7.9inch DSI LCD2.png

Working with Pi5/CM4/CM3+/CM3

1. Use the "DSI-Cable-12cm" ribbon cable to connect the display screen DSI interface to the 22-pin DSI1 interface on the Raspberry Pi board.
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.
The installation effect as shown below:
11.9inch DSI LCD Pi5.png

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,11_9_inch
#DSI0 Use
#dtoverlay=vc4-kms-dsi-waveshare-panel,11_9_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 Manually

1) Download the image from the Raspberry Pi website.

2) Connect the TF card to the PC, and use SDFormatter software to format the TF card.

3) Open the Win32DiskImager software, select the system image downloaded in step 1, and click 'Write' to burn the system image.

4) After the programming is completed, connect the TF card to the Raspberry Pi, start it, and 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 view the kernel version and cd to the corresponding file directory
#6.1.21 then run the following command
cd 6.1.21
 
#Step 3: Please check the bits of your system, enter the 32 directory for 32-bit systems, and enter the 64 directory for 64-bit systems
cd 32
#cd 64
 
#Step 4: Enter your corresponding model command to install the driver, pay attention to the selection of the I2C DIP switch
#11.9inch DSI LCD 320×1480 driver:
sudo bash ./WS_xinchDSI_MAIN.sh 119 I2C0
 
#Step 5: Wait for a few seconds, when the driver installation is complete and no error is prompted, restart and load the DSI driver and it can be used normally
sudo reboot

Note: The above steps need to ensure that the Raspberry Pi can be connected to the Internet normally.
5. Wait for the system to restart, it will be able to display and touch normally.

Method 2: Program Pre-install Image

1. Select your corresponding Raspberry Pi version image, download it, and decompress it as a ".img" file.
Raspberry Pi 4B/CM4 version download: Waveshare DSI LCD - Pi4 pre-install image
Raspberry Pi 3B/3B+/CM3 version download: Waveshare DSI LCD - Pi3 pre-install image
2. Connect the TF card to the PC and use SDFormatter to format the TF card.
3. Open Win32DiskImager software, choose the system image prepared in the first step and then click "write" to write the system image.
4. After the programming is finished, open the config.txt file in the root directory of the TF card, add the following code under [all], save, and eject the TF card safely.

dtoverlay=WS_xinchDSI_Screen,SCREEN_type=6,I2C_bus=10
dtoverlay=WS_xinchDSI_Touch,invertedx,invertedy,I2C_bus=10

5. Connect the TF card to the Raspberry Pi, and start the Raspberry Pi, wait for about 30 seconds to display and touch normally.

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) 
#90°:
dtoverlay=WS_xinchDSI_Touch,invertedx,invertedy
#180°:
dtoverlay=WS_xinchDSI_Touch,invertedy,swappedxy
#270°:
#dtoverlay=WS_xinchDSI_Touch
#0°:
dtoverlay=WS_xinchDSI_Touch,invertedx,swappedxy

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:320x1480M@60,rotate=90
#Display rotates 180°
video=DSI-1:320x1480M@60,rotate=180
#Display rotates 270°
video=DSI-1:320x1480M@60,rotate=270

Sleep Mode

Run the following commands to enter the sleep mode:

xset dpms force off

Disable Touch

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.

Resource

Software

3D Drawing

Pre-install image

FAQ

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

{{{5}}}


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)