절전 모드 후 Wacom 태블릿이 제거됨

절전 모드 후 Wacom 태블릿이 제거됨

Lenovo 태블릿을 절전 모드(닫기 및 열기 켜짐)에서 깨운 후 태블릿 기능이 작동을 멈춥니다. 오류 메시지는 "태블릿 직렬 Wacom 태블릿(Lenovo X201) 제거됨"입니다(스크린샷:http://dl.dropbox.com/u/2471034/MOS-ASH1.jpeg). 입력 장치의 시스템 설정에 "태블릿 장치가 감지되지 않습니다"라고 표시됩니다. 다시 시작해야만 도움이 되며 터치 스크린이 다시 작동합니다.

이 오류는 Kubuntu 12.04에서 14.04로 업그레이드한 후에만 나타납니다. 12.04에서는 절전 모드에서 깨어난 후 동일한 오류 메시지가 나타 났지만 태블릿이 다시 활성화되어 제대로 작동했다는 또 다른 오류 메시지가 나타났습니다. 이 문제를 어떻게 해결할 수 있는지 아이디어가 있습니까?

답변1

마침내 편리한 해결책을 찾았습니다! 실제로 많은 태블릿 PC 사용자에게 영향을 미치는 (K)ubuntu 14.04의 일부 버그입니다. 버그는 다음과 같이 제출되었습니다.런치패드 버그 #1275416.

거기에는 여러 가지 해결 방법이 제안되어 있습니다. 제공되는 솔루션이 답변에서 Rmano멀지는 않지만 제안된 스크립트가 내 경우에는 작동하지 않습니다. (저는 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(실제로 pm-utils를 사용하는 모든 Linux 시스템)는 디렉터리에 있는 일련의 스크립트를 실행합니다 /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

그리고 스크립트를 루트에서 실행 가능하고 읽을 수 있도록 만드는 것을 기억하십시오.

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

주의사항:

  1. 위의 모든 작업은 루트로 수행되어야 합니다. 따라서 스크립트를 편집하고 권한을 변경하려면 적절한 sudo.

  2. 이것은 정말 해킹입니다. 모듈을 언로드했다가 다시 로드하면 응용 프로그램이 혼란스러울 수 있습니다. 예를 들어, 터치 xournal스크린을 다시 시작하지 않으면 터치스크린을 볼 수 없다는 것은 확실히 혼란스러울 것입니다.

관련 정보