Skip to content

Commit 227c478

Browse files
Merge pull request #3901 from raspberrypi/touch-display-2
Roll out TD2
2 parents f6749c1 + 36106e5 commit 227c478

File tree

10 files changed

+147
-11
lines changed

10 files changed

+147
-11
lines changed

documentation/asciidoc/accessories/display/display_intro.adoc

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
== Raspberry Pi Touch Display
22

3-
The https://www.raspberrypi.com/products/raspberry-pi-touch-display/[Raspberry Pi Touch Display] is an LCD display that connects to the Raspberry Pi using the DSI connector. You can use both the Touch Display and an HDMI display output at the same time.
3+
The https://www.raspberrypi.com/products/raspberry-pi-touch-display/[Raspberry Pi Touch Display] is an LCD display that connects to the Raspberry Pi using a DSI connector and GPIO connector.
44

55
.The Raspberry Pi 7-inch Touch Display
66
image::images/display.png[The Raspberry Pi 7-inch Touch Display, width="70%"]
77

8-
The Touch Display is compatible with all models of Raspberry Pi except the Raspberry Pi Zero and Zero 2 W, which lack a DSI connector. The earliest Raspberry Pi models lack appropriate mounting holes, requiring additional mounting hardware to fit the stand-offs on the display PCB.
8+
The Touch Display is compatible with all models of Raspberry Pi from Raspberry Pi 1B+ onwards, except Raspberry Pi Zero and Zero 2 W, which lack a DSI connector. The earliest Raspberry Pi models lack appropriate mounting holes, requiring additional mounting hardware to fit the stand-offs on the display PCB.
99

1010
The display has the following key features:
1111

12-
* 800×480 RGB LCD display
12+
* 800×480px RGB LCD display
1313
* 24-bit colour
1414
* Industrial quality: 140 degree viewing angle horizontal, 120 degree viewing angle vertical
1515
* 10-point multi-touch touchscreen
@@ -85,7 +85,7 @@ TIP: In Raspberry Pi OS releases prior to _Bookworm_, use `matchbox-keyboard` in
8585

8686
=== Change screen orientation
8787

88-
If you want to physically rotate the display, or mount it in a specific position, select **Screen Configuration** from the **Preferences** menu. Right-click on the DSI-1 display rectangle in the layout editor, select **Orientation**, then pick the best option to fit your needs. You can also ensure that the touch overlay is assigned to the correct display with the **Touchscreen** option.
88+
If you want to physically rotate the display, or mount it in a specific position, select **Screen Configuration** from the **Preferences** menu. Right-click on the touch display rectangle (likely DSI-1) in the layout editor, select **Orientation**, then pick the best option to fit your needs.
8989

9090
image::images/display-rotation.png[Screenshot of orientation options in screen configuration, width="80%"]
9191

@@ -153,7 +153,7 @@ The `vc4-kms-dsi-7inch` overlay supports the following options:
153153
| Disables the touch overlay totally
154154
|===
155155

156-
To specify these options, add them, separated by commas, to your `dtoverlay` line in `/boot/firmware/config.txt`. Boolean values default to true when present, but you can set them to false with the suffix "=0". Integer values require a value, e.g. `sizey=240`. For instance, to set the X resolution to 400 pixels and invert both X and Y coordinates, use the following line:
156+
To specify these options, add them, separated by commas, to your `dtoverlay` line in `/boot/firmware/config.txt`. Boolean values default to true when present, but you can set them to false using the suffix "=0". Integer values require a value, e.g. `sizey=240`. For instance, to set the X resolution to 400 pixels and invert both X and Y coordinates, use the following line:
157157

158158
[source,ini]
159159
----
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
include::touch-display-2/about.adoc[]
Lines changed: 129 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,129 @@
1+
== About
2+
3+
The https://www.raspberrypi.com/products/raspberry-pi-touch-display-2/[Raspberry Pi Touch Display 2] is a portrait orientation touchscreen LCD display designed for interactive projects like tablets, entertainment systems, and information dashboards.
4+
5+
.The Raspberry Pi Touch Display 2
6+
image::images/touch-display-2-hero.jpg[width="80%"]
7+
8+
The Touch Display 2 connects to a Raspberry Pi using a DSI connector and GPIO connector. Raspberry Pi OS provides touchscreen drivers with support for five-finger multitouch and an on-screen keyboard, providing full functionality without the need to connect a keyboard or mouse.
9+
10+
== Specifications
11+
12+
* 1280×720px resolution, 24-bit RGB display
13+
* 155×88mm active area
14+
* 7" diagonal
15+
* powered directly by the host Raspberry Pi, requiring no separate power supply
16+
* supports up to five points of simultaneous multi-touch
17+
18+
The Touch Display 2 is compatible with all models of Raspberry Pi from Raspberry Pi 1B+ onwards, except Raspberry Pi Zero and Zero 2 W, which lack a DSI connector.
19+
20+
The Touch Display 2 box contains the following parts (in left to right, top to bottom order in the image below):
21+
22+
* Touch Display 2
23+
* eight M2.5 screws
24+
* 15-way to 15-way FFC
25+
* 22-way to 15-way FFC for Raspberry Pi 5
26+
* GPIO connector cable
27+
28+
.Parts included in the Touch Display 2 box
29+
image::images/touch-display-2-whats-in-the-booooox.jpg["Parts included in the Touch Display 2 box", width="80%"]
30+
31+
== Install
32+
33+
.A Raspberry Pi 5 connected and mounted to the Touch Display 2
34+
image::images/touch-display-2-installation-diagram.png["A Raspberry Pi 5 connected and mounted to the Touch Display 2", width="80%"]
35+
36+
To connect a Touch Display 2 to a Raspberry Pi, use a Flat Flexible Cable (FFC) and a GPIO connector. The FFC you'll use depends upon your Raspberry Pi model:
37+
38+
* for Raspberry Pi 5, use the included 22-way to 15-way FFC
39+
* for any other Raspberry Pi model, use the included 15-way to 15-way FFC
40+
41+
Once you have determined the correct FFC for your Raspberry Pi model, complete the following steps to connect your Touch Display 2 to your Raspberry Pi:
42+
43+
. Disconnect your Raspberry Pi from power.
44+
. Lift the retaining clips on either side of the FFC connector on the Touch Display 2.
45+
. Insert one 15-way end of your FFC into the Touch Display 2 FFC connector, with the copper contacts facing upwards, away from the Touch Display 2.
46+
+
47+
TIP: If you use the 22-way to 15-way FFC, the 22-way end is the _smaller_ end of the cable. Insert the _larger_ end of the cable into the Touch Display 2.
48+
. While holding the FFC firmly in place, simultaneously push both retaining clips down on the FFC connector of the Touch Display 2.
49+
. Lift the retaining clips on either side of the DSI connector of your Raspberry Pi. This port should be marked with some variation of the term `DISPLAY` or `DISP`. If your Raspberry Pi has multiple DSI connectors, prefer the port labelled `1`.
50+
. Insert the other end of your FFC into the Raspberry Pi DSI connector, with the copper contacts facing towards the Ethernet and USB-A ports.
51+
. While holding the FFC firmly in place, simultaneously push both retaining clips down on the DSI connector of the Raspberry Pi.
52+
. Plug the GPIO connector cable into the port marked `J1` on the Touch Display 2.
53+
. Connect the other (three-pin) end of the GPIO connector cable to pins 2, 4, and 6 of the xref:../computers/raspberry-pi.adoc#gpio[Raspberry Pi's GPIO]. Connect the red cable (5V power) to pin 2, and the black cable (ground) to pin 6. Viewed from above, with the Ethernet and USB-A ports facing down, these pins are located at the top right of the board, with pin 2 in the top right-most position.
54+
+
55+
.The GPIO connection to the Touch Display 2
56+
image::images/touch-display-2-gpio-connection.png[The GPIO connection to the Touch Display 2, width="40%"]
57+
+
58+
TIP: If pin 6 isn't available, you can use any other open `GND` pin to connect the black wire. If pin 2 isn't available, you can use any other 5V pin to connect the red wire, such as pin 4.
59+
. Optionally, use the included M2.5 screws to mount your Raspberry Pi to the back of the Touch Display 2.
60+
.. Align the four corner stand-offs of your Raspberry Pi with the four mount points that surround the FFC connector and `J1` port on the back of the Touch Display 2, taking special care not to pinch the FFC.
61+
.. Insert the screws into the four corner stand-offs and tighten until your Raspberry Pi is secure.
62+
. Reconnect your Raspberry Pi to power. It may take up to one minute to initialise the Touch Display 2 connection and begin displaying to the screen.
63+
64+
=== Use an on-screen keyboard
65+
66+
Raspberry Pi OS _Bookworm_ and later include the Squeekboard on-screen keyboard by default. When a touch display is attached, the on-screen keyboard should automatically show when it is possible to enter text and automatically hide when it is not possible to enter text.
67+
68+
For applications which do not support text entry detection, use the keyboard icon at the right end of the taskbar to manually show and hide the keyboard.
69+
70+
You can also permanently show or hide the on-screen keyboard in the Display tab of Raspberry Pi Configuration or the `Display` section of `raspi-config`.
71+
72+
TIP: In Raspberry Pi OS releases prior to _Bookworm_, use `matchbox-keyboard` instead. If you use the wayfire desktop compositor, use `wvkbd` instead.
73+
74+
=== Change screen orientation
75+
76+
If you want to physically rotate the display, or mount it in a specific position, select **Screen Configuration** from the **Preferences** menu. Right-click on the touch display rectangle (likely DSI-1) in the layout editor, select **Orientation**, then pick the best option to fit your needs.
77+
78+
==== Rotate screen without a desktop
79+
80+
To set the screen orientation on a device that lacks a desktop environment, edit the `/boot/firmware/cmdline.txt` configuration file to pass an orientation to the system. Add the following line to `cmdline.txt`:
81+
82+
[source,ini]
83+
----
84+
video=DSI-1:1280x720@60,rotate=<rotation-value>
85+
----
86+
87+
Replace the `<rotation-value>` placeholder with one of the following values, which correspond to the degree of rotation relative to the default on your display:
88+
89+
* `0`
90+
* `90`
91+
* `180`
92+
* `270`
93+
94+
For example, a rotation value of `90` rotates the display 90 degrees to the right. `180` rotates the display 180 degrees, or upside-down.
95+
96+
NOTE: It is not possible to rotate the DSI display separately from the HDMI display with `cmdline.txt`. When you use DSI and HDMI simultaneously, they share the same rotation value.
97+
98+
==== Touch Display 2 device tree option reference
99+
100+
The `vc4-kms-dsi-ili9881-7inch` overlay supports the following options:
101+
102+
|===
103+
| DT parameter | Action
104+
105+
| `sizex`
106+
| Sets X resolution (default 1280)
107+
108+
| `sizey`
109+
| Sets Y resolution (default 720)
110+
111+
| `invx`
112+
| Invert X coordinates
113+
114+
| `invy`
115+
| Invert Y coordinates
116+
117+
| `swapxy`
118+
| Swap X and Y coordinates
119+
120+
| `disable_touch`
121+
| Disables the touch overlay totally
122+
|===
123+
124+
To specify these options, add them, separated by commas, to your `dtoverlay` line in `/boot/firmware/config.txt`. Boolean values default to true when present, but you can set them to false using the suffix "=0". Integer values require a value, e.g. `sizey=240`. For instance, to set the X resolution to 400 pixels and invert both X and Y coordinates, use the following line:
125+
126+
[source,ini]
127+
----
128+
dtoverlay=vc4-kms-dsi-ili9881-7inch,sizex=400,invx,invy
129+
----
20.1 KB
Loading
163 KB
Loading
314 KB
Loading
204 KB
Loading
3.05 KB
Loading
8.38 KB
Loading

documentation/index.json

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,12 @@
108108
"image": "full-sized/m2-hat-plus.png",
109109
"subpath": "m2-hat-plus.adoc"
110110
},
111+
{
112+
"title": "Touch Display 2",
113+
"description": "The Raspberry Pi Touch Display 2",
114+
"image": "full-sized/Touch-Display-2.png",
115+
"subpath": "touch-display-2.adoc"
116+
},
111117
{
112118
"title": "Camera",
113119
"description": "Raspberry Pi camera boards",
@@ -120,12 +126,6 @@
120126
"image": "full-sized/ai-cam.png",
121127
"subpath": "ai-camera.adoc"
122128
},
123-
{
124-
"title": "Display",
125-
"description": "The Raspberry Pi Touch Display",
126-
"image": "full-sized/Display.png",
127-
"subpath": "display.adoc"
128-
},
129129
{
130130
"title": "Keyboard and mouse",
131131
"description": "Official Raspberry Pi keyboard and mouse",
@@ -168,6 +168,12 @@
168168
"image": "full-sized/Designing-a-HAT.png",
169169
"url": "https://datasheets.raspberrypi.com/hat/hat-plus-specification.pdf"
170170
},
171+
{
172+
"title": "Touch Display",
173+
"description": "The Raspberry Pi Touch Display",
174+
"image": "full-sized/Display.png",
175+
"subpath": "display.adoc"
176+
},
171177
{
172178
"title": "TV HAT",
173179
"description": "Watch TV on your Raspberry Pi",

0 commit comments

Comments
 (0)