2012-10-26 скенери

by Vasil Kolev

Преди няколко дни ми се обадиха да ми кажат “понеже < специфични причини>, трябва да подкараме тука един скенер под linux, да се сещаш някой да може да помогне, например в initLab?”. Понеже на мен ми беше леко скучно, седнах със Алекс Станев да видим какво можем да направим.

Хардуерът беше един Canon DR-3010C и към него Flatbed Scanning Unit 101 (който се водеше като допълнителна част към другия и че не може да работи отделно). Сашо с малко хакване беше успял да подкара самия DR със SANE (patch-ът беше тривиален и вероятно ще го submit-нат скоро), но с другото желязо имаше проблем.

След като със зор подкарахме нещото на един windows, за да го заслушаме и да видим как работи. Flatbed-а тръгна само със софтуера на canon, като преди това трябваше да няма лист в другото устройство, но видяхме малко комуникация и че изобщо работи. След като открихме, че протоколът му няма нищо общо с другия го отворихме, видяхме чиповете вътре, открихме, че е с GL846. Оказа се, че тоя flatbed си е съвсем отделен скенер, който може да се контролира директно, както и че в SANE има драйвер за близки до него чипове (в този чип стои целия контрол и USB-то, т.е. комуникира се директно с него). Пробвахме се да го подкараме със съществуващите драйвери, но явно има достатъчна разлика м/у чиповете, че да трябва да се пише.

Та решението на въпроса е в крайна сметка някой да отдели една седмица и да patch-не съществуващите драйвери (има си подробна документация) и да направи flatbed-а използваем сам по себе си – задачка за програмисти, интересната работа свърши:)

Tags:

Leave a Reply