2016-10-13 20 views
2

私はYoctoo 3.10でIntel Edisonに取り組んでいます。私は/ dev/hidraw0にバーコードスキャナを持っていて、入力時にhexdump /dev/hidraw0を実行すると出力される正確な行を使用したいノードjsで書かれたプログラムの場合パイプのダンプ出力をノードjsプログラム

var readline = require('readline'); 
var rl = readline.createInterface({ 
    input: process.stdin, 
    output: process.stdout, 
    terminal: false 
}); 

rl.on('line', function(line){ 
    console.log(line); 
}) 

私が試してみました通常、それをパイプ:

hexdump /dev/hidraw0 | node program.js 

しかし、私は何を取得、私はそれがhexdumpに対してはdoesnの事実に関係していると思います

ノードJSプログラムは以下のとおりです。書き込みは\ nで、バッファは内容を書きません。

私も、ファイルとしてオープンは/ dev/hidraw0を試してみました。このようにしている:

var fs = require('fs'); 
fs.open('/dev/hidraw0', 'r', function(status, fd) { 
    if (status) { 
     console.log(status.message); 
     return; 
    } 
    var buffer = new Buffer(100); 
    fs.read(fd, buffer, 0, 100, 0, function(err, num) { 
     console.log(buffer.toString('hex')); 
    }); 
}); 

そしてhexyのようないくつかの進ダンプを使用しますが、この場合、私はいくつかの進行ではなくと同じものを取得私は必要なものです。

process.stdin.setEncoding('utf8'); 
process.stdin.on('readable', function() { 
    var chunk = process.stdin.read(); 
    if (chunk !== null) { 
    console.log(chunk); 
    } 
}); 

実行中:

sudo hexdump /dev/hidraw0 | node this-script.js 

サンプル出力だけhexdump /dev/hidraw0を使用して

は私に次のよう (私はカードを使用)私にとって

0000000 0000 0020 0000 0000 0000 0000 0000 0000 
0000010 0000 0020 0000 0000 0000 001f 0000 0000 
0000020 0000 0027 0000 0000 0000 0026 0000 0000 
0000030 0000 0025 0000 0000 0000 0000 0000 0000 
0000040 0000 0025 0000 0000 0000 0024 0000 0000 
0000050 0000 0021 0000 0000 0000 0025 0000 0000 
0000060 0000 0028 0000 0000 0000 0000 0000 0000 

答えて

0

次作品を提供します(ワイヤレスマウスを動かすと):

0000000 0120 0002 fd00 ffcf 0000 0000 0000 2000 
0000010 0201 0000 cffc 00ff 0000 0000 0000 0120 
... 
+0

それでも何も、多分それはlsusbがデバイスを実行すると、以下のように認識されていることを知るのに役立ちます: –

+0

バス001、デバイス002:IDの13BA:0018 PCPlayバーコードPCP-BCG4209 –

+0

@NachoRasche、ときあなたは、単に実行表示されているもの'hexdump/dev/hidraw0'?私は、HIDデバイスの状態が何かを示す前に変更する必要があることを意味します。 HIDデバイスの状態が変更されたことを確認してください(印刷するものがありますか)。 –

関連する問題