Features
- 10.1inch DSI touch screen, ten-point capacitive touch control
- IPS display panel with hardware resolution of 800×1280
- Optical bonding toughened glass panel, clearer picture quality
- Toughened glass capacitive touch panel, hardness up to 6H
- Drive the LCD through the DSI interface, with a refresh rate of up to 60Hz
- Supports software control of backlight brightness
- Aluminum alloy back cover design, pure passive cooling design
Electrical Specifications
| Parameters | Minimum Value | Standard Value | Maximum Value | Unit | Note |
|---|---|---|---|---|---|
| Input voltage | 4.75 | 5.00 | 5.30 | V | Note 1 |
| Input current | - | 0.8 | TBD | A | Note 2 |
| Operating temperature | 0 | 25 | 60 | ℃ | Note 3 |
| Storage temperature | -10 | 25 | 70 | ℃ | Note 3 |
Note 1:Input voltages exceeding the maximum or improper operation may cause permanent damage to the device.
Note 2:The input current needs to be ≥ 0.8A, otherwise it will cause the startup failure or display abnormality, and staying in an abnormal state for a long time may cause permanent damage to the device.
Note 3:Please do not store the display panel in a high-temperature and high-humidity environment for a long time. The display panel should operate within its limits, otherwise it may be damaged.
Interfaces

Working with Raspberry Pi
Pi5/CM5/CM4/CM3+/CM3 Hardware Connection
- Use the "FFC Cable 22PIN 200mm (opposite direction)" to connect the DSI port of the display to the 22PIN DSI port of the Raspberry Pi motherboard.
- Use the "GPIO cable" to connect the power connector of the display to the 5V GND pin header of the Raspberry Pi motherboard.
- Secure the Raspberry Pi to the display with M2.5 screws.
The installation effect is as follows:
Note: Make sure that the DSI cable is connected in the correct direction and 5V power is supplied through the GPIO pins.
Pi4B/3B+/3B/3A+ Hardware Connection
- Use the "DSI-Cable-12cm" cable to connect the DSI port of the display to the 15PIN DSI port of the Raspberry Pi motherboard.
- Use the "GPIO cable" to connect the power connector of the display to the 5V GND pin header of the Raspberry Pi motherboard.
- Secure the Raspberry Pi to the display with M2.5 screws.
The installation effect is as follows:
Note: Make sure that the DSI cable is connected in the correct direction and 5V power is supplied through the GPIO pins.
Software Settings
Method 1: Flash Latest Trixie/Bookworm System
- Connect the TF card to the PC, download and use Raspberry Pi Imager to flash the corresponding system image.

- 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.
Note: Since Pi5/CM5/CM4/CM3+/CM3 has two mipi DSI interfaces, please note that the correct DSI interfaces and commands are used, DSI1 is recommended by default.
dtoverlay=vc4-kms-v3d
#DSI1 Use
dtoverlay=vc4-kms-dsi-waveshare-panel-v2,10_1_inch_a
#DSI0 Use
#dtoverlay=vc4-kms-dsi-waveshare-panel-v2,10_1_inch_a,dsi0
- Insert the TF card into the Raspberry Pi, power on the Raspberry Pi, and generally wait for about 30 seconds to enter the display state. The touch function can be used normally after the system boots.
Method 2: Flash Pre-installed Image
- Select pre-installed image, download and unzip it as .img file 10.1-DSI-TOUCH-A Pre-installed Image
- After the image flashing is completed, connect the TF card to the Raspberry Pi, start the Raspberry Pi, and wait for about 30 seconds for it to be displayed and touched normally.
Adjust Backlight Brightness
GUI Backlight Adjustment
The following steps are based on the Trixie system:
- Click the menu in the upper left corner, then go to Preferences → Control Center, and select Screens;

- Click the menu in the upper left corner, then go to Preferences → Control Center, and select Screens;
- Go to "Screen" -> "DSI-2" -> "Brightness", check and adjust the desired backlight brightness, and finally click Apply to save the settings.

In the Bookworm system, this setting entry is located at Screen Configuration → Screen.
- Go to "Screen" -> "DSI-2" -> "Brightness", check and adjust the desired backlight brightness, and finally click Apply to save the settings.
Use Waveshare Backlight Adjustment Application
You can also use the graphical backlight adjustment tool provided by Waveshare (this program is only for Trixie, Bookworm, and Bullseye systems):
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:
Adjust Backlight Brightness Using 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
Trixie/Bookworm Display Rotation
GUI Interface Rotation
The following steps are based on the Trixie system:
- Click the menu in the upper left corner, then go to Preferences → Control Center, and select Screens;

- Go to Screen - > DSI-1 - > Touchscreen and check "10-0014 Goodix Capacitive TouchScreen";

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

- In the Bookworm system, this setting entry is located at Screen Configuration → Screen.
Note: Only Trixie/Bookworm systems support the above synchronous rotation methods. For Bullseye/Butser systems, after displaying rotation, touch rotation needs to be manually set separately.
lite Version Display Rotation
sudo nano /boot/firmware/cmdline.txt
Add the display resolution and rotation commands at the beginning of the cmdline.txt file to take effect after a reboot
- Rotation commands
# For example, the DSI-1 display has a 800x1280 resolution and the display rotation is 90 degrees
video=DSI-1:800x1280e,rotate=90
# For example, the DSI-1 display has a 800x1280 resolution and the display rotation is 180 degrees
video=DSI-1:800x1280e,rotate=270
# For example, the DSI-1 display has a 800x1280 resolution and the display rotation is 270 degrees
video=DSI-1:800x1280e,rotate=180
Notes:
- Based on actual display resolution.
- If using Pi5/CM5, use the actual DSI display number identified, for example, "DSI-2".
- Unable to rotate DSI monitor and HDMI monitor separately using cmdline.txt. When you use both DSI and HDMI simultaneously, they share the same rotation value.
Touch Rotation
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:
- Create a new file named 99-waveshare-touch.rules
sudo nano /etc/udev/rules.d/99-waveshare-touch.rules
- Add the following lines as needed:
# Touch rotate 90°
ENV{ID_INPUT_TOUCHSCREEN}=="1", ENV{LIBINPUT_CALIBRATION_MATRIX}="0 -1 1 1 0 0"
# Touch rotate 270°
ENV{ID_INPUT_TOUCHSCREEN}=="1", ENV{LIBINPUT_CALIBRATION_MATRIX}="0 1 0 -1 0 1"
# Touch rotate 180°
ENV{ID_INPUT_TOUCHSCREEN}=="1", ENV{LIBINPUT_CALIBRATION_MATRIX}="-1 0 1 0 -1 1"
# Save and reboot
sudo reboot
Touch Mode Selection
The systems after Bookworm support two touch modes, which can be switched in the Screen Configuration > Touchscreen menu:
1.Mouse Emulation (default)
Click = Left mouse button function
Long press = Right mouse button function
Supports double-click
Does not support page swiping and multi-touch functionality
Note: This mode is suitable for scenarios that require mouse operation, such as double clicking to open the file manager and long pressing to achieve right-click functionality.
2.Multitouch
Supports multi-touch functionality
Supports swiping pages
Does not support double-click and long-press right-click functions
Note: This mode is suitable for touch-optimized scenarios, such as web browsing and scrolling lists.
Use Touchscreen Virtual Keyboard
Raspberry Pi OS Bookworm and later versions include Squeekboard on-screen keyboard by default.
- The keyboard system will automatically pop up when text input is available and automatically hide when text input is not available.

You can also permanently set the display or hiding of the on-screen keyboard through the menu Preferences → Control Centre → Display in the upper left corner.
In the Bookworm system, you can set the keyboard to be displayed or hidden via Raspberry Pi Configuration → Display or raspi-config → Display.
Note:
For older versions of Raspberry Pi OS before Bookworm, please use matchbox-keyboard. If you are using the wayfire desktop compositor, use wvkbd.
Working with Luckfox-Omni3576
Hardware Connection
Use a 22PIN FPC cable to connect the DSI interface of the display to the DSI interface of the Omni3576 mainboard.
Use a 2PIN power cable to connect the power port of the display to the 40PIN GPIO interface of the Omni3576 mainboard, as shown in the figure below:

Software Configuration
- Download and flash the image file from the official Luckfox website.
- Connect a 5V power supply. Once the system boots, the screen should light up.
View Display Information
- To check the available screen IDs in the current system, run the following command:
sudo cat /sys/kernel/debug/dri/0/summary
- Expected output:
Video Port0: DISABLED
Video Port1: ACTIVE
Connector:DSI-1 Encoder: DSI-203
bus_format[100a]: RGB888_1X24
overlay_mode[0] output_mode[0] SDR[0] color-encoding[BT.709] color-range[Full]
Display mode: 800x1280p60
clk[70000] real_clk[69883] type[48] flag[a]
H: 800 840 860 880
V: 1280 1300 1304 1324
Fixed H: 800 840 860 880
Fixed V: 1280 1300 1304 1324
Esmart1-win0: ACTIVE
win_id: 1
format: XR24 little-endian (0x34325258) pixel_blend_mode[0] glb_alpha[0xff]
color: SDR[0] color-encoding[BT.601] color-range[Limited]
rotate: xmirror: 0 ymirror: 0 rotate_90: 0 rotate_270: 0
csc: y2r[0] r2y[0] csc mode[0]
zpos: 1
src: pos[0, 0] rect[800 x 1280]
dst: pos[0, 0] rect[800 x 1280]
buf[0]: addr: 0x00000000fe44e000 pitch: 3200 offset: 0
Video Port2: DISABLED
Display Rotation
- Rotation commands:
# Rotate 90 degrees
xrandr -o left
# Rotate 270 degrees
xrandr -o right
# Rotate 180 degrees
xrandr -o inverted
# Rotate 0 degrees (normal)
xrandr -o normal
- These changes are temporary and will reset after reboot. To set rotation at startup, edit the config file:
sudo vim /etc/X11/xorg.conf.d/10-monitor.conf
- Add the following command:
### Valid values for rotation are "normal", "left", "right"
Section "Monitor"
# Identifier "Default Monitor"
Identifier "DSI-1"
Option "Rotate" "left"
EndSection
Touchscreen Rotation
- If the display is rotated, but the touch input does not match the orientation, modify the following configuration:
sudo vim /etc/udev/rules.d/99-luckfox-touch.rules
- Add the corresponding line based on your rotation direction, then reboot the device:
90 degrees:
ENV{ID_INPUT_TOUCHSCREEN}=="1", ENV{LIBINPUT_CALIBRATION_MATRIX}="0 -1 1 1 0 0"
180 egrees:
ENV{ID_INPUT_TOUCHSCREEN}=="1", ENV{LIBINPUT_CALIBRATION_MATRIX}="-1 0 1 0 -1 1"
270 degrees:
ENV{ID_INPUT_TOUCHSCREEN}=="1", ENV{LIBINPUT_CALIBRATION_MATRIX}="0 1 0 -1 0 1"
Working with Luckfox-Lyra
Hardware Connection
- Use a 22PIN FPC cable to connect the DSI interface of the display to the DSI interface on the Luckfox-Lyra board.
- Use an MX1.25 2PIN to 4PIN cable to connect the display’s power interface to the USB MX1.25 4P interface on the Luckfox-Lyra board. As shown in the figure below:

Software Setup
- Download and flash the image from the official Luckfox website.
- Connect a 5V power supply. Once the system boots, the screen will light up.
Check Screen Information
- You can check the available screen ID in the current system with the following command:
cat /sys/kernel/debug/dri/0/summary
- A normal output would look like this:
VOP [ff600000.vop]: ACTIVE
Connector: DSI-1
bus_format[100a]: RGB888_1X24
overlay_mode[0] output_mode[0]color-encoding[1] color-range[1]
Display mode: 800x1280p60
dclk[70000 kHz] real_dclk[69475 kHz] aclk[294912 kHz] type[48] flag[a]
H: 800 840 860 880
V: 1280 1310 1314 1324
win1-0: ACTIVE
format: XR24 little-endian (0x34325258) SDR[0] color-encoding[0] color-range[0]
csc: y2r[0] r2r[0] r2y[0] csc mode[0]
zpos: 0
src: pos[0x0] rect[800x1280]
dst: pos[0x0] rect[800x1280]
buf[0]: addr: 0x06100000 pitch: 3200 offset: 0
post: sdr2hdr[0] hdr2sdr[0]
pre : sdr2hdr[0]
post CSC: r2y[0] y2r[0] CSC mode[2]
Display Test
- Color bar test commands:
# Vertical stripes test
modetest -M rockchip -s 74@71:800x1280
# Diagonal tiles test
modetest -M rockchip -s 74@71:800x1280 -Ftiles
Touch Test
- Touch test command:
evtest
- A normal output will be:
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0: 2-005d Goodix Capacitive TouchScreen
Select the device event number [0-0]:
- Enter “0” and press Enter, then touch the screen to start testing. The terminal will print values triggered by touch events.
Working with ESP32-P4
Screen Driver
The ESP32-P4-NANO drives the screen via MIPI 2-lane.
- The screen driver has been packaged as a component, with the component located at ESP Component Registry
Use idf.py add-dependency "waveshare/esp_lcd_jd9365" to add components to your ESP-IDF project
- You can also directly view the Wiki that describes how ESP32-P4-NANO drives the screen:ESP32-P4-NANO_MIPI-DSI
Backlight Control
After connecting the ESP32-P4-NANO with the matching FPC cable and power cable, the backlight can be controlled by writing 0x00~0xFF (full brightness) to the 0x45device and0x96 register on the screen through the ESP32-P4-NANO I2C
If you use the ESP32-P4-NANO BSP component, you can control it directly by the following functions
bsp_display_brightness_init(); // Initialize the backlight
bsp_display_backlight_on(); // Turn on the backlight, default full brightness
bsp_display_backlight_off(); // Turn off the backlight
bsp_display_brightness_set(95); // Set the specific backlight brightness, 0~100
As shown below
Safety Instructions
To avoid any malfunction or damage to this product, please follow the following instructions:
- Turn off your Raspberry Pi computer and disconnect the external power supply before connecting the device.
- If the cable falls off, pull the locking device on the connector forward, insert the ribbon cable with the metal contacts facing you, and push the locking device back into place.
- This device should be operated in a dry environment between 0-60°C.
- Do not expose the device to water or humid environments during operation, nor place it on conductive surfaces.
- Do not expose it to any overheated environment.
- Be careful not to fold or tighten the ribbon cable.
- Be careful when screwing in the parts. Misalignment of threads may cause irreparable damage and void the warranty.
- Please be careful during transportation to avoid mechanical or electrical damage to printed circuit boards and connectors.
- Store in a cool and dry place.
- Avoid sudden temperature changes, otherwise it may lead to the accumulation of moisture inside the device.
- The screen is fragile and may break.
FAQ
Q: What are the display IC and touch IC used in the 10.1-DSI-TOUCH-A?
A: The display IC is JD9365 and the touch IC is GT9271.
Q: How to completely turn on or off the screen on a Raspberry Pi Trixie / Bookworm?
A: When using the Wayland environment (such as Raspberry Pi OS Trixie or Bookworm), you can control the screen display status with the wlr-randr command.
#Turn off the screen
wlr-randr --output DSI-2 --off
#Turn on the screen
wlr-randr --output DSI-2 --on