Arduino pour soutenir l'AVC (Accident Vasculaire Cérébrale)

Arduino pour soutenir l'Accident Vasculaire Cérébrale

L'AVC est un accident grave avec quelque-fois des conséquences dramatiques.

Mon père en faisait et j'ai dans mon entourage une connaissance en ayant fait un assez sévère.

Si dans les deux cas il n'y avait pas d'atteinte cognitive, ils ont tout deux perdu la mobilité d'une côté (le bras généralement).

Difficile de taper sur un clavier avec une seule main (par exemple perdre la main gauche), c'est un véritable problème dans notre société numérique!
Perdre l'usage d'un main (la gauche), c'est aussi
perde accessibilité de la moitié du clavier.
Voici un clavier avec la partie "morte" grisée.
Clavier Miroir
Licence Creative Common BY-SA-NC
Par Meurisse D. Belgique 

Ne disposer que d'une main pour taper au clavier n'est pas pratique du tout!
Il y a pourtant une solution tout à fait réalisable basé sur le simple-click d'une touche et le double-click d'une touche.
Le double click/pression d'une touche permettrait d'activer un comportement miroir... et c'est l'autre touche (située en miroir sur la partie morte) qui est activée.

Simple pression active la touche.
Cette parie du clavier est facilement
atteignable par la main valide.
Une double pression active la touche en miroir
sur la partie morte du clavier, celle que la
main valide aurait du mal à atteindre.

de quoi utiliser assez efficacement n'importe quel clavier avec une seule main.

Main droite, Main gauche
L'avantage d'un tel projet "miroir", c'est que le concept fonctionnerait aussi bien avec une main droite valide qu'une main gauche valide.
Il faut juste utiliser l'autre partie du clavier (partie gauche) pour une main gauche valide.

Proposition pour Arduino DUE (ou Leo)

En insérant un Arduino Leo/Due entre le clavier et le PC, il est techniquement possible d'intercepter les codes claviers, de le laisser passer vers le PC ou de le remplacer par un autre code (côté miroir).

Approche technique: les claviers envoient des scan code aux PC. Ces scan-code indique la position physique de la touche pressée sur le clavier.
C'est le système d'exploitation qui fait la relation entre "scan code" reçu du clavier et "la lettre" supposée être pressée par l'utilisateur.

Il suffit donc (sur le principe), d'utiliser un Arduino, de regarder les scan-code envoyer par le clavier... et de les retenir assez longtemps (ex: 1/4 seconde) avant de le renvoyer vers le PC pour éventuellement se rendre compte que l'utilisateur à pressé cette touche deux fois de suite.
SI la double pression est détectée ALORS on renvoi le scan code de la touche "miroir" sinon on envoi la premier scan code enregistré.

Projet pour un Arduino DUE
Je pense que c'est une application taillée pour Arduino DUE car il dispose d'un Host USB et d'un client USB.
Avec le Host USB, on peut donc y brancher un clavier sur le DUE et ce dernier se comporte comme "un PC" vis à vis du clavier.
Avec le Client USB, le DUE se comporte comme un "Clavier" (ou une souris) vis-à-vis du PC.

Projet pour Arduino LEO
Arduino LEO dispose d'un client USB, ce qui permet de le faire passer pour un clavier (ou une souris) auprès de l'ordinateur.
Il faudra donc une interface permettant de connecter un clavier sur Arduino Leo (peut éventuellement être importé par MCHobby).

Exemple