2

谷歌 Chrome 和 Firefox 开始支持 Gamepad API,我有代码可以将库存 Arduino 变成可定制的游戏手柄 ( UnoJoy! ),因此您可以使用它从 Arduino 获取数据到 JavaScript。但是,我正在尝试找到一种方法将数据返回到 Arduino。

理想情况下,我想要某种可以被劫持以传递数据的内置 USB 硬件通道(如控制 Scroll Lock 键盘 LED),但如果迫不得已,能够将数据从浏览器发送到外部客户端程序可以工作(尽管我希望浏览器沙盒使这成为一个困难的提议......)。不过,理想情况下,仅与股票、稳定分支 Chrome 一起工作的东西会非常棒,这样人们就可以去一个网站,看看他们需要用他们的 Arduino 做什么来修改它,然后就可以开始了.

有没有一种黑客可以通过这种方式从 JavaScript 中泄露信息?

我开始认为相机 API 可能会给我一些句柄,但我正在寻找其他一些建议!

4

2 回答 2

0

Gamepad API 正在扩展启用的输入设备,例如键盘和鼠标。无意让输入设备自己接收输入。为什么?因为没有意义。

有一个称为Serial API的 API ,您可以使用它与这些设备进行双向通信。在访问硬件设备中可以找到从 Chrome 访问硬件的一般方法。这是非常特定于 Google/Chromium 的,据我所知,它还没有登陆W3C,所以如果它登陆 W3C 并且何时登陆,它会发生快速变化。

于 2012-11-07T12:36:25.710 回答
0

如果不使用浏览器插件或将在本地计算机上运行并充当代理的某些程序,我认为您将无法实现目标。

例如,您可以编写一个程序,用户将下载并在他们的计算机上运行,​​并且该程序将具有可从他们的浏览器访问的 Web 界面http://localhost:3000/或类似的东西。该程序可以以您喜欢的任何方式访问 Arduino,同时提供一个无需插件的股票浏览器即可访问的 Web 界面。

如果您只想用 JavaScript 编写它,那么您可以使用简单的 Web 框架(如Express plus Socket.io)和可用于与 Arduino 对话的库之一(如node-serialportFirmata )编写一个小的Node.js程序。

也可以看看:

于 2012-11-07T12:53:41.657 回答