sane-artec(5)
π sane-artec β SANE backend for Artec flatbed scanners
okay so bestie, welcome to sane-artec, a page from the SANE (that's Scanner Access Now Easy) family of manual pages. This one is all about the Artec scanners, and honestly? It's giving niche-but-iconic. Let's get into it π
πΈ NAME πΈ
sane-artec β the SANE backend for Artec flatbed scanners. that's the whole vibe.
β¨ DESCRIPTION β¨
So the sane-artec library implements a SANE β again, Scanner Access Now Easy β backend that gives you access to Artec/Ultima SCSI flatbed scanners. slay.
At the moment of writing, these are the scanners that are known to work at least partially with this backend (partial is still cute, okay?):
- Artec A6000C
- Artec A6000C PLUS
- Artec ViewStation AT3
- BlackWidow BW4800SP (which is a rebadged Artec AT3, iykyk)
- Artec ViewStation AT6
- Artec ViewStation AT12
- Artec AM12S
- Plustek 19200S (rebadged Artec AM12S, again with the rebadging)
And like, this manual page is generally updated with each release, but for the truly up-to-date tea on new releases plus extraneous helpful hints, the backend homepage is right here, no cap:
http://www4.infi.net/~cpinkham/sane
π¦ CONFIGURATION π¦
The contents of the artec.conf file? It's a list of device names that correspond to Artec scanners. That's it. Empty lines get ignored, and lines starting with a hash mark (#) get ignored too. If you need the details on what actually constitutes a valid device name, go read sane-scsi(5) β she explains it better than I ever could π«Ά
Here's a sample file, copied exactly, look at her go:
# artec.conf
#
# this is a comment.
#
# this line says search for any SCSI devices which are scanners and have
# a vendor string of 'ULTIMA'
scsi ULTIMA
#
# the next line forces the backend to assume the next scanner found has
# the specified vendor string (useful for testing rebadged models).
vendor ULTIMA
#
# the next line forces the backend to assume the next scanner found has
# the specified model string (useful for testing rebadged models).
model AT3
#
# now a line that actually specifies a device. The backend is going to
# assume this is an Artec/Ultima AT3 because we forced the vendor and
# model above.
/dev/scanner
#
# once we hit a scanner device line, the forced vendor and model
# string are
# 'forgotten', so the vendor and model for this next device will be
# determined from the result of a SCSI inquiry.
/dev/sge
#
π₯ SCSI ADAPTER TIPS π₯
okay so some Artec scanners come with an included SCSI adapter β a little bonus gift, we love that for them. If your scanner came with a DTC ISA SCSI card, you can probably use it with recent kernels (that's >= 2.2.0, to be precise) using the generic NCR5380 support. You just gotta pass this boot argument to the kernel, exactly like this:
dtc3181e=0x2c0,0
And as for the PCI SCSI adapter that comes with some newer Artec scanners? I have zero information on that one. none. not a crumb. π
π FILES π
/etc/sane.d/artec.confβ the backend configuration file (peep the description ofSANE_CONFIG_DIRbelow too, bestie)./usr/lib64/sane/libsane-artec.aβ the static library implementing this backend./usr/lib64/sane/libsane-artec.soβ the shared library implementing this backend. This one's present on systems that support dynamic loading π
π ENVIRONMENT π
SANE_CONFIG_DIRβ this environment variable specifies the list of directories that may contain the configuration file. On NIX systems the directories are separated by a colon (:), and under OS/2 they're separated by a semi-colon (;). If this variable isn't set, the configuration file gets searched in two default directories: first, the current working directory ("."), and then in/etc/sane.d. And if the value of the environment variable ends with the directory separator character, then the default directories are searched *after the explicitly specified directories. For example β and this is such a good example β settingSANE_CONFIG_DIRto"/tmp/config:"would result in the directoriestmp/config,., and/etc/sane.dbeing searched, in that order. periodt.SANE_DEBUG_ARTECβ if the library was compiled with debug support enabled, this environment variable controls the debug level for this backend. E.g., a value of128requests all debug output to be printed. Smaller levels reduce verbosity. Here are theSANE_DEBUG_ARTECvalues, all of them, no skips:0β print important errors1β print errors2β print sense3β print warnings4β print scanner-inquiry5β print information6β print less important information7β print major called procedures8β print all called procedures9β print procedure info/data messages10β print called sane-init-routines11β print called sane-procedures12β print sane infos13β print sane option-control messages50β print verbose data/debug messages== 100β print software RGB calibration data== 101β print raw data from scanner toartec.data.rawfile== 128β print out all messages
Example, because we love a demo:
export SANE_DEBUG_ARTEC=13
π BUGS π
Known bugs in this release, and I'm gonna be honest with you the whole way through:
- A6000C+ users with firmware v1.92 or earlier have problems with the backend, and the cause has not been determined. we simply do not know. π
- Sometimes the backend is not particularly robust β you can possibly lock up the SCSI bus (and/or the machine) by not having patience enough when scanning. so like, be patient. actually be patient. this is a real warning, not a vibe.
- 3-channel gamma correction is not implemented, and single-channel gamma correction is not totally working on models other than the AT3. she's trying her best.
β SEE ALSO β
π AUTHOR π
Chris Pinkham <cpinkham@corp.infi.net> β an icon, honestly.
and that's the page!! π This version you just read is from 11 Jul 2008, and it comes to you from the SANE Scanner Access Now Easy project β so if you see that date and that source floating around, you'll know exactly where this whole thing came from. go scan something cute for me!! π¦β¨π
π¦ where this page comes from
- centos-stream 10: sane-backends 1.2.1-10.el10 Β· GPL-2.0-or-later WITH SANE-exception AND GPL-2.0-or-later AND GPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-or-later AND LicenseRef-Fedora-Public-Domain AND IJG AND MIT
- fedora 43: sane-backends 1.4.0-4.fc43 Β· GPL-2.0-or-later WITH SANE-exception AND GPL-2.0-or-later AND GPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-or-later AND LicenseRef-Fedora-Public-Domain AND IJG AND MIT
- fedora 44: sane-backends 1.4.0-6.fc44 Β· GPL-2.0-or-later WITH SANE-exception AND GPL-2.0-or-later AND GPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-or-later AND LicenseRef-Fedora-Public-Domain AND IJG AND MIT
- opensuse-leap 16.0: sane-backends 1.3.0-bp160.1.14 Β· GPL-2.0-or-later AND SUSE-GPL-2.0+-with-sane-exception AND SUSE-Public-Domain
- opensuse-leap 16.0: sane-backends 1.3.0-bp160.1.14 Β· GPL-2.0-or-later AND SUSE-GPL-2.0+-with-sane-exception AND SUSE-Public-Domain
- opensuse-leap 16.0: sane-backends 1.3.0-bp160.1.14 Β· GPL-2.0-or-later AND SUSE-GPL-2.0+-with-sane-exception AND SUSE-Public-Domain
- opensuse-leap 16.0: sane-backends 1.3.0-bp160.1.14 Β· GPL-2.0-or-later AND SUSE-GPL-2.0+-with-sane-exception AND SUSE-Public-Domain
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms