Difference between revisions of "En/iscan software"

From Studiosg
Jump to navigationJump to search
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
Welcome to Simone Giustetti's wiki pages.
+
{{header_en|title=Installing Image Scan on a 32 bit Slackware Linux distribution| keyword={{Template:keyword_en_iscan}}| description=Building, installing and configuring a 32 bit Image Scan package on Slackware Linux 13.1 | link_page=iscan_software}}
 
 
 
 
Languages: '''English''' - [http://www.giustetti.net/wiki/index.php?title=iscan_software Italiano]
 
 
 
----
 
 
 
  
 
Iscan is the short form for '''Image Scan''' a scanner utility that runs under Linux. It's an [http://avasys.jp/eng/ Avasys Corporation] product useful to obtain high quality images with Epson scanners or multifunction laser/inkjet printers. Many Epson scanners work under Linux only by mean of '''Iscan''' and it's related Avasys provided '''proprietary drivers'''.
 
Iscan is the short form for '''Image Scan''' a scanner utility that runs under Linux. It's an [http://avasys.jp/eng/ Avasys Corporation] product useful to obtain high quality images with Epson scanners or multifunction laser/inkjet printers. Many Epson scanners work under Linux only by mean of '''Iscan''' and it's related Avasys provided '''proprietary drivers'''.
Line 16: Line 10:
  
  
= '''Iscan release 2.11 and earlier''' =
+
= '''Iscan Release 2.11 and Earlier''' =
  
  
Line 35: Line 29:
  
  
== '''Software build''' ==
+
== '''Software Build''' ==
 +
 
 
Download binary archive iscan.tar.gz from web site www.slackbuilds.org into the /tmp directory of your system.
 
Download binary archive iscan.tar.gz from web site www.slackbuilds.org into the /tmp directory of your system.
 
Start a '''root''' shell and decompress the archive by running:
 
Start a '''root''' shell and decompress the archive by running:
   root@darkstar04:/root# cd /tmp
+
   root@darkstar04:/root# '''cd''' /tmp
   root@darkstar04:/tmp# tar -zxf iscan.tar.gz
+
   root@darkstar04:/tmp# '''tar''' ''-zxf'' iscan.tar.gz
  
 
A directory named "iscan" will be created. Enter the directory and list its contents:
 
A directory named "iscan" will be created. Enter the directory and list its contents:
   root@darkstar04:/tmp# cd iscan
+
   root@darkstar04:/tmp# '''cd''' iscan
   root@darkstar04:/tmp/iscan# ls -la
+
   root@darkstar04:/tmp/iscan# '''ls''' ''-la''
 
   total 11
 
   total 11
 
   drwxr-xr-x  2 1000 users 1024 2008-07-29 01:39 .
 
   drwxr-xr-x  2 1000 users 1024 2008-07-29 01:39 .
Line 59: Line 54:
  
 
Download the source code archive to directory /tmp/iscan and check for its consistency:
 
Download the source code archive to directory /tmp/iscan and check for its consistency:
   root@darkstar04:/tmp/iscan# md5sum iscan_2.11.0-1.tar.gz
+
   root@darkstar04:/tmp/iscan# '''md5sum''' iscan_2.11.0-1.tar.gz
 
   76991cb47dc8ff1269e47d4bce3d41b5  iscan_2.11.0-1.tar.gz
 
   76991cb47dc8ff1269e47d4bce3d41b5  iscan_2.11.0-1.tar.gz
  
Should the outputted value differ from the iscan.info file parameter, the downloaded archive is probably corrupted and you'll need to download it again; maybe from a mirror source.
+
Should the output value differ from the iscan.info file parameter, the downloaded archive is probably corrupted and you'll need to download it again; maybe from a mirror source.
  
 
Assuming the checksum was OK we'll proceed opening file iscan.SlackBuild with a text editor of choice. A few parameters needed by the building process are located in the file head. These values should be consistent with the archive name. The '''VERSION''' parameter should be assigned the downloaded release value. Script iscan.SlackBuild head should look like:
 
Assuming the checksum was OK we'll proceed opening file iscan.SlackBuild with a text editor of choice. A few parameters needed by the building process are located in the file head. These values should be consistent with the archive name. The '''VERSION''' parameter should be assigned the downloaded release value. Script iscan.SlackBuild head should look like:
 +
<syntaxhighlight lang="bash">
 
   PRGNAM=iscan
 
   PRGNAM=iscan
 
   VERSION=2.11.0
 
   VERSION=2.11.0
Line 70: Line 66:
 
   BUILD=${BUILD:-1}
 
   BUILD=${BUILD:-1}
 
   TAG=${TAG:-_SBo}
 
   TAG=${TAG:-_SBo}
 +
</syntaxhighlight>
 
If not, update variables to the actual values and save the file. To start the tgz package build process run commands:
 
If not, update variables to the actual values and save the file. To start the tgz package build process run commands:
   root@darkstar04:/tmp/iscan# chmod a+rx iscan.SlackBuild
+
   root@darkstar04:/tmp/iscan# '''chmod''' a+rx iscan.SlackBuild
 
   root@darkstar04:/tmp/iscan# ./iscan.SlackBuild
 
   root@darkstar04:/tmp/iscan# ./iscan.SlackBuild
  
 
The former assigns execution permissions to the script, while the latter executes it. '''The shell script will automatically execute each needed step to compile and package Image Scan software'''. The resulting Slackware compliant package will be found inside directory /tmp.
 
The former assigns execution permissions to the script, while the latter executes it. '''The shell script will automatically execute each needed step to compile and package Image Scan software'''. The resulting Slackware compliant package will be found inside directory /tmp.
 
To install it open a root shell and run the following commands:
 
To install it open a root shell and run the following commands:
   root@darkstar04:/tmp/iscan# cd /tmp
+
   root@darkstar04:/tmp/iscan# '''cd''' /tmp
   root@darkstar04:/tmp# installpkg iscan-2.11.0-i486-1_SBo.tgz
+
   root@darkstar04:/tmp# '''installpkg''' iscan-2.11.0-i486-1_SBo.tgz
 +
 
 +
 
 +
== '''Firmware Rpm Archive Conversion''' ==
  
== '''Firmware rpm archive conversion''' ==
 
 
As previously stated, '''Image Scan software is released under the GPL license''', but firmware and scanner drivers are not. There is no available  source code for them, meaning that there is no way to compile those components. The only available option in such cases consists of '''converting software house provided packages''' available from another Linux distribution repository. In Iscan case the [http://www.opensuse.org/it/ Suse] repository packages will be used. Those packages group into a single file the many spread across the Avasys web site binaries. Conversion scripts can be downloaded for www.slackbuilds.org.
 
As previously stated, '''Image Scan software is released under the GPL license''', but firmware and scanner drivers are not. There is no available  source code for them, meaning that there is no way to compile those components. The only available option in such cases consists of '''converting software house provided packages''' available from another Linux distribution repository. In Iscan case the [http://www.opensuse.org/it/ Suse] repository packages will be used. Those packages group into a single file the many spread across the Avasys web site binaries. Conversion scripts can be downloaded for www.slackbuilds.org.
  
 
Download iscan-firmware.tar.gz file from www.slackbuilds.org into directory /tmp of your Linux box. Open a '''root''' shell and decompress the document archive:
 
Download iscan-firmware.tar.gz file from www.slackbuilds.org into directory /tmp of your Linux box. Open a '''root''' shell and decompress the document archive:
   root@darkstar04:/root# cd /tmp
+
   root@darkstar04:/root# '''cd''' /tmp
   root@darkstar04:/tmp# tar -zxf iscan-firmware.tar.gz
+
   root@darkstar04:/tmp# '''tar''' ''-zxf'' iscan-firmware.tar.gz
  
 
Move into newly created iscan-firmware directory and list its contents:
 
Move into newly created iscan-firmware directory and list its contents:
   root@darkstar04:/tmp/# cd iscan-firmware
+
   root@darkstar04:/tmp/# '''cd''' iscan-firmware
   root@darkstar04:/tmp/iscan-firmware# ls -la
+
   root@darkstar04:/tmp/iscan-firmware# '''ls''' ''-la''
 
   total 11
 
   total 11
 
   drwxr-xr-x  2 1000 users 1024 2008-05-01 22:39 .
 
   drwxr-xr-x  2 1000 users 1024 2008-05-01 22:39 .
Line 103: Line 102:
  
 
Download file iscan-firmware-2.8.0.1-11.noarch.rpm into /tmp directory, checksum it and if everything seems OK go on building the Slackware package:
 
Download file iscan-firmware-2.8.0.1-11.noarch.rpm into /tmp directory, checksum it and if everything seems OK go on building the Slackware package:
   root@darkstar04:/tmp/iscan-firmware# md5sum iscan-firmware-2.8.0.1-11.noarch.rpm
+
   root@darkstar04:/tmp/iscan-firmware# '''md5sum''' iscan-firmware-2.8.0.1-11.noarch.rpm
 
   a6df3bdd35b12cd784b4439fb0b6524c iscan-firmware-2.8.0.1-11.noarch.rpm
 
   a6df3bdd35b12cd784b4439fb0b6524c iscan-firmware-2.8.0.1-11.noarch.rpm
 
If the outputted value equals the one inside file iscan-firmware.info then check the variable assignments at the beginning of file iscan-firmware.SlackBuild:
 
If the outputted value equals the one inside file iscan-firmware.info then check the variable assignments at the beginning of file iscan-firmware.SlackBuild:
 +
<syntaxhighlight lang="bash">
 
   PRGNAM=iscan-firmware
 
   PRGNAM=iscan-firmware
 
   VERSION=2.8.0.1
 
   VERSION=2.8.0.1
Line 116: Line 116:
 
   PKG=$TMP/package-$PRGNAM
 
   PKG=$TMP/package-$PRGNAM
 
   OUTPUT=${OUTPUT:-/tmp}
 
   OUTPUT=${OUTPUT:-/tmp}
 +
</syntaxhighlight>
 
Proceed with package conversion.
 
Proceed with package conversion.
   root@darkstar04:/tmp/iscan-firmware# chmod a+rx iscan-firmware.SlackBuild
+
   root@darkstar04:/tmp/iscan-firmware# '''chmod''' a+rx iscan-firmware.SlackBuild
 
   root@darkstar04:/tmp/iscan-firmware# ./iscan-firmware.SlackBuild
 
   root@darkstar04:/tmp/iscan-firmware# ./iscan-firmware.SlackBuild
  
 
The slackbuild script will generate a new package inside /tmp directory. Install it running commands:
 
The slackbuild script will generate a new package inside /tmp directory. Install it running commands:
   root@darkstar04:/tmp/iscan-firmware# cd    
+
   root@darkstar04:/tmp/iscan-firmware# '''cd''' /tmp
   root@darkstar04:/tmp/iscan-firmware# installpkg iscan-firmware-2.8.0.1-noarch-2_SBo.tgz
+
   root@darkstar04:/tmp# '''installpkg''' iscan-firmware-2.8.0.1-noarch-2_SBo.tgz
 +
 
 +
 
 +
== '''Proprietary Drivers Rpm Archive Conversion''' ==
  
== '''Proprietary drivers rpm archive conversion''' ==
 
 
Last component to be installed in order to use the scanner with a Linux system. As for the firmware, '''proprietary drivers are available from Avasys Corporation in binary form only''' and as such are to be extracted from a rpm file. Again the Suse repository packages will be used as the foundation to build the Slackware ones. The procedure should be easy by now.
 
Last component to be installed in order to use the scanner with a Linux system. As for the firmware, '''proprietary drivers are available from Avasys Corporation in binary form only''' and as such are to be extracted from a rpm file. Again the Suse repository packages will be used as the foundation to build the Slackware ones. The procedure should be easy by now.
 
Open a '''root''' shell and run commands:
 
Open a '''root''' shell and run commands:
   root@darkstar04:/root# cd /tmp
+
   root@darkstar04:/root# '''cd''' /tmp
   root@darkstar04:/root# tar -zxf iscan-proprietary-drivers.tar.gz
+
   root@darkstar04:/root# '''tar''' ''-zxf'' iscan-proprietary-drivers.tar.gz
   root@darkstar04:/tmp# cd iscan-proprietary-drivers
+
   root@darkstar04:/tmp# '''cd''' iscan-proprietary-drivers
   root@darkstar04:/tmp/iscan-proprietary-drivers# ls -la
+
   root@darkstar04:/tmp/iscan-proprietary-drivers# '''ls''' ''-la''
 
   total 9
 
   total 9
 
   drwxr-xr-x  2 root root 1024 2008-08-19 23:22 .
 
   drwxr-xr-x  2 root root 1024 2008-08-19 23:22 .
Line 140: Line 143:
 
   -rw-r--r--  1 root root  951 2008-08-19 23:13 slack-desc
 
   -rw-r--r--  1 root root  951 2008-08-19 23:13 slack-desc
 
Check for archive consistency and verify variable assignments at the beginning of script file iscan-proprietary-drivers.SlackBuild:
 
Check for archive consistency and verify variable assignments at the beginning of script file iscan-proprietary-drivers.SlackBuild:
   root@darkstar04:/tmp/iscan-proprietary-drivers# md5sum iscan-proprietary-drivers-2.8.0.1-11.i586.rpm
+
   root@darkstar04:/tmp/iscan-proprietary-drivers# '''md5sum''' iscan-proprietary-drivers-2.8.0.1-11.i586.rpm
 
   2a87f33b1838ae5baa1652d1ac5d9bfc  iscan-proprietary-drivers-2.8.0.1-11.i586.rpm
 
   2a87f33b1838ae5baa1652d1ac5d9bfc  iscan-proprietary-drivers-2.8.0.1-11.i586.rpm
  
 +
<syntaxhighlight lang="bash">
 
   PRGNAM=iscan-proprietary-drivers
 
   PRGNAM=iscan-proprietary-drivers
 
   VERSION=2.8.0.1
 
   VERSION=2.8.0.1
Line 153: Line 157:
 
   PKG=$TMP/package-$PRGNAM
 
   PKG=$TMP/package-$PRGNAM
 
   OUTPUT=${OUTPUT:-/tmp}
 
   OUTPUT=${OUTPUT:-/tmp}
 +
</syntaxhighlight>
  
 
Run the slackbuild script and install the new package:
 
Run the slackbuild script and install the new package:
   root@darkstar04:/tmp/iscan-proprietary-drivers# chmod a+rx iscan-proprietary-drivers.SlackBuild
+
   root@darkstar04:/tmp/iscan-proprietary-drivers# '''chmod''' a+rx iscan-proprietary-drivers.SlackBuild
 
   root@darkstar04:/tmp/iscan-proprietary-drivers# ./iscan-proprietary-drivers.SlackBuild
 
   root@darkstar04:/tmp/iscan-proprietary-drivers# ./iscan-proprietary-drivers.SlackBuild
   root@darkstar04:/tmp/iscan-proprietary-drivers# cd /tmp
+
   root@darkstar04:/tmp/iscan-proprietary-drivers# '''cd''' /tmp
   root@darkstar04:/tmp/iscan-proprietary-drivers# installpkg iscan-proprietary-drivers-2.8.0.1-noarch-1_SBo.tgz
+
   root@darkstar04:/tmp# '''installpkg''' iscan-proprietary-drivers-2.8.0.1-noarch-1_SBo.tgz
 +
 
  
 
== '''Sane Configuration''' ==
 
== '''Sane Configuration''' ==
 +
 
After all 3 packages are installed, some Sane (Scanner Access Made Easy) configuration files need to be updated in order for the system to detect and use the scanner. All files are located in the '''/etc/sane.d''' directory. 3 files are in need of updates, they are:
 
After all 3 packages are installed, some Sane (Scanner Access Made Easy) configuration files need to be updated in order for the system to detect and use the scanner. All files are located in the '''/etc/sane.d''' directory. 3 files are in need of updates, they are:
 
* /etc/sane.d/dll.conf
 
* /etc/sane.d/dll.conf
Line 169: Line 176:
  
 
File '''/etc/sane.d/epkowa.conf''' is used to impose whether the scanner hardware is connected via the '''Usb''' or '''Scsi''' port. Below is the Epson "Perfection v200 Photo" Usb attached scanner configuration:
 
File '''/etc/sane.d/epkowa.conf''' is used to impose whether the scanner hardware is connected via the '''Usb''' or '''Scsi''' port. Below is the Epson "Perfection v200 Photo" Usb attached scanner configuration:
 +
<syntaxhighlight lang="bash">
 
   # epkowa.conf -- sample configuration for the EPKOWA SANE backend
 
   # epkowa.conf -- sample configuration for the EPKOWA SANE backend
 
   # Copyright (C) 2004  Olaf Meeuwissen
 
   # Copyright (C) 2004  Olaf Meeuwissen
Line 197: Line 205:
 
   # sane-epkowa(5).
 
   # sane-epkowa(5).
 
   #
 
   #
   '''usb'''
+
   usb
 
   #
 
   #
 
   # For any USB scanner not known to the backend (yet), you may, at your
 
   # For any USB scanner not known to the backend (yet), you may, at your
Line 240: Line 248:
 
   #pio 0x378
 
   #pio 0x378
 
   #pio 0x3BC
 
   #pio 0x3BC
 +
</syntaxhighlight>
  
Back-end options must be added to the '''/etc/sane.d/epkowa.conf''' file. The file contents consist of a list of scanner models and their related firmware. Remove the leading # from the line with the firmware corresponding to the connected hardware. Below you'll find the configuration file for Epson "Perfection v200 Photo" scanner:
+
Back-end options must be added to the '''/etc/sane.d/snapscan.conf''' file. The file contents consist of a list of scanner models and their related firmware. Remove the leading # from the line with the firmware corresponding to the connected hardware. Below you'll find the configuration file for Epson "Perfection v200 Photo" scanner:
 +
<syntaxhighlight lang="bash">
 
   #-------------- EPSON Image Scan! for Linux Scanner-Firmware --------------
 
   #-------------- EPSON Image Scan! for Linux Scanner-Firmware --------------
 
   #
 
   #
Line 266: Line 276:
 
   #
 
   #
 
   # Perfection V200 PHOTO (esfw7A.bin)
 
   # Perfection V200 PHOTO (esfw7A.bin)
   '''firmware /usr/share/iscan/esfw7A.bin'''
+
   firmware /usr/share/iscan/esfw7A.bin
 +
</syntaxhighlight>
 +
 
 +
 
 +
== '''Program Start''' ==
  
== '''Program start''' ==
 
 
Once the configuration files are in place, the scanner utility can be run from the command line issuing:
 
Once the configuration files are in place, the scanner utility can be run from the command line issuing:
   root@darkstar04:/root# iscan
+
   root@darkstar04:/root# '''iscan'''
 
that will load the graphic interface to the scanner. Many Window Managers, Kde and Xfce among them, include an icon to run Iscan from the main menu. The icon is part of the the '''Graphics''' menu.
 
that will load the graphic interface to the scanner. Many Window Managers, Kde and Xfce among them, include an icon to run Iscan from the main menu. The icon is part of the the '''Graphics''' menu.
  
Line 276: Line 289:
  
 
[[File:iscan-01.jpeg]]
 
[[File:iscan-01.jpeg]]
 +
  
 
[[File:iscan-02.jpeg]]
 
[[File:iscan-02.jpeg]]
  
== '''Summary''' ==
+
 
 +
== '''Conclusion''' ==
 +
 
 
This is pretty much it. We discussed how to '''install Image Scan software for Linux''' and '''configure Sane''' and its back-end: epkowa in order to use an Usb connected scanner. A future paper will deal with 64 bit systems and an Iscan current release.
 
This is pretty much it. We discussed how to '''install Image Scan software for Linux''' and '''configure Sane''' and its back-end: epkowa in order to use an Usb connected scanner. A future paper will deal with 64 bit systems and an Iscan current release.
  
Line 286: Line 302:
  
  
external links
+
== '''Updated Packages / Scripts''' ==
 +
 
 +
All software is subject of updates and new releases, adding functionality and supporting newer hardware devices. Packages and scripts updated to a recent Iscan release can be found in the following [[Iscan_and_Slackware_14.1_update#Packages_and_Build_Scripts |web page]].
 +
 
 +
 
 +
For any feedback, questions, errors and such, please e-mail me at ''studiosg [at] giustetti [dot] net''
 +
 
 +
 
 +
External links
  
 
----
 
----
  
* [http://www.slackware.org/ Slackware home page]
+
* [http://www.slackware.com Slackware home page]
 
* [http://slackbuilds.org Slackbuilds.org]
 
* [http://slackbuilds.org Slackbuilds.org]
 
* [http://www.opensuse.org/it/ Suse home page]
 
* [http://www.opensuse.org/it/ Suse home page]
Line 296: Line 320:
 
* [http://avasys.jp/eng/ Avasys Corporation]
 
* [http://avasys.jp/eng/ Avasys Corporation]
 
* [http://www.avasys.jp/lx-bin2/linux_e/scan/DL1.do Avasys Corporation download page]
 
* [http://www.avasys.jp/lx-bin2/linux_e/scan/DL1.do Avasys Corporation download page]
 
  
 
----
 
----
  
Languages: '''English''' - [http://www.giustetti.net/wiki/index.php?title=iscan_software Italiano]
+
{{footer_en | link_page=iscan_software}}

Latest revision as of 12:19, 21 March 2022

Welcome to Simone Giustetti's wiki pages.


Languages: English - Italiano


Iscan is the short form for Image Scan a scanner utility that runs under Linux. It's an Avasys Corporation product useful to obtain high quality images with Epson scanners or multifunction laser/inkjet printers. Many Epson scanners work under Linux only by mean of Iscan and it's related Avasys provided proprietary drivers.

Installing Iscan on a "not supported" Linux distribution, anything other than Fedora or Debian, is possible, but it has always been kind of an adventure. Maybe that's because binary packages are provided for free but without any form of support and, when things go bad, all users have are their troubleshooting skills. Iscan version 2.11 will be installed and configured on a Slackware system in this paper. More recent releases exist, but 2.11 works fine on any 32 bit Slackware system up to "current". A future article will provide an insight about Image Scan release 2.25 which introduced support to 64 bit architectures and as such is the ideal candidate for install on Slackware 13.0 and 13.1.

All tests for the present paper were performed on an Epson "Perfection v200 Photo" scanner.

We'll assume that both the sane and xsane packages are installed and properly functioning.


Iscan Release 2.11 and Earlier

Image Scan releases 2.11, 2.8 and earlier are made of 3 distinct components:

  • The Iscan scanner utility.
  • Firmware for supported scanners.
  • Proprietary drivers, another way to say software libraries meant to drive the hardware after the firmware was uploaded.

The two former components are provided by Avasys in binary only form and only for 32 bit architectures. Whoever were in need of a 64 bit software version should look for later releases; release 2.25 will be the subject of a future article.

Iscan software packages for a Slackware Linux system do not exist. Slackware Users owning an Epson scanner should build their own packages. Build scripts can be retrieved on the net from www.slackbuilds.org: Iscan and components build scripts

After successfully downloading the scripts, the following steps are needed in order to build the Iscan components:

  1. Build software.
  2. Convert the firmware rpm archive into a tgz package.
  3. Convert the proprietary drivers rpm archive into a tgz package.
  4. Configure Sane.


Software Build

Download binary archive iscan.tar.gz from web site www.slackbuilds.org into the /tmp directory of your system. Start a root shell and decompress the archive by running:

  root@darkstar04:/root# cd /tmp
  root@darkstar04:/tmp# tar -zxf iscan.tar.gz

A directory named "iscan" will be created. Enter the directory and list its contents:

  root@darkstar04:/tmp# cd iscan
  root@darkstar04:/tmp/iscan# ls -la
  total 11
  drwxr-xr-x  2 1000 users 1024 2008-07-29 01:39 .
  drwxrwxrwt 13 root root  1024 2010-07-19 19:28 ..
  -rw-r--r--  1 1000 users  580 2008-07-30 03:59 README
  -rw-r--r--  1 1000 users  114 2008-07-30 03:59 doinst.sh
  -rwxr-xr-x  1 1000 users 3297 2008-07-30 03:59 iscan.SlackBuild
  -rw-r--r--  1 1000 users  221 2008-07-30 03:59 iscan.desktop
  -rw-r--r--  1 1000 users  279 2008-07-30 03:59 iscan.info
  -rw-r--r--  1 1000 users  753 2008-07-30 03:59 slack-desc

The url address to the source code and a checksum, parameter MD5SUM, to check for archive integrity can be found into the file iscan.info.

Please read file README from start to finish before anything else. There can be found information later needed to configure Sane and its back-end.

Download the source code archive to directory /tmp/iscan and check for its consistency:

  root@darkstar04:/tmp/iscan# md5sum iscan_2.11.0-1.tar.gz
  76991cb47dc8ff1269e47d4bce3d41b5  iscan_2.11.0-1.tar.gz

Should the output value differ from the iscan.info file parameter, the downloaded archive is probably corrupted and you'll need to download it again; maybe from a mirror source.

Assuming the checksum was OK we'll proceed opening file iscan.SlackBuild with a text editor of choice. A few parameters needed by the building process are located in the file head. These values should be consistent with the archive name. The VERSION parameter should be assigned the downloaded release value. Script iscan.SlackBuild head should look like:

   PRGNAM=iscan
   VERSION=2.11.0
   ARCH=${ARCH:-i486}
   BUILD=${BUILD:-1}
   TAG=${TAG:-_SBo}

If not, update variables to the actual values and save the file. To start the tgz package build process run commands:

  root@darkstar04:/tmp/iscan# chmod a+rx iscan.SlackBuild
  root@darkstar04:/tmp/iscan# ./iscan.SlackBuild

The former assigns execution permissions to the script, while the latter executes it. The shell script will automatically execute each needed step to compile and package Image Scan software. The resulting Slackware compliant package will be found inside directory /tmp. To install it open a root shell and run the following commands:

  root@darkstar04:/tmp/iscan# cd /tmp
  root@darkstar04:/tmp# installpkg iscan-2.11.0-i486-1_SBo.tgz


Firmware Rpm Archive Conversion

As previously stated, Image Scan software is released under the GPL license, but firmware and scanner drivers are not. There is no available source code for them, meaning that there is no way to compile those components. The only available option in such cases consists of converting software house provided packages available from another Linux distribution repository. In Iscan case the Suse repository packages will be used. Those packages group into a single file the many spread across the Avasys web site binaries. Conversion scripts can be downloaded for www.slackbuilds.org.

Download iscan-firmware.tar.gz file from www.slackbuilds.org into directory /tmp of your Linux box. Open a root shell and decompress the document archive:

  root@darkstar04:/root# cd /tmp
  root@darkstar04:/tmp# tar -zxf iscan-firmware.tar.gz

Move into newly created iscan-firmware directory and list its contents:

  root@darkstar04:/tmp/# cd iscan-firmware
  root@darkstar04:/tmp/iscan-firmware# ls -la
  total 11
  drwxr-xr-x  2 1000 users 1024 2008-05-01 22:39 .
  drwxrwxrwt 13 root root  1024 2010-07-19 23:21 ..
  -rw-r--r--  1 1000 users  292 2008-03-29 00:59 README
  -rw-r--r--  1 1000 users 1062 2008-03-29 00:59 README.Slackware
  -rw-r--r--  1 1000 users  187 2008-03-29 00:59 doinst.sh
  -rwxr-xr-x  1 1000 users 2301 2008-03-29 00:59 iscan-firmware.SlackBuild
  -rw-r--r--  1 1000 users  339 2008-05-01 22:39 iscan-firmware.info
  -rw-r--r--  1 1000 users  946 2008-03-29 00:59 slack-desc

Again the file with *.info extension, iscan-firmware.info, contains some useful information: the Suse repository download url address and checksum to verify package consistency. It is again strongly suggested to read files README and README.Slackware prior to any activity. Useful information for later configuration can be found inside both files.

Download file iscan-firmware-2.8.0.1-11.noarch.rpm into /tmp directory, checksum it and if everything seems OK go on building the Slackware package:

  root@darkstar04:/tmp/iscan-firmware# md5sum iscan-firmware-2.8.0.1-11.noarch.rpm
  a6df3bdd35b12cd784b4439fb0b6524c iscan-firmware-2.8.0.1-11.noarch.rpm

If the outputted value equals the one inside file iscan-firmware.info then check the variable assignments at the beginning of file iscan-firmware.SlackBuild:

   PRGNAM=iscan-firmware
   VERSION=2.8.0.1
   RPMBUILD=11 # <-- This is the build number used by OpenSuSE in their RPM
   ARCH=${ARCH:-noarch}
   BUILD=${BUILD:-2}
   TAG=${TAG:-_SBo}
   CWD=$(pwd)
   TMP=${TMP:-/tmp/SBo}
   PKG=$TMP/package-$PRGNAM
   OUTPUT=${OUTPUT:-/tmp}

Proceed with package conversion.

  root@darkstar04:/tmp/iscan-firmware# chmod a+rx iscan-firmware.SlackBuild
  root@darkstar04:/tmp/iscan-firmware# ./iscan-firmware.SlackBuild

The slackbuild script will generate a new package inside /tmp directory. Install it running commands:

  root@darkstar04:/tmp/iscan-firmware# cd /tmp
  root@darkstar04:/tmp# installpkg iscan-firmware-2.8.0.1-noarch-2_SBo.tgz


Proprietary Drivers Rpm Archive Conversion

Last component to be installed in order to use the scanner with a Linux system. As for the firmware, proprietary drivers are available from Avasys Corporation in binary form only and as such are to be extracted from a rpm file. Again the Suse repository packages will be used as the foundation to build the Slackware ones. The procedure should be easy by now. Open a root shell and run commands:

  root@darkstar04:/root# cd /tmp
  root@darkstar04:/root# tar -zxf iscan-proprietary-drivers.tar.gz
  root@darkstar04:/tmp# cd iscan-proprietary-drivers
  root@darkstar04:/tmp/iscan-proprietary-drivers# ls -la
  total 9
  drwxr-xr-x  2 root root 1024 2008-08-19 23:22 .
  drwxrwxrwt 13 root root 1024 2010-07-20 00:14 ..
  -rw-r--r--  1 root root 1630 2008-08-19 10:52 README
  -rw-r--r--  1 root root    0 2008-08-19 22:55 doinst.sh
  -rwxr-xr-x  1 root root 2339 2008-08-19 11:36 iscan-proprietary-drivers.SlackBuild
  -rw-r--r--  1 root root  354 2008-08-19 23:03 iscan-proprietary-drivers.info
  -rw-r--r--  1 root root  951 2008-08-19 23:13 slack-desc

Check for archive consistency and verify variable assignments at the beginning of script file iscan-proprietary-drivers.SlackBuild:

  root@darkstar04:/tmp/iscan-proprietary-drivers# md5sum iscan-proprietary-drivers-2.8.0.1-11.i586.rpm
  2a87f33b1838ae5baa1652d1ac5d9bfc  iscan-proprietary-drivers-2.8.0.1-11.i586.rpm
   PRGNAM=iscan-proprietary-drivers
   VERSION=2.8.0.1
   RPMBUILD=11 # <-- This is the build number used by OpenSuSE in their RPM
   ARCH=${ARCH:-noarch}
   BUILD=${BUILD:-1}
   TAG=${TAG:-_SBo}
   CWD=$(pwd)
   TMP=${TMP:-/tmp/SBo}
   PKG=$TMP/package-$PRGNAM
   OUTPUT=${OUTPUT:-/tmp}

Run the slackbuild script and install the new package:

  root@darkstar04:/tmp/iscan-proprietary-drivers# chmod a+rx iscan-proprietary-drivers.SlackBuild
  root@darkstar04:/tmp/iscan-proprietary-drivers# ./iscan-proprietary-drivers.SlackBuild
  root@darkstar04:/tmp/iscan-proprietary-drivers# cd /tmp
  root@darkstar04:/tmp# installpkg iscan-proprietary-drivers-2.8.0.1-noarch-1_SBo.tgz


Sane Configuration

After all 3 packages are installed, some Sane (Scanner Access Made Easy) configuration files need to be updated in order for the system to detect and use the scanner. All files are located in the /etc/sane.d directory. 3 files are in need of updates, they are:

  • /etc/sane.d/dll.conf
  • /etc/sane.d/epkowa.conf
  • /etc/sane.d/snapscan.conf

If not present a new line must be added to file /etc/sane.d/dll.conf; a line consisting of but a single word: "epkowa". That's the name of the back-end Sane uses to transfer data and instructions to the connected scanner.

File /etc/sane.d/epkowa.conf is used to impose whether the scanner hardware is connected via the Usb or Scsi port. Below is the Epson "Perfection v200 Photo" Usb attached scanner configuration:

   # epkowa.conf -- sample configuration for the EPKOWA SANE backend
   # Copyright (C) 2004  Olaf Meeuwissen
   #
   # See sane-epkowa(5), sane-scsi(5) and sane-usb(5) for details.
   #
   # SCSI scanners can be configured simply by listing the path to the
   # device.  For example, if your system claims to have a /dev/scanner
   # SCSI device, all you have to do is uncomment the following line:
   #
   #/dev/scanner
   #
   # In the interest of maintainability, most installations would have
   # /dev/scanner sym-linked to the real SCSI scanner device node.
   #
   # An alternative way that works for many operating systems and is a
   # little bit more generic, is to have the backend probe for your SCSI
   # scanner with the following configuration command:
   #
   #scsi EPSON
   #
   # On systems with libusb, the following line is sufficient to get the
   # backend to recognise your USB scanners.  It presumes, however, that
   # the scanner---more precisely, it's USB product ID---is known to the
   # backend.
   # For all USB scanners that are officially supported by this backend,
   # this presumption is true.  A list of such scanners can be found in
   # sane-epkowa(5).
   #
   usb
   #
   # For any USB scanner not known to the backend (yet), you may, at your
   # own peril(!!), force the backend to recognise and use it via libusb.
   # You can do so by the following configuration command:
   # 
   #   usb <USB vendor ID> <USB product ID>
   #
   # SEIKO EPSON's USB vendor ID is '0x04b8' (without quotes).  In order
   # to find the USB product ID, use lsusb(1) or, on Linux systems, peek
   # at the information in /proc/bus/usb/devices.
   # A sample configuration for the Perfection 1650 (GT-8200), which has
   # a product ID of 0x0110, would look as follows:
   #
   #usb 0x04b8 0x0110
   #
   # When not accessing your USB scanner via libusb, you may need to use
   # one of the configuration commands below or commands that are almost
   # the same.  These commands typically access the scanner via a kernel
   # scanner module.
   #
   #usb /dev/usb/scanner0
   #usb /dev/usbscanner0
   #usb /dev/uscanner0
   #
   # Linux had a scanner module until version 2.6.2.  As of version 2.6.3
   # libusb is your only option.  Linux' scanner module can be loaded via
   # the modprobe(8) command like so:
   #
   #   modprobe scanner vendor=<USB vendor ID> product=<USB product ID>
   #
   # If the scanner module already knows the vendor and product IDs, you
   # do not have to specify them.  If you want to have this done automa-
   # tically every time you boot, you can add the above line, except for
   # the modprobe command itself, to your /etc/modules file.
   #
   # Although not tested with this backend, parallel port scanners should
   # be usable.  You can configure them as shown below, but I do not know
   # much about the details.  Information is welcome.
   #
   #pio 0x278
   #pio 0x378
   #pio 0x3BC

Back-end options must be added to the /etc/sane.d/snapscan.conf file. The file contents consist of a list of scanner models and their related firmware. Remove the leading # from the line with the firmware corresponding to the connected hardware. Below you'll find the configuration file for Epson "Perfection v200 Photo" scanner:

   #-------------- EPSON Image Scan! for Linux Scanner-Firmware --------------
   #
   # Perfection 2480/2580 PHOTO (esfw41.bin)
   #firmware /usr/share/iscan/esfw41.bin
   #
   # Perfection 3170 PHOTO (esfw32.bin)
   #firmware /usr/share/iscan/esfw32.bin
   #
   # Perfection 3490/3590 PHOTO (esfw52.bin)
   #firmware /usr/share/iscan/esfw52.bin
   #
   # Perfection 4180 PHOTO (esfw43.bin)
   #firmware /usr/share/iscan/esfw43.bin
   #
   # Perfection 4490 PHOTO (esfw54.bin)
   #firmware /usr/share/iscan/esfw54.bin
   #
   # Perfection V10/V100 PHOTO (esfw66.bin)
   #firmware /usr/share/iscan/esfw66.bin
   #
   # Perfection V350 PHOTO (esfw68.bin)
   #firmware /usr/share/iscan/esfw68.bin
   #
   # Perfection V200 PHOTO (esfw7A.bin)
   firmware /usr/share/iscan/esfw7A.bin


Program Start

Once the configuration files are in place, the scanner utility can be run from the command line issuing:

  root@darkstar04:/root# iscan

that will load the graphic interface to the scanner. Many Window Managers, Kde and Xfce among them, include an icon to run Iscan from the main menu. The icon is part of the the Graphics menu.

The images below depict the Image Scan software running on a 32 bit Slackware 13.1 system.

Iscan-01.jpeg


Iscan-02.jpeg


Conclusion

This is pretty much it. We discussed how to install Image Scan software for Linux and configure Sane and its back-end: epkowa in order to use an Usb connected scanner. A future paper will deal with 64 bit systems and an Iscan current release.

Below is the link to Image Scan 2.11 package. The package was built for i486 architectures and is distributed in the hope that it will be useful: Image Scan 2.11. Firmware and proprietary drivers are subject to a license other than the GPL therefore refer to the Avasys web page for download.


Updated Packages / Scripts

All software is subject of updates and new releases, adding functionality and supporting newer hardware devices. Packages and scripts updated to a recent Iscan release can be found in the following web page.


For any feedback, questions, errors and such, please e-mail me at studiosg [at] giustetti [dot] net


External links





Languages: English - Italiano