Návod je po menších úpravách shodný i pro jiné zařízení než G-55. Tak například část týkající se tisku jsem použil před dvěma roky pro zprovoznění tisku tiskárny HP DeskJet 600 (a tenkrát jsem ještě musel stahovat nový GhostScript a další balíčky pro optimalizaci tisku) s mnohem více problémy než dnes, kdy veškeré požadované programy s výjimkou ptal-rozhraní a sane najdete přímo na instalačních CD od RedHatu. Předpokládám, že u jiných distribucí bude postup velmi podobný.
Používám RedHat linux 7.3 Valhalla – jádro bez jakýchkoliv patchů (originální z distribuce 2.4.18–3). KDE 3.0.0–10 opět přímo z distribuce. Tiskárna je připojena přes USB rozhraní. Pro zprovoznění tisku a skenování budete muset nainstalovat vývojové nástroje potřebné pro přeložení balíčků hpoj-0.8.tgz sane-frontends a sane-backends.
1. Trocha teorie
Tiskárna HP OJ G55 používá rozhraní PTAL (Peripheral Transport Abstraction Library). Pomocí něho komunikuje systém se zařízením bez ohledu na to, zda je připojeno na paralelní port nebo USB. Po jeho nainstalování pouze odkazujete na „ptal“ zařízení – a ne např. na /dev/lp0 nebo /dev/scanner. Vše bude vysvětleno později.
2. Instalace PTAL rozhraní
Na stránkách projektu HPOJ – http://hpoj.sourceforge.net najdete v sekci „Download and CSV“ aktuální i starší verze ovladače. V současnosti to je verze hpoj-0.8. Balíček standardním způsobem rozbalíte a překompilujete:
[root@pandion hpoj-0.8]# ./configure
[root@pandion hpoj-0.8]# make
[root@pandion hpoj-0.8]# make install
Pozn.
program se standardně nainstaluje do adresáře /usr/local. Jestliže toto změníte pomocí volby ./configure –prefix=DIR, potom musíte tuto cestu zadat i při kompilaci modulu sane.
No a pokud máte nainstalovány všechny vývojové balíčky potřebné pro překlad, bude vám odměnou výstup prostý chybových hlášení a doporučení, abyste spustili:
[root@pandion /]# ptal-init setup
Skript prohledá zařízení, ke kterým může být Vaše tiskárna/skener připojena, a pokud bude hledání úspěšné, upraví startovní skript /usr/local/etc – přidá dvě řádky
ptal-mlcd usb:OfficeJet_G55 -device /dev/usb/lp* -devidmatch ;„MDL:OfficeJet G55;“ $PTAL_MLCD_CMDLINE_APPEND
ptal-printd mlc:usb:OfficeJet_G55 $PTAL_PRINTD_CMDLINE_APPEND
Když nahlédnete do adresáře /dev, najdete tu nové zařízení:
/dev/ptal-mlc/usb:OfficeJet_G55
/dev/ptal-printd/mlc_usb_OfficeJet_G55
Poté můžete restartovat ptal-driver příkazem
[root@pandion /]# /etc/rc.d/init.d/ptal-init restart
Pokud ani teď neuvidíte žádné chyby, můžete se pokusit zjistit, jak se Vaše tiskárna hlásí
[mizi@pandion mizi]$ ptal-devid mlc:usb:OfficeJet_G55
pokud je zařízení funkční, měl by být výsledkem následující výstup:
MFG:Hewlett-Packard;MDL:OfficeJetG55;
CMD:MLC,PCL,PML,SCL;
CLASS:PRINTER;
DESCRIPTION:Hewlett-Packard OfficeJet G Series;
1284.3M:f7f,f7f;1284.4DL:4d,4e,1;
SERN:SGF0BE1N3DVL;
VSTATUS:$HB0$NC0,ff,DN,IDLE,CUT,K0,C2,SM,NR,KP008,CP000;
AiO:0;DW-PCL;
Další příkazy jsou spíše informační, ale pro pocit z dobře vykonané práce se můžete pokochat :)
[mizi@pandion mizi]$ ptal-hp mlc:usb:OfficeJet_G55 device
Model name: OfficeJet G Series
Model number: G55
Serial number: SGF0BE1N3DVL
Firmware version: MR4.05
Firmware datecode: (unavailable)
Total RAM size: 5242880 bytes
nebo třeba, co zobrazuje displej tiskárny. Existuje sice hezký grafický program xojpanel, který věrně imituje LCD displej na tiskárně – bohužel u mě končil s neoprávněným přístupem do paměti :( Ale jsou horší věci, že?
[mizi@pandion mizi]$ ptal-hp mlc:usb:OfficeJet_G55 display
1 Copy/100%
3. Kopírování
Je nejjednodušší ze všeho :) Na kopírování nepotřebujete mít spuštěný počítač. Jenom stisknete tlačítko a je hotovo. Takže další:
4. Tisk
Na začátku je potřeba se rozhodnout, jaký tiskový systém budete používat: standardní instalace RedHat 7.3 Linuxu nabízí tiskové systémy CUPS nebo LPRng. Po poradě na konferencilinux@linux.cz mi byl doporučen systém CUPS – a vůbec nelituji. Administrace přes webové rozhraní – třeba z Mozilly – není k zahození.
Předpokládejme, že máte nainstalované balíčky
cups-1.1.14–15.i386.rpm
cups-libs-1.1.14–15.i386.rpm
cups-drivers-hpij~0313.3.i386.rpm
cups-drivers-1.1–0.20020313.3.i386.rpm
a nastaven CUPS jako primární tiskový systém (třeba pomocí příkazu „redhat-switch-printer“ a nastavení na CUPS). Pro kontrolu spusťte browser (Mozillu, Konquerror, Netscape…) a místo URL napište http://localhost:631, protože CUPS server běží na lokálním portu 631. Pokud se objeví následující obrazovka, máte vyhráno.
Vyberete „Do Administations Tasks“, zadáte heslo roota a dostanete se na následující obrazovku:
Vyberete „Add Printer“ a vyplníte políčka formuláře podle následujícího obrázku:
Pak musíte zadat device pro tiskárnu. V nabídce je sice „USB printer #1 (Hewlett Packard OfficeJet G55)“, ale pokud ho vyberete, tiskárna nebude fungovat.
Musíte vybrat ptal ovladač, a to následovně: vyberete „Internet printing protocol iip“ a do okénka „Device URI“ napíšete
file://dev/ptal-printd/mlc_usb_OfficeJet_G55
Vybereme „Continue“, na řadě je tiskový model, a to stačí „HP → HP OfficeJet G55, Foomatic + hpijs (en)“. Po odkliknutí Continue máte tiskárnu zhruba nainstalovanou. Podrobnosti můžete nastavit tlačítkem Configure Printer. Další důležité tlačítko je Print Test Page. Jestliže jste vše nakonfigurovali správně, odměnou bude první stránka vytištěná z Linuxu.
Pokud používáte KDE 3.0 jako já, můžete se ještě podívat, co Vám říká „Správce tisku“ V položce „Instance/Nastavení“ získáte přístup k dalším volbám: můžete nastavit vlastnosti jako v manažeru CUPS – a ještě něco navíc. Třeba uživatelsky nastavitelné okraje při textovém tisku z xtermu. Další záložky nechávám na zvídavosti laskavého uživatele :).
Zbývá poslední hektický úkol: a tím je donutit tučňáka, aby také používal skenovací část.
5. Skenování
Ke komunikaci skeneru se systémem použijeme rozhraní SANE (Scanner Access Now Easy). Protože je ho potřeba zkompilovat s podporou ptal zařízení, musíme opět stáhnout sane z webu, zkompilovat a nainstalovat. Pokud se to povede, máte multifunkční zařízení opravdu multifunkční i v Linuxu. Ale abych nepředbíhal:
První kroky by měly mířit nahttp://www.mostang.com/sane/. Tady v sekci “Download" najdete zdrojové kódy příslušných balíčků:
sane-backends: obsahuje ovladače skenerů, skenovací program ovládaný přes příkazovou řádku, síťového skenovacího démona a dokumentaci SANE-API
sane-frontends: obsahuje grafická rozhraní xscanimage a xscan. Nejsou špatné, ale vřele doporučuji program xsane (zvláště frontend plugin do GIMPu: xsane-gimp)
A následuje překlad a instalace:
Postup rozbalení, překladu a instalace je pro oba balíčku stejný, takže postup budu uvádět jenom pro sane-backend.
[root@pandion sane-backends-1.0.8]# ./configure –with-ptal
[root@pandion sane-backends-1.0.8]# make
[root@pandion sane-backends-1.0.8]# make install
Program se nainstaluje do adresáře /usr/local/ (např. spustitelný soubor je v /usr/local/bin). Jestliže chcete program nainstalovat jinam, musíte použít volbu
[root@pandion sane-backends-1.0.8]# ./configure –with-ptal –prefix=DIR
POZOR:
pokud jste volbu –prefix použili i u kompilace ptal ovladačů a máte je nainstalované v jiném než standardním adresáři, musíte i zde použít ./configure –with-ptal=DIR. Jinak by nebylo rozhraní ptal nalezeno a kompilace by sice proběhla, ale bez podpory ptal zařízení. No a potom byste se divili, proč sane Váš skener nenajde :). Pro kontrolu hledejte ve výstupu konfigurátoru řetězce
checking for ptal.h… yes
checking for ptalInit in -lptal… yes
Pokud se vše povedlo, zopakujte postup i pro sane-frontends a je na čase nakonfigurovat sane-backends
Konfigurace sane:
Editujte soubor hp.conf, který se nachází v adresáři /usr/local/etc/sane.d/, a upravte ho tak, aby vypadal následovně:
# USB-connected MFP:
mlc:usb:OfficeJet_G55
option connect-ptal
Ostatní soubory v /usr/local/etc/sane.d/můžete s klidným svědomím smazat (pokud ovšem neplánujete jiný skener :))
Test skeneru:
v konzoli můžete spustit scanimage –test
nebo v X-Window: spustit xscanimage
Pokud se povede bez chyby, máte vyhráno a můžete odinstalovat MS Windows ;)
No a příště si můžeme popovídat třeba o nastavení a používání grafických skenovacích rozhraní…