Score:0

Xsane - Failed to start scanner - invalid argument

us flag

When I try to scan using Xsane, I get an error message "Failed to start scanner: invalid argument".

I have an HP Laserjet MFP M227fdn on ethernet that prints OK. I am running Ubuntu 20.04.3 LTS on an Intel Xeon CPU E5-2670 0 @ 2.60GHz × 16. When I start Xsane, it searches for scanners and sees three devices:

escl:http//192.168.4.68:8080
hpaio:HP_Laserjet_MFP_M227-M231?zc=NPIF3C167
hpaio:HP_Laserjet_MFP_M227-M231?ip=192.168.4.68

CHoosing either of the hpaio devices results in an error "Error during device I/O" Choosing the escl device allows Xsane to start but fails when I hit the scan button generating the invalid argument error.

I have uninstalled Xsane, done sudo apt update && sudo apt upgrade, reinstalled xsane via Ubuntu software center

output of scanimage -T

scanimage -T
Output format is not set, using pnm as a default.
Capability : [image/jpeg]
Capability : [image/jpeg]
Capability : [image/jpeg]
Capability : [image/jpeg]
scanimage: rounded value of br-x from 0 to 0
scanimage: rounded value of br-y from 0 to 0
scanimage: sane_start: Invalid argument

I will post the full Output of hp-check -rt at the end of this post.

I have changed permissions on .ppd files as follows:

/etc/cups/ppd$ ls -l
total 148
-rwxrwxr-- 1 root lp 11167 Aug 22 00:00 HP_LaserJet_MFP_M227fdn_F3C167_.ppd
-rwxrwxr-- 1 root lp  2868 Aug 20 22:17 HP_LaserJet_MFP_M227-M231_fax.ppd
-rwxrwxr-- 1 root lp 59716 Aug 21 20:00 HP_LaserJet_MFP_M227-M231.ppd
-rwxrwxr-- 1 root lp 59716 Aug 20 22:17 HP_Laserjet.ppd
-rw-r----- 1 root lp 12270 Aug 18 11:20 HP_Laserjet.ppd.O

I can see that there are a number of problems, but I do not know enough to know how to proceed. Permissions on .ppd files seems to be one of the problems that cuase this error per other threads about this problem, but that doesn't seem to fix it. Thanks in advance for your assistance.

hp-check -rt

warning: ubuntu-20.04 version is not supported. Using ubuntu-19.10 versions dependencies to verify and install...

---------------
| SYSTEM INFO |
---------------

 Kernel: 5.4.0-80-generic #90-Ubuntu SMP Fri Jul 9 22:49:44 UTC 2021 GNU/Linux
 Host: DianneFossey
 Proc: 5.4.0-80-generic #90-Ubuntu SMP Fri Jul 9 22:49:44 UTC 2021 GNU/Linux
 Distribution: ubuntu 20.04
 Bitness: 64 bit


-----------------------
| HPLIP CONFIGURATION |
-----------------------

HPLIP-Version: HPLIP 3.20.3
HPLIP-Home: /usr/share/hplip
warning: HPLIP-Installation: Auto installation is not supported for ubuntu distro  20.04 version 

Current contents of '/etc/hp/hplip.conf' file:
# hplip.conf.  Generated from hplip.conf.in by configure.

[hplip]
version=3.20.3

[dirs]
home=/usr/share/hplip
run=/var/run
ppd=/usr/share/ppd/hplip/HP
ppdbase=/usr/share/ppd/hplip
doc=/usr/share/doc/hplip
html=/usr/share/doc/hplip-doc
icon=no
cupsbackend=/usr/lib/cups/backend
cupsfilter=/usr/lib/cups/filter
drv=/usr/share/cups/drv
bin=/usr/bin
apparmor=/etc/apparmor.d
# Following values are determined at configure time and cannot be changed.
[configure]
network-build=yes
libusb01-build=no
pp-build=no
gui-build=yes
scanner-build=yes
fax-build=yes
dbus-build=yes
cups11-build=no
doc-build=yes
shadow-build=no
hpijs-install=yes
foomatic-drv-install=yes
foomatic-ppd-install=no
foomatic-rip-hplip-install=no
hpcups-install=yes
cups-drv-install=yes
cups-ppd-install=no
internal-tag=3.20.3
restricted-build=no
ui-toolkit=qt5
qt3=no
qt4=no
qt5=yes
policy-kit=yes
lite-build=no
udev_sysfs_rules=no
hpcups-only-build=no
hpijs-only-build=no
apparmor_build=no
class-driver=no


Current contents of '/var/lib/hp/hplip.state' file:
Plugins are not installed. Could not access file: No such file or directory

Current contents of '~/.hplip/hplip.conf' file:
[installation]
date_time = 08/22/21 10:55:20
version = 3.20.3


 <Package-name>        <Package-Desc>      <Required/Optional> <Min-Version> <Installed-Version> <Status>   <Comment>

-------------------------
| External Dependencies |
-------------------------

 error: cups          CUPS - Common Unix Printing System                           REQUIRED        1.1             -               INCOMPAT   'CUPS may not be installed or not running'
 gs                   GhostScript - PostScript and PDF language interpreter and previewer REQUIRED        7.05            9.50            OK         -
 xsane                xsane - Graphical scanner frontend for SANE                  OPTIONAL        0.9             0.999           OK         -
 scanimage            scanimage - Shell scanning program                           OPTIONAL        1.0             1.0.29          OK         -
 error: dbus          DBus - Message bus system                                    REQUIRED        -               1.12.16         MISSING    'DBUS may not be installed or not running'
 policykit            PolicyKit - Administrative policy framework                  OPTIONAL        -               0.105           OK         -
 network              network -wget                                                OPTIONAL        -               1.20.3          OK         -
 avahi-utils          avahi-utils                                                  OPTIONAL        -               0.7             OK         -

------------------------
| General Dependencies |
------------------------

 error: libjpeg       libjpeg - JPEG library                                       REQUIRED        -               -               MISSING    'libjpeg needs to be installed'
 error: cups-devel    CUPS devel- Common Unix Printing System development files    REQUIRED        -               -               MISSING    'cups-devel needs to be installed'
 error: cups-image    CUPS image - CUPS image development files                    REQUIRED        -               -               MISSING    'cups-image needs to be installed'
 libpthread           libpthread - POSIX threads library                           REQUIRED        -               b'2.31'         OK         -
 error: libusb        libusb - USB library                                         REQUIRED        -               1.0             MISSING    'libusb needs to be installed'
 sane                 SANE - Scanning library                                      REQUIRED        -               -               OK         -
 error: sane-devel    SANE - Scanning library development files                    REQUIRED        -               -               MISSING    'sane-devel needs to be installed'
 error: libnetsnmp-devel libnetsnmp-devel - SNMP networking library development files REQUIRED        5.0.9           -               MISSING    'libnetsnmp-devel needs to be installed'
 error: libcrypto     libcrypto - OpenSSL cryptographic library                    REQUIRED        -               1.1.1           MISSING    'libcrypto needs to be installed'
 python3X             Python 2.2 or greater - Python programming language          REQUIRED        2.2             3.8.10          OK         -
 error: python3-notify2 Python libnotify - Python bindings for the libnotify Desktop notifications OPTIONAL        -               -               MISSING    'python3-notify2 needs to be installed'
 error: python3-pyqt4-dbus PyQt 4 DBus - DBus Support for PyQt4                         OPTIONAL        4.0             -               MISSING    'python3-pyqt4-dbus needs to be installed'
 error: python3-pyqt4 PyQt 4- Qt interface for Python (for Qt version 4.x)         REQUIRED        4.0             -               MISSING    'python3-pyqt4 needs to be installed'
 python3-dbus         Python DBus - Python bindings for DBus                       REQUIRED        0.80.0          1.2.16          OK         -
 python3-xml          Python XML libraries                                         REQUIRED        -               2.2.9           OK         -
 error: python3-devel Python devel - Python development files                      REQUIRED        2.2             3.8.10          MISSING    'python3-devel needs to be installed'
 python3-pil          PIL - Python Imaging Library (required for commandline scanning with hp-scan) OPTIONAL        -               7.0.0           OK         -
 python3-reportlab    Reportlab - PDF library for Python                           OPTIONAL        2.0             3.5.34          OK         -

--------------
| COMPILEDEP |
--------------

 error: libtool       libtool - Library building support services                  REQUIRED        -               -               MISSING    'libtool needs to be installed'
 gcc                  gcc - GNU Project C and C++ Compiler                         REQUIRED        -               9.3.0           OK         -
 make                 make - GNU make utility to maintain groups of programs       REQUIRED        3.0             4.2.1           OK         -

---------------------
| Python Extentions |
---------------------

 cupsext              CUPS-Extension                                               REQUIRED        -               3.20.3          OK         -
 hpmudext             IO-Extension                                                 REQUIRED        -               3.20.3          OK         -

----------------------
| Scan Configuration |
----------------------

'/etc/sane.d/dll.d/hpaio' not found.
 hpaio                HPLIP-SANE-Backend                                           REQUIRED        -               3.20.3          OK         'hpaio found in /etc/sane.d/dll.conf'
 scanext              Scan-SANE-Extension                                          REQUIRED        -               3.20.3          OK         -

------------------------------
| DISCOVERED SCANNER DEVICES |
------------------------------

device `escl:http://192.168.4.68:8080' is a ESCL HP LaserJet MFP M227fdn (F3C167) flatbed scanner
device `hpaio:/net/HP_LaserJet_MFP_M227-M231?zc=NPIF3C167' is a Hewlett-Packard HP_LaserJet_MFP_M227-M231 all-in-one
device `hpaio:/net/HP_LaserJet_MFP_M227-M231?ip=192.168.4.68' is a Hewlett-Packard HP_LaserJet_MFP_M227-M231 all-in-one


--------------------------
| DISCOVERED USB DEVICES |
--------------------------

No devices found.

---------------------------------
| INSTALLED CUPS PRINTER QUEUES |
---------------------------------

 
HP_Laserjet
-----------
Type: Printer
Device URI: hp:/net/HP_LaserJet_MFP_M227-M231?zc=NPIF3C167
PPD: /etc/cups/ppd/HP_Laserjet.ppd
PPD Description: HP LaserJet Pro MFP M227-M231 Postscript (recommended)
Printer status: printer HP_Laserjet is idle.  enabled since Sun 22 Aug 2021 10:14:30 AM CDT
error: Communication status: Failed

HP_LaserJet_MFP_M227-M231
-------------------------
Type: Printer
Device URI: hp:/net/HP_LaserJet_MFP_M227-M231?ip=192.168.4.68
PPD: /etc/cups/ppd/HP_LaserJet_MFP_M227-M231.ppd
PPD Description: HP LaserJet Pro MFP M227-M231 Postscript (recommended)
Printer status: printer HP_LaserJet_MFP_M227-M231 is idle.  enabled since Sat 21 Aug 2021 08:00:25 PM CDT
Communication status: Good

HP_LaserJet_MFP_M227-M231_fax
-----------------------------
Type: Fax
Device URI: hpfax:/net/HP_LaserJet_MFP_M227-M231?zc=NPIF3C167
PPD: /etc/cups/ppd/HP_LaserJet_MFP_M227-M231_fax.ppd
PPD Description: HP Fax2 hpcups
Printer status: printer HP_LaserJet_MFP_M227-M231_fax is idle.  enabled since Fri 20 Aug 2021 10:17:24 PM CDT
Communication status: Good

HP_LaserJet_MFP_M227fdn_F3C167_
-------------------------------
Type: Unknown
Device URI: implicitclass://HP_LaserJet_MFP_M227fdn_F3C167_/
PPD: /etc/cups/ppd/HP_LaserJet_MFP_M227fdn_F3C167_.ppd
warning: Failed to read /etc/cups/ppd/HP_LaserJet_MFP_M227fdn_F3C167_.ppd ppd file
PPD Description: 
Printer status: printer HP_LaserJet_MFP_M227fdn_F3C167_ is idle.  enabled since Sun 22 Aug 2021 12:00:05 AM CDT
warning: Printer is not HPLIP installed. Printers must use the hp: or hpfax: CUPS backend for HP-Devices.


--------------
| PERMISSION |
--------------

 
-----------
| SUMMARY |
-----------

Missing Required Dependencies
-----------------------------
error: 'libcups2' package is missing/incompatible 
error: 'libdbus-1-dev' package is missing/incompatible 
error: 'libjpeg-dev' package is missing/incompatible 
error: 'libcups2-dev' package is missing/incompatible 
error: 'cups-bsd' package is missing/incompatible 
error: 'cups-client' package is missing/incompatible 
error: 'libcupsimage2-dev' package is missing/incompatible 
error: 'libusb-1.0.0-dev' package is missing/incompatible 
error: 'libusb-0.1-4' package is missing/incompatible 
error: 'libsane-dev' package is missing/incompatible 
error: 'libsnmp-dev' package is missing/incompatible 
error: 'snmp-mibs-downloader' package is missing/incompatible 
error: 'openssl' package is missing/incompatible 
error: 'python3-pyqt4' package is missing/incompatible 
error: 'gtk2-engines-pixbuf' package is missing/incompatible 
error: 'python3-dev' package is missing/incompatible 
error: 'libtool' package is missing/incompatible 
error: 'libtool-bin' package is missing/incompatible 

Missing Optional Dependencies
-----------------------------
error: 'python3-notify2' package is missing/incompatible 
error: 'python3-dbus.mainloop.qt' package is missing/incompatible 

Total Errors: 15
Total Warnings: 1


Done.
kctang avatar
ca flag
I had the exact error message when trying to scan from ubuntu 20.04. After a bit of troubleshooting, realized that in my "Settings > Printers", somehow there's two "HP LaserJet MBP M28-M31" printers listed. Could be from an old/incorrect setup. After removing the invalid printer, scanning works.
Score:0
us flag

I was able to use the steps in several answers on this thread to solve the problem.

The short answer: Fix Python so that HPlip can find Python 3. Uninstall HP-Lip Then follow the directions for downloading and compiling HP-Lip Later it will ask you to install hplip-3.20.6-plugin.run, however the shell script coughed at that point. I needed to find the proper version of this plugin here and install it manually by sudo sh hplip-3.20.6-plugin.run

The Long Answer:

From hplip's launchpad site I have found a solution which worked for me. It is post #7 in this thread. The problem I describe in the question is caused by Ubuntu 20.04 using python3 with reduced support for python2. If /usr/bin/python links to a python 2 version then running hplip-3.20.**.run will have the reported problems trying and failing to install the necessary python components.

To diagnose this problem, run

python --version

if you get a version with leading digit 2 then the fix is as follows

sudo unlink /usr/bin/python sudo ln -s /usr/bin/python3.* /usr/bin/python where python3.* is whichever version of python3 you have installed. You can find this out by running

ls /usr/bin/python*

and then

Try this:

Download the file to ~/Dowloads

https://sourceforge.net/projects/hplip/files/hplip/3.20.6/hplip-3.20.6.run/download?use_mirror=nchc

Open a terminal and remove the previously installed version:

sudo apt remove hplip* Cd to the location where the installer was downloaded.

cd ~/Downloads To install run this command:

sh hplip-3.20.6.run Select the install mode Automatic, enter an a

Ensure the installer detected the correct Linux distribution.

Enter Your root/Superuser User Password.

The installer will now detect what dependencies your system will need to install before installing HPLIP

If your system is missing any dependencies they are now downloaded and installed.

./configure prepares HPLIP for install as well as your system is verified to have all the required dependencies for HPLIP.

'make' is then executed. Make compiles ("builds") HPLIP for your system.

'make install' is the actual install procedure, this step is where HPLIP is actually being installed to your system.

Use 'hp-setup' to configure your printer.

The first step is to select the printer connection type.

Next the setup tool will display printers detected.

Select the PPD file to be Used for Your printer, usually you will want to select the recommended PPD file.

Click "AddPrinter" to complete the printer setup process.

And finally when installing the pluging coughed: Download the correct version of hplip-xxxxx-plugin.run to /.hplip/ sudo sh hplip-xxxxx-plugin.run where xxxxx is the version that was trying to download.

Xsane worked for scanning on hpiao devices afdter this procedure for me.

br flag
**sane-airscan** supports your device. It would have been quicker to have got a copy from https://github.com/alexpevzner/sane-airscan. But good work, nevertheless.
mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.