martijn@creativeminds.nl
Nergens op het internet kon ik goede documentatie vinden over het toevoegen van zoiets eenvoudigs als een USB-muis aan Linux. Hiermee vul ik voor het Nederlandse taalgebied het hiaat op.
Met dit document kun je in ieder geval je USB muis aan de gang krijgen onder Linux, waarschijnlijk geldt exact dezelfde procedure ook voor USB toetsenborden en in een later stadium ook voor videocamera's en audio-apparatuur. Ik heb de andere apparatuur (nog) niet getest maar gezien de eenvoud van USB moet dat op de beschreven manier ook lukken.
Dit document is geen officiële HOWTO. Het is niet in SGML geschreven en niet in andere formaten dan HTML verkrijgbaar. Omdat het voor eindgebruikers is, voor iedereen die er aardigheid in heeft met Linux te werken. De meer technisch begaafden onder ons zullen misschien vinden dat het niet diep genoeg gaat, maar zo is dit document niet bedoeld. Het legt in begrijpelijke taal en in een paar stappen uit hoe je eenvoudige USB randapparatuur aan de gang kunt krijgen.
Natuurlijk nodig ik iedereen uit extra informatie aan te leveren en eventuele onvolkomenheden te corrigeren. Deze handleiding is ontstaan op het moment dat USB nog niet officieel onder Linux beschikbaar was. Het de bedoeling dat het in de loop der tijd uitgroeit tot een installatiehandleiding voor alle USB apparatuur onder Linux. Ik zal mijn uiterste best doen zoveel mogelijk USB apparatuur te testen. Nogmaals: ik stel bijdragen van jou als lezer/gebruiker zeer op prijs!
Dit document is voor iedereen met enige Linuxervaring die USB apparatuur wil aansluiten. 'Enige Linuxervaring' betekent in dit verband: 'in staat zijn de kernel te compileren en niet bang zijn om met teksteditors configuratiebestandjes te bewerken'.
USB is een standaardprotocol, het zou op iedere computer exact gelijk moeten zijn. Een moderne computer met USB aansluiting is dus de enige hardware-eis. Deze uitleg is gebaseerd op ervaringen met twee klonen: AMD K6-200 en K6-2 450, respectievelijk op een Aopen AP5t-3 en een Asus P5A-B moederbord en losgekochte USB-brackets. De gebruikte muis is een Logitech Mouseman(+) Wheel.
Iedere kloon en A-merkcomputer die probleemloos Linux draait zou USB dus even probleemloos moeten kunnen implementeren.
Linux 2.2.8 of hoger en alle software die nodig is om de kernel te kunnen hercompileren. Exacte informatie daarover vind je in de Kernel HOWTO. Over het algemeen bieden moderne distributies alle software die je nodig hebt. Dus daarover hoef je je waarschijnlijk niet veel zorgen te maken.
Om USB onder Linux te gebruiken moet je de stuurprogramma's in de kernel compileren of via een module aanmaken. In deze uitleg ga ik ervan uit dat je de code in de kernel compileert. Meer informatie over het compileren van de kernel of de modules vind je in de Kernel HOWTO.
Zorg voor een nieuwe kernelbroncode, 2.2.8 of hoger. Hoe hoger hoe beter want hoe meer keuze in USB-apparatuur en hoe stabieler de USB-ondersteuning). Je kunt de kernelbroncode downloaden vanaf ftp://www.nl.linux.org/pub/linux/kernel/ of http://www.nl.kernel.org/pub/linux/kernel/
Decomprimeer en untar die broncode op de normale manier. Tik dan in:
cd /usr/src/linux/arch/i386/Open het bestand
config.inmet een teksteditor(bijvoorbeeld met Jed, Pico of Vi) zoek de regel
# source drivers/usb/Config.in(plusminus regelnummer 172) haal het Hash-teken (#) weg sluit de editor af en ga terug naar de broncode-root
cd /usr/src/linuxin de development kernels (2.3.x) hoef je de regel in config.in niet meer te wijzigen, het USB-selectievenster is daarin standaard zichtbaar.
Configureer de kernel op de bekende manier, met
make configof
make menuconfigof
make xconfigJe ziet dat er een menu-item in het configuratiemenu is bijgekomen: 'USB drivers - not for the faint at heart'
Selecteer in dat menu daar in ieder geval het bovenste regeltje Support for USB (EXPERIMENTAL), en UHCI (intel PIIX4 and others). En natuurlijk het regeltje USB mouse support en/of USB keyboard support. Als je een USB-hub gebruikt, selecteer dan ook de twee OHCI virtual root Hub instellingen.
Meer hoeft niet (behalve als je een Compaq hebt, maar dat wijst zich vanzelf uit)
Zorg dat je de rest van de instellingen ook aan je systeem aanpast, sluit het
configuratieprogramma af en compileer de nieuwe kernel op de gebruikelijke
wijze. Na het compileren moet je natuurlijk het gemaakte kernel-image naar
/boot/ kopiëren (of make install
draaien). Daarna
moet je lilo.conf aanpassen en
lilodraaien.
Maak dan een device usbmouse aan.
cd /deven tik in:
mknod usbmouse c 10 32In de development kernels kun je in plaats daarvan ook gebruik maken van /dev/psaux of een speciaal USB-device aanmaken. Deze features zullen later ook in de stabiele kernel worden opgenomen.
Nu is het installatieproces afgerond. Zorg ervoor dat je een reddingsdiskette hebt met een oudere kernel, voor als er iets is misgegaan met de nieuwe kernel. Ik ga ervan uit dat je vaker een kernel hebt gecompileerd en niet meer in dit soort valkuilen trapt!
Herstart de computer, tijdens het opstarten zie je de USB berichten al voorbij komen, eventueel kun je die later aan de prompt nakijken met
dmesg | less
Als de computer normaal is opgestart, is het installatieproces afgerond.
Wil je de muis onder de prompt en consoleprogramma's gebruiken via gpm tik dan in:
gpm -3 m /dev/usbmouse -t ps2 -RJe kunt eventueel de installatie van de muis testen met
mouse-test(of je doet dat met /dev/psaux, dat ligt eraan hoe je hebt gekozen met compileren) Als alles goed is vindt dat programma /dev/usbmouse als mogelijke muispoort.
voor gebruik onder X Windows pas je /etc/XF86Config aan In de Pointer sectie wijzig je met een editor de volgende waarden:
Section "Pointer" Protocol "PS/2" Device "/dev/usbmouse"Sluit de editor en start X Windows. Zie dat het werkt! Denk er wel aan dat gelijktijdig GPM en X gebruiken tot conflicten kan leiden, schakel als je GPM hebt draaien - voor je X Windows start - GPM uit met
gpm -k
Dit document is zoals je hebt gemerkt een praktische handleiding voor het installeren van USB apparaten onder Linux. Heb je behoefte aan diepere informatie, dan kun je onder meer terecht bij de volgende sites:
Het eerste USB project (Uusbd) van Iñaky Pérez González
Kernel traffic, de wekelijkse online Kernel nieuwsbrief waarin ook de nieuwste Linux-USB ontwikkelingen worden doorgenomen:
Cutting Edge Linux, met de nieuwste changelogs:
De centrale site (algemene) rond USB is
Daar vind je veel hyperlinks naar relevante informatie.
Er zijn nog geen Linux USB-nieuwsgroepen, wel een algemene hardware nieuwsgroep:
Natuurlijk kun je ook terecht bij de algemene Nederlandse nieuwsgroep:
Ook een zoektocht bij dejanews kan bruikbare informatie opleveren:
Heb je opmerkingen over de inhoud van dit document stuur dan een e-mail naar martijn@creativeminds.nl
Als je zelf ervaring hebt met het aansluiten van muizen of andere USB apparatuur onder Linux, dan stel ik het ook zeer op prijs als je contact met me opneemt zodat we dit document completer kunnen maken en uitbreiden met handleidingen voor andere apparatuur.
Voor zover er handelsmerken zijn gebruikt in dit document: ze zijn in handen van hun eigenaren. Er is geen garantie voor de informatie in dit document. Je mag het gebruiken, verspreiden, en vrij herproduceren, op voorwaarde dat je deze copyright vermelding niet wijzigt of verwijdert, het versienummer en de datum niet aanpast en de verwijzing naar de huidige WWW versie van dit document niet wijzigt of verwijdert. Die versie is: http://www.creativeminds.nl/linux/USB-uitleg-nl.html Als je iets verandert moet je duidelijk aangeven dat het om een gewijzigde versie gaat.