Teclats fantasma…

Bon dia. Passo a explicar un problema curiós i que poques vegades trobareu, tot i ser molt emprenyador. Els teclats fantasmes.

Posem per cas que ens ha arribat a les mans un portàtil -no crec pas que el cas es doni a cap màquina que porti el teclat extern-. El sistema operatiu que porti tant ens fa i el contingut del disc dur també. La comprovem i funciona. Perfecte.

Entrem amb la nostra distribució live i… el teclat no funciona! Ens ignora. El pad funciona, un ratolí extern funciona però per més proves que fem, el teclat no respon.

En fase emprenyament tornem a reiniciar des del disc dur… tot funciona.

Ja som a DefCon3 i les nostres orelles treuen fum. Entrem per la live i res. Entrem un teclat extern i funciona.

Ens arrisquem a fer la instal·lació i… El teclat continua sense funcionar! Com que tenim d’entrada diverses opcions al GRUB, veiem que aquí el teclat sí que respon. I ara què?

Per una qüestió d’arquitectura física i de firmware  de la màquina, alguns tipus de teclat no són reconeguts directament pel sistema. La sol·lució és passar una sèrie de paràmetres directes al kernel (en el grub). Primer els hem d’entrar a la Live d’instal·lació per no dependre d’un teclat extern. Després, a la primera arrencada, hem d’entrar aquests paràmetres al GRUB per poder tenir accès i poder fixar-los permantentment. Un cop fet això se’ns ha acabat el problema.

Els paràmetres (després del quiet i l’splash) són:

i8042.nopnp=1 i8042.dumbkbd=1

La documentació dels paràmetres possibles del kernel la tenim aquí. En el nostre cas volen dir:

i8042.nopnp=1 : Don’t use ACPIPnP / PnPBIOS to discover KBD/AUX controllers
i8042.dumbkbd=1 : Pretend that controller can only read data from keyboard and cannot control its state (Don’t attempt to blink the leds).

Els podem integrar des del Grub Customizer, un gestor gràfic del GRUB molt fàcil d’instal·lar:

sudo add-apt-repository ppa:danielrichter2007/grub-customizer
sudo apt-get update
sudo apt-get install grub-customizer

O tot modificant el fitxer /etc/default/grub i modificant la línea de:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

a

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash i8042.nopnp=1 i8042.dumbkbd=1"

Després:

sudo update-grub2

I tot arreglat.

Fins després.

Anuncis
Aquesta entrada s'ha publicat en Hardware, Linkat 12.04, Nivell fàcil., Paràmetres del GRUB, PPA's, Teclat fantasma i etiquetada amb , , , , , . Afegiu a les adreces d'interès l'enllaç permanent.

Deixa un comentari

Fill in your details below or click an icon to log in:

WordPress.com Logo

Esteu comentant fent servir el compte WordPress.com. Log Out / Canvia )

Twitter picture

Esteu comentant fent servir el compte Twitter. Log Out / Canvia )

Facebook photo

Esteu comentant fent servir el compte Facebook. Log Out / Canvia )

Google+ photo

Esteu comentant fent servir el compte Google+. Log Out / Canvia )

Connecting to %s