Touchpad no Acer 5920 c/ Ubuntu 8.04

Iniciado por Manoboy, 14 de Maio de 2008, 12:33

tópico anterior - próximo tópico

Manoboy

Tenho um notebook Acer 5920 e enquanto estava instalado o Ubuntu 7.10 o touchpad funcionava perfeitamente e o botão do meio ativava o scroll normalmente.
Depois que instalei o Ubuntu 8.04 o botão do meio perdeu essa função e não consigo ativa-lo.
Segui até uma solução postada neste forum (http://ubuntuforum-pt.org/index.php/topic,34483.0.html), apesar de ser de marca diferente e nem assim funcionou.
Instalei o GSynaptics, fiz as configurações necessárias e nem assim resolveu.
Gostaria de saber se alguem ja passou por isso ou se tem a solução.

Abraço.

danpos

Mas o synaptics (driver==módulo) está carregado? Verifique com

lsmod | grep synaptics

Danpos.

ronaiml

Citação de: Manoboy online 14 de Maio de 2008, 12:33
Tenho um notebook Acer 5920 e enquanto estava instalado o Ubuntu 7.10 o touchpad funcionava perfeitamente e o botão do meio ativava o scroll normalmente.
Depois que instalei o Ubuntu 8.04 o botão do meio perdeu essa função e não consigo ativa-lo.
Segui até uma solução postada neste forum (http://ubuntuforum-pt.org/index.php/topic,34483.0.html), apesar de ser de marca diferente e nem assim funcionou.
Instalei o GSynaptics, fiz as configurações necessárias e nem assim resolveu.
Gostaria de saber se alguem ja passou por isso ou se tem a solução.

Abraço.

Provavelmente o botao nao esta associado com um setkeycode. Pode ser que eu consiga ajudar.
Para isto inicie o seu notebook normalmente. Quando estiver tudo carregado e funcionando:

1)  Aperte o botao que ativa o scroll.
2)  No terminal digite:  dmesg
3) Coloque o resultado aqui. Nao precisa colocar tudo, apenas alguma parte que tenha o seguinte:  setkeycode


Caso nao apareca sera um pouco mais dificil resolver o seu problema.
Ronai
Ronai Lisboa
HP: dv2000t dv2699ep

Manoboy

#3
Danpos,

Configurei o GSynaptics para carregar no inicio de sessão, de qq forma testarei o comando que falou.


Ronaiml,

Farei tambem o procedimento q sugeriu e postarei aqui o resultado.


Só não posso fazer agora esses testes propostos pelos amigos pois estou no meu serviço e o note esta em casa.


Abraços.

Manoboy

Continuando a procura por uma solução p/ o meu problema (pelo menos por enquanto só eu relatei o fato), achei em outro forum o q talvez possa ser a solução.
Porem como meu ingles é de baixissimo nivel, peço aos colegas que tenham maior dominio sobre a lingua q me ajudem a descobrir se é realmente a solução e o q devo fazer.
O link do forum é:

http://ubuntuforums.org/showthread.php?t=517156


Obrigado.

Manoboy

Ronaiml,

Ai esta o resultado do comando q sugeriu:


[  166.463552] atkbd.c: Unknown key pressed (translated set 2, code 0xd9 on isa0060/serio0).
[  166.463561] atkbd.c: Use 'setkeycodes e059 <keycode>' to make it known.
[  166.576046] atkbd.c: Unknown key released (translated set 2, code 0xd9 on isa0060/serio0).
[  166.576054] atkbd.c: Use 'setkeycodes e059 <keycode>' to make it known.


Espero que possa me ajudar.

ronaiml

#6
Por favor, leia tudo antes de modificar.

Como era esperado.  Estas setkeycodes provavelmente são referentes a esta tecla que nao funciona.
Há várias formas para tentar habilita-las. Uma deve funcionar.

A primeira:
Edite o arquivo abaixo com o seu editor de texto preferido: nano, gedit etc, mas como super usuário ( sudo )

sudo gedit /usr/share/hal/fdi/information/10freedesktop/30-keymap-acer.fdi

Veja que neste arquivos há vários modelos de notebooks da ACER. Deve procurar pelo seu modelo Acer 5920,
mas não existe neste arquivo. Então, observe que há o ASPIRE 1510.  Então troque o 1510 pelo  5920. 
Veja abaixo, em negrito:

<match key="/org/freedesktop/Hal/devices/computer:system.hardware.vendor" prefix="Acer">
        <match key="/org/freedesktop/Hal/devices/computer:system.hardware.product" prefix="Aspire">
          <!-- Laptops without extra Euro and Dollar keys, pre mid-2004 & pre 'folio' design -->
          <match key="/org/freedesktop/Hal/devices/computer:system.hardware.product" contains="1510">  <--- coloque 5920
            <append key="input.keymap.data" type="strlist">e025:help</append> <!-- Fn+F1 Hotkey help -->
            <append key="input.keymap.data" type="strlist">e026:setup</append> <!-- Fn+F2 Acer eSettings -->
            <append key="input.keymap.data" type="strlist">e027:battery</append> <!-- Fn+F3 Power Management -->
            <append key="input.keymap.data" type="strlist">e073:prog2</append> <!-- "P2" programmable button -->
            <append key="input.keymap.data" type="strlist">e074:prog1</append> <!-- "P1" programmable button -->
            <append key="info.capabilities" type="strlist">input.keymap</append>
          </match>

Além disso, observe nas linhas anteriores que há vários setkeycodes e025, e026 etc. Mas não há e059. Então vamos criar.
Adicione  as seguintes linhas para ficar como:

<match key="/org/freedesktop/Hal/devices/computer:system.hardware.vendor" prefix="Acer">
        <match key="/org/freedesktop/Hal/devices/computer:system.hardware.product" prefix="Aspire">
          <!-- Laptops without extra Euro and Dollar keys, pre mid-2004 & pre 'folio' design -->
          <match key="/org/freedesktop/Hal/devices/computer:system.hardware.product" contains="1510">  <--- coloque 5920
            <append key="input.keymap.data" type="strlist">e025:help</append> <!-- Fn+F1 Hotkey help -->
            <append key="input.keymap.data" type="strlist">e026:setup</append> <!-- Fn+F2 Acer eSettings -->
            <append key="input.keymap.data" type="strlist">e027:battery</append> <!-- Fn+F3 Power Management -->
            <append key="input.keymap.data" type="strlist">e073:prog2</append> <!-- "P2" programmable button -->
            <append key="input.keymap.data" type="strlist">e074:prog1</append> <!-- "P1" programmable button -->           
      <append key="input.keymap.data" type="strlist">e059:f22</append> <!-- Fn+F7 Touchpad toggle (off-to-on) -->
      <append key="input.keymap.data" type="strlist">e059:f22</append> <!-- Fn+F7 Touchpad toggle (on-to-off) -->
            <append key="info.capabilities" type="strlist">input.keymap</append>
          </match>


Salve. E reinicie. Veja se está funcionando. Caso não funcione

Voce pode tentar três coisas:
1) Primeiro apenas modifique o modelo 1510 para 5920, reinicie. Se funcionar, tudo certo.
2) Depois acrescente as duas novas linhas.
3) Caso não funcione com os dois procedimentos acima procure pela linha ( logo final do arquivo )
<match key="/org/freedesktop/Hal/devices/computer:system.hardware.product" contains_outof="5210;5220;5610;5620;5720"

e acrescente o seu modelo no final. A linha deve ficar como

<match key="/org/freedesktop/Hal/devices/computer:system.hardware.product" contains_outof="5210;5220;5610;5620;5720;5920"

Há outros meios, mas tente este primeiro. Caso não funcione de um replay que passarei outros métodos.
Ronai Lisboa
HP: dv2000t dv2699ep

Manoboy

Ronaiml,

Acabei de tentar suas sugestões, porem não obtive exito.
Continuo c/ o problema. Se ao menos o scrool no touchpad funcionasse ja ajudaria.
Aguardo novas instruções.


Abraço.

ronaiml


Desfaça as modificacoes do poste anterior.

Outra tentativa seria modificar o arquivo:

sudo nano /usr/share/hotkey-setup/acer.hk

e acrescentar no final deste arquivo a seguinte linha:
setkeycodes     e059    $KEY_      # TouchPad

ou

setkeycodes     e059    $KEY_F22 # TouchPad

salve e reinicie o hotkeysetup.

sudo /etc/init.d/hotkey-setup restart

Caso nao funcione novamente entenda que:

O probrema é que se deve acertar a combinacao do setkeycodes com a $KEY. E eu não sei qual o $KEY.  Para saber
no terminal, digite

xev

e abrirá uma janela em branco.  Posicione o mouse sobre esta janela e aperte a tecla que ativa e
desativa o scroll. No terminal deve aparecer algo do tipo, onde o que interessa está em negrito.

KeyRelease event, serial 31, synthetic NO, window 0x2800001,
    root 0x1a6, subw 0x2800002, time 3768286, (47,38), root:(626,86),
    state 0x0, keycode 249 (keysym 0x0, NoSymbol), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False

Passe esta informacao para mim. Pois de posse do keycode eu procurarei nos arquivso
/usr/share/hotkey-setup/key-constants
/usr/share/acpi-support/key-constants
e alguns outros.

Como ocorre o /etc/init.d/hotkey-setup 
executa um dmidecode.  Este dmidecode identifica o modelo do notebook

manufacturer=`dmidecode --string system-manufacturer`
name=`dmidecode --string system-product-name`
version=`dmidecode --string system-version`

( experimento digitar no terminado sudo dmidecode, terá os resultados acima)

onde maufacturer, name e version serão usados nesta parte do arquivo /etc/init.d/hotkey-setup


    . /usr/share/hotkey-setup/key-constants

    case "$manufacturer" in
        Acer*)
        . /usr/share/hotkey-setup/acer.hk
        case "$name" in
            Aspire\ 16*)
            . /usr/share/hotkey-setup/acer-aspire-1600.hk
            ;;
        esac
        ;;

Veja que há apenas dois modelos para o acer:   Um genérico: ACER e outro específico:  ACER-ASPIRE-1600.hk.
O que fizemos foi acresectar a linha

setkeycodes     e059    $KEY_      # TouchPad

no arquivo

/usr/share/hotkey-setup/acer.hk

para que o hotkey-setup o execute quando a tecla for acionada.

Boa sorte.

Ronai Lisboa
HP: dv2000t dv2699ep

Manoboy

Ronaiml,

Ainda continuo c/ o mesmo problema mesmo depois da segunda ajuda.
Conforme sua solicitação segue o resultado do comando xev c/ o clicar do botão do meio:


KeyRelease event, serial 25, synthetic NO, window 0x3600001,
    root 0x59, subw 0x3600002, time 999272, (58,24), root:(64,74),
    state 0x0, keycode 36 (keysym 0xff0d, Return), same_screen YES,
"   XLookupString gives 1 bytes: (0d) "
    XFilterEvent returns: False

ronaiml

Bom meu chapa. A última tentativa que eu conheco seria

sudo nano /usr/share/hotkey-setup/acer.hk

e acrescentar no final deste arquivo a seguinte linha:
setkeycodes     e059    $BTN_TOUCH      # TouchPad


sudo nano /etc/rc.local
e acrescentar no final deste arquivo a seguinte linha:

setkeycodes     e059    $BTN_TOUCH      # TouchPad

ou

setkeycodes     e059    $KEY_F22 # TouchPad

Lamento em nao poder ajudá-lo mais. 
Ronai Lisboa
HP: dv2000t dv2699ep

Manoboy

Ronaiml,

Obrigado pela ajuda que prestou, embora infelizmente eu não tenha obtido exito.
Fico no aguardo de mais alguem que possa talvez ter essa solução ou até mesmo que verifique o link que passei em posts anteriores, para ver se o que tem la realmente servirá para resolver o problema.
Ou então o jeito é esperar alguma atualização que resolva isso, uma vez que no Ubuntu 7.10 funcionava perfeitamente.


Abraços.