本周我买了一台佳能 Pixma MG3052,这是一款多功能打印机。我从佳能网站和“Scan Gear MP”安装了打印机驱动程序。
我能够使用scangearmp2
命令进行扫描,但无法使用 进行扫描scanimage
。找不到扫描仪,如果我手动将其添加到/etc/sane.d/pixma.conf
,则会出现错误:
[bjnp] udp_command: ERROR - no data received (timeout = 1000)
[bjnp] bjnp_init_device_structure: Cannot read mac address, skipping this scanner
[bjnp] udp_command: ERROR - no data received (timeout = 1000)
[bjnp] add_scanner: ERROR - Cannot read scanner make & model: bjnp://192.168.1.2
我已经升级了我的 sane 版本,但sane-git
没有成功,同样的消息一直出现。
我已阅读 sane-pixma 手册页,MG3000 系列似乎不受支持。
经过大量研究,我发现 sane-pixma 使用的底层协议是端口 8612 上的 BJNP。然后我看到了这个页面: http://www.qwhatis.com/what-is-bjnp/
BJNP 协议是旧款佳能 Pixma 打印机型号的一部分。
和
人们一直在抱怨 BJNP 协议下的打印限制
如果我理解正确的话,我买的新打印机不再使用 BJNP,我无法使用 sane-pixma 后端进行扫描?那我该怎么办?
有谁知道要使用什么新协议?
答案1
看来 Pixma MG3051/MG3052 不支持 BJNP 协议。BJNP 使用的端口 8612 似乎已关闭。我认为如果通过 USB 电缆连接,它可能与 sane-pixma 驱动程序兼容,但我认为 sane 不支持通过网络进行扫描。
事实上,如果您使用 3.40 或更新版本,佳能自己的 scangearmp2 可以通过网络工作。我进行了一次捕获,协议似乎非常简单,基于 http,称为 CHMP(佳能 HTTP 管理协议)。如果有人感兴趣,捕获是这里。
答案2
对于扫描仪,您是否尝试过 sane-escl(在 sane-backends 内部)或 sane-airscan(https://github.com/alexpevzner/sane-airscan)?我用我的 Canon TS9020 试过,它们都可以工作。