找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 268|回复: 0

MSG1500 X.00刷Openwrt连HP1020plus打印机跳坑

[复制链接]
本帖最后由 yingdaoli 于 2023-2-7 21:52 编辑

MSG1500 X.00刷Openwrt连HP1020plus打印机跳坑

不知有多少朋友买带USB口的路由器,连HP1020打印机做无线打印的,除了折腾和特殊刚需外,还不如一根USB延长线解决问题来得快。废话少说,如果你手里是瑞斯达康MSG1500 X.00 路由器,刷了OP,参考了网上各种教程,还是不能完美连接hp1020plus打印,欢迎来跳坑拍砖。

1.不知是刷入的OP不对,还是其他什么原因,按网上教程修改/etc/hotplug.d/usb/10-usb_printer文件没有用处。
2.尝试修改闭坑,10-usb_printer文件在每次插入usb打印机时都会执行(其他需要usb插入执行脚本,不防也放在这个文件中)
3.在我的路由器上,10-usb_printer文件执行后得到几个关键变量和网上已有脚本不一样,所以copy来的脚本其实没有正确执行。(论查阅日志文件的重要性!)
附上修改后可用的10-usb_printer文件,随时插入hp1020plus打印机随时可用,完美了!



#!/bin/sh
# Copyright (C) 2005-2014 NowRush Studio
# Author: hackpascal <hackpascal@gmail.com>
# 覆盖文件/etc/hotplug.d/usb/10-usb_printer
# https://www.right.com.cn/forum/thread-4062650-1-1.html 参考资料,致谢
# https://www.right.com.cn/forum/thread-4050057-1-1.html 参考资料,致谢

LOGFILE=/tmp/hp-fm
echo "$(date): 10-usb_printer.sh begin..." > $LOGFILE
echo "PRODUCT: $PRODUCT"  >> $LOGFILE        #值: 3f0/2b17/100
echo "DEVTYPE: $DEVTYPE"  >> $LOGFILE                #值: usb_device
echo "ACTION: $ACTION"  >> $LOGFILE                #值: bind
echo "INTERFACE: $INTERFACE"  >> $LOGFILE

#原代码,未改动
if [ x"$INTERFACE" = x"7/1/1" ] || [ x"$INTERFACE" = x"7/1/2" ]; then
        /usr/bin/usb_printer_hotplug "$PRODUCT" "$ACTION"
fi

# change this to the location where you put the .dl file:
FIRMWARE=/etc/sihp1020.dl
DEVICE=/dev/usb/lp0
#LOGFILE=/tmp/hp-fm
#echo "$(date): printer sh begin..." > $LOGFILE
if [ "$PRODUCT" = "3f0/2b17/100" -a "$ACTION" = "bind" -a "$DEVTYPE" = "usb_device" ]; then
   echo "$(date): STARTING" >> $LOGFILE
   for i in $(seq 30); do
       echo "$(date): Attempt number $i on $DEVICE" >> $LOGFILE
       if [ -c $DEVICE ]; then
          echo "$(date): Device $DEVICE found." >> $LOGFILE
          if [ -z "`usb_printerid $DEVICE | grep FWVER`" ]; then
              echo "$(date): No firmware found on $DEVICE" >> $LOGFILE
              echo "$(date): Sending firmware to printer…" >> $LOGFILE
              cat $FIRMWARE > $DEVICE
              echo "$(date): done." >> $LOGFILE
          else
              echo "$(date): Firmware already there on $DEVICE" >> $LOGFILE
          fi
          echo "$(date): EXITING" >> $LOGFILE
          exit
       fi
       sleep 1
    done
fi


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我的恩山、我的无线 The best wifi forum is right here.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-29 01:06

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表