Difference between revisions of "2.8inch DPI LCD"

From Waveshare Wiki
Jump to: navigation, search
 
Line 49: Line 49:
 
</source>
 
</source>
 
5. Download the [https://www.waveshare.net/w/upload/b/b5/28DPI-DTBO.zip 2.8inch DPI LCD DTBO] file and extract the dtbo files. Copy these files to the overlays directory (/boot/overlays/),<br />
 
5. Download the [https://www.waveshare.net/w/upload/b/b5/28DPI-DTBO.zip 2.8inch DPI LCD DTBO] file and extract the dtbo files. Copy these files to the overlays directory (/boot/overlays/),<br />
6. Turn on the LCD backlight switch.<br />
+
6. Insert the TF card into the Raspberry Pi, power on the Raspberry Pi, and wait for more than 30 seconds to display normally.
7. Insert the TF card into the Raspberry Pi, power on the Raspberry Pi, and wait for more than 30 seconds to display normally.
 
  
 
==== For Raspberry Pi OS Buster branch and Ubuntu system ====
 
==== For Raspberry Pi OS Buster branch and Ubuntu system ====

Latest revision as of 06:37, 20 September 2022

2.8inch DPI LCD
2.8inch-DPI-LCD-2.jpg

480 x 640, 2.8inch IPS Display for Raspberry Pi, DPI interface, 5-points Touch.
{{{name2}}}

{{{name3}}}

{{{name4}}}

{{{name5}}}

Introduction

480 x 640, 2.8inch IPS Display for Raspberry Pi, DPI interface, 5-points capacitive touch control.

Features

  • 2.8 inch IPS Display, 480 x 640 hardware resolution.
  • Designed for Raspberry Pi, based on Raspberry Pi 40pin GPIO interface.
  • Using DPI666 interface of Raspberry Pi to drive LCD, refresh rate up to 60Hz.
  • Drive capacitive touch through I2C interface of Raspberry Pi, 5-points touch, toughened glass panel, hardness up to 6H.
  • Supports Raspberry Pi OS and Kali systems.

How to use

Hardware connection

Please follow the steps below to slowly install the DPI LCD to the 40PIN GPIO interface of the Raspberry Pi.

2.8inch-DPI-LCD-Manual-10.jpg
2.8inch-DPI-LCD-Manual-11.gif

Software setting

If you don't know the difference between the two branches of Raspberry Pi OS, you can check the following introduction #Introducing the Raspberry Pi OS fork

For Raspberry Pi OS Bullseye branch

Please download the latest version of the image from the Raspberry Pi official website.

1. Download the compressed file to the PC, and extract the img file.
2. Connect the TF card to the PC and use SDFormatter to format the TF card.
3. Open the Win32DiskImager software, select the system image prepared in step 1, and click write to burn the system image.
4. After the programming is completed, open the config.txt file in the root directory of the TF card, add the following code at the end of config.txt and save it

dtoverlay=vc4-kms-v3d
dtoverlay=vc4-kms-DPI-28inch
dtoverlay=waveshare-28dpi-3b-4b   
dtoverlay=waveshare-28dpi-3b
dtoverlay=waveshare-28dpi-4b

5. Download the 2.8inch DPI LCD DTBO file and extract the dtbo files. Copy these files to the overlays directory (/boot/overlays/),
6. Insert the TF card into the Raspberry Pi, power on the Raspberry Pi, and wait for more than 30 seconds to display normally.

For Raspberry Pi OS Buster branch and Ubuntu system

1. Open the config.txt file in the root directory of the TF card, add the following code at the end of config.txt, save and safely eject the TF card.

gpio=0-9=a2
gpio=12-17=a2
gpio=20-25=a2
dtoverlay=dpi24
enable_dpi_lcd=1
display_default_lcd=1
extra_transpose_buffer=2
dpi_group=2
dpi_mode=87
dpi_output_format=0x7F216
hdmi_timings=480 0 26 16 10 640 0 25 10 15 0 0 0 60 0 32000000 1
dtoverlay=waveshare-28dpi-3b-4b
dtoverlay=waveshare-28dpi-3b
dtoverlay=waveshare-28dpi-4b

Note: If it is Raspberry Pi 4, also need to comment out dtoverlay=vc4-fkms-V3D.
2. Download the 2.8inch DPI LCD DTBO file and extract the dtbo files. Copy these files to the overlays directory (/boot/overlays/),
3. Save and quit the TF card safely, and insert the TF card into the Raspberry Pi.
4. Insert the 2.8inch DPI LCD into the 40PIN GPIO interface of the Raspberry Pi, power on the Raspberry Pi, and wait for about 30 seconds to display normally.

Introducing the Raspberry Pi OS fork

On December 2, 2021, the Raspberry Pi OS for Raspberry Pi split into two branches, the Buster branch and the Bullseye branch.

The Buster branch is a continuation of the old system, which is more stable and uses raspicam as the default camera subsystem.

The Bullseye branch adds some new features, including KMS as the default display driver and libcamera as the default camera subsystem.
Image download address
RASPBERRY-PI-OS-BUSTER-BULLSEYE-04-01.png
More detailed information can be found at:

Raspberry Pi Branch Details

Buster Release Notes

Bullseye Release Notes

Notes:The above information was updated on January 24, 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.

Rotation(Working with Raspberry Pi)

Raspberry Pi OS and Kali display rotation

First check whether the KMS or FKMS driver is loaded on the system you are using.

Check method: In /boot/config.txt, check whether the line dtoverlay=vc4-kms-v3d or dtoverlay=vc4-fkms-v3d is turned on.

With KMS or FKMS driver loaded

Use the following command for display rotation:

sudo nano /etc/xdg/lxsession/LXDE-pi/autostart
#Enter the command corresponding to the display rotation angle at the end of the autostart file, and it will take effect after rebooting the system.
#0: rotate 0 degrees; 1: rotate 270 degrees; 2: rotate 180 degrees; 3: rotate 90 degrees
xrandr -o 1
No KMS or FKMS driver loaded

Use the following command for display rotation:

sudo nano /boot/config.txt
#Enter the command corresponding to the display rotation angle at the end of the config.txt file, and it will take effect after rebooting the system.
#0: rotate 0 degrees; 1: rotate 90 degrees; 2: rotate 180 degrees; 3: rotate 270 degrees
display_rotate=3

Touch to Rotate

After the display is rotated, the position of touch is incorrect because the touch doesn’t change with the display angle. So the touch also needs to be modified.

1. Install libinput.

sudo apt-get install xserver-xorg-input-libinput

If the system you installed is Ubuntu or Jetson Nano. 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 part of the touchscreen, add the following statement inside, and then save the file.

Option "CalibrationMatrix" "0 1 0 -1 0 1 0 0 1"

Similar to the picture below:

Touch roate.jpg
5. save and reboot your Pi

sudo reboot

After completing these steps. The LCD could rotate 90 degrees for both display and touch function.

Note:

90 degree: Option "CalibrationMatrix" "0 1 0 -1 0 1 0 0 1"

180 degree: Option "CalibrationMatrix" "-1 0 1 0 -1 1 0 0 1"

270 degree: Option "CalibrationMatrix" "0 -1 1 1 0 0 0 0 1"

Others

Disable power saving

If you want to keep the display turning on all the time, you can disable the power-saving function.
Modify file lightdm.conf

sudo nano /etc/lightdm/lightdm.conf

Find the [SeatDefaults] option and uncomment the line"xserver-command", modify it as below:

#xserver-command=X

Modify this code to

xserver-command=X -s 0 -dpms
  • -s # –Disable the display protecting.
  • dpms Disable power saving.

Reboot

sudo reboot

Control brightness by PWM

If you use Pi4, you need to update wiringPi first:

wget https://project-downloads.drogon.net/wiringpi-latest.deb
sudo dpkg -i wiringpi-latest.deb
gpio -v
# Check if it is 2.52 version

Control the brightness by PWM

gpio -g mode 18 pwm      #Configure the PWM pin
gpio pwmc 100   
gpio -g pwm 18 1023      #Set it brightnest
gpio -g pwm 18 850         #(For Pi4, 850 is darkest; for Pi3, 680 is darkest)
gpio -g mode 18 out      #Free the pin and set it as output

Turn on/off the LCD

You can turn on/off the LCD with the following command.

Note: The command can only work when the PWM pin is free and in output mode.

sudo echo 1 | sudo tee /sys/class/backlight/rpi_backlight/bl_power
sudo echo 0 | sudo tee /sys/class/backlight/rpi_backlight/bl_power

Interface

  • The pin of "NC" means that the touch screen does not occupy this pin, and the user can use it for other applications.
PIN NO. SYMBOL DESCRIPTION
1 NC Not connected
2 5V 5V power
3 VSYNC Vertical synchronization
4 5V 5V Power
5 HSYNC Horizontal synchronization
6 GND Ground
7 B2 RGB signal lines
8 G4 RGB signal lines
9 GND Ground
10 G5 RGB signal lines
11 G7 RGB signal lines
12 PWM Backlight control (Pi4 can only turn on/off the backlight. Only the eralier versions support brightness adjustment with PWM)
13 TP_INT Interrupt pin of touch panel
14 GND Ground
15 R4 RGB signal lines
16 R5 RGB signal lines
17 NC Not connected
18 R6 RGB signal lines
19 TP_SDA The I2C SDA of touch panel
20 GND Ground
21 B7 RGB signal lines
22 R7 RGB signal lines
23 TP_SCL The I2C SCL of touch panel
24 B6 RGB signal lines
25 GND Ground
26 B5 RGB signal lines
27 LCD_CLK Clock pin of LCD panel
28 DE Data enable of LCD panel
29 B3 RGB signal lines
30 GND Ground
31 B4 RGB signal lines
32 G2 RGB signal lines
33 G3 RGB signal lines
34 GND Ground
35 NC Not connected
36 G6 RGB signal lines
37 NC Not connected
38 R2 RGB signal lines
39 GND Ground
40 R3 RGB signal lines



Support

If you require technical support, please go to the Support page and open a ticket.