I have this printer that works in Ubuntu but doesn’t work in Fedora. It’s probably a driver issue but I cannot find the driver in the given lists. Anyone got this printer working. It sucks to have to keep switching to Ubuntu to print stuff.
I do see your printer listed here, so it should work with the default IPP everywhere etc drivers:
(choose Canon in make to narrow down the list).
There’s this full step by step document on debugging printing issues. Could you take a look and maybe try to collect more information on what the issue maybe? For example, is it not being detected completely, or is it detected but you are unable to print?
Thanks for your reply. Yes, it is in the “Drivelrless Printers” page, but not actually working. When I add the printer, the system sees it but registers it in a strange way:
Normally, it says “Canon” before the serial number and does not say “Text only printer.”
If I click the gear icon and then details, I can open a list of all drivers. This particular model is not included in that list. In Ubuntu, it is.
When I try to print a document, the printer menu under “settings” doesn’t even indicate a job pending. It is blocked somewhere and I have to figure out where.
I checked out the page you recommended for troubleshooting printers. It is a very good resource, but way too much work for me to go through all those steps. It’s much easier to just boot into Ubuntu to print for now while I continue to dig around because I really wanted to leave Ubuntu behind forever.
To set up a driverless printer run
lpinfo -v
That gives the url you need in the next step. The output on my system us
network beh
network ipp
file cups-pdf:/
network socket
network lpd
network https
network http
network ipps
network dnssd://Brother%20DCP-J4120DW._ipp._tcp.local/?uuid=e3248000-80ce-11db-8000-a8a7951734e8
network lpd://BRWA8A7951734E8/BINARY_P1
network ipp://Brother%20DCP-J4120DW._ipp._tcp.local/
You will need the entry starting with ipp://
The next step is actually to create the printer
lpadmin -v ipp://Brother%20DCP-J4120DW._ipp._tcp.local/ -m everywhere -p yourprintername
No need for special drivers.
Thanks. When I run
lpinfo -v
I get the following:
[me@fedora ~]$ lpinfo -v
file cups-brf:/
network beh
network ipps
direct usb://Canon/TS700%20series?serial=112010
direct hp
network ipp
network socket
network lpd
network https
network http
network smb
direct hpfax
[me@fedora ~]$
No ipp url…
Is this the printer?
It does list “Apple Airprint” there.
Can you try this bit?
and this (for USB):
Your printer is connected via usb and not network. You need to run some other command to see what you actually do have.
lsusb -v | less
Somewhere you should find the word “Printer”. If that shows something like
bInterfaceClass 7 Printer
bInterfaceSubClass 1 Printer
bInterfaceProtocol 4
You can run ipp over usb. To do that you need to install ipp-usb
and enable ipp-usb.service
. You should also need to run the avahi
server.
Ah, now I see the issue is that I needed to connect it to the network. Simply connecting with eth to my laptop doesn’t work. Now it works correctly. Strange that it won’t work on USB though. It works like that on Ubuntu. Maybe the drivers just aren’t available for Fedora.
Yeh—direct connection to the laptop won’t work unless the laptop is setup to provide ip addresses to other devices etc. This is something the router usually does.
It should. I think we just haven’t figured out what packages are needed to get this functionality. Villy’s suggestions are worth trying if you’d like to try getting USB working too.
Thanks for reply, I tried to mention you in other reply but couldn’t figure out how. Anyway, it seems that it works now that I connect it to the router. However, I get 2 entries in settings > printers:
The printer with “Canon” in the name works correctly, but is only offered as an option in LibreOffice. If I try to print an image, I am only given the option without “Canon” in the name and it only prints black and white. Do you know why?
I tried Villy’s method (which you also linked to above), but got no lines returned with “Printer” in them from
lsusb -v | less
When you connect your printer via usb, it should be detected by the system and the ipp-usb.service should be started. Check that
systemctl status ipp-usb.service
Also check the detected printers
avahi-browse -acr
or the short form
avahi-browse -ac
This is the solution. I skimmed over the fact that you said I needed to install and enable ipp-usb while focusing on getting it to work over network. Once I did that, printer works correctly over usb also.
I think this should be installed by default so people can just plug and play their printers. This turned out to be quite a lot of work for me to figure out, and I can see how it would put a lot of people off Fedora.
Thanks.
What Fedora media did you use? Was this the workstation image? We can ask the workstation folks to include this package if that’s the case.
Yes, it’s the workstation. I really think something like printers should just work. Thanks for your help.
ipp-usb at some point was added as recommended by cups
* Wed Feb 16 2022 Zdenek Dohnal <zdohnal@redhat.com> - 1:2.4.1-2
- recommend ipp-usb in case there are devices which support IPP-over-USB
and removed again
* Thu Mar 31 2022 Zdenek Dohnal <zdohnal@redhat.com> - 1:2.4.1-7
- remove ipp-usb for now until there is a migration path
The above snippets came from cups.spec.
It seems there are some issues with using ipp-usb when printers that require a specific driver are in use. Case in point is HP MFPs that require the hplip package and the proprietary plugin for scanner support. Those HP printers can be made to mostly work driverless, but the scanner is then not usable.
When ipp-usb was released it broke all access to those HP printers via USB and thus it seems fedora chose to not include that package by default.
It’s interesting you brought that up because, coincidentally, I also have an HP MFP. It has always worked fine over USB without any problems on Fedora however I never used the scanner. I tested it now, and although the default scanning program detects the HP, when I hit the “scan” button, it doesn’t work.
Then I checked status of ipp and got:
○ ipp-usb.service - Daemon for IPP over USB printer support
Loaded: loaded (/usr/lib/systemd/system/ipp-usb.service; static)
Active: inactive (dead)
Docs: man:ipp-usb(8)
which shows ipp not activated, however now the Canon printer works correctly, AND HP works fine.
WHen I activate ipp-usb both printers work correctly again. I’m not sure what the issues are, but over at Ubuntu, things seem to work more reliably.
As noted, the only main issue with HP printers on usb is that the ipp-usb package blocks usb access using the hplip driver, but most printers work with the cups driver-less config.
Scanning is blocked unless using the hplip driver and the proprietary plugin. If the printer is capable of and configured for wireless printing then this is not an issue and hplip with the plugin is not impacted by ipp-usb.