ユーザーがローカルにログインせずに独自のキーボードを使用/インポートする

ユーザーがローカルにログインせずに独自のキーボードを使用/インポートする

ユーザー対話が必要で、3つのキーしかない特別な(USB)キーボードを備えたソフトウェア(ソースコード付き)を実行するRaspberry Piがあります。プログラムはフレームバッファ(SDL)で実行され、リモートで起動されます。キーの押下に反応するプログラムが必要ですが、ユーザーがローカルにログインしていない場合は不可能です。

どうですか?このソリューションでは多くのリソースが利用できず、遅延時間は300ms以内でなければなりません。

一般的なユースケースは、4〜8時間で10分ごとにキーを押すことですが、まれに2秒ごとにキーを押すこともあります。これはすべてRaspbianで実行されており、rootアクセス権があります。

答え1

openssh-serverのインストール(RPiへ)

apt-get install openssh-server

-X(他のホストで)スイッチでsshを使用できます。

ssh -X <username>@<IP_of_Rasperry_Pi>
[Enter password when prompted]

接続したら、プロンプトをRaspberry Piにローカルにログインしたときに表示されるメッセージに変更する必要があります。

接続すると、epiphany &Raspbianに付属のデフォルトのWebブラウザを実行してクライアントコンピュータ(Raspberry Piではない)に表示し、関連プログラムを実行しているWebサイトに移動して開きます。

[一般]キーボードをPiに接続して押してマルチユーザーモード(グラフィックなし)に切り替え、Ctrl + Alt + F1rootとしてログインし、pkill Xtty(たとえば、Xを大文字で表示する必要があります)に入力して、直接接続されたGUIディスプレイを終了できます。 piに(システムリソースを保存する)その後、SSHにアクセスして(そのオプションを忘れないで-X)、ブラウザを開くことができます(以前と同様)。または、-Xスイッチなしでsshを使用してキーボードを接続せずにXサーバーをシャットダウンすることもできます。 1つの注意点は、このコマンドがsshを使用して設定したすべてのセッションを含む、piで実行されているすべてのXセッションを終了することです。

この機能は、リモート接続に使用されるキーボードを介してキーをプログラムにマップできる場合にのみ機能します。

起動時に[RPiでローカル]GUIが表示されないように設定するには、コマンドを使用してここに記載されているsudo raspi-config指示に従ってください。https://raspberrypi.stackexchange.com/a/1320

これがあなたの問題を解決するのに役立つことを願っています。

答え2

私は生の入力デバイスを読んで解析してこの問題を解決しました。https://stackoverflow.com/a/2554421/3530257

関連情報