使用node-usb从usb设备读取

时间:2017-05-04 04:10:48

标签: node.js usb electron

我正试图在我的电子应用程序中使用tessel/node-usb从“连接到我的电脑”的USB设备读取数据 但我无法阅读任何内容或收到任何错误! 我正在使用以下js:

function connectdevice(vID, pId){
var device = usb.findByIds(vID, pId);
device.open();
var deviceINTF=device.interface(0);

if (deviceINTF.isKernelDriverActive())
    deviceINTF.detachKernelDriver();
deviceINTF.claim();


var ePs = deviceINTF.endpoints;
var epIN;
$.each( ePs, function( index, ep ){
    if(ep.direction=="in"){
        epIN=ep;
}
});
if(epIN){
    epIN.on('data', function (data) {
        alert("1"+data);
    });
    epIN.transferType = 2;
    alert("non empty port : "+epIN);
    epIN.transfer(64, function(error, data) {
        console.log(error, data); 
    });
    alert("after transfer");
}else{
    alert("unable to read .."); 
}
}

1 个答案:

答案 0 :(得分:3)

代码没有问题,但我的设备有2个接口,当我更改此行代码时,我的代码检查第一个接口:

var deviceINTF=device.interface(0);

到:

var deviceINTF=device.interface(1);

有效!

希望这有助于任何人。