日期:2014-05-16  浏览次数:20603 次

Linux 使用Benq 4300U扫描仪
Fedora 11的软件库带有xsane,这是一个很好用的扫描仪前端程序(front-end)。但真的要让scanner工作,还要适当的配置后端(back-end)。
Benq 4300U是个很老式的扫描仪了,usb接口的,在Windows下工作的很好,这种类型的设备有一种古怪的firmware的装载行为,在linux下工作需要做一些配置。这种设备的firmware是在其接入系统已后,由操作系统加载到设备特定的RAM中的。现在还有很多主板自带的网卡也是类似的方法加载firmware。只有当设备成功地加载这些firmware程序后,设备才会开始工作。
先接好扫描仪的USB和电源,然后列一下usb设备的ID,可能会看到以下的输出:
[root@steve snapscan]# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 011: ID 04a5:20b0 Acer Peripherals Inc. (now BenQ Corp.) S2W 3300U/4300U
Bus 002 Device 002: ID 0c10:0000
Bus 002 Device 003: ID 0ac8:301b Z-Star Microelectronics Corp. ZC0301 Webcam
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

橙色的那行是扫描仪在系统中的ID,连接到系统的USB bus的编号,还有设备名称。
扫描仪ID的04a5是Vendor ID(VID),20b0Product ID(PID),PID低8位是b0是十进制的176。
从 benq.com.cn下载扫描仪的驱动,是一个zip包,F2007080900071.zip,在其中的BIN目录中有扫描仪的firmware程序,我的Benq 4300U对应的firmware是u176v046.bin(对应PID: 20b0),解压缩后将u176v046.bin复制到设当的目录,这个目录你可以自己选择,例如我放到 /usr/share/sane/snapscan/目录下,所以我把/etc/sane.d/snapscan.conf文件中的firmware配置修改成:
firmware /usr/share/sane/snapscan/u176v046.bin
以后,再启动xsane时,xsane将把这个指定的firmware程序upload到扫描仪,这样Benq 4300U Scanner就开始工作了。