Synless Keyboard [DIY/MOD] - Conception, dépannage, mods - Electronique, domotique, DIY
Marsh Posté le 03-06-2017 à 21:29:14
Excellent projet, je veux le même !
Récemment je regardais si y'avait pas un mini-clavier programmable sympa, pas pour le jeu, mais pour avoir les principaux raccourcis claviers à porté de main pour certaines applications graphiques (idéal pour le mettre juste à coté de la tablette graphique).
J'ai vu des trucs dans ce genre là :
http://www.maxkeyboard.com/max-fal [...] mbled.html
Sympa, mais 8 touches, trop limité.
Ou alors des numpads programmables (ou des numpads normaux que je reprogrammerais en software coté OS)
J'avais aussi regardé du coté des keypads gaming, mais je voulais un truc sobre et simple, et pas trop encombrant.
Ton truc se rapproche méchamment de mon mini-clavier idéal
J'aimerais bien avoir les compétences pour en faire autant.
Ça t'est revenu à combien au total ?
Très beau boulot en tout cas
Marsh Posté le 03-06-2017 à 22:23:46
versa a écrit : Excellent projet, je veux le même !
J'ai vu des trucs dans ce genre là : http://www.maxkeyboard.com/max-fal [...] mbled.html Ou alors des numpads programmables (ou des numpads normaux que je reprogrammerais en software coté OS) J'avais aussi regardé du coté des keypads gaming, mais je voulais un truc sobre et simple, et pas trop encombrant.
Très beau boulot en tout cas |
Salut versa, merci ^^
J'avoue ne pas avoir trop regardé ce qui se fait en ce moment. D'une part car je pense qu'il n'y a pas grand-chose dans cette niche de périphériques, d'autres part parce que j'avais envie d'un truc bien perso, des boutons et un joystick sympa (for the lulz) et puis aussi pour l’expérience.
Ouai le mieux ça reste encore de faire sa propre marchandise et de la programmer au besoin !
Là c'est compact, très léger, et l'ergonomie n'a rien à envié aux produits sur le marché.
Plusieurs heures de raid sur WoW, pas de soucis, plusieurs heures sur Overwatch, pareil. J'avais jusqu'à présent un prototype un peu moins joli et c'est la même histoire.
Par curiosité il faudrait quoi pour que tu le considère comme idéal ?
J'aimerai encore plus sobre, par exemple PCB noir mais choisir la couleur coûte un bras donc c'est random (rouge 90% du temps).
En parlant de prix, je pourrais donner des chiffres bruts mais c'est biaisé puisque ce que je montre là est un condensé de plusieurs dizaines d'heures de travail.
Les cartes sont réalisé en "one shot", importé des US (frais de port UPS puis frais de douane ). Je dois aussi commander 30 switches 5 broches et un keyset complet.
Donc ça revient cher, et le délai de réalisation est important. Le seul moyen pour que ca soit plus attractif c'est de faire commander en lots mais on y est pas encore.
Si vous avez des idées d'amélioration aussi je suis preneur.
Je pense mettre un switch de sélection de profils dans une future version, une fois d'autres projets terminés.
Marsh Posté le 03-06-2017 à 22:36:12
"Profession : Apprenti Ingénieur"
Dépêche-toi de finir ton apprentissage, de créer ta boite et de sortir un truc comme ça sur le marché (fake pourri vite fait sous photoshop) :
Une sorte de 30%
(Le seul que je connaisse qui s'en rapproche est celui là, bien trop gros et de qualité douteuse : http://gembird.nl/Repository/4217/ [...] eb1710.jpg )
Marsh Posté le 04-06-2017 à 10:44:59
Ou alors tu prends un numpad programmable c'est plus ergonomique.
Marsh Posté le 04-06-2017 à 11:11:09
J'y ai pensé, mais j'aimerais bien retrouver la disposition et la taille des touches ctrl/alt/shift de gauche que j'utilise tout le temps dans les logiciels 3d.
Marsh Posté le 04-06-2017 à 12:05:49
versa a écrit : J'y ai pensé, mais j'aimerais bien retrouver la disposition et la taille des touches ctrl/alt/shift de gauche que j'utilise tout le temps dans les logiciels 3d. |
Un peu comme ca ?
Marsh Posté le 04-06-2017 à 12:34:49
Tout à fait
Quand on utilise les ctrl/alt/shift en même temps, la position des doigts naturelle est celle-ci :
Avec la touche shift plus longue pour avoir le petit doigt un peu décalé à gauche par rapport à l'annulaire.
Mais ça marcherait aussi avec le tien en utilisant ces touches là par exemple :
Marsh Posté le 20-06-2017 à 22:02:50
Plop !
Petite mise à jour : Je viens de finir le logiciel de configuration (pour ne plus avoir à reprogrammer à chaque fois)
Par contre maintenant il faut que j'arrive à trouver un moyen fiable de stocker la config sur la flash du µC. Pour le moment je perds la nouvelle configuration à chaque reboot et ça repart de la configuration programmée.
Marsh Posté le 21-06-2017 à 08:49:29
ReplyMarsh Posté le 22-06-2017 à 09:36:35
SnowBear a écrit : Pourquoi ne pas avoir utilisé un ATmega16U4 voir un Teensy avec TMK/QMK ? |
Pour le Teensy :
Je ne souhaite pas être dépendant des arrivages de Teensy premièrement. Deuxièmement car je ne maîtrise pas le design de la carte, ni du µC.
Ce n'est pas réplicable ni "ouvert". Je reste donc aussi loin que possible des solution propriétaires et fermées comme les cartes Teensy.
Pour le 16U4 :
Pas assez d'I/O. J'ai besoin de 30 I/O numériques et 2 (bientôt 6) analogiques. Jouer avec des matrices n'est pas envisageable. J'ai aussi regardé un peu le code de claviers comme celui de kiibohd, c'est perturbant ...
Avec un grand nombre d'I/O je peux aussi rajouter des actionneurs et capteur dans un futur design et ne pas être limité.
Je peux aussi réaliser à peu près n'importe quoi, pas juste un clavier. Imaginons que je souhaite émuler une souris, un joystick, écrire sur le port série, utiliser des délais, faire des macros, rajouter un petit buzzer, une mémoire flash pour la gestion de different profils etc ... et bien je peux le faire. Je ne suis pas limité par un µC et son firmware destinés à être un clavier. Dans une première version j'avais même ajouté un MAX3421e pour avoir un USB-Host.
Au final ce n'est peut-être pas la solution la plus optimale, mais c'est facilement programmable et pour moi c'est ce qui compte le plus. Je suis pas à 2$ sur le prix du µC.
Marsh Posté le 22-06-2017 à 09:42:24
30 I/0 ?! Je suis surpris mais soit .
Avec QMK (et TMK aussi) tu peux tout à fait :
- émuler une souris (j'ai pas poussé le truc par contre)
- intégrer un trackpoint IBM (ça marche très bien)
- faire des macros
- rajouter un buzzer (suffit de regarder le Plank/Preonic)
- sauvegarder de manière persistante le profil que tu veux
- etc
C'est pour ça que je suis surpris par ton choix (mais je n'ai peut être pas le même recul que toi sur ton projet ^^ )
Marsh Posté le 22-06-2017 à 11:17:54
Synless a écrit : Par contre maintenant il faut que j'arrive à trouver un moyen fiable de stocker la config sur la flash du µC. Pour le moment je perds la nouvelle configuration à chaque reboot et ça repart de la configuration programmée. |
Une EEPROM I2C 24xxx?
Marsh Posté le 22-06-2017 à 13:54:04
SnowBear a écrit : 30 I/0 ?! Je suis surpris mais soit . Avec QMK (et TMK aussi) tu peux tout à fait : C'est pour ça que je suis surpris par ton choix (mais je n'ai peut être pas le même recul que toi sur ton projet ^^ ) |
Même si c'est possible, je ne sais pas comment faire. Ca ne me semble pas facile. Du coup j'ai choisis un µC compatible Arduino.
Le nombre d'I/O c'est normal. Ici, un switch = une input, car je n'ai pas utilisé une configuration matricielle. J'aurais pu faire 11 I/O sinon.
rat de combat a écrit : Une EEPROM I2C 24xxx? |
J’espère pouvoir utiliser la flash du SAMD21 mais c'est pas gagné. Ca serait dommage de rajouter des composants.
Marsh Posté le 22-06-2017 à 14:57:47
Synless a écrit : |
D'ac !
Et par pure curiosité pourquoi ne pas avoir utilisé une matrice ?
Marsh Posté le 07-07-2017 à 20:37:07
SnowBear a écrit :
Et par pure curiosité pourquoi ne pas avoir utilisé une matrice ? |
Plop ! Pardon pour le retard.
Pour la simplicité de la chose, et pour pouvoir faire l'anti-rebond en hardware.
_____________
Petit update pour le coup, je suis arrivé à écrire la config' sur la mémoire interne du microcontrôleur et à la lire après un reboot !
J'ai également ajouté le support pour des switches ALPS, et plus de touches !
J'ai également commandé une nouvelle carte de test pour des Cherry MX / ALPS analogiques (sisi je me moque pas de vous !)
Je vais donc simuler un joystick via une pression plus ou moins forte sur un switch. Cette partie va sans doute me faire changer beaucoup de chose, notamment de microcontrôleur
A+
Marsh Posté le 07-07-2017 à 22:12:01
ce projet
.
.
.
Marsh Posté le 19-04-2018 à 22:38:23
Guess how's back ?
Pardon pour la qualité des photos, l'HDR a fumé la moquette !
Les nouveautés :
- Grosse réduction de la taille du PCB (↘$$$)
- Configuration matricielle
- Deux touches en plus pour avoir Ctrl bien placée
- Monté sur des sockets Cherry MX de chez Kailh pour le hot-swap ! Avec des switchs "PCB mount" et des keycaps DSA c'est nickel
- USB-C, finit de tourner les connecteur micro-USB !
Ne pouvant trouver de Cherry MX Silent Black en PCB mount (5 pins) je vais mixer des "Red, PCB mount" avec des "Silent Black, plate mount" pour avoir le meilleur des deux mondes. À savoir que les switchs "plate mount" ne sont pas assez solidaire de la carte, c'est rapidement désagréable.
Ayant détruit un beau Joystick OEM de PSVita j'ai retiré tous les switchs pour les photo et j'ai plus le morale de les remonter avant l'arrivé des nouveau joysticks.
L'éxperience 'switchs analogiques' est aussi tombée à l'eau, le fail du mois, alors je ne vais pas m'étendre dessus.
Maintenant que je suis plus étudiant mais salarié j'ai moins de temps à mettre dans mes projets, mais j'y pense toujours !
Marsh Posté le 14-06-2018 à 18:42:45
Depuis que j'ai offert une imprimante 3D à mon père j'ai des facilités d'accès au prototypage de pièces
Voici donc la version quasi finale de ce projet, toute de PLA vêtue :
Système d'ajout/retrait de touche facile, montage "sandwich" avec vis à têtes fraisées et écrou insérés avec la technique "du fer à souder"
Le feeling ajouté par du PLA remplissage 25% est sympa, et ca fait plus propre. Je peux transporter ce clavier dans un sac sans problème.
Vu que je viens de trouver des chinois pour des PCB abordable, je vais tenter un batch de 5 claviers (PCB noir, ABS noir) courant automne
Marsh Posté le 03-06-2017 à 19:49:34
Bonjour à tous.
Voulant plus de place sur mon bureau (je joue avec un très basse sensibilité) j'ai décidé il y a quelques temps de réaliser un clavier custom avec les caractéristiques suivantes :
L'idée est d’obtenir les avantages d'un produit comme le Logictech G13 sans les inconvénients, et d'apprendre deux ou trois choses au passage.
J’espère via ce projet vous inspirer pour les vôtres
1. Le PCB
Réalisé sous Eagle CAD, en double face. Environ 135x120mm.
Le plus dur ici est de trouver les bonnes pièces et leurs empreintes, et bien-sûr de ne pas faire d'erreur de routage.
Vous avez ici une vue bottom (à gauche) et top (à droite) du PCB.
Ici, chaque touche est câblée sur une entrée du µC. Pas de gestion matricielle ou de ghosting à prévoir.
L'anti-rebond est réalisé en hardware, et simplifie la programmation.
2. La carte nue
Fabrique par Macrofab. Le PCB est réalisé en chine, réceptionné par Macrofab au Texas où ils installent et soudent les pièces (sauf les switches) avant de me l'envoyer.
Ci dessous la carte avec le joystick déjà monté mais pas encore collé. Plusieurs positions sont possibles, j'attends donc de tester lors de sessions prolongées.
3. Switches et Keycaps
Viens ensuite la mise en place des switches, en configuration droitier.
Pour ceux situé proches de l'auriculaire j'utilise des Cherry MX Red, des MX Black pour le reste.
Puis brasage des switches sur le PCB, et installation des keycaps (PBT sans marquage).
Les switches et keycaps proviennent de Ebay, faute d'autre choix ...
4. Programmation
Le µC retenu pour ce projet est un Atmel SAMD21J18A, une variante de l'Arduino M0+.
Via l'IDE Arduino et en utilisant la librairie HID je suis en mesure de lui faire émuler en clavier et une souris au besoin.
La configuration matérielle consiste à trouver quelles broches du µC correspondent à quelles touches. Cette partie est figée car dépendante du matériel.
La configuration des touches est la suivante :
Le joystick est associé au fléchés directionnelles, je m'en sers pour me déplacer dans les MMO, et comme roue de ping/call dans les MOBA/FPS par exemple.
5. Setup final
Et enfin j'ai de la place pour bouger la souris !
Environ 60cm. Même si je peux toujours pas faire un 360°
Durant ce projet j'ai pu mettre en pratique mes connaissances en électronique et en informatique pour améliorer mon expérience de jeu.
Aujourd'hui ce clavier fonctionne comme attendu et même mieux (puisque le joystick est très confortable, une bonne surprise), et ce projet une réussite.
J'invite tous les intéressés à me faire par de leurs commentaires et à me poser leurs questions, je me ferai un plaisir d'y répondre.
A bientôt
TODO :
- Typo
- Cherry MX Silent en 5 pins
Message édité par Synless le 08-06-2017 à 21:15:42