DSI
1. Introduction
DSI (Display Serial Interface) is a high-speed serial communication interface used between display panels and display controllers, widely used in mobile devices, embedded systems, tablets, and other systems requiring high-performance displays. It is standardized by the MIPI (Mobile Industry Processor Interface) Alliance, designed to reduce the number of pins on devices and optimize power consumption.
2. Compatible Screens
The display is still under adaptation.Except for the default supported 10.1-DSI-TOUCH-A display, please contact technical support to obtain the corresponding support image for other models.
The Luckfox Aura series development board supports the 10.1-DSI-TOUCH-A by default. In addition, we have adapted official Luckfox, Raspberry Pi, and Waveshare DSI screens to ensure their display and touch functionalities work properly.
3. Hardware Connections
3.1 Luckfox Aura Connecting to 10.1-DSI-TOUCH-A Screen
Please ensure the ribbon cable is connected correctly according to your specific development board model. If the screen fails to light up immediately after switching, power off the device immediately and check the wiring to avoid potential damage or other abnormal behavior.
- Use a 22PIN FPC cable to connect the display’s DSI interface to the DSI interface on the Luckfox Aura motherboard.
- Use an MX1.25 2PIN to 4PIN connector cable to connect the display’s power interface to the USB MX1.25 4P interface on the Luckfox Aura motherboard. As shown below:

3.2 Luckfox Aura Connecting to Raspberry Pi DSI Screen
- Use a 15PIN to 22PIN FPC cable Pi5-Display-Cable.

4. Software Configuration
Luckfox Aura natively supports the 10.1-DSI-TOUCH-A display.For other display models, users need to manually modify the corresponding device tree configuration.
The device tree file for the display can be found in the SDK directory at:sysdrv/source/kernel/arch/arm64/boot/dts/rockchip/rv1126b-luckfox-aura-dsi.dtsi.
5. View Display Information
The display IDs available in the current system can be checked with the following command:
cat /sys/kernel/debug/dri/0/summaryOutput:
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]
6. Display Test
Use modetest on the Aura to perform a color bar test and verify the display output:
Determine the correct connector ID.
modetest -M rockchip | grep -A10 "Connectors:"
Output:
Connectors:
id encoder status name size (mm) modes encoders
96 95 connected DSI-1 216x135 1 95
modes:
index name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot
#0 800x1280 60.08 800 840 860 880 1280 1300 1304 1324 70000 flags: nhsync, nvsync; type: preferred, driver
props:
1 EDID:
flags: immutable blob
blobs:- Connector ID = 96
- Encoder ID = 95
Determine the correct CRTC ID.
modetest -M rockchip | grep -A10 "CRTCs:"
Output:
CRTCs:
id fb pos size
73 99 (0,0) (800x1280)
#0 800x1280 60.08 800 840 860 880 1280 1300 1304 1324 70000 flags: nhsync, nvsync; type: preferred, driver
props:
24 VRR_ENABLED:
flags: range
values: 0 1
value: 0
39 ACLK:
flags: range- CRTC ID = 73
- Mode: 1024x600@60Hz
Vertical bar test (standard mode):
modetest -M rockchip -s 96@73:800x1280Diagonal bar test (enable tile format):
modetest -M rockchip -s 96@73:800x1280 -Ftiles
7. Touch Test
Use the
evtestcommand to test the touchscreen and check the response of the touch input device. Execute the following command:evtestAfter running the command, the terminal will show output similar to the following. Press “0” to start the touchscreen test, and the terminal will print the event values triggered by the touch actions:
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]:
8. Backlight Control
Other compatible screens share the same driver, supporting 0~255 levels of backlight control. The command for backlight control is:
# brightness level:0 ~ 255
echo <brightness level> > /sys/class/backlight/waveshare_bl/brightness