霍尼韦尔无按钮 PyUSB 条码扫描器

PyUSB Barcode Scanner without Button by Honeywell

我正在尝试使用霍尼韦尔 N5600,但无法扫描任何内容。

该设备被识别为 /dev/hidraw1,但由于它没有任何按钮可供按下,我无法触发扫描,因此,当我尝试读取它时,它只会一直等待。

我开始创建一个 python 程序,它似乎可以与之通信(不同的 return 值):

VENDOR_LEGO = 0x0c2e
PRODUCT_EV3 = 0x0967
device = usb.core.find(idVendor=VENDOR_LEGO, idProduct=PRODUCT_EV3)
device.detach_kernel_driver(0)

#"TRGMOD8." would - when scanned (which I cannot do, at this point) - activate a permanent scanning mode
device.ctrl_transfer(0x21, 0x9, wValue=0x200, wIndex=0x00, data_or_wLength='TRGMOD8.')
#8 is returned

device.ctrl_transfer(0x21, 0x9, wValue=0x200, wIndex=0x00, data_or_wLength='PAPSPC.')
#7 is returned

不幸的是 the link given in this post 无法再访问。看来它可以解决我的问题。

如何激活扫描?

关于霍尼韦尔N5600的文档如下
N5600 OEM 2D Imager Data Sheet
N56XX Decoded Engine User's Guide

您需要一台 Windows 可以连接到互联网的 PC,但是有一个名为 EZConfig-Scanning 的工具可以配置和维护扫描仪。
EZConfig Device Management Data Sheet

可能识别设备/dev/hidraw1可能是因为扫描器设置为USB HID条码扫描器模式。

如果您将设置更改为 USB 键盘(PC/Mac),它始终可读,并且您读取的条码将被通知为键盘输入。

通过将设置更改为USB Serial,读取start/stop可以通过SerialPort命令传输来控制。条码读取通过从串口接收数据通知。