Pen tablet / MousePen não funciona no Ubuntu

2

Meu problema é quase o mesmo de aqui & amp; bug 1391260

Genius MousePen i608X não funciona no Ubuntu

Meu sistema operacional é o Ubuntu 14.10. O ponteiro se move, mas nenhum botão está sentindo.

Parece compartilhar a mesma magia HID do outro tablets deste vendedor

Posso ter um procedimento passo a passo para baixar e instalar o arquivo de patch?

Editar: Depois que eu atualizei a versão do kernel do Linux para o 3.18.3-031803-genérico, o Genius MousePen i608X está funcionando bem.

    
por dhiya 08.11.2014 / 04:34

2 respostas

2

Este pode não ser o procedimento correto, mas consegui fazê-lo funcionar. Vou postar e você pode fazer isso se estiver se sentindo aventureiro.

Existem duas maneiras de fazer isso, mas não posso garantir que elas funcionem para você simplesmente porque ainda me considero um novato e fiz isso seguindo os guias de outras pessoas.

AVISO: Isso inclui a compilação de um kernel personalizado. Certifique-se de ter pelo menos um ou mais kernels mais antigos instalados para o caso de algo dar errado!

Primeira maneira (fácil):

  1. Faça o download do código-fonte do kernel em The Linux Kernel Archives . Basta clicar no botão "Último kernel estável".
  2. Extraia o arquivo: abra o terminal e navegue até o local onde você baixou o kernel e execute este comando: tar -xvJf linux-"KernelVersion".tar.xz (substitua "KernelVersion" pelo número da versão do kernel baixado).
  3. Isto irá criar uma nova pasta normalmente chamada linux- "KernelVersion" (novamente, este é o número da versão do kernel baixado). Digite essa pasta e navegue para os drivers > escondeu. Agora você deve estar em /path/to/download/linux-"KernelVersion"/drivers/hid .
  4. Edite o arquivo hid-ids.h com seu editor de texto favorito: gedit hid-ids.h ou nano hid-ids.h ou kate hid-ids.h
  5. No editor de texto, navegue até a linha que diz (deve estar na linha 520-530):

    % bl0ck_qu0te%
  6. Edite a linha para que fique assim:

    % bl0ck_qu0te%
  7. Salve e saia. Agora é hora de compilar o kernel.

Você pode encontrar muitos guias para compilar o kernel online, então eu acho que seria melhor encaminhá-lo para um do que escrever o guia eu mesmo. Eu achei este artigo mais útil. Leia o artigo com atenção e tenha cuidado com a configuração.

Com essa correção, tudo funcionou perfeitamente, a única coisa que me incomodava era que xinput listava vários dispositivos Genius MousePen i608X.

Segunda maneira (difícil):

Desta forma, é mais difícil no sentido de que você terá que editar mais alguns arquivos. Este é o caminho descrito no patch que você mencionou.

  1. Siga as etapas 1 a 3 da primeira forma.
  2. Edite o arquivo hid-core.c da seguinte forma:

Navegue até o trecho de código que se parece com isto: { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_GENIUS_GILA_GAMING_MOUSE) }, { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_GENIUS_MANTICORE) }, { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_GENIUS_GX_IMPERATOR) }, { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_ERGO_525V) }, { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_EASYPEN_I405X) }, { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_MOUSEPEN_I608X) }, { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_EASYPEN_M610X) },

Altere para isto: { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_GENIUS_GILA_GAMING_MOUSE) }, { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_GENIUS_MANTICORE) }, { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_GENIUS_GX_IMPERATOR) }, { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_ERGO_525V) }, { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_EASYPEN_I405X) }, { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_MOUSEPEN_I608X) }, { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_MOUSEPEN_I608X_2) }, //add this { HID_USB_DEVICE(USB_VENDOR_ID_KYE, USB_DEVICE_ID_KYE_EASYPEN_M610X) },

  1. Edite o hid-ids.h de forma semelhante à primeira, mas em vez de editar essa linha, adicione esta linha depois:
% bl0ck_qu0te%
  1. Edite o arquivo hid-kye.c da seguinte forma:

Encontre este trecho de código:

/*
 * See EasyPen M610X description, device and HID report descriptors at
 * http://sf.net/apps/mediawiki/digimend/?title=KYE_EasyPen_M610X
 */

e antes disso, adicione isto:

% bl0ck_qu0te%
  1. No mesmo arquivo, encontre esse trecho de código:
% bl0ck_qu0te%

e adicione isso depois:

% bl0ck_qu0te%
  1. No mesmo arquivo, encontre esse trecho de código:
% bl0ck_qu0te%

e mude para isso:

% bl0ck_qu0te%
  1. No mesmo arquivo, encontre esse trecho de código:
% bl0ck_qu0te%

e mude para isso:

% bl0ck_qu0te%
  1. O último arquivo a ser editado está no diretório /path/to/download/linux-"KernelVersion"/drivers/hid/usbhid . É chamado hid-quirks.c . Dentro dela, encontre este pedaço de código:

    % bl0ck_qu0te%

    e mude para isso:

% bl0ck_qu0te%
  1. Lembre-se de salvar todos os arquivos após a edição. Agora você pode compilar o kernel como mencionado acima.

Mais uma vez, essa pode não ser a maneira correta de fazer isso, mas como não encontrei o tutorial como fazê-lo corretamente, tive que fazer isso manualmente. Funcionou para mim, mas, novamente, não posso garantir que funcionará para você. Espero que isso ajude você.

    
por Ivanwah 19.11.2014 / 20:43
2

Depois de atualizar a versão do kernel do Linux para o 3.18.3-031803-genérico, o Genius MousePen i608X funciona bem

    
por dhiya 21.11.2014 / 15:21