Outils pour utilisateurs

Outils du site


dev:arduino:joystick

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
dev:arduino:joystick [2021/06/03 18:42] – créée yoanndev:arduino:joystick [2022/07/31 12:47] (Version actuelle) – Ajout référence yoann
Ligne 4: Ligne 4:
 ====== Arduino: Joystick ====== ====== Arduino: Joystick ======
  
-Il est possible de modifier le firmware de la puce de communication FTDI présente sur la carte Arduino pour qu'elle soit reconnue comme un périphérique USB HID de type joystick.+Il est possible de modifier le firmware de la puce de communication FTDI présente sur la carte Arduino pour qu'elle soit reconnue comme un périphérique USB HID de type joystick. C'est ce que permet de faire le projet **UnoJoy** d' Alan Chatham.
  
 <note> <note>
Ligne 10: Ligne 10:
 </note> </note>
  
-Installer la bibliothèque **UnoJoy** et **ATmel FLIP tool** +Cloner le projet 
 +<code bash> 
 +git clone https://github.com/AlanChatham/UnoJoy.git 
 +cd UnoJoy 
 +</code>
  
-===== Flash du firmware =====+Le système se compose de 3 parties: 
 +  - outils logiciels de flashage: dfu-tools sous Linux pour flasher le firmware sur la puce de communication de la carte Arduino; 
 +  - Le firmware  
 +  - La bibliothèque UnoJoy pour Arduino à ajouter au Sketch
  
-Activer le mode DFU((**D**evice **F**irmware **U**pdate)) en plaçant le cavalier sur les broches 5-6 (les plus proches du connecteur USB). 
-Lancer le flashage du firmware 
  
- + 
 +===== Flasher le firmware ===== 
 + 
 +Installer le paquet **dfu-programmer** 
 + 
 +<code bash> 
 +sudo apt install dfu-programmer 
 +</code> 
 + 
 + 
 +Activer le mode DFU((**D**evice **F**irmware **U**pdate)): 
 +  * Mettre l'Arduino sous tension 
 +  * Placer brièvement le cavalier sur les broches 5-6 (les plus proches du connecteur USB) pour redémarrer la carte en mode DFU 
 + 
 +Flasher le firmware en exécutant le script: 
 +<code bash> 
 +$ cd UnoJoy 
 +$ sudo ./TurnIntoAJoystick.sh 
 +</code> 
 + 
 +La commande retourne les messages suivants: 
 +<code> 
 +
 +Abracadabra! 
 +Trying to program for Arduino Uno R1/R2... 
 +Validating... 
 +2596 bytes used (63.38%) 
 + 
 +Unplug your Arduino and plug it back in. It's a joystick now! 
 +</code> 
 + 
 +Déconnecter/reconnecter la carte sur le port USB. Si on affiche à présent les périphériques USB, on peut voir dans la liste un device "Silicon Labs UnoJoy Joystick" 
 +<code bash> 
 +$ lsusb 
 +Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub 
 +Bus 001 Device 003: ID 04f2:b541 Chicony Electronics Co., Ltd Integrated Camera 
 +Bus 001 Device 002: ID 8087:0a2b Intel Corp.  
 +Bus 001 Device 008: ID 10c4:82c0 Silicon Labs UnoJoy Joystick 
 +Bus 001 Device 004: ID 275d:0ba6  USB OPTICAL MOUSE  
 +Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub 
 +</code> 
 + 
 +Dans cet exemple présent sur le bus 001 périphérique 008, on peut afficher ces informations détaillées avec la commande: 
 +<code bash> 
 +lsusb -D /dev/bus/usb/001/008 
 +</code> 
 + 
 + 
 +===== Tester ===== 
 + 
 +Tester/recalibrer le périphérique avec l'application **jstest-gtk**: 
 + 
 +<code bash> 
 +sudo apt install jstest-gtk 
 +</code>
  
 ===== Références ===== ===== Références =====
  
   * https://create.arduino.cc/projecthub/Ingeimaks/arduino-joystick-8c9722   * https://create.arduino.cc/projecthub/Ingeimaks/arduino-joystick-8c9722
 +  * https://github.com/AlanChatham/UnoJoy
 +  * https://www.arduino.cc/en/Hacking/DFUProgramming8U2
 +  * [[https://www.thingiverse.com/thing:4576634|Joystick imprimable arduino effet hall]]
dev/arduino/joystick.1622745762.txt.gz · Dernière modification : 2021/06/03 18:42 de yoann