質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Raspbian

Raspbianは、DebianベースのRaspberry Pi用ディストリビューション。ハードウェア浮動小数点演算を有効にすることが可能で、Webブラウズなどの速度を向上できます。

Raspberry Pi

Raspberry Piは、ラズベリーパイ財団が開発した、名刺サイズのLinuxコンピュータです。 学校で基本的なコンピュータ科学の教育を促進することを意図しています。

Q&A

1回答

3567閲覧

Raspberry Pi タッチパネルで右クリックしたい

person

総合スコア223

Raspbian

Raspbianは、DebianベースのRaspberry Pi用ディストリビューション。ハードウェア浮動小数点演算を有効にすることが可能で、Webブラウズなどの速度を向上できます。

Raspberry Pi

Raspberry Piは、ラズベリーパイ財団が開発した、名刺サイズのLinuxコンピュータです。 学校で基本的なコンピュータ科学の教育を促進することを意図しています。

0グッド

0クリップ

投稿2021/05/25 03:34

編集2021/05/26 01:33

Raspberry Pi 3Bで、タッチパネル上で右クリックしたいです。
下記を試したのですが、うまくできなかったので対処方法等あれば教えて下さい。

参考記事:Enable right-click for the Raspberry Pi touchscreen

やったこと

基本的には書いてあることをそのままやった。
書いてあることと違うこと等は下記の通り。

先程のサイトに

sudo <EDITOR> /etc/udev/rules.d/99-uinput.rules

と書かれていたが、そのような名前のファイルが存在しなかった。新規作成して

KERNEL=="uinput", MODE="0660", GROUP="input"

のみを書いた。

先程のサイトの最後のところまで終えて、OSの再起動をしたが自動実行されず。

コマンドで手動起動を試みた。
タッチパネル接続の認識はされているが、
画面を長押ししたり、2本指タップしたりしても右クリックしたときの挙動は見られず。

タッチパネルを繋いだとき:

$ env LONG_CLICK_INTERVAL=500 LONG_CLICK_FUZZ=50 /usr/local/bin/evdev-rce Found touch screen at /dev/input/event0: WaveShare WS170120 Failed to create uinput device

タッチパネルを繋がないとき:

$ env LONG_CLICK_INTERVAL=500 LONG_CLICK_FUZZ=50 /usr/local/bin/evdev-rce No touchscreen is found

使用機器
・Raspberry Pi 3B OS:Raspbian GNU/Linux 9.13 (stretch)
タッチパネル:cocopar製タッチパネル

追記

Failed to create input #69
を参考に、/etc/modules-load.d/uinput.confを新規作成し、中身を

nano

1# in /etc/modules-load.d/uinput.conf 2# Load uinput module at boot 3uinput

にして、手順にある

sudo usermod -G 'input' -a pi

からやり直して手動起動を試したら

$ env LONG_CLICK_INTERVAL=500 LONG_CLICK_FUZZ=50 /usr/local/bin/evdev-rce Found touch screen at /dev/input/event0: WaveShare WS170120

このままターミナルが次の$を表示しないままになった。
この状態で、画面の長押し等をしても右クリックはできなかった。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ハードウェア仕様書が見当たらないので断定できませんが、
Amazon の商品説明欄を見た感じでは、ラズパイは、マルチタッチをサポートしていないのではないかと思われます。

商品説明は、こんな感じ

3.Raspberry Piで使用するにはRaspbian、Ubuntu、WIN10 IOT,単点タッチを支持

単点タッチを支持 = single touch suppored  つまり、2点のタッチ操作が必要な右クリックは動かないのではないでしょうか?

ここから追記

最初は、デバイスファイルが作成できなかった状態でしたが

”Failed to create uinput device

アクセス権を変更したおかげでデバイスファイルが作成できたようですので、いまは別の原因になっているのだろうと思います。

sudo usermod -G 'input' -a pi
”Found touch screen at /dev/input/event0: WaveShare WS170120”

質問からすると、evdev-rce を利用して、長押しによる右クリックイベントをエミュレーションしたいようですが、その evdev-rce は、ちゃんと起動した状態になっているのでしょうか?

参考になさっているサイトでは、'/usr/local/bin/evdev-rce' を実行させ方法の一つとして、ユーザーホームの autostart ディレクトリにスクリプトを置く方法が載っています。

Startup evdev-rce on login
Almost done. To start evdev-rce on login just create the following autostart file:

投稿2021/05/25 03:56

編集2021/05/25 08:07
Yoshi88

総合スコア623

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

person

2021/05/25 04:11 編集

一応、参考にした記事の中にgithubのリンクがあって、そこに書いてあった内容的には長押しでできるようです。(長押しで可能なら、タッチパネル側がシングルタップのみのサポートでもできると思いました。)2本指タップを試したのは、一応です。 > タッチスクリーンを備えたLinuxデバイスでの右クリックの問題を解決するプログラム。Linuxタッチスクリーンデバイスで長押しして右クリックするジェスチャを実装しますが、デスクトップ環境、ディスプレイサーバー、またはディストリビューションに特定の要件はありません。これにより、Linuxディストリビューションのユーザーのタッチエクスペリエンスが大幅に向上します。 しかし調べてみると2本指タップで右クリックすることができるtwofingというものがあるそうです。 https://www.mztn.org/rpi/rpi49.html もしかしたら、これは特定のハードウェアでないとできないのかも知れませんね。
person

2021/05/26 01:32 編集

> evdev-rce は、ちゃんと起動した状態になっているのでしょうか? autostartに記載したExecをターミナルで打つことで手動起動を試しているのですが、 私が追記した時のコマンドがミスってますね。(コピペをミスったのか、コマンドをミスったのかわからないです。) タッチパネルが今手元にないので、しばらくしたら確認します。 追記 ターミナルの履歴では正しいコマンド(autostartのExec)を打っていました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問