Bonjour,
est ce que vous avez déjà monté un joystick arduino pour le programmer pour PC.
Si oui, quelles sont les possibilités de paramétrage existantes? :
Si je veux simuler des touches du clavier sur les axes du joystick, est ce que je peux directement le faire avec le SDK de Arduino ? Ou alors je dois d'abord faire reconnaitre le joystick comme contrôleur puis utiliser un logiciel tiers : joytokey par exemple ? Sinon, y aurait il tout simplement d'autres solutions plus performantes?
Typiquement tu fais le mappage dans le driver, pas dans le peripherique.
En fonction de ton OS, ca se fait differement.
Le 08 avril 2021 à 15:59:57 :
Typiquement tu fais le mappage dans le driver, pas dans le peripherique.
En fonction de ton OS, ca se fait differement.
Tout à fait.
C'est assez easy pour faire le mapping avec un joystick, j'avais suivi ce tuto y'a un an pour faire mon mapping, ça marchait nickel :
https://exploreembedded.com/wiki/Analog_JoyStick_with_Arduino
Je me rappelle avoir galéré parce que le joystick que j'avais acheté ne possédait pas de bouton poussoir, gros fail.
merci pour les réponses, je monterai le matos après demain. Je reviendrai peut-être pour demander des optimisations
Dans Xorg, tu peux utiliser le driver joystick pour mapper les boutons et axes d'un joystick a des evenements clavier:
https://www.x.org/releases/current/doc/man/man4/joystick.4.xhtml
J'avais ecrit un patch pour le driver il y a 10 ans pour etendre le support de ce genre de chose. (Je me rappelle plus si il a ete integre upstream, ou si le developper avait reecrit al fonctionnalites.) J'avais besoin de generer des scancode et a l'epoque joy2key ne savait pas faire ce dont j'avais besoin.
attention, je pense que butachan fait référence au HID arduino, donc coté périphérique, et pas OS/Driver.
Et la réponse est oui, tu peux faire un joystick avec arduino qui sera vu de l'OS comme un clavier (bon tu perd évidement le coté analogique d'un joystick).
Regarde ca peut etre : https://www.arduino.cc/reference/en/language/functions/usb/keyboard/
Comme d'habitude avec arduino, tu as 150 projets qui font la moitié de ce qu'il faut... il y a d'autres lib arduino HID, je ne sais pas ce que ca vaut.
Le code ne devrait pas être très long ;)
Je me suis aperçu que j'ai pris la mauvaise carte: UNO au lieu de Leonardo. Ce qui m'oblige à faire des manipulations avec le logiciel flip d'atmel
Oui il te faut une carte avec un microcontrôleur 32u4 (arduino leonardo ou arduino pro micro par exemple).
Avec ces cartes tu peux "nativement" envoyer des commandes à ton ordinateur en te faisant passer pour un clavier en utilisant la classe Keyboard.
Tous les projets Arduino qui émulent des périphériques reposent sur ces cartes : https://www.sparkfun.com/tutorials/337
https://www.youtube.com/watch?v=H0i5H7XCTX4
Bon, merci pour les suggestions, mon système a marché mais au bout d'un moment, les fonctions dans le code de la bibliothèque keyboard a arrêté de fonctionner
https://forum.arduino.cc/t/keyboard-library-functions-stop-working-leonardo/848676
Apparement, gros souci de crash avec la bibliothèque Keyboard: j'ai demandé de l'aide sur le forum arduino : https://forum.arduino.cc/t/bug-arduino-librarie-keyboard/851690
Est ce que quelqu'un ici sait pourquoi un programme incluant la bibliothèque keyboard bug : les fonctions keyboard cessent de fonctionner?
Hello
Essais peut être en enlevant serial complètement (pas de Serial.Begin ni print etc).
Et sinon essais directement d'utliser la lib HID : https://www.arduino.cc/en/Reference/HID, avec le code NicoHood : https://github.com/NicoHood/HID