Home > codice, guide > eeepc 901go key to enable/disable wireless

eeepc 901go key to enable/disable wireless

Anche in vacanza mi fanno lavorare!

“Tutta colpa” di mio fratello che ha comprato un Eeepc 901Go e dopo averci messo kubuntu/ubuntu ha notato il non funzionamento della shortcut Fn+F2 che permette lo spegnimento/accensione della scheda wireless e dell’annesso led in basso.

Son fin da subito riuscito a disattivare il led e la scheda ma il problema era la riaccensione infatti non funzionava se non riavviando il sistema… poi ieri sera finalmente ecco la soluzione!

Bisogna modificare il file /boot/grub/menu.lst per impostare alcuni parametri al caricamento del kernel (infatti il modulo incriminato di questo “malfunzionamento” è pciehp che è compilato staticamente), queste sono le modifiche da effettuare; si devono aggiungere alla linea kernel del file le stringhe “pciehp.pciehp_force=1 pciehp.pciehp_poll_mode=1” in modo da avere alla fine questo risultato:

kernel		/boot/vmlinuz-2.6.28-11-generic root=UUID=3ddd8611-ec14-4c47-8812-d76a58ffe048 ro quiet splash pciehp.pciehp_force=1 pciehp.pciehp_poll_mode=1

Dopo aver riavviato il sistema passiamo a testare il corretto funzionamento di tutto, prima di tutto disattiviamo la scheda:

ifdown wlan0
ifconfig wlan0 down
echo 0 > /sys/class/rfkill/rfkill0/state
modprobe -r ath5k

Ora proviamo a riattivarla:

echo 1 > /sys/class/rfkill/rfkill0/state
modprobe ath5k
ifconfig wlan0 up
ifup wlan0

A questo punto connettiamoci come solitamente facciamo (dall’applet nella systray da pppoeconf o da qualsiasi altro programma), la scheda è nuovamente attiva!

Ora scriviamo un piccolo script da associare alla combinazione di tasti Fn+F2:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/bin/bash
 
TMP='/tmp/wireswitch'
 
if [[ -f $TMP ]]; then
        rm $TMP
        echo 1 > /sys/class/rfkill/rfkill0/state
        modprobe ath5k
        ifconfig wlan0 up
        ifup wlan0
else
        touch $TMP
        ifdown wlan0
        ifconfig wlan0 down
        echo 0 > /sys/class/rfkill/rfkill0/state
        modprobe -r ath5k
fi

Ora non vi resta che copiare lo script in /usr/sbin e associarlo al vostro gestore delle shortcut.

Ricordatevi solo che tutti i comandi vanno eseguiti come root quindi, in fase di associazione del comando alla combinazione, ricordatevi di premettere kdesudo o gtksudo al nome dello script.

Francesco Apollonio codice, guide , , , , , , , ,

  1. m4tt3o
    26 maggio 2009 a 23:38 | #1

    vorrei rettificare lo script, ti sarà scivolata una riga, precisamente la 12 ” rm $TMP” va posizionato nella parte di accensione della scheda, non allo spegnimento, altrimenti non si accende più.

    Ciao fratellone ;)

  2. 27 maggio 2009 a 18:01 | #2

    @m4tt3o
    hai ragione svista di copia ed incolla :D
    grazie mille :)

  1. 3 giugno 2009 a 19:09 | #1