5 claviers mécaniques : le bonheur pour vos mains

Anti-Ghosting : entre réalité et marketing

Le ghosting se manifeste par des raccourcis claviers qui ne fonctionnent plus lorsque l’on utilise une combinaison de touches en simultané. C’est un problème purement logique pour les claviers qui emploient une matrice d’interrupteurs en lignes/colonnes : certaines touches semblent ne plus marcher, répondent lentement voir fonctionnent sans avoir été sollicitées.

Prenons un exemple : on fait un mouvement oblique de A vers W (sur un clavier QWERTY) tout en voulant utiliser Q, qui ne répond pas ou bien se trouve reconnu comme un S. Soit les touches semblent inopérantes, soit on se retrouve avec des commandes indésirables.

Les claviers dits anti-ghosting peuvent aussi être touchés !

Un clavier a beau être vendu comme étant anti-ghosting, cela ne veut pas dire pour autant que toutes les touches marcheront en simultané sans problèmes. Bien souvent, ce ne sont que certaines touches qui sont gérées par l’anti-ghosting (le block WASD et/ou les touches directionnelles par exemple). Ce choix est tout simplement plus simple et moins couteux à mettre en œuvre, sachant qu’une majorité d’utilisateurs s’en contentera. Ainsi, les problèmes commencent dès que l’on utilise d’autres combinaisons que les blocs protégés.

Pourquoi les commandes se perdent ?

On identifie trois causes : incapacité matérielle à gérer les commandes (ghosting), insuffisance logicielle pour prendre en compte les frappes simultanées ou encore limites de l’interface (USB vs PS/2).

Pourquoi un clavier est-il incapable de gérer certaines combinaisons ?

Le problème tient au fait que les contacts d’un clavier ne sont pas pris en compte individuellement, mais plutôt dans leur configuration de commutation suivant une sorte de matrice en lignes et colonnes (cf. schéma ci-dessous). Ceci permet de faire l’économie d’un raccord par touche, les frappes étant alors reconnues suivant le motif de lignes et colonnes interconnectées. Prenons quelques exemples pour illustrer cette approche :

1. Une frappe isolée

Pour prendre en compte S, le conducteur de la colonne X est mis en circuit avec le raccord de la ligne Y :

 

Le contrôleur du clavier reconnait alors le signal sans problème vu que chaque touche est associée à une combinaison unique.

2. Frappe simultanée de deux touches (ou plus) dans différentes lignes et colonnes


Tant que les lignes et colonnes sont différentes, aucun problème puisque la logique est la même qu’avec une seule touche.

3. Frappe simultanée de deux touches sur la même ligne ou colonne



La matrice peut encore identifier chaque touche sans erreur : les touches ont beau être adjacentes sur la même colonne, les lignes les distinguent. Notons que l’on parle ici de raccords colinéaires vu que trois d’entre eux et non quatre sont employés du fait de la colonne en commun.



4. Frappe simultanée de trois touches au sein d’un même bloc


C’est ici que la logique tient ses limites. Le contrôleur gère maintenant deux lignes et deux colonnes communes et la combinaison n’est plus unique, puisque l’on aurait très bien pu activer les quatre touches du même bloc. Le contrôleur se retrouve donc dans une situation ou cinq combinaisons lui semblent identiques :



Si l’on utilise par exemple W, S et D en simultané (sur un clavier QWERTY), la touche E apparaitra comme fantôme vu que le clavier ne distingue plus de combinaison unique. Encore une fois, ce n’est pas un problème inhérent à l’USB contrairement à ce que l’on peut lire ici ou là, mais au câblage du clavier. Certaines marques assurent l’intégrité du block WASD, les touches avoisinantes et celles de direction, tandis que d’autres garantissent un vrai NKRO sur tout le clavier.

Le NKRO et l’interface PS/2 sont idéaux sur le papier, mais encore faut-il que le clavier suive, c'est-à-dire que le contrôleur soit en mesure de gérer individuellement toutes les touches et non pas le seul block WASD.

Certains préfèrent utiliser le block ESDF (et reconfigurent donc leur clavier en conséquence) et risquent donc d’être déçus avec les claviers ne garantissant pas un NKRO intégral. Dans le pire des cas, il est toujours possible d’assigner les commandes aux seules touches disposées de manière à générer des combinaisons lignes/colonnes bien distinctes.

(Graphiques: Microsoft)