Utilisateur:Jeff/atelier clavier
Cette page est destinée à centraliser quelques ressources utiles pour se faire un clavier.
Il commence à y avoir beaucoup de monde qui veut se faire son propre clavier, c'est pas mal du tout. Dans les projets de status de l'association Ergodis il y a une petite note là dessus, il faudrait confirmer cet objectif, même si pour moi c'est plus fait à titre ludique quand dans un réel objectif d'ergonomie.
Objectif
L'objectif de cette page est de donner quelques orientations pour aider quelqu'un voulant se fabriquer ou modifier un clavier. Ce n'est pas un guide de construction pas à pas, l'objectif est d'assister la créativité, pas de la tuer.
Liens utiles, références
À ne pas rater
Divers
- reddit.com/r/mechanicalkeyboards et reddit.com/r/keyboards/, en particulier pour les liens sur la droite des pages. Ça permet surtout de tomber sur des trucs du genre Clavier en bambou
Exemples de réalisation
Extérieures
avec stade, idée, projet, réalisé, industrialisé
Au sein du site Bépo
- TypeFauvix / Concept
- TypeRobix / Concept
- XavierC / Concept
- Sinma / Concept
- Cladeon / Prototypes
- TWalErgo / Concept
Avant projet
Cible
Est-ce que l'on veut créer la nouvelle référence mondiale en terme de forme de clavier, répondre à un besoin spécifique (handicap) ou juste faire un truc original ?
Nom du projet
Ou comment sortir des type-machin et des truc-ergo.
Formes
Forme globale
- à plat, le plus classique
- en bol mode Kinesis
- monobloc/multibloc
- vertical
- sous le clavier type alphagrip
- autre, façon suka
- par accord, chordite, gkos, Jellyfish
positionnement des touches
- dessus/dessous
- pédale
- dental (ou incisif ?)
- latéral
- frontal
- sous le pouce
- au dessus des doigts (action par extension)
- en retour sous les paumes
- par appui des paumes
- coup de poing (pour Ctrl alt Supp par exemple)
forme de disposition
- décalé façon machine à écrire
- orthogonal façon typematrix
- «patte d'ours» façon ergodox
- en éventail (les doigts s'écartent quand on ouvre la main)
outil de modélisation
TODO lien vers outil, vers tutorial, vers des exemples
Disposition
- papier
- Inkscape
- nombre de touches
- multiplication
- Réduction (“a reduced matrix layout…”)
Logique de fonctionnement des touches
- rôle des touches
- envoi de commande
- changement de layout
- émission de caractères
- changement état du clavier
- logique des modificatrices
- instable
- stables
- touches programmables
- touche unique pour les parenthèses "()" et tous les signes ouvrant nécessitant un signe fermant (cf HP48)
Idées pour réalisation matérielle
Mode de prototypage
- tôle
- pâte à modeler
Types de touches
Il faudrait définir précisément ce qu'est un clavier. Dans un premier temps c'est un outil qui capte une action manuelle de l'utilisateur, l’interprète et la transmet à un ordinateur sous forme de commande ou de texte (c'est pas suffisant et ne permet pas de distinguer un clavier d'une souris, mais ça suffira pour la suite du paragraphe).
Les moyens techniques destinés à capter l'action de l'utilisateur peuvent être multiples. Le plus simple est l'interrupteur, mécanique ou optique pas exemple, mais on peut aussi envisager une surface capacitive, des accéléromètres, des potentiomètres ou des jauges de contrainte.
Interrupteur
Interrupteurs dédiés
- Cherry MX et leur écosystème coloré, ML...
- Matias Alps
TODO mettre les liens vers la documentation de référence de ces interrupteurs (dimensions, type de montage)
Interrupteurs standard
- à bascule
- instables
Interrupteurs spécifiques
- DIP, surtout pour la configuration
- roues codeuse (très pratiques si on veut avoir 10 «pages» programmées)
- thumb hat sur les joysticks (4 ou 5 positions)
- rotacteurs, interrupteurs rotatifs multipostions
membranes
Les membranes sont des simplifications d'interrupteurs, faciles à faire.
optique
Interrupteurs par rupture de faisceau pour détection sans contact.
capacitif
- Utilisation de touchpad,
- matrices capacitive en utilisant les ports Capacitive Touch des MCP430.
autres
- potentiomètres : Un potentiomètre linéaire et un bouton => un clavier pour violoniste. C'est pas plus dur que ça.
- jauges de contraintes
- micro pour détection du lieu d'un frappe sur une surface
- accéléromètres
Cabochons
Pour avoir de jolies touches, éventuellement avec des indications d'usage dessus.
Processeur
- Teensy
- puce PS2
- extension IO sur I2C
- module bluetooth
Firmware
Une technique simple est d'enregistrer le mappage des touches dans des «pages» représentées dans le code par des tableaux. Les majuscules et les minuscules ont chacune une page.
En utilisant des tableaux de pointeurs, il est possible qu'une touche donne accès à un caractère, une chaine ou une fonction.
TODO exemple d'utilisation des pointeurs de fonctions
Teensy
Les différentes «pages» de configuration de touches prennent pas mal de place en RAM. Lorsqu'il y en a trop, ça dépasse la capacité du processeur qui donne des résultats imprédictibles. Il faut alors stocker ces pages dans la mémoire de programmation (PROGMEM) et utiliser des fonctions spéciales pour y accéder.
TODO exemple d'utilisation PROGMEM
Boite
fixation des switchs spécifiques
Fixation des switchs sur BCP ou sur plaque ajourée. TODO Comment les réaliser
matériaux
- bois
- métal
- plastique
- impression 3D
Câblage
- Diodes
- matrice
Système de pointage intégré
- minijoystick
- trackpoint
- easypoint
- touchpad
- joystick
Accessoires
Emballage
pour transporter son clavier