ユーザー対話が必要で、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 + F1
rootとしてログインし、pkill X
tty(たとえば、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