sane-abaton(5)

โœจ NAME โœจ

okay so bestie, sane-abaton is the SANE backend for Abaton flatbed scanners. This page is sane-abaton(5), and yes, weโ€™re about to get into the scanner lore. Itโ€™s giving niche-retro-scanner main character energy. ๐Ÿซถ

๐Ÿซถ DESCRIPTION ๐Ÿซถ

Alright, the lore: the sane-abaton library implements a SANE (Scanner Access Now Easy) backend that provides access to Abaton flatbed scanners. At present, only Scan 300/GS (8bit, 256 levels of gray) is fully supported, due to the absence of programming information โ€” thatโ€™s the fully-supported icon, no cap. The Scan 300/S (black and white) is recognized, but support for it is untested. ๐Ÿ’€

If you own an Abaton scanner other than the ones listed above that works with this backend, or if you own an Abaton scanner that does not work with this backend, please contact sane-devel@alioth-lists.debian.net with the model number, so that arrangements can be made to include support for it. Have a look at http://www.sane-project.org/mailing-lists.html concerning subscription to sane-devel. โœจ

Abaton is out of business, and these scanners are not supported by Everex (the parent company of Abaton), nor is there any programming information to be found. This driver is therefore based on information obtained by running Abaton's scanning desk accessory under MacsBug and tracing the MacOS SCSI Manager calls it made during image acquisition โ€” honestly iconic detective work. ๐Ÿ•ต๏ธโ€โ™€๏ธ

However, the protocol is very similar to, though not compatible with, the one used by the Apple scanners, therefore, if this backend is ever extended to support the other Abaton models (they also made a color flatbed scanner), it may be possible to fill in some "missing pieces" from the (quite detailed) Apple scanner documentation. iykyk. ๐Ÿ‘€

๐Ÿ“Ÿ DEVICE NAMES ๐Ÿ“Ÿ

This backend expects device names of the form:

special

where special is the path-name for the special device that corresponds to a SCSI scanner. For SCSI scanners, the special device name must be a generic SCSI device or a symlink to such a device. Under Linux, such a device name takes a format such as /dev/sga or /dev/sg0, for example. See sane-scsi(5) for details. ๐Ÿซก

๐ŸŽ€ CONFIGURATION ๐ŸŽ€

The contents of the abaton.conf file is a list of device names that correspond to Abaton scanners. Empty lines and lines starting with a hash mark (#) are ignored โ€” periodt. See sane-scsi(5) on details of what constitutes a valid device name. ๐Ÿ’…

๐Ÿ“ FILES ๐Ÿ“

  • /etc/sane.d/abaton.conf โ€” the backend configuration file (see also the description of SANE_CONFIG_DIR below). ๐Ÿ—‚๏ธ
  • /usr/lib64/sane/libsane-abaton.a โ€” the static library implementing this backend. ๐Ÿ“š
  • /usr/lib64/sane/libsane-abaton.so โ€” the shared library implementing this backend (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 (:), under OS/2, they are separated by a semi-colon (;). If this variable is not set, the configuration file is searched in two default directories: first, the current working directory (".") and then in /etc/sane.d. 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, setting SANE_CONFIG_DIR to "/tmp/config:" would result in directories tmp/config, ., and /etc/sane.d being searched (in this order). ๐ŸŒธ
  • SANE_DEBUG_ABATON โ€” if the library was compiled with debug support enabled, this environment variable controls the debug level for this backend. E.g., a value of 255 requests all debug output to be printed. Smaller levels reduce verbosity. ๐Ÿ”Š

๐Ÿ’€ BUGS ๐Ÿ’€

lowkey there are a few known ones, and definitely some unknown ones. ๐Ÿ˜ญ

๐Ÿงฎ Scan area miscalculations ๐Ÿงฎ

For the sake of programmer efficiency, this backend handles all measurements in millimetres, and floors (rather than rounds) values to avoid possible damage to the scanner mechanism. Therefore, it may not be possible to scan to the extreme right or bottom edges of the page. ๐Ÿ“

๐Ÿ›‘ Cancelling the scan ๐Ÿ›‘

This might not work correctly, or it might abort the frontend. The former is more likely than the latter. ๐Ÿซ 

If you have found something that you think is a bug, please attempt to recreate it with the SANE_DEBUG_ABATON environment variable set to 255, and send a report detailing the conditions surrounding the bug to sane-devel@alioth-lists.debian.net. ๐Ÿ’Œ

๐Ÿ“ TODO ๐Ÿ“

future plans, bestie:

  • Implement non-blocking support โœจ
  • Finish reverse-engineering the MacOS driver โ€” This will allow me to add support for other models with reasonable confidence that it will work, as well as to fully exploit the information returned by the INQUIRY command. highkey useful. ๐Ÿ”

๐Ÿ‘€ SEE ALSO ๐Ÿ‘€

sane(7), sane-scsi(5), scanimage(1) โ€” go read these too, bestie. ๐Ÿ’…

๐Ÿ‘‘ AUTHOR ๐Ÿ‘‘

The sane-abaton backend was partially written by David Huggins-Daines, based on the sane-apple(5) backend by Milon Firikis. ๐Ÿซถ

mwah ๐Ÿ’‹ this page is sane-abaton(5), dated 11 Jul 2008 โ€” thatโ€™s the footer tea, and itโ€™s iconic. ๐ŸŽ€

๐Ÿ“ฆ where this page comes from