Genius Wizardpen 5x4 Linux HOGYAN
A HupWiki-ből...
Tartalomjegyzék |
Források
Az itt található információk alapjául a következő linken található anyagok és egy Debian Sarge rendszerrel való küzdelem szolgált.
http://www.stud.fit.vutbr.cz/~xhorak28/index.php?page=Genius_WizardPen
Előkészületek
Le kell tölteni az éppen aktuális legfrissebb kernelt. Ez eme dokumentum elkészültekor a 2.6.10-es verziójú volt.
http://kernel.org
Le kell tölteni az eszközvezérlő forrását tartalmazó file-t.
http://www.stud.fit.vutbr.cz/~xhorak28/data/Genius_WizardPen_attach/wizardpen-driver-0.0.1.tar.gz
Ez tartalmazza az eszközvezérlő kernel modul és az X szerver input moduljának forrását is, meg egy kernel patch-et. Lényegében ezek módosított acecad modulok, ugyanezen a néven. Nem egy elegáns megoldás, de egyelőre még nincsen más, úgyhogy akinek szúrja a szemét, az elkezdheti hekkelgetni... :-)
Kernel konfigurálás
Nálam ez hagyományosan a "make menuconfig" parancs segítségével történik, de opcionálisan mindenki azt használja amit szeret. A teljes beállítás nem célja ennek a dokumentumnak, így csak azokat a menüpontokat emelem ki, amik szükségesek rajztáblánk szempontjából.
Device Drivers ---> USB Support ---> <*> Support for Host-side USB <M> EHCI HCD (USB 2.0) support <M> OHCI HCD support <M> UHCI HCD (most Intel and VIA) support <M> USB Human Interface Device (full HID) support [*] HID input layer support [*] /dev/hiddev raw HID device support <M> Acecad Flair tablet support Input device support ---> <M> Event interface
Ezután fordítsuk le és telepítsük az új kernelt plusz a modulokat. Ehhez javaslom a Debian-ban fellelhető legfrissebb gcc-t ( version 3.3.5 (Debian 1:3.3.5-8) ), mivel a nemsokára elkészítendő X input modul nem fordul le a 2.95.4-essel.
Kernel modul tesztelése
Boot-oljunk be az új kernellel, majd töltsük be az újonnan létrehozott modulokat. (Alaplaptól függően lehet, hogy az első helyett valakinél ohci_hcd, vagy esetleg ehci_hcd kell.)
modprobe uhci_hcd modprobe evdev modprobe acecad
Meg kell keresni, hogy melyik event interface-en lesz megtalálható a rajztábla.
cat /dev/input/eventX
Itt az "X"-et mindenki kezdje el sorban behelyettesíteni nullától egészen addig, ahány bemeneti eszköze van. Nálam a nullás a billentyűzet, az egyes az egér és a kettes lett a tábla. Ezek úgy derülnek ki, ha a parancs kiadása után sorban megmozgatjuk ezeket, és nézzük, hogy melyik "szemeteli" tele a képernyőt. Ha megvan, hogy melyiken érjük el a táblát, akkor jegyezzük meg, mert később szükség lesz rá.
X input modul fordítása
Létre kell hozni a "makefile"-t az xmkmf programmal.
cd /root/wizardpen/wizardpen-driver-0.0.1/xinput/ xmkmf
Ezután egy apró változtatást kell végrehajtani a "/root/wizardpen/wizardpen-driver-0.0.1/xinput/acecad.c" file-on. Kedvenc editorunkkal nyissuk meg szerkesztésre, és a 96. sorban lévő "XORG_VERSION_CURRENT," sort cseréljük le "XF86_VERSION_CURRENT,"-re. Ez lényeges, mert kedvenc Debianunkba még nem szivárgott be az X.org és enélkül nem fordulna le a driver. Mint kicsit feljebb írtam, használjuk a legfrissebb gcc-t.
Készítsük el, és másoljuk be a megfelelő helyre, az X input modulok közé.
make cp /root/wizardpen/wizardpen-driver-0.0.1/xinput/acecad_drv.o /usr/X11R6/lib/modules/input/
X konfigurálása
A végéhez közeledvén már csak annyi teeendőnk van, hogy megnyitjuk szerkesztésre az "/etc/X11/XF86Config-4" állományt és bemásoljuk a következőket. (Paranoiásak csinálhatnak előtte biztonsági mentést róla.)
Hozzuk létre a következő részt, mondjuk például az egerünket konfiguráló rész alá. Az "eventX" helyére azt a számot kell beírni, amit a "Kernel modul tesztelése" résznél megtaláltunk.
Section "InputDevice" Identifier "Wizardpen_5x4" Driver "acecad" Option "Device" "/dev/input/eventX" Option "Mode" "Absolute" EndSection
Ezután a file vége felé elhelyezkedő "ServerLayout" részbe szúrjuk be a következőt.
InputDevice "Wizardpen_5x4" "AlwaysCore"
Ezzel meg is volnánk. Már csak az X szerver újraindítása van hátra (ha futott), amit személy szerint a CTRL+ALT+BACKSPACE utáni "startx"-el tettem.
Végső simítások
Kényelmesebbé lehet tenni a modulok betöltését, ha a nevüket beírjátok az "/etc/modules" file-ba. Az ebben lévő modulokat minden indításkor betölti a kernel, így nem kell kézzel csinálni.