1. 项目概述
作为一名技术爱好者,我最近成功将一台闲置近10年的爱普生L310打印机改造成了无线打印机。这个项目不仅解决了桌面空间紧张的问题,还让老设备焕发新生。整个过程基于树莓派4B和CUPS打印系统实现,成本低廉但效果显著。
改造的核心思路是利用树莓派作为打印服务器,通过CUPS(Common UNIX Printing System)服务将USB连接的打印机共享到局域网中。这样家里任何设备都能无线打印,彻底摆脱了线缆束缚。特别值得一提的是,这个方案成功解决了老打印机在ARM架构下的驱动兼容性问题。
2. 硬件准备与环境搭建
2.1 所需材料清单
- 树莓派4B(任何型号均可,建议2GB内存以上)
- 爱普生L310打印机(或其他USB接口打印机)
- 5V/3A电源适配器
- 16GB以上Micro SD卡
- 网线或Wi-Fi连接
- USB A to B打印线
2.2 树莓派系统安装
我选择了Raspberry Pi OS Lite版本(基于Debian 11),这是最轻量稳定的选择。安装步骤:
- 使用Raspberry Pi Imager工具写入系统镜像
- 首次启动前,在boot分区创建空文件
ssh以启用远程访问 - 创建
wpa_supplicant.conf文件配置Wi-Fi(如需无线连接)
提示:如果使用有线网络,插入网线后树莓派会自动获取IP,可通过路由器管理界面查看。
2.3 基础环境配置
首次登录后(默认用户pi,密码raspberry),建议立即执行:
bash复制sudo raspi-config
进行以下关键设置:
- 修改默认密码
- 设置时区和本地化选项
- 扩展文件系统以使用全部SD卡空间
- 启用SSH和VNC(可选)
然后更新系统:
bash复制sudo apt update && sudo apt upgrade -y
3. CUPS打印服务安装与配置
3.1 安装CUPS及相关组件
CUPS是类Unix系统的标准打印系统,提供跨平台打印支持。安装命令:
bash复制sudo apt install cups avahi-daemon libnss-mdns -y
其中:
avahi-daemon:实现Bonjour/mDNS服务发现libnss-mdns:提供主机名解析支持
3.2 配置CUPS服务
- 将当前用户加入lpadmin组:
bash复制sudo usermod -a -G lpadmin pi
- 修改CUPS配置文件:
bash复制sudo nano /etc/cups/cupsd.conf
关键修改项:
conf复制Listen localhost:631 → Port 631
Allow from 127.0.0.1 → Allow from all
- 重启服务生效:
bash复制sudo systemctl restart cups
3.3 防火墙设置(如有)
如果启用了UFW防火墙,需要开放631端口:
bash复制sudo ufw allow 631/tcp
4. 打印机驱动安装与配置
4.1 爱普生L310驱动安装
这是最具挑战性的部分。官方未提供ARM架构驱动,但通过以下方法解决:
- 下载爱普生提供的.deb驱动包(适用于国产ARM系统)
- 手动安装:
bash复制sudo dpkg -i epson-inkjet-printer-escpr_1.7.7-1lsb3.2_armhf.deb
- 解决依赖问题:
bash复制sudo apt --fix-broken install
4.2 添加打印机到CUPS
- 访问CUPS管理界面:http://树莓派IP:631
- 选择Administration → Add Printer
- 选择USB连接的L310打印机
- 选择对应驱动(EPSON L310 Series)
- 设置共享选项
注意:如果找不到打印机,尝试重启CUPS服务或重新插拔USB线。
5. 客户端配置与使用
5.1 Linux/Mac客户端配置
- 添加打印机时选择"IPP"协议
- 输入地址:http://树莓派IP:631/printers/L310
- 选择对应驱动
5.2 Windows客户端配置
- 控制面板 → 设备和打印机 → 添加打印机
- 选择"网络打印机"
- 输入地址:http://树莓派IP:631/printers/L310
- 安装对应驱动(可从爱普生官网下载)
5.3 移动设备打印
对于iOS/Android设备:
- 确保与树莓派在同一局域网
- 使用支持AirPrint的App(如iOS的"文件"应用)
- 或安装PrintHand等打印服务App
6. 高级优化与维护
6.1 自动唤醒打印机
爱普生L310长时间不使用时会自动休眠,可通过cron定时唤醒:
bash复制crontab -e
添加:
cron复制*/15 * * * * lpstat -p L310 >/dev/null 2>&1
6.2 打印队列监控
查看当前打印任务:
bash复制lpstat -o
取消所有任务:
bash复制cancel -a
6.3 日志查看与问题排查
CUPS日志位置:
bash复制tail -f /var/log/cups/error_log
7. 常见问题解决方案
7.1 打印机无法识别
可能原因及解决:
- USB供电不足 → 使用带电源的USB Hub
- 驱动未正确安装 → 重新安装并检查依赖
- CUPS配置错误 → 检查/etc/cups/ppd下的PPD文件
7.2 打印任务卡住
处理方法:
- 重启CUPS服务:
bash复制sudo systemctl restart cups
- 清空打印队列
- 检查打印机状态灯
7.3 无线连接不稳定
优化建议:
- 使用5GHz Wi-Fi(减少干扰)
- 设置静态IP避免地址变化
- 考虑有线连接树莓派
8. 项目总结与扩展思路
这个改造项目成功的关键点:
- 找到了兼容ARM架构的驱动方案
- 正确配置了CUPS的访问权限
- 实现了全平台的打印支持
未来可能的扩展方向:
- 添加Web打印界面(如IPP Everywhere)
- 集成云打印服务(需注意安全设置)
- 实现打印用量统计功能
整个项目最令人满意的地方是,仅用不到100元的树莓派就让价值数千元的专业打印机重获新生,而且打印质量与直接连接电脑毫无差别。对于家里有多台设备需要打印的情况,这种方案既经济又实用。