2.8inch RPi LCD (A)
| ||
Introduction
320 × 240, 2.8inch Resistive Touch Screen TFT LCD, designed for Raspberry Pi.
More |
About Revision
- The 2.8inch RPi LCD (A) was updated to Rev2.1 because of the shortages of controllers.
- In terms of appearance, LCD size is no different, but the software needs to be updated, Rev2.1 version to add a backlight PWM control function (the latest driver is required).
- Users can judge the old and new versions by the silkscreen on the back of the module. If the back side of the screen print has Rev2.1, then it is the new version.
Features
- 320 × 240 hardware resolution, support touch function.
- Resistive touch control.
- It is compatible and can be directly inserted into any version of Raspberry Pi.
- Drivers provided (works with your own Raspbian/Ubuntu/Kali and Retropie system directly).
- Support FBCP software driver, can set the software resolution and dual-screen display.
- As big as your Raspberry Pi.
- Immersion gold with detailed design.
Getting Started
Hardware Connection
- There are 40 pins on Raspberry Pi, but there are 26 pins on the LCD, so you should pay attention to connecting the pins to your Pi accordingly.
Install the touch driver
The RPi LCD can be driven in two ways: Method 1. Install a driver to your Raspbian OS. Method 2. Use the Ready-to-use image file of which the LCD driver was pre-installed.
Method 1. Driver installation
Please download the latest version of the image on the Raspberry Pi official website. (Raspbian/Ubuntu Mate/Kali or Retropie)
1) Download the compressed image file to the PC, and unzip it to get the .img file.
2) Connect the TF card to the PC, open the Win32DiskImager software, select the system image downloaded in step 1, and click 'Write' to write the system image. ( How to write an image to a micro SD card for your Pi? See RPi Image Installation Guides for more details)
3) Connect the TF card to the Raspberry Pi, and start the Raspberry Pi. The LCD will display after booting up, and then log in to the Raspberry Pi terminal,(You may need to connect a keyboard and HDMI LCD to Pi for driver installation, or log in remotely with SSH).
4) Then open the terminal of Raspberry Pi to install the touch driver.
git clone https://github.com/waveshare/LCD-show.git cd LCD-show/
Note: The Raspberry Pi must be connected to the network, or else the touch driver won't be successfully installed.
chmod +x LCD28-show If it is an old version, execute the following code: sudo ./LCD28-show If it is a new version, execute the following code: sudo ./LCD28-show-V2
The touch function will work after restart. For ease of use, you can set the screen orientation, see: #Screen orientation settings.
Notes:
- 1. Executing apt-get upgrade will cause the LCD to fail to work properly. In this case, you need to edit the config.txt file in the SD card and delete this sentence: dtoverlay=ads7846.
- 2. Using Raspbian-lite, the command of the touch driver installation should be:
./LCD28-show lite
Note: for Bullseye and Bookworm systems, you need to manually configure it: 2.8inch RPi LCD (A) Manual Configuration
Method 2. Using Ready-to-use image
The image file with the pre-installed driver is located in the IMAGE directory of the CD, or you can download it from #Image. Extract the .7z file and you will get an .img file. Write the image to your micro SD card (How to write an image to a micro SD card for your Pi? See RPi Image Installation Guides for more details). Then insert the card into your Pi, power up, and enjoy it.
Screen orientation settings
After installing the touch driver, you can modify the screen rotation direction by running the following commands.
cd LCD-show/ #X can be 0, 90, 180, and 270. Indicates that the LCD rotates 0 degrees, 90 degrees, 180 degrees, and 270 degrees, respectively. #If it is an old version, execute the following code: sudo ./LCD28-show X #If it is a new version, execute the following code: sudo ./LCD28-show-V2 X
The rotation command under Raspbian-lite is as follows:
cd LCD-show/ #X can be 0, 90, 180, and 270. Indicates that the LCD rotates 0 degrees, 90 degrees, 180 degrees, and 270 degrees, respectively. #If it is an old version, execute the following code: sudo ./LCD28-show lite X #If it is a new version, execute the following code: sudo ./LCD28-show-V2 lite X
Touch screen calibration
This LCD can be calibrated through the xinput-calibrator program.
Note: The Raspberry Pi must be connected to the network, or else the program won't be successfully installed.
- Run the following command to install:
sudo apt-get install xinput-calibrator
- Click the "Menu" button on the taskbar, choose "Preference" -> "Calibrate Touchscreen".
- Finish the touch calibration following the prompts. Maybe rebooting is required to make calibration active.
- You can create a 99-calibration.conf file to save the touch parameters (not necessary if the file exists).
sudo nano /etc/X11/xorg.conf.d/99-calibration.conf
- Save the touch parameters (may differ depending on LCD) to 99-calibration.conf, as shown in the picture:
2.8inch RPi LCD (A) - Rev2.1 PWM backlight adjustment function
For Pi4, you need to update the wiringPi version first. The operation method is as follows (for 3B+ and earlier versions, there is no need to update):
wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb gpio -v # Run gpio -v and version 2.52 will appear. If it does not appear, the installation is wrong
After the wiringPi is updated successfully, the backlight brightness can be controlled by the following commands.
gpio -g mode 18 pwm #Occupied pins are PWM pins gpio pwmc 100 gpio -g pwm 18 0 #the darkest gpio -g pwm 18 1023 #brightest gpio -g mode 18 out #Release as output
Install Virtual Keyboard
1. Install matchbox-keyboard:
sudo apt-get install update sudo apt-get install matchbox-keyboard sudo nano /usr/bin/toggle-matchbox-keyboard.sh
2. Copy the statements below to toggle-matchbox-keyboard.sh and save.
#!/bin/bash #This script toggle the virtual keyboard PID=`pidof matchbox-keyboard` if [ ! -e $PID ]; then killall matchbox-keyboard else matchbox-keyboard -s 50 extended& fi
3. Execute the commands:
sudo chmod +x /usr/bin/toggle-matchbox-keyboard.sh sudo mkdir /usr/local/share/applications sudo nano /usr/local/share/applications/toggle-matchbox-keyboard.desktop
4. Copy the statements to toggle-matchbox-keyboard. desktop and save:
[Desktop Entry] Name=Toggle Matchbox Keyboard Comment=Toggle Matchbox Keyboard` Exec=toggle-matchbox-keyboard.sh Type=Application Icon=matchbox-keyboard.png Categories=Panel;Utility;MB X-MB-INPUT-MECHANSIM=True
5. Execute commands as below. Note that you need to use "Pi " user permission instead of root to execute this command.
sudo nano /etc/xdg/lxpanel/LXDE-pi/panels/panel
6. Find the statement which is similar to the one below: (It may be different in different versions.)
Plugin { type = launchbar Config { Button { id=lxde-screenlock.desktop } Button { id=lxde-logout.desktop } }
7. Append these statements to add a button option:
Button { id=/usr/local/share/applications/toggle-matchbox-keyboard.desktop }
8. Reboot your Raspberry Pi. If the virtual keyboard is installed correctly, you can find that there is a keyboard icon on the left of the bar.
sudo reboot
Interface
PIN NO. | SYMBOL | DESCRIPTION |
---|---|---|
1, 17 | 3.3V | Power positive (3.3V power input) |
2, 4 | 5V | Power positive (5V power input) |
3, 5, 8, 10 | NC | NC |
6, 9, 14, 20, 25 | GND | Ground |
7 | KEY1 | Button (Rev2.1) |
NC | NC (old version) | |
11 | TP_IRQ | Touch Panel interrupt, low level while the Touch Panel detects touching |
12 | PWM | Brightness control pin (Rev2.1) |
KEY1 | Button (Old version) | |
13 | RST | Reset |
15 | LCD_RS | LCD command control, Command/data register selection |
16 | KEY2 | button |
18 | KEY3 | button |
19 | LCD_SI / TP_SI | LCD display/SPI data input of Touch Panel |
21 | TP_SO | SPI data output of Touch Panel |
22 | KEY4 | button |
23 | LCD_SCK / TP_SCK | LCD display/SPI clock of Touch Panel |
24 | LCD_CS | LCD chip selection, low active |
26 | TP_CS | Touch Panel chip selection, low active |
Resources
User Manual
Image
Description: if you felt hard to install the driver, try the image with the driver pre-installed.
This item is compatible with 3.2inch RPi LCD (B) (the only differences are screen size and keys count), and can be an ideal substitute in most cases.
Driver
The driver can be downloaded from github
git clone https://github.com/waveshare/LCD-show.git
Software
LCD Panel Dimension
FAQ
{{{5}}}
Since the Raspberry Pi image and version are frequently updated, if you encounter a situation where the LCD cannot be used normally, please download the latest version of the image provided by us or from the official website of Raspberry Pi and install the latest driver provided by us.
- Make sure the hardware connection is correct and the contact is good.
- Make sure that TF card programming is normal.
- When the Raspberry Pi starts normally, the PWR light is always on, and the ACT light is flashing. If it is found that both lights are always on, it may be that the TF card is not successfully programmed to the image or the TF card is in poor contact with the Raspberry Pi.
- It is recommended to use a 5V 2.5A power adapter for the Raspberry Pi. If the Raspberry Pi is powered by the USB port of the PC, the Raspberry Pi may not be able to start normally due to an insufficient power supply.
{{{5}}}
{{{5}}}
{{{5}}}
Sorry, We have no relevant demos.
It is equivalent to connecting buttons to the GPIO, and customers can customize functions, see #Interface.
{{{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 PM GMT+8 (Monday to Friday)