我想通过无线方式使用JS / Johnny-Five从我的计算机向Arduino运行命令。 我有一个Uno和一个HC-05。我按照说明in this URL设置了HC-05。我可以将计算机与它配对,我已将StandardFirmata上传到Uno。 但是当我尝试与之沟通时似乎超时了。
当我输入时,通过NodeJS命令行
> var five = require("johnny-five");
> var board = new five.Board({repl: false, port:'/dev/cu.ailaGduino-DevB'})
我明白了:
1480635008609 Connected /dev/cu.ailaGduino-DevB
undefined
> 1480635018633 Device or Firmware Error A timeout occurred while connecting to the Board.
Please check that you've properly flashed the board with the correct firmware.
See: https://github.com/rwaldron/johnny-five/wiki/Getting-Started#trouble-shooting
后来提到Timer.listOnTimeout是错误调用堆栈的一部分。
Arduino IDE在配对时会列出该特定设备,我想这就是为什么它说“已连接”。
当我再次尝试相同的命令时,我得到了
> var board = new five.Board({port:'/dev/cu.ailaGduino-DevB'})
1480635041136 Connected /dev/cu.ailaGduino-DevB
undefined
> 1480635041138 Error Error Resource temporarily unavailable Cannot lock port
通过USB很好。
有什么想法吗?
答案 0 :(得分:0)
我认为这是错误的,因为您寻址的是本地连接的设备而不是wifi连接的设备。
var board = new five.Board({port:'/dev/cu.ailaGduino-DevB'})
This tut建议您以不同的方式连接到板。
var EtherPortClient = require("etherport-client").EtherPortClient;
var board = new five.Board({
port: new EtherPortClient({
host: "xxx.xxx.xxx.xxx", // IP ESP8266
port: 3030
}),
timeout: 10000,
repl: false
});