Tablet Wacom removido após modo de suspensão

Tablet Wacom removido após modo de suspensão

A funcionalidade do tablet para de funcionar depois que eu desperto meu tablet Lenovo do modo de suspensão (fechando e abrindo acesos). A mensagem de erro é "Tablet Serial Wacom Tablet (Lenovo X201) removido" (captura de tela:http://dl.dropbox.com/u/2471034/MOS-ASH1.jpeg). Nas configurações do sistema em dispositivos de entrada, afirma que "Nenhum tablet foi detectado". Apenas reiniciar ajuda e a tela sensível ao toque funciona novamente.

Este erro apareceu somente após a atualização do Kubuntu 12.04 para 14.04. Em 12.04 a mesma mensagem de erro apareceu após sair do modo de suspensão, mas depois seguiu-se outra informando que o tablet foi ativado novamente e funcionou corretamente. Alguma idéia de como isso poderia ser corrigido?

Responder1

Finalmente, encontrei uma solução conveniente! Na verdade, é algum bug no (K) Ubuntu 14.04 que afeta muitos usuários de tablet PC. O bug foi arquivado comoBug da barra de lançamento nº 1275416.

Várias soluções alternativas são sugeridas lá. A solução oferecidanesta resposta de Rmanonão está longe, mas o script sugerido simplesmente não funciona no meu caso. (Estou usando um tablet Lenovo ThinkPad X201.)

O roteiro depostar não. 21do relatório de bug, mais o comando depostar não. 22, no entanto, funciona:

  1. Crie um arquivo /etc/pm/sleep.d/20_x200-wacom-workaroundcom este conteúdo:

    #!/bin/sh
    
    reenable_touch()
    {
      for idfile in /sys/class/tty/ttyS*/device/id; do
        if test -f $idfile; then
          if grep -q '^WACf00c$' $idfile; then
            devicefile=`echo "$idfile" | \
              sed -n \
                's/^\/sys\/class\/tty\/ttyS\([0-9]\+\)\/.*$/\/dev\/ttyS\1/p'`
            if test -n $devicefile; then
              inputattach --daemon -w8001 $devicefile
              break
            fi
          fi
        fi
      done
    }
    
    case $1 in
      resume|thaw)
        reenable_touch
        ;;
    esac
    
  2. Torne esse arquivo executável para garantir que ele possa ser executado ao retomar:

    sudo chmod +x /etc/pm/sleep.d/20_x200-wacom-workaround
    

Depois de sair do modo de suspensão, a notificação de que o tablet Wacom foi removido agora é seguida por outra notificação informando que o tablet Wacom foi reativado… exatamente como costumava ser no (K)ubuntu 12.04 também. Problema resolvido.

Responder2

Durante as fases de suspensão e retomada, o Ubuntu (na verdade, todo sistema Linux que usa pm-utils) executa uma série de scripts localizados no diretório /etc/pm/sleep.d/; eles são executados em ordem alfabética --- de 0..9A..Z durante a suspensão e vice-versa durante a retomada. Convencionalmente, todos os scripts começam com um número (00,01,02...) e também existe um significado convencional para a numeração. Mais informações em a página realmente bem feita no site de documentos do Arch Linux. Os scripts são chamados com um argumento que pode ser "suspender", "retomar", "hibernar", "descongelar" para que possam saber por que são chamados.

Portanto, se você deseja descarregar e recarregar o módulo wacom na suspensão e na retomada, respectivamente, você pode adicionar um script --- por exemplo, /etc/pm/sleep.d/04_myscriptcom o conteúdo:

#!/bin/sh

case "$1" in
        resume|thaw)
            modprobe wacom
        ;;
        suspend|hibernate)
            rmmod wacom
        ;;
esac
exit 0

E lembre-se de tornar o script executável e legível pelo root, com

chmod 755 /etc/pm/sleep.d/04_myscript

Ressalvas:

  1. todos os itens acima devem ser feitos como root; portanto, para editar o script e alterar sua permissão, você deve adicionar o arquivo sudo.

  2. isso é realmente um hack --- descarregar e recarregar o módulo pode confundir os aplicativos. Por exemplo, definitivamente ficará confuso xournalse você não conseguir ver a tela sensível ao toque após a tatuagem, a menos que você a reinicie.

informação relacionada