Linux Mandriva x64 и Be@r Paw 1200

Есть у меня сканер-старичок "Mustek Be@r Paw 1200", который в свое время честно отсканировал с десяток толстенных книг и небольшую кучу всяких бумаг, эскизов, рисунков. Громоздкий, медленный, но свой :)

Лет пять тому назад стояла у меня на компьютере Мандрива 32-хразрядная, уж не помню какой версии, 2007-ой, наверное. И сканер тот сходу завелся и спокойно работал "из коробки". Но прошло время, сменил я компьютер, поставил Мандриву 2009 x64. А сканер взял, да и не заработал нормально: иной раз отсканирует страничку, но чаще зависнет и гудит напряжно. Причем только обесточивание устройства и помогало. Посидел я чутка в попытках решения проблемы, но сходу она не поборолась. Начал грешить на железку, подключил к продукту от дядюшки Билла - сканер заработал нормально.  "Медвежья Л@па" особо не была нужна, появились другие задачи, и я благополучно забыл про это.

Но вот, решил я обновить свою операционку - остался на Мандриве (такой вот я постоянный), но теперь уже на 2011 и тоже x64. Начал я ее настраивать и про сканер вспомнил - а вдруг пригодится. Поставил sane - сканер видит, но виснет после калибровки. На форумах ничего толком нет: кому-то дрова от винды предлагают на линуху поставить, чтобы сканер заработал - но это явно не мой случай, да и посты староваты. В общем, не найдя ничего нового, плюнул я на ладошки и сам стал ковыряться.

sane-find-scanner -q
found USB scanner (vendor=0x045e, product=0x028e) at libusb:004:002
found USB scanner (vendor=0x0400 [National Semiconductor], product=0x1000 [Merlin Scanner], chip=LM9831) at libusb:005:007

Два устройства, одно из них виртуальное - пока все нормально.

scanimage -L
device `v4l:/dev/video0' is a Noname UNKNOWN/GENERIC virtual device
device `plustek:libusb:005:007' is a Mustek BearPaw 1200 flatbed scanner

Сканер определился корректно. Для работы со сканером используется plustek - он, судя по документации, нормально работает с этой моделью.

scanimage -d plustek -T
scanimage: scanning image of size 202x150 pixels at 24 bits/pixel
scanimage: acquiring RGB frame, 8 bits/sample
scanimage: reading one scanline, 606 bytes...

И все - повис с неприятным звуком.

Обнаружил конфиги в папочке /etc/sane.d/ (где же им еще быть-то) и заинтересовал меня файлик plustek.conf - его ведь используем. Проверил по ProductID параметр mov - все в порядке, значит дело в чем-то еще. Начал перебирать параметры, подробно останавливаясь на том, что относится к калибровке - виснет-то до начала непосредственного сканирования. Время от времени запускал scanimage -d plustek -T и дергал вилку питания сканера.

Нашел:

# for skipping entire fine calibration step
# coarse calibration is done
#
option skipFine 0

Поменял на 1 и все заработало!

scanimage -d plustek -T
scanimage: scanning image of size 202x150 pixels at 24 bits/pixel
scanimage: acquiring RGB frame, 8 bits/sample
scanimage: reading one scanline, 606 bytes...   PASS
scanimage: reading one byte...          PASS
scanimage: stepped read, 2 bytes...     PASS
scanimage: stepped read, 4 bytes...     PASS
scanimage: stepped read, 8 bytes...     PASS
scanimage: stepped read, 16 bytes...    PASS
scanimage: stepped read, 32 bytes...    PASS
scanimage: stepped read, 64 bytes...    PASS
scanimage: stepped read, 128 bytes...   PASS
scanimage: stepped read, 256 bytes...   PASS
scanimage: stepped read, 512 bytes...   PASS
scanimage: stepped read, 1024 bytes...  PASS
scanimage: stepped read, 1023 bytes...  PASS
scanimage: stepped read, 511 bytes...   PASS
scanimage: stepped read, 255 bytes...   PASS
scanimage: stepped read, 127 bytes...   PASS
scanimage: stepped read, 63 bytes...    PASS
scanimage: stepped read, 31 bytes...    PASS
scanimage: stepped read, 15 bytes...    PASS
scanimage: stepped read, 7 bytes...     PASS
scanimage: stepped read, 3 bytes...     PASS

Ну чтож, обойдемся и без точной калибровки. Зато девайс пашет :)