Very Frustrated ==> FreeBSD Compatible Printers?

Either I'm doing something totally wrong,
or else I've just hit a major snag that could send me back to linux.

Somebody please help me.

I've been doing battle to learn and set up my business on FreeBSD and finally hit my first major roadblock.
I came from devuan linux, where most printers just worked.
I made the mistake of expecting the same with FreeBSD.

I installed FreeBSD 13.1 amd64 on my test client, got cups to work,
go to install my printer, and almost NO printer drivers available,
maybe a grand total of 12.

I go to the "supported hardware" list for FreeBSD 13.1, and
did a search for "printer" and here is the grand total of what is listed....

The ulpt driver provides support for USB printers and parallel printer conversion cables, including the following:
  • ATen parallel printer adapter
  • Belkin F5U002 parallel printer adapter
  • Canon BJ F850, S600
  • Canon LBP-1310, 350
  • Entrega USB-to-parallel printer adapter

Can't seem to find any type of supported hardware list for FreeBSD anywhere.

The two printers I'm trying to set up (both via network) are:

==> Lexmark T654DN (supports Postscript 3 emulation, works great on linux, no manufacturer mention of or drivers listed for *BSD.)

==> Ricoh Aficio SP C430DN (supports Postscript 3, works great on linux, no manufacturer mention of or drivers listed for *BSD.)


I LOVE FreeBSD and want to stick with it, I can't bear to part with ZFS, I have my server set up and running on site,
but if I can't print, I'm done.

Can someone please help me?

Thank you...
Dave
 
THANK YOU.

From what I understand (other posts found since posted this), I just install the printer using cups, and select PPD file.

But not sure what you mean by the following....?:

With CUPS on FreeBSD, use the System V lp command set (lp, lpadmin, cancel, lpstat, etc.).

Do not use lpr/lpd because, with CUPS installed, there are two sets (one in /usr and one in /usr/local) and they cause confusion.

Also, I (obviously) Installed the cups package, are there additional packages I should install, or some packages I should avoid installing?

Thanks again.
 
From what I understand (other posts found since posted this), I just install the printer using cups, and select PPD file.
My understanding was that you installed CUPS, and the PPD files you needed were not there. So you just have to fetch them from the manufacturers of the printers.

Most of the printers supported by CUPS are supported by CUPS on FreeBSD (there are some exceptions that require Linux executables for rendering). If you want the complete list of supported printers, go to the CUPS documentation, and look for a PPD file.

The CUPS installation on FreeBSD installs emulators for the BSD lpr/ lpd command set in the /usr/local tree. The original BSD lpr/ lpd commands are permanently resident in the /usr tree. So which version of lpr or lpd you get depends on how your PATH is set up in your shell. That's a confusing -- and, I think, a wholly undesirable mess.

My recommendation was to use the System V lp command set ( lp, lpadmin, cancel, lpstat, etc.) which is installed by CUPS and completely unambiguous.

Edit: pkg install cups-filters may bring in the drivers you need...
 
Generally speaking, if you can get a printer going under CUPS on Linux, then FreeBSD won't be an issue, it takes replicating the setup. I just set up my own printer (HP LaserJet 1102w), using old notes I had from back in the day.
 
Have you installed the package gutenprint ? if not install it, than start your web browser and navigate to localhost:631 and
see what it comes up with. If that are Network printers go with ipp everywhere. Just feed it the printers ip address and
you should be on your way.
 
Can someone please help me?

These two printers work without issues on FreeBSD 13.1:

- HP M251nw (added as network printer over TCP/IP protocol)
- Samsung ML-1915 (added as local USB printer)

To make CUPS detect and add the Samsung printer this additional step is required:

Code:
% pkg info -l splix | grep 1915

        /usr/local/share/cups/model/samsung/ml1915.ppd

# cp /usr/local/share/cups/model/samsung/ml1915.ppd /usr/local/etc/cups/ppd/


Hope that helps.
 
Okay, so I've been messing around with this.

added cups groups to my user.

Attempted to print, here are my various errors:

1. Print from Libreoffice Writer:

Warning
Could not start printer.
Please check your printer configuration.

2. In XFCE desktop...
Click Applications Menu
Click Print Settings Menu
Click Print Test Page:

There was an error during the cups operation. ‘No such file or directory’


Click Print Self-test page:
This works…


CUPS error log:

(This doesn't sound too promising...)
W [31/Jan/2023:17:01:56 -0500] Printer drivers are deprecated and will stop working in a future version of CUPS. See https://github.com/OpenPrinting/cups/issues/103

E [31/Jan/2023:17:10:50 -0500] [Client 4] Returning IPP client-error-document-format-not-supported for Send-Document (ipp://localhost:631/printers/Lexmark-T654DN) from localhost.

E [31/Jan/2023:17:18:02 -0500] [Client 64] Returning IPP client-error-document-format-not-supported for Print-Job (ipp://localhost:631/printers/Lexmark-T654DN) from localhost.



Also, I installed the gutenprint package.
Started cups in browser, add printer,
Now have various Lexmark printer drivers, but nothing sounding even remotely like my model #,
might be only newer models (?)
 
Try this as root after adding the correct PPD filter in CUPS: # service cupsd restart. Then refresh the localhost:631 web page, and print out a printer test page. If you get a printout after all that, you're good to go.
 
Stay right away from the applications. You need to configuring and testing in the CUPS setup page (login as root). If you can't print a test page, then we need to know how your printers are connected, and the choices you have made in the setup.
 
We're gaining on it.....

Was able to get the Lexmark T654DN printing (using PPD file from openprinting.org),
but would like to use the ipp or ipps type connection,
since it offers some measure of security.

But so far, no luck.

Here are my results, testing from within cups web browser...

CONNECTION: ==> RESULT:
socket://10.10.200.202 ==> (prints, great for speed.)

lpd://10.10.200.202 ==> (auto-detected printer, auto-setup with lpd connection type. Works. Speed okay, not great.)

ipp://10.10.200.202 ==> (prints, stalls, "Waiting for job to complete." Job hangs in spool without clearing.)
ipps://10.10.200.202 ==> (Nothing. "printer not responding")

RE: ipp or preferably ipps:
No idea what connection string to use.
I tried all the examples listed in Cups with no luck.
Not sure if this printer supports ipp/ipps type connection.
Couldn't find much about ipp/ipps & printers that made any sense.
Printer is old, if that matters.
But fast, looks & works great, a real workhorse (about 400,000 printed and still going strong.)
 
There should be a way to translate ipp/ipps to the working socket connection... FWIW, I actually named my printer lp...

Just remembered: when I was in college, I used the following command to print to some printers:
a2ps --printer=printer_name my_file.txt

I think CUPS only allows one type of connection to the printer to be set up using the CUPS web interface... if socket is in use, you can't set up another type concurrently. You'd have to change the connection type via the 'Modify Printer' menu option. That's been my experience anyway. You can, however, 'Share' the printer via the CUPS web interface.... and then also via Samba.
 
The protocols supported by the Lexmark T654DN are documented in the "Spec" tab on their web site.

IPP 1.1 is mentioned, but not IPPS.

Without knowing what connection strings you have tried, it's difficult to make suggestions. Lexmark have one here.
 
IPP CONNECTION STRING: ==> RESULT:
ipp://10.10.200.202 ==> prints test page immediately, hangs in spooler "waiting for job to complete," nothing further.
ipp://10.10.200.202/ipp ==> spooler message "connecting to printer," then "the printer is unreachable at this time."
ipp://10.10.200.202/ipp/print ==> prints test page immediately, hangs in spooler "waiting for job to complete," nothing further.

http://10.10.200.202 ==> prints test page immediately, hangs in spooler "waiting for job to complete," nothing further.
http://10.10.200.202/ipp ==> spooler message "The printer is in use" Finally prints. Then spooler message "Waiting for job to complete," nothing further.
http://10.10.200.202/ipp/print ==> spooler message "print job was not accepted."


Maybe try something with a port number?
.
.
 
Also, I installed the gutenprint package.
Started cups in browser, add printer,
Now have various Lexmark printer drivers, but nothing sounding even remotely like my model #,
might be only newer models (?)
On the first setup page just do not choose any Lexmark printer cups offers you as it will not work.
Instead scroll a bit down where it says Network printers and here choose Internet printing ipp.
Click continue. On the next page it ask for the printers ip address. Enter ipp://192.168.xxx.xxx
If you don't know ask the printer itself. On it's display there will be an option to figure it out.
Also give the printer a name, say Lexmarlk and at the bottom check the box share printer and continue.
On the next page it offers different printer manufacturers. Choose Lexmark and than you should
see ipp-everwhere as a driver option. Check this and you should be done.

Hope this helps.
 
Progress Report:

The protocols supported by the Lexmark T654DN are documented in the "Spec" tab on their web site.

IPP 1.1 is mentioned, but not IPPS.

Heres the first key:
This is an old printer, so you have to specify the IPP version so the connection uses IPP 1.1. Otherwise it tries to connect using the default of 2.0, and fails.
But never gives you any indication for the real reason. IPPS is not supported, so thats not an option at all.

So, use:
print?version=1.1

like this (example):

ipp://10.10.200.202/print?version=1.1

So, using this string I'm now getting connections to the Lexmark T654DN printer.
Trying different options (/ipp or /ipp/print or /print, or any of those with ports :443 or :631)
I'm feeding each connection attempt with three (3) test pages (from the CUPS page at http://localhost:631)
Print speed from the spool seems to be very slow overall (until each test page actually prints, then its normal),
many attempts are failing to print all three test pages in the spool, with varying failure messages. Some give
failure-type-sounding messages then print all three test pages anyway. But who know how reliable that might be?

Will test further and post results.

Thanks to everyone for your posts, they are helping.
.
.
 
Interesting...

Final conclusion:

I believe I just found the answer, in an unexpected way.

Restored a previously installed copy of Devuan linux to use temporarily on a desktop for maintenance.

I want to set up the same printer I've been messing with here,
it was already set up.
WITH an ipp type connection.
Printed 5 test pages, all printed immediately and without error messages.

So I copied down the config settings and tried them, and variations of them, in FreeBSD.

No go. Nothing but problems.

Returned to the linux box.
Deleted printer.
Re-installed printer, accepted the auto-discovered printer, (again, it used ipp),
tested, printed 5 test prints, all printed very fast without any error messages.

I'm still sticking with FreeBSD over linux.
I'll just use the socket type connection for now. That works and its fast, without error.
No security, but I don't have any other choice at this point.

I'm pretty sure that FreeBSD has always been used more for servers, (no GUI),
and has seen far less desktop use than the typical linux variant.

Other than this situation, so far FreeBSD seems great as a desktop.
Running XFCE again. I always come back to XFCE.
Maybe I'll get smart and just stay there.
.
.
 
So the ricoh does or does not work?

RE: Ricoh:
The Ricoh is around 12+ years old.
Yes, the Ricoh color laser works immediately, no messing around, prints really fast, shows no errors in cups print que,
prints in color with the PDF driver, pretty sure the Postcript (larger file size) driver prints only B&W.
Only issue was I had to go into the printer settings dialogue at the desktop level to set the color printing option (rather
than black & white), that setting was not available with the CUPS web interface.

RE: Lexmark:
The Lexmark is around 14+ years old.
Spent many hours trying different configs, ipp connection strings, etc.
Always did 3 test prints.
Sometimes the first printout would start within 10 seconds, but the other two always took between 1 and 3 minutes each,
if they printed at all, would often generate errors in the CUPS print que, then fail completely, with no further messages.


RE: Difference between Devuan Linux and FreeBSD results:
Linux has been far more active (experience + length of time) functioning as a desktop than FreeBSD,
I'm pretty sure FreeBSD was always servers, which is completely understandable.
I'm thankful FreeBSD functions as a desktop as good as it already does, its quite amazing, really.

I love FreeBSD. I love this community.
I'm hoping to run my whole business on FreeBSD.
Overall, the best experience I've ever had in 20+ years dealing with computers.
.
.
 
I can't think of any fundamental reason why cups should behave differently on FreeBSD to how it behaves on Linux.

I would verify that the cups versions are the same, and if a printer works on Linux, I would grab the ppd file and test it on FreeBSD...

Edit: replicate all the setup details as well.
 
If needed here you can grab ppd files with a bit of search and try them out.
The correct ppd file will show the correct options within cups.
Some ppd are only black&white other will have colour options.
[Make sure you install cups/cups-filters& foomatic]
Another link,

Thats where I got both printer drivers.
 
https://freebsdfoundation.org/freebsd-p ... ick-guide/ printing on FreeBSD quick guide
https://docs.freebsd.org/en/articles/cups/ CUPS printing setup
https://docs.freebsd.org/en/ English Documents
https://docs.freebsd.org/it/ Italian Documents
CODE: SELECT ALL
http://server-name-or-ip:631/printers/printername
Place this into a browser to setup CUPS printers
hplip for HP printers
Code:
pkg install hplip
Thanks you for continuing on using FreeBSD. Happy to hear your report of what little item is not quite documented, so CUPS printing on FreeBSD can be improved.


Dave-D I welcome to hear more about the opinions you form of comparing FreeBSD to Windows for usage. Why did you use FreeBSD, rather than call in a local MS Windows certified computer business to help you with Windows computers?
 
Back
Top