Este contenido no está disponible en el idioma seleccionado.
Chapter 6. Driverless USB printing and scanning
Driverless printing and scanning has its variants for devices which are connected by using USB. It is covered by the IPP over USB standard. You need to install the ipp-usb package for driverless printing and scanning to work. It register’s the device with Avahi on local host, makes the USB device look as a network device.
6.1. Installing and checking device capabilities Copiar enlaceEnlace copiado en el portapapeles!
In driverless printing, installing a device involves identifying this device on your network and using a print server to set up a print queue. You can then verify the device’s capabilities by accessing its settings within the print queue or using a tool such as ipptool.
Prerequisites
- You update the device firmware.
-
You stopped and disabled the
cups-browsedservice if it is not used for installing printers from remote print servers. Note that in this case, theBrowsePollserver is used in/etc/cups/cups-browsed.conffile.
Procedure
Install the
ipp-usbpackage:dnf install ipp-usb
# dnf install ipp-usbCopy to Clipboard Copied! Toggle word wrap Toggle overflow NoteThe
ipp-usbpackage is installed by default with CUPS andsane-airscanepackages.Check if device has printing functionality:
Verify that the device is recognized by
ipp-usb:sudo ipp-usb check
# sudo ipp-usb checkCopy to Clipboard Copied! Toggle word wrap Toggle overflow Check if the device is identified by CUPS among existing destinations. The service name created by
ipp-usbhas the suffix_USB.lpstat -e
$ lpstat -e Canon_MF440_Series_USBCopy to Clipboard Copied! Toggle word wrap Toggle overflow The service name created by
ipp-usbhas the_USBsuffix. For example, here Canon_MF440_Series_USB represents IPP-over-USB device called Canon I-Sensys MF433ImportantIf the Canon_MF440_Series_USB is displayed in the output of the
lpstat -ecommand, but not in your application, report the issue to the application.Check device capabilities:
ipptool -tv ipp://localhost:60000/ipp/print get-printer-attributes.test lpoptions -p Canon_MF440_Series_USB -l
# ipptool -tv ipp://localhost:60000/ipp/print get-printer-attributes.test # lpoptions -p Canon_MF440_Series_USB -lCopy to Clipboard Copied! Toggle word wrap Toggle overflow The
ipptoolcommand returns all IPP attributes which the device supports. If your printing option is present in IPP response, but not inlpoptionsoutput, then it is a CUPS issue because the common PPD options are generated from some of the attributes. Thelpoptionsutility returns available PPD options.
Check if the device has scanning capabilities:
Check if the
sane-airscanbackend recognizes your device:scanimage -L
# scanimage -L device `airscan:e0:HP LaserJet MFP M130fw' is a eSCL HP LaserJet MFP M130fw ip=127.0.0.1 Here, the HP LaserJet MFP M130fw device here is used for illustration, it does not show its real IPP-over-USB compatibility or its real options shared via AirScan from ipp-usb.Copy to Clipboard Copied! Toggle word wrap Toggle overflow Check the device capabilities:
scanimage --help -d 'airscan:e0:HP LaserJet MFP M130fw (E700D6)'
# scanimage --help -d 'airscan:e0:HP LaserJet MFP M130fw (E700D6)'Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.2. Migrating existing classic print queues and scanner devices Copiar enlaceEnlace copiado en el portapapeles!
The ipp-usb package is incompatible with classic printing and scanning drivers for IPP-over-USB devices, so a manual intervention depending on user’s choice is required after upgrade. You can see the available printing and scanning capabilities and decide which type of support to use for the device:
- Driverless
- Classic drivers
Procedure
- Using driverless to support the USB device
To migrate the existing configuration with classic drivers to driverless support for USB device, follow the below mentioned steps depending on the device capabilities:
- If the device has printing functionality, remove any existing printers installed for the device in the past.
To search for printer name, run:
lpstat -a
# lpstat -aCopy to Clipboard Copied! Toggle word wrap Toggle overflow Remove the printer:
lpadmin -x <printer_name>
# lpadmin -x <printer_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow If the device has scanning functionality, disable the
SANEbackend which provides the scanning support,for example, hpaio. You can achieve it by commenting out its name in the configuration file/etc/sane.d/dll.confor in a specific file in directory/etc/sane.d/dll.d, or uninstall the scanning driver. For example, to disablehpaioscanning backend:scanimage -L sudo sed -i 's,^\s*hpaio$,#hpaio,' /etc/sane.d/dll.d/hpaio
# scanimage -L device `hpaio:/usb/laserjet_mfp_m129-m134?serial=XXXX' is a Hewlett-Packard laserjet_mfp_m129-m134 all-in-one device `airscan:e0:HP LaserJet MFP M130fw (E700D6)' is a eSCL HP LaserJet MFP M130fw (E700D6) ip=127.0.0.1 # sudo sed -i 's,^\s*hpaio$,#hpaio,' /etc/sane.d/dll.d/hpaioCopy to Clipboard Copied! Toggle word wrap Toggle overflow As a result, scanning devices supported by the backend HPAIO are not visible in the list of scanners.
- Using classic driver to support the device
Choosing a classic driver requires rejecting the printer model in the
ipp-usbconfiguration.Search for device model name:
sudo ipp-usb check
# sudo ipp-usb check Configuration files: OK IPP over USB devices: Num Device Vndr:Prod Model 1. Bus 001 Device 005 04a9:2823 "Canon MF440 Series"Copy to Clipboard Copied! Toggle word wrap Toggle overflow Create a quirk for
ipp-usband use the name in the new quirk file in the/etc/ipp-usb/quirksdirectory. Note that the.confsuffix is required.cat /etc/ipp-usb/quirks/canon.conf [Canon MF440 Series] blacklist = true
# cat /etc/ipp-usb/quirks/canon.conf [Canon MF440 Series] blacklist = trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow Restart the
ipp-usbservice:systemctl restart ipp-usb
$ systemctl restart ipp-usbCopy to Clipboard Copied! Toggle word wrap Toggle overflow This quirk denies device’s support in
ipp-usb, and classic drivers will work. The printer generated byipp-usbis removed from the list of existing printers.
You can opt-out from driverless USB support by removing the ipp-usb package and excluding it from DNF operations.