<分区>
我目前正在使用 Node.js在 Raspberry Pi 上并连接了系列 1 XBee通过 USB 端口 radio 。为了与 Node.js 集成,我使用了 xbee-api模块。
虽然我从我的笔记本电脑向 XBee 发出命令没有任何问题(引脚更改等),但我无法通过 xbee-api 中的 API 模式发出任何命令。
下面是我的测试代码(大部分是从xbee-api主页复制过来的):
var util = require('util');
var SerialPort = require('serialport').SerialPort;
var xbee_api = require('xbee-api');
var C = xbee_api.constants;
var xbeeAPI = new xbee_api.XBeeAPI({
api_mode: 1
});
var serialport = new SerialPort("/dev/ttyUSB0", {
baudrate: 57600,
parser: xbeeAPI.rawParser()
});
serialport.on("open", function() {
console.log("open");
var frame_obj = { // AT Request to be sent to
type: C.FRAME_TYPE.AT_COMMAND,
command: "D0",
commandParameter: [0x05],
};
serialport.write(xbeeAPI.buildFrame(frame_obj));
});
// All frames parsed by the XBee will be emitted here
xbeeAPI.on("frame_object", function(frame) {
console.log(">>", frame);
});
我收到“打开”的响应,但没有任何指示正在发送命令。上面的命令是一个本地命令,将引脚D0变为高电平,但实际上引脚值并没有改变。
我已将 XBee radio 重置为默认值,然后从我的笔记本电脑(+++、ATAP 1、ATWR)将其置于 API 模式。
这很令人费解,因为 xbee-api Node.js 模块似乎没有其他人遇到过这个问题。