Raspberry Pi OS with desktopでタッチパネルを縦画面表示に設定する方法【完全ガイド】
公開日:2025.06.06 更新日:2025.06.06
tag: Raspberry Pi
こんにちは。wistaveです。
Raspberry Piでタッチパネルを使用する際、縦画面表示が必要になるケースは少なくありません。
今回は、Raspberry Pi OS with desktopでタッチパネルの表示を縦向きに変更する方法を詳しく解説したいと思います。
必要な物

- Raspberry Pi本体
今回使用したRaspberry Piは、Raspberry Pi 4 Model B 4GBです。 - Raspberry Pi OSをインストールしたMicro SDカード
今回使用したOSは、Raspberry Pi OS with desktop 64-bit (v.6.12)です。 - タッチパネルディスプレイ
今回使用したのは、HDMIとUSBで接続するタイプです。
必要に応じてキーボードとマウスもご用意ください。
Raspberry Pi OSのウィンドウマネージャーについて
Raspberry Pi OS Bookworm以降では、3種類のウィンドウマネージャーが選択できます。

X11: Openboxウィンドウマネージャー
- 従来から使用されているウィンドウマネージャー
- 多くの情報や設定例がX11を前提としている
- 安定性が高く、互換性が優れている
Wayfire: Wayfireウィンドウマネージャー (Wayland)
- Waylandベースの軽量かつ高速なウィンドウマネージャー
- 直感的な操作と美しいアニメーション効果が特徴
- プラグインによる柔軟なカスタマイズが可能
- マルチディスプレイやタッチ操作にも対応
- 日本語の情報は少なめ
Labwc: Labwcウィンドウマネージャー (Wayland)
- Waylandベースの軽量ウィンドウマネージャー
- Raspberry Pi OSの最新版で標準採用
- X11に似た操作感と設定方法
- シンプルでカスタマイズ性が高い
- 日本語の情報は少なめ
3つのウィンドウマネージャーを試してみましたが、個人的には Wayfire > Labwc > X11 の順で動作が軽いと感じました。
設定においてはLabwcが1番簡単ですので、使用用途上の問題がなければLabwcを利用するのが良いでしょう。
設定方法
それでは、それぞれのウィンドウマネージャーでの設定方法を解説します。
今回はターミナルを使って設定していきます。
nanoエディターなどCLIツールの使い方は本記事では省略します。必要に応じて各自お調べください。
別のPCからRaspberry PiにSSHで接続して設定される場合、コマンドが少し異なることがあります。
コマンドが異なる場合、SSH用のコマンドを併記していますのでそちらをお試しください。
X11 (Openbox) を使用している場合
1. ディスプレイの名前を確認する
まず、接続されているディスプレイの名前を確認します。
以下のコマンドを実行します。
xrandr
# SSHの場合
DISPLAY=:0 xrandr

表示された情報の中で、connected primary
と書かれた行を探します。
その行に表示された最初の文字列がディスプレイの名前です。
HDMI-1 connected primary 1024x600+0+0 (normal left inverted right x axis y axis) 268mm x 477mm
上の場合、ディスプレイの名前は HDMI-1
です。
2. 画面を回転させる
次に、画面を回転させます。
以下のコマンドを実行します。
xrandr --output HDMI-1 --rotate right
# SSHの場合
DISPLAY=:0 xrandr --output HDMI-1 --rotate right
--output
先ほど確認したディスプレイの名前を指定します。--rotate
回転する方向を指定します。
右90度回転:right
左90度回転:left
180度回転:inverted
この時点で表示上の画面は回転したと思いますが、タッチパネルの座標がずれる場合があります。
タッチパネルの座標がずれる場合は、タッチパネルの設定を変更していきます。
3. タッチパネルのデバイスIDを確認する
xinput
コマンドでタッチデバイスのIDを調べます。
以下のコマンドを実行します。
xinput list
# SSHの場合
DISPLAY=:0 xinput list

表示された情報の中で、タッチパネルだと思うデバイスを探します。
⎜ ↳ TSTP MTouch id=8 [slave pointer (2)]
上の場合、デバイスIDは 8
です。
4. タッチパネルの座標を設定する
次に、座標変換マトリクスを設定します。
以下のコマンドを実行します。
xinput set-prop 8 "Coordinate Transformation Matrix" 0 1 0 -1 0 1 0 0 1
# SSHの場合
DISPLAY=:0 xinput set-prop 8 "Coordinate Transformation Matrix" 0 1 0 -1 0 1 0 0 1
set-prop
先ほど確認したデバイスIDを指定します。Coordinate Transformation Matrix
タッチパネルの座標変換行列を指定します。
右90度回転:0 1 0 -1 0 1 0 0 1
左90度回転:0 -1 1 1 0 0 0 0 1
180度回転:-1 0 1 0 -1 1 0 0 1
これで、タッチパネルの座標も変更されたかと思います。
ただ、この設定は再起動やシャットダウンを行うと元に戻ってしまうため、ここまで設定した内容を保存したいと思います。
5. 設定を保存する
Xセッション開始時に自動で実行されるスクリプトを作成します。
以下のコマンドを実行します。
sudo nano /etc/X11/Xsession.d/99-rotate-and-touch
以下を入力し保存します。
#!/bin/sh
xrandr --output HDMI-1 --rotate right
xinput set-prop 8 "Coordinate Transformation Matrix" 0 1 0 -1 0 1 0 0 1
各値は、ご自身の環境に合わせて変更してください。

6. システムの再起動
sudo reboot
X11を使用している場合の設定は以上です。
Wayfire (Wayland) を使用している場合
1. ディスプレイの名前を確認する
まず、接続されているディスプレイの名前を確認します。
以下のコマンドを実行します。
wlr-randr
# SSHの場合
WAYLAND_DISPLAY="wayland-1" wlr-randr

表示された情報の中で、1行目に表示された最初の文字列がディスプレイの名前です。
HDMI-A-1 "NewTek JOYSX 0000000000001 (HDMI-A-1)"
上の場合、ディスプレイの名前は HDMI-A-1
です。
2. 画面を回転させる
次に、画面を回転させます。
以下のコマンドを実行します。
sudo nano ~/.config/wayfire.ini
ファイルの末尾に以下を追加します。
既に同じ項目が記載されている場合は、 transform
の値が正しいことを確認してファイルを閉じてください。
[output:HDMI-A-1]
transform = 270
output
先ほど確認したディスプレイの名前を指定します。transform
ディスプレイの表示を回転させるために使用します。
右90度回転:270
左90度回転:90
180度回転:180

この時点で表示上の画面は回転したと思いますが、タッチパネルの座標がずれる場合があります。
タッチパネルの座標がずれる場合は、タッチパネルの設定を変更していきます。
3. タッチパネルのベンダーIDとモデルIDを確認する
以下のコマンドを実行します。
lsusb

表示された情報の中で、タッチパネルだと思うデバイスを探します。
Bus 001 Device 004: ID 0416:c168 Winbond Electronics Corp. MTouch
上の場合、ベンダーIDは 0416
、モデルIDは c168
です。
4. タッチパネルの座標を設定する
以下のコマンドを実行します。
sudo nano /etc/udev/rules.d/99-touch.rules
以下を入力し保存します。
ACTION!="remove", KERNEL=="event[0-9]*",
ENV{ID_VENDOR_ID}=="0416",
ENV{ID_MODEL_ID}=="c168",
ENV{LIBINPUT_CALIBRATION_MATRIX}="0 1 0 -1 0 1"
ID_VENDOR_ID
先ほど確認したベンダーIDを指定します。ID_MODEL_ID
先ほど確認したモデルIDを指定します。LIBINPUT_CALIBRATION_MATRIX
タッチパネルの座標変換行列を指定します。
右90度回転:0 1 0 -1 0 1
左90度回転:0 -1 1 1 0 0
180度回転:-1 0 1 0 -1 1
参考:https://wayland.freedesktop.org/libinput/doc/latest/device-configuration-via-udev.html

5. システムの再起動
sudo reboot
これで、タッチパネルの座標も変更されたかと思います。
Wayfireを使用している場合の設定は以上です。
Labwc (Wayland) を使用している場合
1. ディスプレイの名前を確認する
まず、接続されているディスプレイの名前を確認します。
以下のコマンドを実行します。
wlr-randr
# SSHの場合
WAYLAND_DISPLAY="wayland-1" wlr-randr

表示された情報の中で、1行目に表示された最初の文字列がディスプレイの名前です。
HDMI-A-1 "NewTek JOYSX 0000000000001 (HDMI-A-1)"
上の場合、ディスプレイの名前は HDMI-A-1
です。
2. 画面を回転させる
次に、画面を回転させます。
以下のコマンドを実行します。
sudo nano ~/.config/kanshi/config
以下を入力し保存します。
profile {
output HDMI-A-1 transform 270
}
output
先ほど確認したディスプレイの名前を指定します。transform
ディスプレイの表示を回転させるために使用します。
右90度回転:270
左90度回転:90
180度回転:180

3. システムの再起動
sudo reboot
Labwcの場合、上記の変更だけでタッチ座標も正しく変更されました。
Labwcを使用している場合の設定は以上です。
注意点
- タッチパネルの種類によって設定方法が異なる場合があります。
- 設定後、タッチの座標が正しく認識されない場合は、キャリブレーションが必要です。
- 一部のアプリケーションでは、個別に表示の向きを設定する必要があります。
- Waylandを使用している場合、一部のアプリケーションが動作しない可能性があります。
- X11とWaylandの切り替えは、Raspberry Piの設定画面から行えます。
まとめ
最後までお読みいただきありがとうございました。
Raspberry Pi OSでタッチパネルを縦画面表示に設定する方法について解説しました。
この記事が、Raspberry Piでのタッチパネル縦画面設定の参考になれば幸いです。
快適なRaspberry Piライフをお楽しみください!
参考リンク
関連記事
-
第1回 Visual C++で作成したDLL内のクラスをC#で利用する方法
こんにちは、ILCです。 Visual C++ (以下 VC++)で作成されたDynamic...
公開日:2024.01.19 更新日:2024.01.19
tag : Windows
-
-
-
第1回 ラズパイを使用したBLE通信 ~ ディスプレイ、キーボード、マウスを接続しないで設定 前編 ~
こんにちは、GTです。よろしくお願いします。 最近業務でラズパイのBluetooth機能を使...
公開日:2021.12.24 更新日:2021.12.24
tag : Bluetooth Raspberry Pi
-
【新機能探訪】Android 13から導入された『アプリごとの言語設定』
こんにちは、KNSKです。よろしくお願いします。 今回は Android13の新機能である『...
公開日:2022.12.09 更新日:2022.12.09
tag : スマートデバイス
-
こんにちは。WwWです。 システム系の開発をしていると様々な問題が起こります。 そこで今回は...
公開日:2023.04.28 更新日:2023.04.28