ラズベリーパイ4タッチモニター回転

最近、私はラズベリーパイ4用のアプリケーション(キオスクシステム)を開発しなければなりませんでした。それについての特別なことは、2つのタッチモニターがHDMIを介して接続されることになっていたということでした、そしてそれは右に90度回転しなければなりませんでした。したがって、ポートレートフォーマット、2つのモニターを重ね合わせます。 画面を回転させて互いの上に配置しても、ユーザーインターフェイスを介して簡単に可能であるため、問題はありませんでした-「デスクトップと推奨ソフトウェアを備えたRaspbian Buster」がインストールされました。 これを行うには、[ラズベリー->設定->画面構成]メニューで、2台のHDMIモニターを右に回し、それらを互いの上に配置してから設定を保存します。 これに関する問題は、タッチ構成が自動的に回転せず、互いの上に配置され、2台のモニターにわたって大きなタッチ領域が発生することです。 タッチ動作が正しく機能するためには、2 つの設定ファイル (/usr/share/X11/xorg.conf.d/40-libinput.conf と /home/pi/.profile ) を調整する必要があります。

まず、接続されているモニターのIDを読み取る必要があります。これを行うには、ターミナルを開き、次のコマンドを使用します

xinput list

インプット。その結果、接続されたモニターが対応するIDとともに一覧表示されます。私の場合、モニターのIDは6と7でした。

次に、ファイル /usr/share/X11/xorg.conf.d/40-libinput.conf で、次のように "Section InputClass" セクションを "識別子 libinput タッチパッドキャッチオール" で調整します。

Section "InputClass" 
        Identifier "libinput touchpad catchall" 
        MatchIsTouchscreen "on" 
        Option "CalibrationMatrix" "0 1 0 -1 0 1 0 0 1" 
        MatchDevicePath "/dev/input/event*" 
        Driver "libinput" 
EndSection

これにより、タッチ サーフェスが回転します。

最後に、タッチインターフェイスのサブディビジョンをファイル/home/pi/.profileの最後に2等分して挿入し、システムが起動するたびにロードされるようにします。

xinput set-prop "6" --type=float "Coordinate Transformation Matrix" 1 0 0 0 0.5 0 0 0 1
xinput set-prop "7" --type=float "Coordinate Transformation Matrix" 1 0 0 0 0.5 0.5 0 0 1