Utilisateur:TWal/TWalErgo

De Disposition de clavier bépo

TWalErgo est un projet de clavier ergonomique initié par moi-même (TWal).

Le travail fait

Le clavier est sur github : l'emplacement des touches et la forme du clavier.

Emplacement des touches

Dans le placement des touches, j'ai essayé de suivre les principes ci-dessous.

Réduction de l'utilisation des petits-doigts

Les petits-doigts sont sur-utilisés sur les claviers standards : shift, controle, entrée, effacer, échap, tab, etc. Il faut essayer de changer ça, car les petits-doigts sont faibles.

Augmentation de l'utilisation des pouces

Les pouces sont sous-utilisés : ils s'occupe presque uniquement d'espace. Il faut essayer de changer ça, car le pouce est un doigt fort.

Chaque touche doit être accessible

Sur les claviers standards, certaines touches ne sont pas très accessibles : controle, shift, échap, etc. Il faut changer ça, pour minimiser les déplacements de la rangée de repos.

Réduction du nombre de touche

La réduction du nombre de touche est important, afin de réduire les coûts, et de respecter le principe ci-dessus.

Mais il faut faire attention à ne pas trop impacter l'usage du clavier. Par exemple, il ne faut pas faire comme les claviers ci-dessous, qui enlèvent des touches pour les mettre avec une touche modificatrice :

Clavier gênant en bépo, puisque z, w, m, ç passent en touche modificatrice

Clavier qui passe toute la rangée des chiffres sous touche modificatrice, alors qu'elle est très utilisée en azerty

Être multi-disposition

Les changements faits au clavier doivent faire en sorte que chaque disposition reste logique. Par exemple, il faut faire en sorte de conserver "(" plus à gauche que ")". Idem pour [, ], {, }.


Forme du clavier

Le clavier aura ses colonnes décalées, afin de correspondre à la longueur des doigts. Les touches du pouce seront en arc de cercles, afin d'être accessibles facilement.

Nom du clavier

J'ai choisi "TWalErgo", car je suis TWal, et que c'est un clavier ergonomique.

Ce nom a l'avantage d'avoir un jeu de mot : "Toi, l'ergot"

Le logo pourrait donc être un miroir avec à l'intérieur un pied de poule (qui possède un ergot) : simple et percutant (du fait de son étrangeté).

La fabrication

Hardware

Le hardware sera composé des composants suivants :

  • 62 Keyswitches (des Cherry MX Brown, ou autre)
  • 62 diodes (pour l'anti-ghosting)
  • 2 registres à décalage
  • 1 Arduino Leonardo
  • Et un PCB pour relier tout ça

Le circuit est comme celui ici : http://www.dribin.org/dave/keyboard/one_html/

Je change de colonne avec le registre à décalage, dans un objectif de réduction de pins (sachant que je peux controler les deux registres à décalage avec le même fil).

Il y a un registe à décalage par partie du clavier.

Software

Il y a un tableau stockant les appuis courant du clavier : un tableau d'autant d'octets qu'il y a de colonnes. On stocke chaque touche de la colonne dans les bits de l'octet.

À chaque boucle, on créé deux nouveaux tableaux de ce type : le tableau des nouveaux appuis, et le tableau des relachements. On les rempli, en scannant chaque colonne, avec des opérations bit à bit très rapide.

Ensuite, on parcourt le tableau des relachements, et on l'envoie à l'ordinateur. Même chose pour le tableau des nouveaux appuis.

Si la touche Fn est appuyée ou relachée, on relache toutes les autres touches non modificatrices.


Le reste devrait être plutôt standard (tableau qui stocke les keycodes à envoyer, etc).

Il faut faire de la manipulation de ports, et ne pas utiliser digitalRead, digitalWrite, dans un but d'efficacité.

Participez !

Un thread sur le forum bépo est ouvert pour permettre de discuter du clavier.