1、下载HP1020固件文件sihp1020.dl文件至/etc目录
2、在USB热拔插触发目录下建立触发脚本:VI /etc/hotplug.d/usb/Printer-HP1020
#!/bin/sh set -e # 固件路径 FIRMWARE=/etc/sihp1020.dl # 打印机路径,可以从OpenWRT的USB打印机界面中中查看 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
加入首次启动 local startup /etc/rc.local
cat /etc/sihp1020.dl >> /dev/usb/lp0
3、实现效果:
打印机开机后触发USB热插拔事件,HP1020打印机绿灯常亮并立即进行自检,然后红灯绿灯交替闪烁再次自检,随后绿灯常亮
出处: https://www.pizzayy.com/openwrt-实现hp1020打印机网络共享.html?doing_wp_cron=1714973122.5799219608306884765625
新系统不需要这么复杂了。仅需在config里指定驱动路径。
root@OpenWrt:~# cat /etc/config/p910nd
config p910nd
option device ‘/dev/usb/lp0’
option port ‘0’
option enabled ‘1’
option runas_root ‘1’
option usbvidpid ’03f0/2b17′
option mdns_sn ‘S420WCB’
#option driver_file ‘/opt/p910nd_drivers/Hewlett-Packard_HP_LaserJet_1020_03f0_2b17.bin’
option driver_file ‘/etc/config/sihp1020.dl’
option mdns_cls ‘PRINTER’
option mdns_mfg ‘Hewlett-Packard’
option mdns_note ‘Located near router’
option mdns ‘1’
option mdns_mdl ‘HP LaserJet 1020’
option mdns_cmd ‘ACL’
option mdns_ty ‘HP LaserJet 1020’
option mdns_product ‘(HP LaserJet 1020)’
option bidirectional ‘1’
config hotplug
option driver_home ‘/opt/p910nd_drivers’