É possível reprogramar um teclado USB?

1

Comprei recentemente um pequeno dispositivo USB que funciona como um "dispositivo de teclado HID" (teclado USB padrão)

Tem apenas uma chave, que está ligada a uma minúscula 'b'.

Eu quero que ele seja recuperado para outra coisa, e várias opções vêm à mente:

  1. Reconexão de software. Fácil e simples, mas não quero configurar cada máquina conecto o dispositivo a.

  2. O dispositivo vem com um driver do Windows. Isso tem dois inconvenientes: Não há suporte para Linux / BSD / qualquer coisa, e o driver PODE ser malware (considerando a origem do dispositivo, é realista possibilidade). No entanto, este driver pode permitir que o dispositivo seja rebote.

  3. Escreva meu próprio driver. Tem o inconveniente de também ter que implantá-lo em todos os lugares, mas pode ser divertido de fazer:)

  4. Reprograme o dispositivo.

Gostaria de evitar as opções 1 e 2. E certamente gostaria de fazer 4, mas não sei se é possível reprogramar um dispositivo de teclado USB para gerar chaves diferentes (pode ser simples, já que os dispositivos tem apenas 1 tecla).

ESCLARECIMENTO: O dispositivo funciona em todas as plataformas, como acontece com um teclado USB padrão. No entanto, o CD incluído possui um driver personalizado que pode ser configurado para traduzir a chave para algo que o usuário seleciona

    
por Imanol Barba Sabariego 04.10.2016 / 09:38

3 respostas

1

Por que você não constrói o seu? Basta pegar um teclado antigo que não esteja usando, rastrear as teclas e reconstruir apenas com a tecla que deseja usar! Algumas coisas assim:

Teclado de uma tecla

Teclado USB

Ou, você pode ir ainda mais longe e usar um micro controlador e alguns switches para enviar o sinal para qualquer tecla que você queira usar e escrever seu próprio driver para o micro controlador. Algo assim:

KEY ---> Microcontroler ---> Data Bus ---> Keyboard electronic board

edit : A reprogramação não valeria a pena. Levará você para sempre por um pedaço de $ 2 de eletrônicos. Por que a letra 'b'? o fabricante disse alguma coisa sobre isso? Você pode mudar esta carta usando o Driver? O chip do teclado em teoria é o que envia a string 'b' usando RS232. Que tal um gravador de chaves USB físico?

    
por 04.10.2016 / 10:26
0

Um software de religação é a solução mais sensata aqui. Confira o autohotkey. Ele tem uma linguagem de script inteira e pode fazer algumas coisas realmente interessantes com seu teclado de uma só tecla (mesmo LONG - que eu posso imaginar, tornando-se MUITO estranho e divertido): " link "

    
por 04.10.2016 / 10:34
0

Se houver um driver personalizado para o Windows que permita a reprogramação do dispositivo, instale o usbsnoop ou um software semelhante, capture o tráfego USB enquanto religando-o a chaves diferentes, descubra o protocolo e implemente sua própria ferramenta de religação ou apenas repita o tráfego em Linux.

Se o driver personalizado do Windows apenas interceptar o evento principal e substituir outra coisa, você poderá fazer o mesmo no Linux; aqui ou aqui .

Quanto a (4), eu diria que há algum tipo de microcontrolador no dispositivo e, em princípio, você deve ser capaz de reprogramá-lo com as ferramentas certas, mas haverá um esforço substancial para fazer engenharia reversa primeiro.

    
por 06.10.2016 / 18:18