This is an update to my post for FreeBSD 7. I’ve now upgraded to FreeBSD 8 and things are done a bit differently.
Custom Kernel
There’s no need to build a custom kernel any more since FreeBSD uses the ulpt device (as it always should have!). That device is built in to the GENERIC kernel and the device is correctly recognised at boot time. The remainder of this post is about changing to the new device name.
Build and install ports
This is the same as previously.
Set device permissions
The devs.rules entry now has the new device name and looks like:
[printers=10]
add path 'ulpt0' mode 0660 group cups
The rc.conf entry is the same as before.
Install firmware
The firmware needs to be sent to the new device name:
cat /usr/local/share/foo2zjs/firmware/sihp1020.dl > /dev/ulpt0
Likewise, /etc/devd.conf is changed to:
# Firmware download HP Laserjet 1020 printer
attach 100 {
match "vendor" "0x03f0";
match "product" "0x2b17";
action "cat /usr/local/share/foo2zjs/firmware/sihp1020.dl > /dev/$device-name";
};
Configure CUPS to use the printer
This is the same as before except the device URI is now “usb:/dev/ulpt0″.
#1 by Alex on December 10, 2009 - 4:42 AM
Thanks for sharing.
Only one thing to add: you have to build cups-base with USB support, otherwise CUPS will not detect your printer.
In /usr/ports/print/cups-base run ‘make config’ and check ‘LIBUSB’ option, then run ‘make install’ (or ‘make reinstall’).
#2 by Troy on January 26, 2010 - 7:51 AM
I am having trouble with the installation of the firmware after connecting. I am connecting a HP P1505 on FreeBSD 8
cat /usr/local/share/foo2zjs/firmware/sihpP1505.dl > /dev/ulpt0
This will upload the firmware correctly but I am having trouble figuring out the correct values for this printer to set devd.conf up
Any help would be greatly appreciated
#3 by Troy on January 26, 2010 - 8:45 AM
Ok so I found the solution to my own problem.
To find the values needed to setup devd.conf
Run devd in debug mode
devd -Dd
This will output all of the neccessary info when you power on the printer.