Existe um motivo para desativar a sobreposição de teclas N?

20

Lendo sobre os recursos de um teclado Das , vejo o seguinte:

Jogadores e datilógrafos adoram saber que o Das Keyboard 4 suporta NKRO (over-key rollover) por USB. Não é mais necessário usar um adaptador PS2. Basta pressionar Shift + Mudo para alternar entre NKRO.

Por que o teclado tem a capacidade de alternar o NKRO? Existe alguma razão para você não querer o NKRO?

Will Eddins
fonte

Respostas:

15

O motivo parece ser o suporte mais antigo à placa-mãe.

Entrei em contato com o Das Keyboard, e esta foi a resposta que eles deram:

Obrigado por tomar o tempo para entrar em contato conosco.

O motivo da alternância do NKRO é porque algumas placas-mãe mais antigas não "entendem" ou "obtêm" o NKRO por USB. É um pouco mais complicado do que isso, mas é a maneira mais simples de colocar isso - para que usuários com placas-mãe mais antigas possam usar o teclado através de USB sem problemas. Obviamente, eles poderiam usar um adaptador PS / 2 para obter o NKRO, mas, como o mundo atualmente tem tudo a ver com USB, nem todos teriam acesso a uma porta PS / 2 em sua máquina.

Will Eddins
fonte
4

Além das placas-mãe antigas, a maioria dos switches KVM não funciona com teclados NKRO.

Prashanth Chandra
fonte
0

Há uma longa discussão em https://geekhack.org/index.php?topic=37567.0 sobre os motivos técnicos pelos quais o NKRO às vezes causa problemas. O TLDR desta discussão é:

  • É mais provável que o NKRO cause problemas nos BIOS e nos comutadores KVM. Esses problemas são causados ​​por medidas de redução de custos, em vez de serem inerentes à NKRO.
  • O 6KRO é adequado para qualquer uso comum, incluindo a maioria dos jogos.

O comentário mais esclarecedor nesse tópico de discussão é o seguinte:

Os padrões USB não dizem nada específico sobre teclados, mouses etc., em qualquer versão.

É o padrão HID que faz. A estrutura de relatório de 6 teclas e modificadores foi realmente realmente destinada a facilitar a vida do BIOS (para que eles não precisassem analisar os descritores de relatório), mas tornou-se um 'padrão' de fato para teclados, independentemente. No entanto, o padrão HID permite todos os tipos de relatórios diferentes, e todos os principais sistemas operacionais o suportam totalmente, portanto, não há necessidade de drivers extras.

A outra limitação é que um pacote de dados USB de baixa velocidade pode ter no máximo 8 bytes. Um relatório pode ser maior, mas isso começa a demorar bastante tempo para ser enviado. O padrão USB permite apenas que um dispositivo de baixa velocidade envie um pacote a cada 10ms (por ponto final). O sistema operacional normalmente estimula até 8ms, ou seja, 125Hz (sem hacks). Levar até 16ms para pressionar a tecla do host seria uma porcaria! Portanto, tivemos uma fase de fabricantes tentando obter mais proveito dos chips de baixa velocidade do que eles realmente podem suportar, com truques como vários pontos de extremidade etc. :(

O USB de alta velocidade libera essas limitações. Cada pacote pode ter 64 bytes e pode ser enviado a cada 1 ms (novamente, por ponto de extremidade). Isso permite que o padrão HID seja usado em todo o seu efeito.

Finalmente, o NKRO não é feito apenas para o efeito. Fazer NKRO completo requer apenas um bit por chave, em vez de um byte, e não precisa tratar os modificadores como um caso especial. Assim, um teclado pode enviar, por exemplo, 104 teclas em apenas 13 bytes - usando o outro esquema, 13 bytes gerenciam apenas 11KRO (11 teclas + modificadores + um byte reservado). Claro, ainda há muitas chaves, mas é um método muito menos elegante (e ainda 'não-6KRO', portanto ainda pode ser incompatível com hosts idiotas).

Covarde anônimo
fonte