Solved networked printer not printing

I have installed FreeBSD 11.1 as a clean install to actual metal. Also have installed cups and placed
into /etc/rc.conf
The printer is a Brother HL-2070N connected to my router by cat5. Currently I am using foomatic as the source of the driver, which is an exact match for the pirnter. The printer can be detected:

% lpstat -p
printer HL-2070N is idle.  enabled since Sun Jul 30 08:39:39 2017

The printer also shows up in in localhost:631, and in print dialogues. However printing fails. The jobs do not show up in localhost:631 as failed.

I have also tried gutenprint although with gutenprint I had to choose HL-2060 as HL-2070N wasn't present. This fails in the exact same manner. I just replaced my FreeBSD 11.0 installation on the same setup. Printing was working fine there with gutenprint as the source of the driver.
You could also have a problem with the network connection. You can check this by looking in the router's IP addresses or if you know the IP address ping'ing the address.

This printer also supports pcl5e/pcl6. print/ghostscript has both ljet4 (600dpi)and pxlmono (1200dpi) drivers that are natively compiled in FreeBSD and will work. If you are using a linux ppd it may rely on a "binary blob" that Brother compiled on Ubuntu. Can you post specifics about the ppd you are using and the network connection?
Thank you shepper your post gave the info I needed to solve the problem. Networking was not the issue at all. The printer does have a fixed IP address and pinging it worked fine with no packet loss. In previous versions of FreeBSD I had always installed gutenprint and chose CUPS+Gutenprint for the Model/Driver. After setting it up with HP LaserJet Series PCL 4/5, which I assume came from print/ghostscript all is well.
Well just reading the ppd file I can see it contains all kinds of specific information for that printer. I will try that soon.
That is interesting. What would be the advantage of using a ljet4 driver created in this manner compared to the one I am now using from print/ghostscript?

I do not think there would be much difference, the ljet4 driver does most of the heavy lifting. Generate the ppd, save it and you should always have a workable driver for this printer until it mechanically fails. Either place in /usr/local/share/cups/model/brother/.ppd or gzip'd placed in /usr/local/share/foomatic/db/source/PPD/Brother/*ppd.gz. You may need to adjust owner/group/permissions. It should then show up with the correct make/model in the cups configuration interface.

You can also easily use this ppd with foomatic-rip and the default lpr spooling system and skip the complexity of cups altogether. The FreeBSD handbook even uses the ljet4 driver as an example.

EDIT: corrected for both paths
Last edited: