NKRO vs Ghosting: Por que teclados NKRO ainda perdem teclas?
N-key rollover significa que um teclado pode reportar muitos toques simultâneos sem produzir teclas fantasmas, mas não é a mesma garantia de capturar cada tecla em toda condição. O descritor de relatório USB HID limita quantos keycodes um único pacote carrega, então mesmo um teclado anunciado como NKRO completo pode perder teclas em acordes extremos. Ghosting é uma limitação de matriz que o NKRO resolve com isolamento por diodos. Teclas ausentes sob carga simultânea pesada são um problema diferente, geralmente ligado à capacidade do pacote ou a throttling do host, e ambos são verificáveis num teste de teclado no navegador antes de declarar qualquer defeito.
O que o rótulo diz vs. o que realmente acontece
| O que você lê na caixa | O que realmente significa |
|---|---|
| “Full NKRO” | 固件 pode relatar um número muito alto de teclas simultâneas, não necessariamente cada tecla sempre. |
| “Sem ghosting” | Isolamento por diodo genuíno previne teclas fantasmas nas combinações testadas, mas truques de firmware podem não cobrir todos os cenários. |
| “Funciona com qualquer jogo” | O teclado ainda tem um limite de descritor HID e um ciclo de varredura — acordes muito grandes podem ainda perder teclas. |
| “N-key rollover” | N é definido pelo teclado, não pelo protocolo. Um teclado 6KRO tem um teto prático de seis. |
As especificações não são mentiras, mas também não são imagens completas. O rótulo diz o que o teclado foi projetado para lidar; o descritor e o firmware dizem o que ele pode realmente entregar sob qualquer condição.
“NKRO completo” figura entre as especificações de teclado mais anunciadas, tipicamente apresentada como garantia de que você nunca perderá uma tecla. Essa moldura é meio exata. Uma implementação NKRO genuinamente isolada por diodos resolve completamente o ghosting de matriz, mas o rótulo “NKRO” sozinho não prova tal implementação, e nem mesmo uma placa NKRO verdadeira não garante que cada toque seja capturado em todas as condições. O intervalo entre essas duas afirmações gera confusão considerável, uma enxurrada de devoluções desnecessárias e muito debate em fóruns entre pessoas descrevendo problemas diferentes com a mesma palavra.
Ghosting e rollover são dois problemas diferentes
Ghosting: um problema de cabeamento de matriz
Ghosting é um artefato de matriz de hardware. Teclados varrem teclas como uma grade de linhas e colunas em vez de ligar cada chave individualmente, porque ligação individual exigiria número impraticável de pinos no controlador. Numa matriz sem diodos de isolamento, pressionar três teclas específicas pode completar um caminho elétrico que convence o controlador de que uma quarta tecla intocada também está abaixada. Esse registro fantasma é ghosting, e é propriedade do design do circuito, não da firmware.
Rollover: quantas teclas se registram de uma vez
Rollover, abreviado KRO, descreve quantas teclas a placa pode reportar simultaneamente. 2KRO significa duas de uma vez, 6KRO seis, e NKRO completo significa, em princípio, todas elas.
Como o NKRO elimina o ghosting
O NKRO é o conserto para o ghosting, porque implementações corretas colocam um diodo em série com cada chave para que a corrente não flua para trás através de teclas não pressionadas e crie caminhos falsos. Se uma placa implementa NKRO de verdade, pressões fantasma são eletricamente impossíveis. Essa parte da afirmação de marketing é totalmente precisa.
O limite que o NKRO não remove
Aqui está o que o marketing consistentemente omite. Teclados USB HID transmitem keycodes dentro de pacotes de relatório de tamanho fixo cuja estrutura é declarada no descritor HID do dispositivo. O protocolo de boot permite seis teclas comuns mais bits de modificador. O relatório HID completo usado por sistemas modernos permite número similarmente finito de slots de tecla por pacote, variando por implementação de firmware.
Pressione teclas suficientes dentro de uma janela de relatório e o pacote simplesmente não tem onde colocar o excedente. Firmware NKRO empurra esse teto consideravelmente acima de uma placa 6KRO básica, usando técnicas como relatórios em bitmap ou múltiplas interfaces HID lógicas, mas nenhuma firmware pode exceder a capacidade que seu próprio descritor declara ao host.
A consequência é que mesmo um teclado anunciado como NKRO completo pode perder teclas durante acordes extremos, não por ghosting, que os diodos eliminaram, mas porque o pacote de relatório atingiu capacidade. Isso é genuinamente raro no uso normal. É, contudo, o motivo de NKRO não significar infinitas teclas com zero perda sob qualquer carga.
Por que seu teclado gaming ainda perde teclas
Quando uma placa de alto rollover perde teclas na prática, a causa quase sempre é uma destas quatro:
- Estouro de relatório HID durante pressões simultâneas anormalmente grandes, como descrito acima.
- Lag de firmware ou debounce quando a atuação ocorre mais rápido que o ciclo de varredura resolve.
- Afirmação NKRO exagerada, onde a ficha excede a realidade implementada.
- Throttle do host por controlador USB sobrecarregado, hub inadequado ou sistema operacional sob carga alta. Nenhuma dessas está sob controle do teclado.
Distinguir entre elas exige um testador que registre os códigos de evento brutos que o navegador realmente recebeu, porque só assim você vê precisamente quais teclas chegaram e quais nunca. Advinhar pelo feeling do teclado produz diagnóstico confiavelmente errado.
Rollover e polling rate não são a mesma coisa
Essas duas especificações são independentes, e confundi-las leva a comprar o upgrade errado:
- Rollover (KRO) determina quantas teclas podem registrar simultaneamente.
- Polling rate (Hz) determina com que frequência a placa reporta ao computador, tipicamente 125, 250, 500 ou 1000 vezes por segundo.
Uma placa pode oferecer polling 1000Hz com apenas 2KRO, ou NKRO completo a modestos 125Hz. Polling alto faz cada toque registrar mais cedo, enquanto rollover alto deixa mais toques registrar juntos. Se sua queixa é atraso percebido, investigue polling, tempo de frame e latência do sistema. Se sua queixa é teclas sumindo em acordes, investigue rollover e o limite de relatório HID.Tratá-los como uma especificação desperdiça dinheiro com a que você não precisava.
Quanto rollover você realmente precisa?
Ajuste a especificação ao seu uso real em vez da faixa de marketing:
- Digitação de prosa: 6KRO é mais que suficiente. Mesmo digitadores rápidos raramente excedem três ou quatro teclas genuinamente simultâneas nas transições.
- Gaming mainstream: 6KRO cobre confortavelmente duas direções de movimento mais um modificador mais uma habilidade, o que descreve a maioria dos acordes exigentes.
- Jogos de ritmo, estenografia, layouts complexos de macro: NKRO completo justifica seu custo, porque esses casos usam entradas simultâneas grandes como modo normal de operação.
Se um varejista insiste que NKRO completo é essencial independente do caso, essa é uma posição de venda, não um requisito técnico.
Verifique em vez de confiar no rótulo
Nosso testador de teclado mostra um mapa de teclas ao vivo junto a um log de códigos brutos. Pressione um acorde deliberadamente difícil e verifique três condições: cada tecla pressionada acende, nenhuma não pressionada acende, e cada pressionada aparece no log. Então aumente o tamanho do acorde progressivamente até algo falhar, revelando seu limite prático real em vez do número na caixa.
Se teclas somem só pelo hub ou só sob carga alta do sistema, o teclado provavelmente é inocente e a falha está no caminho de conexão ou configuração do host. Teste direto numa porta da placa antes de concluir qualquer coisa sobre o hardware.
O ciclo de escaneamento de matriz: como os teclados leem teclas realmente
Entender como um teclado detecta teclas a nível de hardware clarifica por que o ghosting ocorre, por que os diodos o previnem, e por que a taxa de escaneamento importa junto às especificações de rollover. O processo é mais intrincado que o simples modelo “pressionar uma tecla, enviar um sinal”.
Dentro do teclado, os switches são dispostos em uma grade de linhas e colunas. Cada switch está na interseção de uma linha e uma coluna. O microcontrolador não pode ler todas as teclas simultaneamente; em vez disso, escaneia-as rapidamente ativando uma linha de cada vez e lendo todas as colunas. Um teclado típico com 6 linhas e 18 colunas completa um escaneamento em menos de um milissegundo, significando uma taxa de escaneamento de mais de 1000 vezes por segundo.
Em uma matriz sem diodos de isolamento, pressionar múltiplas teclas pode criar rotas elétricas indesejadas. Se três teclas formam um L na grade, a corrente pode fluir para trás e convencer o controlador de que uma quarta tecla está pressionada. Este é o mecanismo do ghosting.
Adicionar um diodo em série com cada switch resolve isso porque os diodos permitem corrente em apenas uma direção. Sem diodos, o ghosting é fisicamente inevitável para certas combinações.
A taxa de escaneamento também interage com o debounce. Quando um switch mecânico fecha, os contatos ressaltam fisicamente durante alguns milissegundos, variando conforme o design do switch. O controlador deve esperar que o ressalto se assente. Se o ciclo de escaneamento é um milissegundo e a janela de debounce é cinco, o controlador precisa de cinco escaneamentos consecutivos mostrando a tecla pressionada. Este atraso de debounce é um compromisso deliberado.
Esta arquitetura de escaneamento também explica por que um teclado pode alegar altas taxas de sondagem e ainda assim perder teclas. O sondagem determina a rapidez com que as teclas confirmadas são enviadas ao computador, mas o escaneamento e debounce determinam a rapidez com que são detectadas.
Por que os diodos custam dinheiro: a economia de fabricação do NKRO
Se os diodos resolvem o ghosting tão eficazmente, por que nem todos os teclados os incluem? A resposta é econômica.
Cada switch em um teclado NKRO requer um diodo — tipicamente um diodo de sinal pequeno que é muito barato em grandes quantidades (o preço exato varia conforme o fornecedor e o volume). Em um teclado de 87 teclas, o custo dos diodos é inferior a um dólar. A despesa real está em outro lugar: cada diodo deve ser inserido, soldado e testado. Em uma linha automatizada adiciona tempo de processamento; em uma linha manual o custo laboral é substancial.
Para teclados de membrana econômicos, que usam trilha condutiva impressa, adicionar diodos nem sequer é possível sem um redesenho fundamental. Os teclados de membrana alcançam seu baixo preço através de integração extrema: a matriz inteira é impressa de uma só vez.
A segmentação de mercado que isso cria é deliberada. Os teclados mecânicos premium anunciam NKRO. O premium de varejo para NKRO completo é geralmente modesto — comumente alguns dólares até cerca de quinze, variando conforme a marca e o modelo. Os teclados mecânicos econômicos muitas vezes alegam NKRO por USB mas o implementam com truques de firmware que estendem o limite sem exigir diodos. O rótulo “NKRO” não distingue entre NKRO de hardware (com diodos) e NKRO de firmware (sem), então testar continua sendo essencial.
Para o comprador, a conclusão prática é tratar as afirmações de NKRO como ponto de partida, não garantia. Um teclado anunciado como NKRO pode ter diodos ou não. A única forma definitiva de saber é testar com acordes progressivamente maiores e observar se aparecem teclas fantasma.
Deveria comprar NKRO?
NKRO isolado por diodos verdadeiro acaba com o ghosting de matriz, mas o rótulo “NKRO” sozinho não prova tal implementação, e cada placa ainda tem um teto prático de toques simultâneos definido pelo seu descritor HID e firmware. Interprete “NKRO completo” como sem teclas fantasmas e capacidade muito alta de toques simultâneos na prática, em vez de literalmente toda tecla, sempre, sob qualquer carga concebível. Teste sua placa específica antes de confiar no rótulo, distinga problemas de rollover de problemas de polling pois eles exigem remédios diferentes, e investigue firmware, debounce e manuseio de entrada do sistema operacional antes de assumir um problema de hub ou largura de banda.