Планшет Wacom извлечен из спящего режима

Планшет Wacom извлечен из спящего режима

Функционал планшета перестает работать после того, как я вывожу свой Lenovo Tablet из спящего режима (закрытие и открытие горят). Сообщение об ошибке: "Tablet Serial Wacom Tablet (Lenovo X201) removed" (скриншот:http://dl.dropbox.com/u/2471034/MOS-ASH1.jpeg). В настройках системы в разделе устройств ввода указано "Планшетное устройство не обнаружено". Помогает только перезагрузка и сенсорный экран снова работает.

Эта ошибка появилась только после обновления с Kubuntu 12.04 до 14.04. В 12.04 то же самое сообщение об ошибке появилось после выхода из спящего режима, но затем последовало другое, что планшет снова активировался и работал нормально. Есть идеи, как это можно исправить?

решение1

Наконец-то я нашел удобное решение! Это действительно какая-то ошибка в (K)ubuntu 14.04, которая затрагивает многих пользователей планшетных ПК. Ошибка была зарегистрирована какОшибка Launchpad #1275416.

Там предлагается ряд обходных решений. Предлагаемое решениев этом ответе Рманоне так уж и далеко, но предложенный сценарий в моем случае просто не работает. (Я использую планшет Lenovo ThinkPad X201.)

Сценарий отпост № 21отчета об ошибке, а также команда изпост № 22, однако, работает:

  1. Создайте файл /etc/pm/sleep.d/20_x200-wacom-workaroundсо следующим содержимым:

    #!/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. Сделайте этот файл исполняемым, чтобы обеспечить его запуск при возобновлении работы:

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

После выхода из спящего режима уведомление о том, что планшет Wacom удален, теперь сразу же сопровождается другим уведомлением о том, что планшет Wacom повторно активирован… точно так же, как это было в (K)ubuntu 12.04. Проблема решена.

решение2

Во время фаз приостановки и возобновления работы Ubuntu (на самом деле, каждая система Linux, использующая pm-utils) выполняет ряд скриптов, расположенных в каталоге /etc/pm/sleep.d/; они выполняются в алфавитном порядке --- от 0..9A..Z во время приостановки и наоборот во время возобновления работы. Традиционно все скрипты начинаются с номера (00,01,02...), и также существует условное значение нумерации. Подробнее о действительно хорошо сделанная страница на сайте документации Arch Linux. Скрипты вызываются с аргументом, который может быть «приостановить», «возобновить», «спящий режим», «разморозить», чтобы они могли знать, почему они вызываются.

Поэтому, если вы хотите выгружать и перезагружать модуль Wacom при приостановке и возобновлении работы соответственно, вы можете добавить скрипт, например, /etc/pm/sleep.d/04_myscriptсо следующим содержимым:

#!/bin/sh

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

И не забудьте сделать скрипт исполняемым и доступным для чтения пользователю root, с помощью

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

Предостережения:

  1. все вышеперечисленное должно быть выполнено от имени пользователя root; поэтому для редактирования скрипта и изменения его прав доступа вам необходимо добавить соответствующий файл sudo.

  2. это действительно хак --- выгрузка и повторная загрузка модуля может сбить с толку приложения. Например, это определенно смутит, xournalчто не сможет увидеть сенсорный экран после tat, если вы не перезапустите его.

Связанный контент