Configure o controle remoto Zydacron

1

Eu encontrei um antigo controle remoto infravermelho com o receptor conectado como USB. Eu conecto na minha caixa de Linux (Mint LMDE kernel 3.2.0-4-amd64). É reconhecido com lsusb como "Controle Remoto HID Zydacron".

Funciona ... quase ... posso alterar o volume, iniciar / parar o media player, escolher a faixa na playlist.

Mas algumas teclas parecem não reagir (não configuradas).

  • Como pode configurar todas as chaves?
  • Devo instalar o "lirc"?
por ericc 09.04.2013 / 21:00

2 respostas

1

Então eu tenho que voltar a isso porque eu encontrei uma solução "melhor" (IMHO) sem o LIRC!

Como eu disse, a primeira vez que conectei o receptor USB, quase todos os botões do controle remoto estavam funcionando, sem nenhum outro software ou qualquer configuração.

Por outro conselho (não apenas aqui), eu instalei o LIRC e plugins que eu encontrei para o software que eu uso com mais frequência.

Depois de algumas dificuldades, configurei o LIRC no sentido de que o computador estava recebendo scancode e eles foram traduzidos. Depois disso, eu comecei o "Totem" e ative o plugin LIRC ... e nada funciona mais !!! :-( mesmo não a chave que estava trabalhando antes

A mesma coisa com o Banshee ou o VLC!

No entanto, quando fecho o aplicativo ou desabilito o plugin LIRC, minha chave funciona novamente e posso definir o volume, iniciar, parar e pausar qualquer mp3 ou vídeo ... etc.

Como eu entendi, fazer o controle remoto ser reconhecido pelo LIRC não é suficiente, eu tive que escrever um arquivo de configuração para cada programa que eu gostaria de usar ... mesmo para as teclas que estavam trabalhando sem o LIRC. Parece loucura ... sem falar sobre o fato de que encontrar ações LIRC aceitas por cada plugin parece bastante difícil e alguns softwares (como o Banshee por exemplo) não oferecem mais possibilidades do que aquelas que eu já tive sem LIRC (ainda menos).

Então eu procurei ...

Primeiro, desde o kernel 2.6.36, os drivers do LIRC são integrados. Esta é a razão pela qual, quando eu configurei o LIRC, eu tive que usar o driver "devinput".

Desde esta versão, todos os controles remotos são reconhecidos como teclado externo! Isso explica também por que a maioria das chaves estava funcionando fora da caixa. Então, como é um teclado, o que temos que fazer é "remapear" a chave que não funciona em outro código / ação. É assim:

Comece fazendo um "lsusb" e identifique o seu controle remoto:

Bus 006 Device 002: ID 13ec:0006 Zydacron HID Remote Control 

Você deve anotar o ID 13ec: 0006 , será útil.

Agora exiba o conteúdo de / dev / input / by-id em formato longo.

ls -l /dev/input/by-id/
lrwxrwxrwx 1 root root 10 Apr 15 19:27 usb-13ec_0006-event-kbd -> ../event10 

Você encontra a linha correta graças ao ID e depois ao evento associado a ela! Agora, com esta informação, vamos tentar ler do remoto

sudo /lib/udev/keymap -i input/event10

Quando você pressiona uma tecla no controle remoto, você deve ver o código de verificação e o código de chave associado atualmente:

scan code: 0xC00CD   key code: playpause
scan code: 0x70028   key code: enter
scan code: 0x7002A   key code: backspace
scan code: 0x7001E   key code: 1
scan code: 0x70022   key code: 5

Cuidado com o fato de que algumas teclas podem retornar um código de acesso, mas este código de acesso pode não ser reconhecido pelo gerenciador de janelas (no meu caso, o Gnome3). Ou o código de acesso não está correto. No meu caso, tive que remapear o número da chave para o teclado numérico (teclado da Bélgica) e a tecla especial (áudio, vídeo, DVD, ...) para uma tecla de função não usada.

Agora vamos escrever nosso arquivo de mapa de teclado. Você pode usar qualquer nome, no meu caso, eu chamo de 'zydacron'

sudo vi /lib/udev/keymaps/zydacron

Já existem vários arquivos nesta pasta. O formato é muito simples:

<scan code> <keycode> <# comment eventually>

exemplo:

0x70027 kp0
0x7001E kp1
0x7001F kp2
0xC0047 f13 # music
0xC0049 f14 # photo
0xC004A f15 # video
0xC00CD playpause # Play/Pause

Você pode colocar apenas as chaves que precisam ser remapeadas! Você encontrará nesta página a lista oficial de todos os códigos-chave . Novamente, isso não significa que todo código de chave nesta lista é suportado pelo seu gerenciador de janelas, você terá que testar para ter certeza.

Quando o arquivo estiver pronto, podemos testá-lo com:

sudo /lib/udev/keymap input/event10 /lib/udev/keymaps/zydacron

Se algo não funcionar, você terá que tentar outro código de acesso. E então refaça o mapeamento.

Quando tudo funcionar como você espera, vamos torná-lo permanente. Edite o arquivo /lib/udev/rules.d/95-keymap.rules

sudo vi /lib/udev/rules.d/95-keymap.rules

No arquivo após LABEL="keyboard_usbcheck" mas antes de GOTO="keyboard_end" adicione a seguinte linha:

ENV{ID_VENDOR_ID}=="13ec", ENV{ID_MODEL_ID}=="0006", RUN+="keymap $name zydacron" 

Você pode reconhecer o ID do fornecedor e o ID do modelo como as 2 partes do ID encontrado com lsusb e também o nome do meu arquivo. Adapte-o aos seus próprios valores.

Reinicie o processo do udev:

sudo service udev restart

(ou reinicie o seu computador), e você está feito.

Agora, cada vez que você conecta o seu receptor, não importa em qual porta USB nem o número do evento dado pelo sistema, o mapeamento será feito automaticamente

Pouca dica: eu mapeei uma chave como "tab" e outra como "F10", muito útil no Banshee, para "pular" na subjanela e abrir o menu principal.

Espero que ajude

    
por 16.04.2013 / 20:00
0

Eu definitivamente instalaria o lirc . Você pode consultar a lista de controles remotos suportados aqui . Se o seu controle remoto não for suportado diretamente, nem tudo está perdido.

If you can't find your remote control here it does not mean that your remote control is not supported but there is no config file for it yet. All remote controls that are supported by learning remote controls, i.e. almost any, should also work with LIRC. Please send me your config file if you add a new remote control.

Eu já fiz isso antes, a maioria dos controles remotos funcionará com o lirc. Você só precisa ajustar um arquivo de configuração para que todas as chaves funcionem como deveriam. É bastante simples, consulte os Howtos para obter mais informações .

    
por 09.04.2013 / 21:23