¿Alguna forma sencilla de medir el lag de un teclado?

Buenas gente, pues esa es mi pregunta. Cuando no viene especificado por el fabricante o se trata de modelos que ponte ahora a buscarlos, ¿hay algún software que permite medirlo de forma medianamente fiable?

Sé que la gran dificultad es que un software por si solo no puede saber cuándo has pulsado físicamente la tecla, entiendo que debería ser algo que trabaje conjuntamente con la grabación del sonido del click para calcular el lapso entre el click del teclado y cuándo se registra la pulsación.

¿Hay algún software que trabaje así? Gracias.
No hay nada parecido, tendrías que ir a algo DIY

Lo del sonido no funcionaría, porque el punto de actuación (cuando la tecla registra la pulsación) está aproximadamente en la mitad de recorrido, mientras que el "click" de una tecla lo vas a oir cuando llegas al final y el mecanismo golpea contra el fondo.

Luego hay otras consideraciones, ya que hablamos de tiempo de respuesta de milisegundos, tanto la propia velocidad del sonido (330m/s, luego cada milisegundo el sonido recorre 33cm) como la velocidad de respuesta del micrófono que recoge ese sonido serían factores a tener en cuenta. El ordenador por sí solo no tiene forma de detectar ese retardo.

En cualquier caso, los teclados medianamente decentes suelen tener un input lag que es prácticamente 0, solamente limitado por el polling rate de la conexión USB (que suelen ser 1000Hz, con alguna excepción que pueden ser 4000 o 8000), en todos estos casos el input lag máximo suele ser en torno a 1/1000 segundos (1ms), 1/4000 o 1/8000, respectivamente.

Saludos
@Pollonidas Esa es otra variable, el polling rate, ¿donde se consulta? ¿Se puede modificar o es fijo al SO?

Gracias por la respuesta.
@AxelStone El polling rate lo impone la conexión USB, en modo Full-Speed funciona a 1Khz (paquetes cada 1000μs=1ms) que es la misma velocidad que USB1.x, como aquí el ancho de banda no es especialmente relevante es a la frecuencia que trabajan la mayoría de periféricos. En modo High Speed (el modo nativo de USB2.0) la frecuencia es 8Khz y el intervalo entre paquetes son 125μs

Algunos teclados baratos (o custom orientados a escribir) trabajan a menos de 1khz, pero lo normal en cualquier teclado que se defina a sí mismo como "gaming", de marca conocida, y de más de 40€ de precio tenga como mínimo 1Khz de polling rate. Si tiene más de 1Khz descuida que te lo dirán a bombo y platillo en el márketing.

¿Cómo saber el polling rate? El sistema operativo está lógicamente al tanto de esta velocidad, en windows se puede verificar con una aplicación bastante antigua llamada USBView, pero no te recomiendo este método, te recomiendo utilizar la aplicación Keyboard-inspector que explican cómo utilizar en este vídeo: https://www.youtube.com/watch?v=2xG_8zuIS8Q (en los juegos de ritmo cuando se juega a un nivel muy alto es una desventaja considerable utilizar un teclado de menos de 1khz de polling rate)

Este es el git para descargarla, a mí al menos me ha dado un falso positivo de virus, así que me he bajado el fuente y lo he compilado yo, dándome el mismo falso positivo, así que mi opinión es que es de fiar: https://github.com/mat1jaczyyy/Keyboard ... r/releases

En los casos que se puede modificar, se hace desde el propio software del teclado (o ratón, que ocurre lo mismo) que suele venir incluido con los drivers. En el resto de casos no se puede modificar, ya que es el teclado el que fija ese valor.

Saludos
@Pollonidas Vaya, no me fio de el falso positivo. En cualquier caso si como dices cualquier teclado gaming que se precio tiene un polling mínimo de 1khz, con eso me va sobrado.

¡Gracias por la info! [oki]
4 respuestas