Функционал планшета перестает работать после того, как я вывожу свой 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, однако, работает:
Создайте файл
/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
Сделайте этот файл исполняемым, чтобы обеспечить его запуск при возобновлении работы:
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
Предостережения:
все вышеперечисленное должно быть выполнено от имени пользователя root; поэтому для редактирования скрипта и изменения его прав доступа вам необходимо добавить соответствующий файл
sudo
.это действительно хак --- выгрузка и повторная загрузка модуля может сбить с толку приложения. Например, это определенно смутит,
xournal
что не сможет увидеть сенсорный экран после tat, если вы не перезапустите его.