【问题标题】:Can't get hidraw0 device to open in nodeJS app无法在 nodeJS 应用程序中打开 hidraw0 设备
【发布时间】:2020-03-13 10:01:42
【问题描述】:

晚上好!

我正在尝试使用在 Raspberry Pi 4 上使用的 Node SerialPort 包设置条形码扫描仪应用,但我很难让代码识别设备

我已经确定路径是/dev/hidraw0,因为这是我能够从 dmesg 输出中确定的。

当我运行 cat /dev/hidraw0 时,它会打开,当我扫描条形码时,它会向控制台输出 %""'#''!'&" (我知道这是胡言乱语,但是不同的一天有不同的问题)。但是,当我在我的 nodeJS 代码中引用此路径时,我收到以下错误:

Serial port error: Error: Error: Invalid argument setting custom baud rate of 9600

我已在制造商网站上确认默认波特率为 9600。我已尝试删除以下代码中的 baudRate 选项,但仍然显示相同的错误。

这是我现在使用的代码:

// Use the serialport module to get scanner  data
const SerialPort = require('serialport');
const Readline = require('@serialport/parser-readline')

// Open the serial port with some configuration
const port = new SerialPort('/dev/hidraw0', {baudRate: 9600});
const parser = new Readline()
port.pipe(parser)

// When the port is open just say so
port.on('open', function() {
 console.log('Serial port open');
});

// Check for errors on the serial interface
port.on('error', function(err) {
 console.log(`Serial port error: ${err}`);
});

// Pass scanner data onto web server
port.on('data', function(data) {
 console.log('Scan prompted');
});

我使用的 USB 扫描仪是 Zebra LS2208,我希望得到有关可能导致此问题的一些帮助或指导。

提前致谢!

【问题讨论】:

    标签: node-serialport


    【解决方案1】:

    万一其他人遇到这个问题,我无法让设备与我引用的 NPM 包一起工作,但由于这个模块使用了node-hid,我决定使用那个并且能够让我的扫描仪被识别并正常工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-15
      • 2017-05-31
      • 2023-04-01
      • 1970-01-01
      • 2014-08-04
      • 2016-09-15
      相关资源
      最近更新 更多