Fais-le-toi-même

Je me fais un clavier gaming pour gaucher

Je suis un peu handicapé. Je suis gaucher et suite à un accident il me manque des doigts à cette main, ce qui n’est pas gênant au quotidien, pour travailler notamment, mais qui peut parfois être compliqué pour jouer. Ma configuration de jeu est la suivante : main gauche sur la souris (et donc je ne peux pas changer cette habitude) et main droite sur le clavier. J’utilise les touches fléchées, le petit pavé au dessus, les touches CTRL et SHIFT droite et parfois le pavé numérique. C’est une certaine gymnastique, parfois fatigante mais je me suis habitué. Et puis, en lurkant sur le net, je suis tombé sur des communautés de gens qui fabriquent leur propre clavier mécanique aux formes diverses ! Parce que je suis un peu comme ça, je viens donc de me lancer dans la création d’un clavier gaming adapté à ma main droite. C’est parti.


Bien qu’il existe de nombreux pavés gaming (gaming pad en anglais), très rares sont ceux adaptés pour la main droite, et lorsque c’est le cas, ils sont souvent plus chers, comme c’est le cas avec cet engin (plus vraiment un clavier à ce niveau là), l’Azeron, qui a l’air d’être absolument génial, mais très cher, 160€ pour la version gaucher.

Tout est imprimé en 3D, et l’ensemble est fait main.

Si d’autres y arrivent, pourquoi pas moi ?

Cet article sera en plusieurs parties, au fur et à mesure de mes avancées. Je ferai probablement un récapitulatif une fois terminé.

1ère étape : L’outillage et l’électronique

Je ne disposais d’absolument aucun équipement ni outil pour l’électronique. Je suis passé par Amazon qui vend tout ce dont j’avais besoin, a un prix raisonnable et livré très rapidement.

  • Un kit de soudure avec fer à souder et soudure, multimètre, pinces, pompe à dessouder (c’est ce qui m’a décidé vu que je vais cannibaliser un vieux clavier), une pince fine, une pince à découper etc. pour 24€.
  • Un Arduino Pro Micro. C’est un tout petit composant permettant, notamment, d’émuler un équipement USB type Souris, Clavier, Joystick et autre. Il est programmable plutôt facilement. Il existe plein de clones et il n’est pas cher, 9€.
  • Une loupe avec des pinces parce que j’y vois rien. Cela s’appelle une troisième main et ça m’a bien servi pour dessouder. 23€. Si vous avez déjà des pinces et bonnes lunettes, c’est inutile.
  • Un kit de débutant en électronique avec plein de composant pour jouer avec. Il y a un breadboard (une carte pour brancher des composer sans souder), des fils de toutes sortes, des diodes, des interrupteurs, bref plein de petits trucs pour démarrer et prototyper. 16€.
  • Des diodes 1N4148 dont je vais reparler plus tard. 7€

Ça fait un total de 79€, juste pour démarrer le prototype. Tout sera évidemment réutilisable pour d’autres projets, mais clairement ce n’est pas pour éviter de payer cher que je fais ça. C’est principalement pour le plaisir d’apprendre et d’avoir un objet spécialement adapté.

Je répète : se construire un clavier personnalisé n’est pas un projet économique !

2ème étape : Prototype

Logiciels

Une fois le matériel reçu, j’ai voulu tester tout ça.

D’abord télécharger l’IDE d’Arduino et l’installer. C’est fondamental.

Ensuite, biiiien lire la page d’info du contrôleur Pro Micro et surtout, installer l’add-on pour l’IDE sinon le programme ne reconnaitra pas la carte (j’ai testé pour vous).

  • Choisir dans Outil, le type de carte « Sparkfun Pro Micro »
  • Choisir le processeur ATMega32U4 (5V, 16 Mhz)

Vérifier que le contrôleur fonctionne

  • Brancher le Pro Micro sur l’ordinateur via un câble USB
  • Lancer le test Blinkie permettant de voir les leds clignoter. Il se trouve sur la page de Sparkfun, juste après l’installation de l’add-on

Si ça clignote c’est que le Pro Micro fonctionne. Il peut arriver d’en recevoir des défectueux, d’où le test.

Premier proto

J’avais déjà dessoudé quelques touches mécaniques d’un vieux clavier qui ne me servait plus. Il est tout à fait possible d’acheter les touches que vous voulez, il y a plein de sites pour ça, mais j’ai fait avec ce que j’avais sous la main.

Après avoir soudé les pattes de l’arduino, je l’ai branché sur le breadboard puis j’ai posé deux interrupteurs. Le GND est commun et branché sur une des pins GND de l’arduino, et les deux autres pins des interrupteurs sont branchés sur deux autres pins du contrôleur.

Lancez l’IDE, puis testez les boutons.

include "Keyboard.h"
int Pin = 5; //Indiquez la broche/pin du bouton à tester

bool STATES;
void setup()
{
Keyboard.begin();
pinMode(Pin, INPUT_PULLUP); 
STATES = digitalRead(Pin);
}
void loop()
{
bool state;
state = digitalRead(Pin);
if (STATES != state) {
if (state == LOW) {
Keyboard.press('a');
} else {
Keyboard.release('a');
}
STATES = state;
}
}

Ce code permet simplement d’imprimer la lettre « a » quand le bouton indiqué est enfoncé. Plus précisément, il enverra un « z » parce que le système est en QWERTY et que je n’ai pas encore trouvé comment changer ça (probablement dans le Keyboard.h).

Second proto

Utiliser une pin par bouton n’est pas très efficace. Du coup, on va utiliser un système de matrice. Mon deuxième proto aura deux lignes de deux boutons. Avec un tel système on utilise uniquement une pin par ligne et une par colonne.

Ici, on a 2×2 donc 4 pins utilisés. Ok, exactement pareil que si on avait branché en direct. Mais au moins, ça me permet de tester le code et de l’étendre par la suite. Si ça marche pour 2×2, ça marchera pour 4×5 par exemple.

On deux boutons Cherry MX et deux interrupteurs tout bête. Les deux Cherry forment une ligne et les deux interrupteurs une autre ligne. Chaque ligne est reliée à une pin de l’arduino avec les diodes.

Je me suis basé sur cet article ainsi que celui-ci pour la construction de la matrice. Les photos m’ont permis d’en comprendre l’organisation.

Pour le code, j’ai piqué celui-ci et l’ai adapté à ma matrice.

include "Keyboard.h"
byte row[] = {18,14};
byte col[] = {6,8};
byte rowSize = sizeof(row);
byte colSize = sizeof(col);
byte keysState[2][2];
char keys[2][2] = {{'f', 'g'},
{'h', 'i'}};

void setup()
{
Serial.begin(9600);
Keyboard.begin();
//resets all pins
for(int i = 0; i < rowSize+1; i++){
pinMode(row[i], INPUT);
}
for(int i = 0; i < colSize; i++){
pinMode(col[i], INPUT_PULLUP);
}
}
void loop()
{
readBoard(); //reads and stores which switches are released and pressed
pressKeys(); //sends keypress to device
}
void readBoard(){
for(int i = 0; i < rowSize; i++){ //iterate over each row
pinMode(row[i], OUTPUT);
digitalWrite(row[i], LOW); //allows current to flow through row
for(int j = 0; j < colSize; j++){ //interate over each switch in the row
pinMode(col[j], INPUT_PULLUP); //open the column pin up for reading
keysState[j][i] = digitalRead(col[j]); //checks the state of the switch in the row
//and stores it in keysState
pinMode(col[j], INPUT);//closes the switch for reading
} //runs until it has checked all switches in the row
//finishes checking the row
pinMode(row[i], INPUT); //stop current from flowing through the row
//move to the next row
}
}
void pressKeys(){
//interate over the keyState array
for(int i = rowSize - 1; i >= 0; i--){
for(int j = colSize - 1; j >= 0; j--){
//switch at current point is pressed
if(keysState[j][i] == 0){
//Serial.print("Pressed: ");
//Serial.println(keys[i][j]);
//sends pressed value based keys array
Keyboard.press(keys[i][j]);
}
else{ //switch at current point is not pressed //Serial.print("Released: "); //Serial.println(keys[i][j]); //sends release value based on keys array Keyboard.release(keys[i][j]); } }
}
Serial.println();
}

Hop, on balance dans l’arduino, puis on appuie sur les touches et ça fait les lettres. On peut appuyer sur plusieurs lettres en même temps, rester appuyé sur une ou plusieurs, bref ça à l’air de marcher. Il faudra que j’essaie en jeu, pour être sûr que tout est bien pris en compte. Quatre boutons, ça permet de se déplacer.

Voilà où j’en suis pour le moment.

Prochaine (grosse) étape, dessiner le clavier, positionner les touches et éventuellement créer un fichier d’impression 3D pour supporter tout ça.

Création d’un carnet en peau de dragon

J’ai toujours été fasciné par les gens qui savaient fabriquer des choses, utiliser leurs mains autrement que sur un clavier. Les beaux objets, faits avec soins, la créativité, l’aspect unique de la production artisanale me fait vibrer. Depuis longtemps déjà, je regarde des vidéos, plus ou moins bien faites, où des gens normaux montrent ce qu’ils font. Il y a quelques semaines, à l’occasion de la fermeture d’une boutique de tissu près de chez moi, je suis tombé sur un coupon noir au motif écailleux. Une jolie peau de dragon qui m’a décidé à me lancer dans le fais-le-toi-même. Aujourd’hui, je fais un carnet en peau de dragon !


Pour mon premier essai, j’ai voulu faire un petit carnet. Au cas où ce serait un échec, je perdrais ainsi moins de composants.

Tout d’abord, il faut des composants (comme dans un jeu de rôle oui), et des outils. Voici ce que j’ai utilisé.

  • Des pinces de toutes sortes. Des grosses, des petites, n’importe du moment qu’on peut y placer un tas de feuilles au milieu.
  • Des serres-joints, pareil que les pinces.
  • Du carton d’emballage tout bête pour plein de petits usages, éviter de salir, intercaler entre une pince et le papier ou autre.
  • Règles, feutres, ciseaux, cutter pour mesurer, tracer et découper le tissu et le carton qui va servir à la couverture.
  • J’ai acheté un tapis de coupe, c’est hyper pratique et pas cher.
  • De la colle PVC, plein, beaucoup.
  • Des pinceaux. Je m’en suis rendu compte dès que j’ai eu à tartiner de la colle, sans ça c’est l’enfer.
  • Une cale à poncer et du papier de verre. Ça sert à égaliser les feuilles. Moins vous êtes soigneux, plus vous aurez à poncer.
  • Du tissu pour la couverture, donc moi, c’est un joli cuir de dragon que j’ai chassé avec mon porte-monnaie.
  • Du papier pour le carnet lui-même.
  • Du carton épais pour la couverture. J’ai acheté une pile de 10 cartons 2mm gris (appellation carton gris donc) chez mamazon. Un peu cher, qualité moyenne mais suffisante.
  • Un bout de tissu fin. J’ai utilisé une chute de rideau, ça marche mais c’est un peu trop épais.

Il y a trois étapes, la fabrication du carnet, celle de la couverture, puis l’assemblage.

Le Carnet

J’ai pris un tas de feuille A4, disons une vingtaine, que j’ai découpé en quatre, pour faire un carnet de taille A6 (15×10 cm à une vache près).

On fait un petit tas et surtout on tasse bien pour que ce soit aligné. Plus c’est aligné, mieux c’est évidemment. Moi c’était pas bien aligné, parce que je suis un cochon et que ma découpe initiale était mal faite.

On coince le paquet de feuille entre deux cartons, en laissant déborder d’un ou deux millimètres, puis on pince le tout fermement. J’ai pas de photo de ce moment mais vous avez de l’imagination.

Là on colle la tranche en appliquant une couche généreuse de colle PVC. Genre bien généreuse. N’hésitez pas à faire pénétrer légèrement entre les feuilles, pas trop, mais un peu.

Laissez la colle sécher quelques heures pendant lesquelles vous pouvez commencer la création de la couverture.

Une fois que c’est bien sec, découpez le bout de tissu fin à une taille légèrement plus petite qu’une feuille de carnet, puis collez-là sur la tranche, donc nouvelle généreuse couche de colle.

Attention, vous devez coller uniquement la tranche.

Attention aussi à la longueur du tissu de chaque côté, par exemple, moi c’était trop petit.

C’est terminé pour cette partie.

La Couverture

Dans le carton gris, découpez les deux couvertures. Elles doivent être plus grandes qu’une feuille de carnet d’environ deux millimètres (2mm). Découpez aussi la partie centrale qui doit faire la largeur exacte de votre bloc de papier, et la même longueur que les couvertures.

Dans la peau de dragon, posez les deux couvertures et le dos en laissant une espace d’un millimètre entre chaque partie. Mesurez, et tracez une découpe qui dépasse du carnet d’environ un centimètre. Soyez très soigneux, mesurez correctement, prenez votre temps, parce qu’après c’est chiant à rattraper. Moi j’ai fait n’importe quoi par exemple.

Découpez les coins en biseau, puis collez le carton au sur l’envers de la peau de dragon. Placez sous presse. J’ai un tas de bouquin dessus, avec deux haltères pour faire bonne mesure (oui j’ai des haltères, non je ne m’en sers pas).

Une fois que c’est sec (comptez quelques heures), repliez et collez les bords. S’ils sont assez longs et découpés correctement, ça devrait le faire sinon ça va faire une porcherie comme moi.

Si ça rebique, utilisez des pinces pour serrer correctement tout ça et attendez encore quelques heures pour le séchage.

Assemblage

Comme Actarus rentrant dans Goldorak, vous allez insérez le carnet dans la couverture. Mais c’est moins simple que lui, même si normalement vous ne ferez pas deux demi-tours.

Encollez généreusement le dos du carnet, ainsi que tout le tissu qui touche le carton.

Placez le carnet sur le dos, puis étalez bien le tissu sur la couverture. Débrouillez-vous pour que ça tienne debout.

Attendez que ça sèche et profitez-en pour découper deux morceaux de peau de dragon pour recouvrir l’intérieur. Vous pouvez utiliser n’importe quel papier coloré ou à motif ou ce que vous voulez. Moi je voulais que ce soit pareil partout.

Encollez et posez sur le carton de la couverture.

Mettez des pinces partout où vous pouvez, serrez bien, nettoyez la colle qui déborde au cas où et attendez que ça sèche.

Tadaa ! C’est fini !

Conclusion

J’ai bien galéré. Principalement parce que je ne suis pas soigneux. En vrai c’est plutôt simple, mais j’ai fait un peu n’importe quoi sur les proportions, sur le collage, et sur un peu toutes les étapes. Le résultat me convient quand même. C’est plutôt joli, fonctionnel, mais clairement ça manque de finition. Le toucher est exceptionnel, ce tissu est vraiment beau, en tout cas il me plaît énormément, et puis de toute façon c’est moi qui l’ai fait alors il est parfait.

Fort de cette première expérience, je vais sans doute en faire un autre rapidement et mettre à profit tout ce que j’ai appris. Notamment que la qualité se fait dans la lenteur et qu’un bel objet ne se fait pas en se dépêchant.

Sur cette jolie phrase, qui, sur un fond ensoleillé, ferait un parfait post Facebook, je vous dis à bientôt.