Différences entre versions de « Projets:Boitier Souris Vers XAC »

De wikilab
 
(31 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
 +
{{Infobox projet
 +
|Image principale=Cartes en Place.jpg
 +
|Description=Dispositif pour permettre de connecter une souris avec ou sans fil sur une XAC ( Xbox Adaptative Controller).
 +
|Porteur de projet=Elektron
 +
|Contributeurs=Elektron
 +
|Fabmanager=Delphine
 +
|Référent documentation=Elektron
 +
|Catégorie de handicap=Hors handicap
 +
|Etat d'avancement=Réalisés
 +
|Statut de la documentation=Complète
 +
|Relecture de la documentation=Non vérifiée
 +
|Techniques=teensy
 +
|Durée de fabrication=de 8 à 16 h
 +
|Coût matériel=De 10 à 50 euros
 +
|Niveau=Facile
 +
|Licence=by-sa
 +
|Projet date=2020-11-30
 +
|Nom humanlab=Humanlab_MHK
 +
}}
 
== Description du projet ==
 
== Description du projet ==
  
Ligne 5 : Ligne 24 :
 
Le dispositif sera placé dans un boitier réalisé en impression 3D.
 
Le dispositif sera placé dans un boitier réalisé en impression 3D.
  
Les composants seront placés sur carte de protypage.
+
Les composants seront placés sur carte de prototypage.
  
 
Le projet est basé sur le projet :
 
Le projet est basé sur le projet :
Ligne 49 : Ligne 68 :
 
* 6 vis tête plate 3x5
 
* 6 vis tête plate 3x5
 
* 4 vis tête plate 3x20
 
* 4 vis tête plate 3x20
* 4 pieds anti-dérapant auto-collant
+
* 4 pieds anti-dérapant auto-collant diam 8mm
  
 
==Outils nécessaires==
 
==Outils nécessaires==
  
 
* Imprimante 3d (Réalisation du boîtier)
 
* Imprimante 3d (Réalisation du boîtier)
* IDE Arduino 1.813 ( Logiciel )
+
* Pour modifier le code source, le compiler et le charger dans le boitier:
* TeensyDuino 1.53 ( Logiciel )
+
** [https://www.arduino.cc/en/software IDE Arduino 1.813 ( Logiciel )]
 +
** [https://www.pjrc.com/teensy/td_153/TeensyduinoInstall.exe TeensyDuino 1.53 ( Logiciel )]
 +
* Pour uniquement charger le code source déjà compilé dans le boîtier:
 +
** [https://www.pjrc.com/teensy/loader_win10.html teensy.exe ( Logiciel)]
  
 
==Coût==
 
==Coût==
Ligne 77 : Ligne 99 :
 
**Les fichiers kicad: [[File:Kicad LC USBHID Mouse-to-Joy XAC-PC.zip]]
 
**Les fichiers kicad: [[File:Kicad LC USBHID Mouse-to-Joy XAC-PC.zip]]
  
=== Préparation de l'environnement pour Windows ===
+
 
 +
=== Pour modifier le code source, le compiler et le charger dans le boitier ===
 +
==== Préparation de l'environnement pour Windows ====
 
* Installer l'IDE Arduino (1.8.13)
 
* Installer l'IDE Arduino (1.8.13)
 
* Installer [https://www.pjrc.com/teensy/td_153/TeensyduinoInstall.exe teensyduino 1.53] (attention seulement compatible avec certaines versions d'Arduino)
 
* Installer [https://www.pjrc.com/teensy/td_153/TeensyduinoInstall.exe teensyduino 1.53] (attention seulement compatible avec certaines versions d'Arduino)
  
==== Dossiers à placer dans le dossier \librarie\ de l'Arduino ====
+
===== Dossiers à placer dans le dossier \librarie\ de l'Arduino =====
  
 
Deux bibliothèques sont à ajouter : Joystick1 (version modifiée de la bibliothèque xac-mouse2joy, et USB_Host_Shield_20)
 
Deux bibliothèques sont à ajouter : Joystick1 (version modifiée de la bibliothèque xac-mouse2joy, et USB_Host_Shield_20)
Ligne 91 : Ligne 115 :
 
La bibliothèque USB_Host_Shield_20 permet de configurer les boutons en leur assignant des numéros qu'on retrouve dans l'interface XAC ou interface de la console. C'est dans le fichier MouseParser.h du sketch qu'on assigne ces boutons.
 
La bibliothèque USB_Host_Shield_20 permet de configurer les boutons en leur assignant des numéros qu'on retrouve dans l'interface XAC ou interface de la console. C'est dans le fichier MouseParser.h du sketch qu'on assigne ces boutons.
  
==== Dossiers à placer dans le dossier \hardware\ de l'Arduino ====
+
===== Dossiers à placer dans le dossier \hardware\ de l'Arduino =====
  
 
[[File:Dossier Hardware.zip|Télécharger les dossiers et les copier dans dossier \hardware\ de Arduino]].
 
[[File:Dossier Hardware.zip|Télécharger les dossiers et les copier dans dossier \hardware\ de Arduino]].
Ligne 99 : Ligne 123 :
 
Précaution : Faire un backup des fichiers originaux avant de les remplacer. En effet ce changement de configuration vient modifier les headers de certains fichiers lors de la compilation.
 
Précaution : Faire un backup des fichiers originaux avant de les remplacer. En effet ce changement de configuration vient modifier les headers de certains fichiers lors de la compilation.
  
==== Code Arduino ====
+
===== Code Arduino =====
 
'''Attention pour que programme compile sans erreur, il faut choisir dans l'onglet "Outils" choisir type de carte "Teensy LC" et de choisir "Outil\USB type => Serial+Joystick"
 
'''Attention pour que programme compile sans erreur, il faut choisir dans l'onglet "Outils" choisir type de carte "Teensy LC" et de choisir "Outil\USB type => Serial+Joystick"
  
Ligne 106 : Ligne 130 :
 
* USB Hid vers XAC ou Pc carte Teensy LC :
 
* USB Hid vers XAC ou Pc carte Teensy LC :
 
[[File:LC USBHID Mouse-to-Joy XAC-PC v2.zip]]
 
[[File:LC USBHID Mouse-to-Joy XAC-PC v2.zip]]
 +
 +
=== Pour uniquement charger le code source déjà compilé dans le boîtier ===
 +
*Téléchargez l'exécutable "Teensy.exe" et placez le dossier de votre choix
 +
**[https://www.pjrc.com/teensy/loader_win10.html teensy.exe ( Logiciel)]
 +
*Téléchargez le fichier a écrire dans le boitier (Dans la carte Teensy)
 +
**[[File:LC USBHID Mouse-to-Joy XAC-PC v2.txt | Fichier TXT]]
 +
* Suivez les instructions sur le site de PJRC pour écrire ce fichier dans le boitier
 +
 +
(Pour plus de clarté dans vos fichiers, vous pouvez changer l'extension du fichier '.txt' par '.hex')
 +
 +
"LC USBHID Mouse-to-Joy XAC-PC v2.txt"  =>  "LC USBHID Mouse-to-Joy XAC-PC v2.hex"
  
 
== Etapes de fabrication pas à pas ==
 
== Etapes de fabrication pas à pas ==
Ligne 123 : Ligne 158 :
 
[[File:Coupe Piste v2.jpg|300px]]
 
[[File:Coupe Piste v2.jpg|300px]]
  
=== Câblage des cartes ===
 
  
 +
=== Création PCB ===
 +
 +
Implantez les composants et supports sur le PCB selon le schéma  [[Media:Schema Carte Xac v2.pdf| Schéma en Pdf]]
 +
 +
et en vous inspirant des photos :
 +
 +
[[File:PCB vierge.jpg|300px]]
 
[[File:Cnx Host.jpg|300px]]
 
[[File:Cnx Host.jpg|300px]]
 
[[File:Cnx Teensy.jpg|300px]]
 
[[File:Cnx Teensy.jpg|300px]]
 +
[[File:Dessous Host.jpg|300px]]
 +
[[File:Dessous Cablage.jpg|300px]]
 +
[[File:Dessus Cablage.jpg|300px]]
 +
[[File:Cartes et Pcb.jpg|300px]]
 +
[[File:Nappe.jpg|300px]]
 +
[[File:Led Pot.jpg|300px]]
 +
 +
=== Implantation dans le boitier ===
 +
 +
Lorsque le PCB est terminé, vérifiez le fonctionnement avant de le poser dans le boitier
 +
 +
Recoupez les angles des cartes avant de les mettre en place
  
 +
Fixez les cartes avec les vis de 3x6mm
  
== Mise en route ==
+
[[File:Cartes en Place.jpg|300px]]
 +
 
 +
Positionnez le dessus et fixer le au moyens des 4 vis 3x20
 +
 
 +
[[File:Boitier Fini.jpg|300px]]
  
====1-Vérifier que le montage Teensy+Host USB est reconnu en tant que joystick par l'ordinateur====
+
Collez les patin antidérapants sous le boitier
#Connecter uniquement la teensy avec le host USB à l'ordinateur
 
#Ouvrir le [[Media:LC JPS-to-Joy XAC-PC TEST.zip|sketch test du joystick :LC JPS-to-Joy XAC-PC_TEST]]
 
#Dans l'IDE Arduino, choisir dans Outil>USB Type : Joystick +Serial (vous devez voir cette option sinon c'est que les librairies sont mal ou pas installées)
 
#Téléverser le sketch sur la Teensy.
 
#Ouvrir les périphériques contrôleur de jeu :
 
* Sur Windows, taper dans la barre de recherche en bas à gauche, "Configurer les contrôleurs de jeu" puis la fenêtre Contrôleurs de jeu s'ouvre et vous devriez voir Keyboard/Mouse/Joystick, puis cliquer  sur Propriétés pour avoir un affichage de l'état du joystick.)
 
*sur linux: taper en ligne de commande :jstest-gtk
 
#Vous devriez voir le joystick bouger
 
  
====2-Vérifier la communication entre la XAC et l'ordinateur====
+
[[File:Pose Patins.jpg|300px]]
#Connecter la XAC à l'ordinateur (le pilote s'installe à la connection)
 
#On garde les propriétés du contrôleur de jeu ouvert
 
#On doit voir le dispositif xbox reconnu, avec le périphérique qui s'actualise dans la fenêtre des propriétés du controleur. Evidemment ici on ne voit pas le joystick bouger puisque la teensy n'est pas connectée
 
(Il faut télécharger l'interface de la xbox pour ordi pour pouvoir prendre le contrôle/remapper/etc... (ou on peut le faire sur la xbox)
 
  
====3-Vérifier que le joystick simulé par la teensy est reconnu quand connecté à la XAC====
+
== Mise en route ==
#connecter le proto host usb/teensy sur la xac toujours avec le [[Media:LC JPS-to-Joy XAC-PC TEST.zip|sketch test du joystick :LC JPS-to-Joy XAC-PC_TEST]]
 
#vérifier dans les propriétés du contrôleur de jeu que le joystick bouge
 
  
====4-Test avec le joystick du fauteuil====
+
=== Lancement ===
#Teléverser le sketch [[Media:LC BTHID Mouse-to-Joy XAC-PC.zip|LC_BTHID_Mouse-to-Joy_XAC-PC]] sur la teensy
+
* Placer le réglage de sensibilité à 10h (légèrement sur la droite)
#Connecter directement la teensy+host sur le pc
+
* Connectez une souris avec fil ou sans fil (dongle ) sur le boitier
#Vérifier dans les propriétés du contrôleur que le joystick du fauteuil envoie en bluetooth les informations de déplacement
+
* Connecter le boitier à la XAC
 +
* Les trois Led (Rouge, verte, bleue) clignotent 2 fois (1")
 +
* La Led verte s'allume
 +
* La Led bleue s'allume après 3"
 +
* La Led rouge s'allume suivant les mouvements de la souris
  
====5-Vérifier que la XAC est reconnue par le PC====
+
=== Sensibilité ===
#Déconnecter la teensy du pc
 
#Connecter la xac sur le pc
 
#Vérifier dans le contrôleur de jeu que la xbox one (xac) est bien reconnue (le contrôleur doit actualiser le nom du périphérique reconnu)
 
#connecter ensuite la teensy+host usb sur la xac. Vous devriez visualiser les mouvements du joystick du fauteuil.
 
  
====6-[OPTIONNEL] Test avec l'application Accessoire xbox====
+
Le réglage de sensibilité fonctionne de la façon suivante:
#Télécharger l'application. '''Cette application est uniquement valable pour Windows 10'''. Elle permet de visualiser la XAC et de la paramétrer. https://www.microsoft.com/fr-fr/p/accessoires-xbox/9nblggh30xj3?activetab=pivot:regionofsystemrequirementstab
 
#Démarrer l'application
 
Aller sur "configurer">Editer en cliquant sur l'icône crayon>Stick analogique gauche
 
Vous devriez visualiser le joystick bouger.
 
  
La sensibilité du joystick se règle directement sur la xac. Il est préférable de laisser toute la configuration du mapping se faire dans l'interface la XAC et de ne pas introduire cette notion dans le code.
+
* Au centre
 +
** les mouvements de la souris ne sont pas pris en compte
 +
* Entre le centre et la gauche
 +
** Les mouvements de la souris sont inversées et sont proportionnels à la position de l'ajustable
 +
* Entre le centre et la droite
 +
** Les mouvements de la souris sont proportionnels à la position de l'ajustable
  
====7-Tester le dispositif sur la XBOX====
+
Pour que le réglage soit effectif, il faut "rebouter" la carte Teensy en appuyant sur le Bouton 'Reboot'
#Déconnecter la XAC du PC
 
#Connecter la XAC +teensy host USB sur la XBOX
 
  
 
==Durée de fabrication du prototype final==
 
==Durée de fabrication du prototype final==
Ligne 179 : Ligne 222 :
  
 
[[Category:Projets]]
 
[[Category:Projets]]
[[Category:En cours]]
+
[[Category:Réalisés]]
 +
[[Category:Hors handicap]]

Version actuelle datée du 5 avril 2023 à 16:56

Boitier Souris Vers XAC

Cartes en Place.jpg

Informations
Description Dispositif pour permettre de connecter une souris avec ou sans fil sur une XAC ( Xbox Adaptative Controller).
Catégorie Hors handicap
Etat d'avancement Réalisés
Techniques teensy
Durée de fabrication de 8 à 16 h
Coût matériel De 10 à 50 euros
Niveau Facile
Licence by-sa
Date de création 2020-11-30
Équipe
Porteur de projet Elektron
Contributeurs Elektron
Fabmanager Delphine
Référent documentation Elektron
Nom humanlab Humanlab_MHK
Documentation
Statut de la documentation Complète
Relecture de la documentation Non vérifiée

Description du projet

Réalisation d'un dispositif pour permettre de connecter une souris avec ou sans fil sur une XAC ( Xbox Adaptative Controller).

Le dispositif sera placé dans un boitier réalisé en impression 3D.

Les composants seront placés sur carte de prototypage.

Le projet est basé sur le projet :

Interfaces XAC

Cahier des charges

Pouvoir connecter facilement une souris sans fil ou avec fil sur une XAC (Xbox Adaptive Controller).

Permettre le réglage de sensibilité sans utilisation d'un ordinateur.

Utiliser des modules du commerce pour réduire au maximum la complexité de réalisation du PCB.

Indication Visuelle du fonctionnement de la carte.

Utiliser l'alimentation fournie par le port Usb de la XAC.

Reprogrammation ou modifications faciles de la carte.

Analyse de l'existant

Pas d'existant, le boitier et les cartes sont fabriqués et achetés spécialement pour ce projet.

Equipe (Porteur de projet et contributeurs)

  • Porteurs du projet :
  • Concepteurs/contributeurs :
  • Animateur (coordinateur du projet)
  • Fabmanager référent
  • Responsable de documentation

Matériel nécessaire

  • Carte Teensy LC
  • Carte Mini Host Usb
  • Led , Bleue, Rouge, Verte; Diam:3mm
  • Poussoir Reboot
  • Résistance Ajustable
  • Carte de Prototypage pas 2.54; 50x70 et 13x49
  • 10m de fil bleu PLA 1.75mm; partie haute du boitier
  • 18m de fil orange PLA 1.75mm; partie basse du boitier
  • 6 vis tête plate 3x5
  • 4 vis tête plate 3x20
  • 4 pieds anti-dérapant auto-collant diam 8mm

Outils nécessaires

Coût

Délai estimé

Hors temps d'impression :

  • Carte : 4 heure
  • Contrôle et programmation Teensy : 1 heure

Fichiers source

Schémas


Pour modifier le code source, le compiler et le charger dans le boitier

Préparation de l'environnement pour Windows

  • Installer l'IDE Arduino (1.8.13)
  • Installer teensyduino 1.53 (attention seulement compatible avec certaines versions d'Arduino)
Dossiers à placer dans le dossier \librarie\ de l'Arduino

Deux bibliothèques sont à ajouter : Joystick1 (version modifiée de la bibliothèque xac-mouse2joy, et USB_Host_Shield_20)

Fichier:Xac V2 Bibliotheque.zip.

Cette version de la bibliothèque USB_Host_Shield_20 est plus récente que celle du projet cité plus haut

La bibliothèque USB_Host_Shield_20 permet de configurer les boutons en leur assignant des numéros qu'on retrouve dans l'interface XAC ou interface de la console. C'est dans le fichier MouseParser.h du sketch qu'on assigne ces boutons.

Dossiers à placer dans le dossier \hardware\ de l'Arduino

Fichier:Dossier Hardware.zip.

Ces fichiers remplacent certains fichiers dans le dossier \hardware\teensy\avr\

Précaution : Faire un backup des fichiers originaux avant de les remplacer. En effet ce changement de configuration vient modifier les headers de certains fichiers lors de la compilation.

Code Arduino

Attention pour que programme compile sans erreur, il faut choisir dans l'onglet "Outils" choisir type de carte "Teensy LC" et de choisir "Outil\USB type => Serial+Joystick"

Si cette option n'est pas visible, c'est que les bibliothèques sont mal ou pas installées.

  • USB Hid vers XAC ou Pc carte Teensy LC :

Fichier:LC USBHID Mouse-to-Joy XAC-PC v2.zip

Pour uniquement charger le code source déjà compilé dans le boîtier

(Pour plus de clarté dans vos fichiers, vous pouvez changer l'extension du fichier '.txt' par '.hex')

"LC USBHID Mouse-to-Joy XAC-PC v2.txt"  =>  "LC USBHID Mouse-to-Joy XAC-PC v2.hex"

Etapes de fabrication pas à pas

Préparation de la carte Mini USB Host

La carte Mini Usb Host doit être modifiée.

(Certaines cartes possèdent un strap qui permet de le faire sans couper une piste)

Il faut permettre l'alimentation du connecteur USB avec 5 volt et non 3.3v par défaut avec cette carte:

  • Etape 1 : Couper la piste comme sur la photo (juste avant l'inscription "2.2k")
  • Etape 2: Placer une broche male droite dans la pastille située sous la broche 24;

Sur la photo, 3 broches ont été placées; cela donne du maintien aux broches

Coupe Piste v2.jpg


Création PCB

Implantez les composants et supports sur le PCB selon le schéma Schéma en Pdf

et en vous inspirant des photos :

PCB vierge.jpg Cnx Host.jpg Cnx Teensy.jpg Dessous Host.jpg Dessous Cablage.jpg Dessus Cablage.jpg Cartes et Pcb.jpg Nappe.jpg Led Pot.jpg

Implantation dans le boitier

Lorsque le PCB est terminé, vérifiez le fonctionnement avant de le poser dans le boitier

Recoupez les angles des cartes avant de les mettre en place

Fixez les cartes avec les vis de 3x6mm

Cartes en Place.jpg

Positionnez le dessus et fixer le au moyens des 4 vis 3x20

Boitier Fini.jpg

Collez les patin antidérapants sous le boitier

Pose Patins.jpg

Mise en route

Lancement

  • Placer le réglage de sensibilité à 10h (légèrement sur la droite)
  • Connectez une souris avec fil ou sans fil (dongle ) sur le boitier
  • Connecter le boitier à la XAC
  • Les trois Led (Rouge, verte, bleue) clignotent 2 fois (1")
  • La Led verte s'allume
  • La Led bleue s'allume après 3"
  • La Led rouge s'allume suivant les mouvements de la souris

Sensibilité

Le réglage de sensibilité fonctionne de la façon suivante:

  • Au centre
    • les mouvements de la souris ne sont pas pris en compte
  • Entre le centre et la gauche
    • Les mouvements de la souris sont inversées et sont proportionnels à la position de l'ajustable
  • Entre le centre et la droite
    • Les mouvements de la souris sont proportionnels à la position de l'ajustable

Pour que le réglage soit effectif, il faut "rebouter" la carte Teensy en appuyant sur le Bouton 'Reboot'

Durée de fabrication du prototype final

Journal de bord