Jeffrey Cross
Jeffrey Cross

Émulation de souris DIY pour la sclérose en plaques

J'ai récemment été contacté par une femme qui cherchait à aider son amie. Son amie est atteinte de sclérose en plaques, ce qui peut se manifester de nombreuses manières, mais dans ce cas, ce sont des tremblements extrêmes qui ont rendu pratiquement impossible l'utilisation d'une souris d'ordinateur.

Après avoir échangé quelques idées, nous avons atterri sur cette idée. Nous émulerions la souris en utilisant des boutons géants. La taille et l'imprécision des boutons aideraient à contrer les tremblements.

J'ai partagé les différentes tailles de boutons disponibles et elle a choisi ces gros boutons de 100 mm d'Adafruit. Ils sont gros et durs, alors ils peuvent subir des abus. Je les aime.

Donc, pour réaliser ce projet, il me faudrait 6 boutons géants, une boîte pour tous les contenir et un microcontrôleur capable d’émuler le clavier et la souris. Le coût de ce projet commençait à s’additionner, ces boutons coûtant environ 10 dollars chacun. Heureusement, Adafruit est intervenu et s’est porté volontaire pour donner toutes les pièces de cette construction! Merci Adafruit!

Comme Adafruit donnait les pièces, j'ai utilisé le proto de base Adafruit Feather 32u4 à la place de l'adolescent que j'avais précédemment utilisé.

Heureusement, il existe déjà une bibliothèque arduino pour l’émulation clavier / souris pour le 32u4, ce qui me permet presque de copier / coller et d’être fait en dehors de la construction d’une boîte et de la soudure de fils.

J'ai claqué cette boîte pour tout tenir, les boutons en biais pour une ergonomie légèrement meilleure. Ensuite, j'ai ajouté une couche de peinture dessus et scellé avec du polycrilique afin qu'il soit facile à nettoyer.

Après cela, j'ai soudé tous les boutons en place et laissé tomber l'exemple de code sur le tableau. Quand je l'ai branché, mon ordinateur est allé des noisettes! J'avais laissé le code pour détecter les broches «hautes» ou être connectées au 3v pour détecter une pression sur un bouton, mais la plume est l'inverse. Ainsi, lorsque j'ai branché le tableau, il a pensé que tous les boutons étaient constamment enfoncés. Un rapide retournement du code a permis de résoudre le problème. C'est une erreur ridiculement débutante, mais bon, c'était marrant.

J'ai choisi de faire en sorte que le contrôleur simule des pressions sur le clavier plutôt que les mouvements de la souris. Bien que le tableau puisse déplacer la souris d’un certain nombre de pixels par poussée, je voulais que l’utilisateur ait plus de contrôle sans avoir à reprogrammer des éléments. Si je fais une émulation du clavier, elle peut télécharger un programme appelé NeatMouse qui émule la souris à partir de touches du clavier et peut ainsi contrôler plus finement la sensibilité.

J’aimerais dire que c’est un succès, mais la dernière étape de ce processus est immense. Elle a besoin de l'utiliser pendant un moment et de voir si cela aide vraiment. Bien que cela semble utile, vous ne savez jamais, c'est peut-être trop lourd. Peut-être que c'est trop gros. Peut-être que l'émulation est trop imprécise. Nous devrons simplement voir.

edit: Elle l'a eu il y a quelques jours et dit que ça marche très bien! Elle dit que cela va demander un certain temps pour s’y habituer, mais elle lui a déjà permis de jouer des choses qu’elle ne pouvait pas auparavant.

En regardant ce projet du côté de l'utilisateur, je pouvais aussi voir abandonner la boîte en bois au profit de quelque chose qui peut rester confortablement sur les genoux. Peut-être quelque chose comme un tableau de contrôle.

Part

Laisser Un Commentaire