我有一个raspberry pi运行一些软件(我有源代码),需要用户交互,并有一个特殊的(USB)键盘,只有3个键。该程序运行在框架缓冲区(SDL)上,并远程启动;我需要这个程序对按键作出反应,但如果用户没有在本地登录,则似乎不可能。
我能做什么?解决方案不能使用大量的资源,延迟应该在300毫秒以内。
典型用例是在4-8小时的过程中每10分钟按一次键,但频率可以和键按一次一样,每2秒一次(极不可能)。所有这些都运行在raspbian之上,我有根访问权限。
发布于 2014-12-04 04:42:43
我通过读取原始输入设备并类似于https://stackoverflow.com/a/2554421/3530257解析它来解决这个问题。
发布于 2014-12-03 02:44:41
安装openssh服务器(在RPi上)
apt-get install openssh-server
您可能希望将ssh与-X
交换机(来自另一个主机)一起使用。
ssh -X <username>@<IP_of_Rasperry_Pi>
[Enter password when prompted]
连接之后,您的提示符应该已经更改为在raspberry pi上本地登录时所看到的内容。
连接完后,运行epiphany &
以运行Raspbian中包含的默认web浏览器,并在客户端计算机(而不是Raspberry )上显示它,并导航到运行该程序的网站,并打开它。
您可以将正常键盘附加到Pi上,并通过按Ctrl + Alt + F1
、以根用户身份登录并在tty处输入pkill X
(是的,X需要大写)切换到多用户模式(没有图形),从而在直接连接到pi的显示器上杀死GUI (节省系统资源)。然后您可以使用它(不要忘记-X
选项)并打开浏览器(就像以前一样)。或者,您也可以使用ssh (没有-X
开关)来关闭X服务器,而不是附加键盘。需要注意的一点是,这个命令将杀死运行在pi上的所有X会话,包括您可以使用ssh建立的任何会话。
只有当键可以通过远程连接上使用的键盘映射到程序上时,这才能起作用。
若要将图形用户界面设置为在引导RPi上的局部中不出现,请使用sudo raspi-config
命令,并遵循以下说明:https://raspberrypi.stackexchange.com/a/1320
我希望这有助于解决你的问题。
https://unix.stackexchange.com/questions/171151
复制相似问题