Aller au contenu


Photo
- - - - -

Clavier Gamer DIY


7 réponses à ce sujet

#1 Galahad

Galahad

    Nouveau membre

  • Membres
  • 4 messages

Posté 08 décembre 2022 - 05:51

Bonjour,

 

Etant un gamer un peu fou, je me suis lancé le défis de me fabriquer mon propre clavier. Bon, ne sachant pas trop dans quelle direction aller, j'ai fait quelques recherches sur le net et suis tombé sur de tonnes de choses intéressantes.

Avant tout chose:

- Je ne compte pas vendre ce que j'ai dessiné, et ne pas poser de problème au constructeur originel.

 

Pour la suite, je me suis donc basé sur le clavier az.eron que j'ai refait entièrement sur freecad à partir des photos que l'on peut trouver sur le site.

1.jpg

311268797_1230001247730985_2528798980677205814_n.jpg

312494379_467924628646114_4009706906632967265_n.jpg

Dedans on y retrouve les composantes suivantes:

- 23 micro switchs

- 1 joystick de PS2

- 1 interrupteur/joytsick 5 voies

- 1 interrupteur non verrouillable

- 2 diodes

- 2 résistanve

- 1 carte teensy ++2.0

 

A ce jour, tout fonctionne parfaitement, j'utilise pour cela le firmware ainsi que le software az.eron que l'on peut trouver en libre accès sur leur site.

 

Aujourd'hui, je suis en train de faire évoluer le clavier après 3 mois d'utilisations. Renforcement de certains éléments trop fragile, modification de l'ergonomie etc.

Mon but finalement étant de le dissocié complètement de la marque originelle. Et c'est en bonne voie étant donné que j'en suis déjà à une version 2.5 sur freecad, et la 3.0 étant en bon chemin pur avoir quelque chose ergonomiquement différent.

Je me présente donc ici aujourd'hui car je me pose pas mal de questions:

 

- Rester sur teensy ++ 2.0 ? ou prendre un truc plus performant?

- Développer un firmware et un software propre à mon produit pour ne plus dépendre d' az.eron

- intégrer un module adafruit pour rendre le produit bluetooth

- intégrer un module adafruit pour y insérer une batterie.

 

Voilà mon projet qui trotte en tête en ce moment, et le soucis étant qu'en programmation, je suis aussi doué qu'une chèvre qui veut affronter un lion.

 

Je vous remercie d'avance pour toute l'aide que vous pourrez m'apporter pour ce projet :)

 

PS:J'ai déjà installé VSCODIUM suite à une lecture de post qui traine sur le forum... :P



#2 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 9 934 messages
  • Gender:Male
  • Location:Anglet
  • Interests:Robotique, Entrepreneuriat, Innovation, Programmation, Résolution de problème, Recherche de solutions, Mécanique, Electronique, Créer, Concevoir

Posté 10 décembre 2022 - 01:06

Super projet, hâte de voir la suite ;) 

Pour les petites questions que tu te poses : 
Prendre quelque chose de plus performant juste pour avoir quelque chose de plus performant sans qu'il y ait de besoin avéré je ne vois pas trop l'utilité... Par contre si en effet tu vois des limitations que tu as liées à la performance de ton teensy 2.0 alors oui dans ce cas ça vaudrait le coup de changer ;) 

Ensuite pour le " Sans fil" il y a du pour et du contre, perso la techno avec fil ne me dérange pas. C'est simple et efficace, pas besoin de batteries ou de piles ^^ Mais il y en a certains qui sont dérangés par les fils ... 

Par contre développer ton propre firmware peut être un challenge très intéressant... Tu sais ce que tu veux faire, tu as peut être de idées d'améliorations etc ...  

En tout cas tiens nous au courant pour la suite ;) 


Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#3 Galahad

Galahad

    Nouveau membre

  • Membres
  • 4 messages

Posté 10 décembre 2022 - 11:16

Bonsoir Mike,

 

Et bien justement, n'y connaissant pour le moment pas grand chose dans le monde du teensy, je me demandais si entre la version ++2.0 et les version plus récentes, il y aurait un réel gain en réactivité ou un codage plus facile peut être?

En tout cas, je suis en recherche d'aide pour savoir par où commencer pour faire le firmware :P



#4 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 9 934 messages
  • Gender:Male
  • Location:Anglet
  • Interests:Robotique, Entrepreneuriat, Innovation, Programmation, Résolution de problème, Recherche de solutions, Mécanique, Electronique, Créer, Concevoir

Posté 11 décembre 2022 - 01:08

je n'ai jamais utilisé le teensy 2.0, j'ai directement commencé avec le 3.2 et maintenant j'utilise aussi bien le 3.2 que le 4.0 et plus marginalement les 3.5 et 4.1 ... 

Pour ce qui est de mettre en place le firmware, là encore je n'ai jamais utilisé un teensy en mode " clavier usb "  mais si je devais le faire je commencerais par essayer de le faire de manière basique avec quelque touches pour commencer, histoire que je comprenne bien les tenants et aboutissant avec un code le plus simple possible. 

Je commencerais par regarder ces liens : 
https://www.pjrc.com...d_keyboard.html
https://www.pjrc.com...b_keyboard.html
https://gist.github....chimmel/2825072

https://forum.pjrc.c...0-Keyboard-Code

 

Avec ça tu as déjà de quoi faire quelques essais et revenir plus tard quand tu auras des questions concrètes ;) 
N'hésite pas à nous présenter tes tests au fur et à mesure ;) 

En plus de faire un suivi pour toi même quand tu voudras revenir un peu en arrière ça nous permettra de suivre plus facilement tes avancées et avoir toutes les clés pour t'aider le plus facilement possible face aux problèmes rencontrés! 

 

à bientôt !
 


Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#5 Galahad

Galahad

    Nouveau membre

  • Membres
  • 4 messages

Posté 11 décembre 2022 - 09:32

Merci pour ces informations, je vais regarder ça.

Petite, question con:

J'ai un firmware en .hex que je souhaiterais pouvoir décompiler. Il a été fait pour du teensy ++ 2.0. Sais tu si il est possible de récupérer quelque chose?



#6 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 9 934 messages
  • Gender:Male
  • Location:Anglet
  • Interests:Robotique, Entrepreneuriat, Innovation, Programmation, Résolution de problème, Recherche de solutions, Mécanique, Electronique, Créer, Concevoir

Posté 12 décembre 2022 - 01:35

C'est pas prévu pour être fait. 
Le but de te donner le .hex c'est pour te permettre de reprogrammer ta carte sans que tu puisse voir ou modifier le programme ... 
Après il y a certaines personnes qui arrivent à extraire des informations plus ou moins intéressante ... 

lien qui peut donner plus de détails : https://forum.arduin...r-code/343642/5

Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#7 Sandro

Sandro

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 259 messages
  • Gender:Male

Posté 12 décembre 2022 - 10:00

Pour ce qui est de désassembler du code, c'est possible (je l'ai jamais fait sur arduino, mais je l'ai vu en cours sur linux).

Par contre, le résultat ne sera pas du C/C++, mais de l'assembleur, ie du language machine, et sans même les commentaires et étiquettes utilisées quand on écrit de l'assembleur à la main. En gros, tu obtiendra un code :

- dans un autre language de programmation (l'assembleur)

- avec aucun commentaire, ni mise en forme

- avec seulement des opérations super basiques (je crois que sur l'arduino, l'opération hardware la plus complexe doit être la division ou le modulo d'entiers) : toutes les opérations un peu plus complexes (toutes les opérations sur les float, les delay, les digitalWrite/read, ...) sont soit des appels de fonctions, soit une suite d'opérations élémentaires

- il n'y a pas à proprement de variables : il y a quelques registres (des variables "à tout faire" qui stoquent les valeurs pour les opérations en cours, mais vu qu'il y en a si peu, la même variable sert succéssivement à stocker plein de trucs différents) et des adresses mémoire. Donc imagine toi un code ou les variables s'appelleraient variable1, variable2, ... : et bien c'est encore pire que ça.

- toutes les boucles et les ifs ont disparus, c'est remplacé par des sauts en mémoire (un if, c'est un saut à après le if si la condition est fausse)

- ...

 

Donc oui, on peut lire un code désassemblé, mais c'est vraiment, vraiment pénible : il te faudra probablement plus de temps pour comprendre le code désassemblé que pour le re-écrire toi même.

 

Sans compter que sur la plupart des microcontroleurs bas-moyenne gamme, il n'y a pas de déboggueur, donc on ne peut même pas exécuter pas à pas le programme (ce qui aide beaucoup à comprendre le code désassemblé).

 

Donc si le challenge de la rétro-ingénérie te tente, tu peux essayer, mais si seul le résultat t'intéresse, je penses que tu sera plus rapide à re-écrire le code depuis zéro.


Aidez-nous à vous aider : partagez toutes les informations pertinentes : description précise du problème, contexte, schéma de câblage, liens vers la documentation des composants, votre code (ou encore mieux un code minimal reproduisant le bug), ...

Vous recevrez ainsi plus de réponses, et elles seront plus pertinentes.


#8 Ludovic Dille

Ludovic Dille

    Habitué

  • Membres
  • PipPip
  • 185 messages
  • Gender:Male
  • Location:Belgique
  • Interests:Robotique, électronique, embarqué, informatique, ...

Posté 14 décembre 2022 - 06:50

Hello !

Pour tout ce qui est software, je rejoins Mike, c'est un peu challengeant de faire quelque chose de performant (je m'y suis un peu frotté).
Je peux te conseiller de jeter à un œil à QMK qui est l'outil utilisé pour créer le code de plein de clavier (open-source ou non) et qui est aussi compatible avec beaucoup de mcu: https://qmk.fm/(et il y a plein de features sympa qui sont déjà implémentée) mais c'est un peu barbu.

Ludo





Répondre à ce sujet



  


0 utilisateur(s) li(sen)t ce sujet

0 members, 0 guests, 0 anonymous users