HP LaserJet 1020 Plus 和 HP LaserJet 1020 在设置上并无任何差别,其驱动程序也是通用的,故此教程同时适用这两种打印机。
0x00 相关资源下载
-
sihp1020.img
:Google Drive,腾讯微云 -
luci-app-usb-printer
:支持多个打印机共享的 LuCI 模块 (p910nd 改进版) - 恩山无线论坛
0x01 安装和配置 p910nd 相关软件包
你可以选择 luci-app-p910nd
或 luci-app-usb-printer
进行安装,两者差异并不大,但下文将使用后者为例。
大多数固件默认不会包含与 USB 打印机有关的内核模块,所以请检查 kmod-usb-printer
软件包是否已被安装。此模块是必须被安装的。
完成上述步骤后,将打印机与软路由使用 USB 线缆连接,并打开打印机的电源。
进入配置页面,打印机会被自动检测到,并按图中的信息进行设置。
检查上述内容无误后别忘了保存哦。
0x02 配置自动上传打印机固件
此打印机非常特别,仅完成上述配置后无法打印,需要将一个固件上传至打印机后才可正常工作。
固件名称为 sihp1020.img
,你可以在此文章的开头处下载到它,并放置在软路由的 /etc/
目录下。
此时再配置一个热拔插事件脚本,检测到打印机的 USB 上线后就向其上传固件。
首先确保 USB 热拔插事件脚本目录存在:
$> mkdir -p /etc/hotplug.d/usb/
将以下内容写入 /etc/hotplug.d/usb/10-printer_hp1020
文件:
#!/bin/sh
set -e
# the path where you put the .dl file
FIRMWARE=/etc/sihp1020.dl
# your printer device path, view the photo in the article
DEVICE=/dev/usb/lp0
# debug log file
LOGFILE=/tmp/hp1020
if [ "$PRODUCT" = "3f0/2b17/100" -a "$ACTION" = "bind" -a "$DEVTYPE" = "usb_device" ]; then
echo "$(date): USB printer binded. Trying to upload firmware..." >> $LOGFILE
cat $FIRMWARE > $DEVICE
echo "$(date): Success. Done." >> $LOGFILE
exit
fi
配置完成后,软路由将会在打印机连接成功后自动向其上传固件以供正常打印。
此时保持打印机的 USB 线缆已经正确连接,然后关闭电源,再开启电源。打印机开机后会被加载固件,具体表现为:绿灯常亮并进行自检,随后立即红灯绿灯交替闪烁再次自检,随后绿灯常亮。
0x03 添加网络打印机至 Windows 系统
本人使用的是 Windows 11,其他系统使用者请参考本文自行调整。
首先请务必确保你的系统中已经安装了 HP 提供的打印机驱动!
进入「设置 > 蓝牙和其他设备 > 打印机和扫描仪」,然后「添加打印机或扫描仪」,稍等片刻后选择「我需要的打印机不在列表中 - 手动添加」。
点击下一步后会进行所谓的检测,待检测失败后需要进行自定义设置。
随后选择「使用当前已安装的驱动程序」,剩下的就可以根据自己的喜好设定了。
但是要特别注意的是 ⚠️
⛔不要打印测试页!⛔
⛔不要打印测试页!⛔
⛔不要打印测试页!⛔
由于没有配置完成,立即打印测试页可能会导致打印机无限循环打印,若此情况发生,请立即关闭电源,并按照 HP 官方的操作方式移出硒鼓取出卡纸。
0x04 在 Windows 上进一步配置打印机
进入打印机和扫描仪的配置页面,选择刚刚添加的打印机,并按下图方式操作以关闭双向支持。
此时该打印机已经设置完成,可以正常打印测试页了。以下是我的测试页。
如果你在操作过程中遇到了任何问题,欢迎留言评论,我会尽力为你解答~