HardZone – ¿Cómo hacen el teclado para saber el orden en que pulsamos las teclas?

Como se suele decir, «si peinas canas» recordarás cómo eran los teclados antiguos y los problemas que daban por diversos factores. La tecnología ha evolucionado mucho y ha solventado todos los problemas en este aspecto, centrando todo ahora en el rendimiento y la calidad general, así como pequeñas innovaciones, pero, ¿cómo lo hicieron? ¿cómo un teclado logra evitar un efecto como el Ghosting? Veámoslo.

Primero una breve introducción sobre el efecto Ghosting para comprender cómo los teclados consiguen evitarlo en su totalidad en la gran mayoría de modelos. El Ghosting en un teclado es un efecto que produce el no registro en el teclado de la pulsación de teclas cuando la matriz del mismo alcanza un número determinado de ellas al pulsarse al mismo tiempo. ¿Cómo evita un teclado esto?

El efecto Ghosting en un teclado y su solución

Si el teclado por norma tiene un límite de teclas pulsadas y pulsamos más, estas no se registrarán y por lo tanto son calificadas de «fantasmas», de ahí el nombre al término. Pero como en todo, hay un límite para el antes y otro para el después, donde el segundo es el que varía.

En la mayoría de teclados solo se puede pulsar un máximo de 6 teclas al mismo tiempo porque cada tecla representa un byte, pero el protocolo de entrada y el HID de un teclado solo admite 8 bytes como tal. La respuesta a los dos bytes que faltan vienen por la reserva de las keycaps modificadas para funciones especiales o FN más las teclas de reserva como tal, específicas para tareas determinadas como el Control, por ejemplo.

Por lo tanto y ya sabiendo esto, la solución es lanzar una tecnología que no tenga estas limitaciones, pero ¿cómo hacerlo si tienes que regirte por los mismos protocolos y registros totales? La respuesta es fácil e ingeniosa al mismo tiempo.

Protocolo de inicio y protocolo de informe

La solución llegó con NKRO, una tecnología que aumentaba el número de bytes disponibles por cada registro hasta 64 gracias a unir los protocolos de HID para sumar un bus mayor con el protocolo de inicio y de informe.

Para entenderlo fácilmente, ahora cada tecla es escaneada de forma independiente sin tener un máximo como tal, aunque realmente sí que lo hay, 64, de las cuales dos se siguen guardando para las tareas ya mencionadas. Pero entonces, ¿cómo vamos a poder pulsar todas las teclas si estas son más de 62 en cualquier teclado moderno y de formato normal?

Más ingenio todavía aquí, puesto que para saltar esta limitación los teclados incluyen pequeños procesadores ARM que lo que hacen es emular dos teclados HID, repartiendo la matriz del mismo en dos partes bien asignadas, de manera que si es necesario pulsaciones superiores por la razón que sea, el procesador trabaja y emula dos teclados para el mismo USB, permitiendo la pulsación completa.

Como vemos, estos pequeños procesadores ARM de 32 bits sumados a la memoria del sistema hacen de los teclado actuales pequeños «PC» que son realmente potentes dadas las numerosas cantidades de opciones que tienen hoy en día, mucho más allá de sistemas RGB o teclas.

The post ¿Cómo hacen el teclado para saber el orden en que pulsamos las teclas? appeared first on HardZone.