Mod “Button Box” WIP

Le mod “Button box” permet de connecter jusqu’à 16 boutons via un petit PCB. On peut attribuer à chaque bouton une fonctionnalité spécifique (encodeur, touche clavier etc…).

Sommaire

  1. Liste de course
  2. Le Cablâge
  3. Les fonctions
  4. Le code
  5. Les fichiers 3D

1) Liste de course

Le mode “Button Box” nécessite

  • Un MCP23017 (et non MCP23S17 !!!) (Amazon, Aliexpress)
  • Connecteur GX12 4 pin (Amazon, Aliexpress)
  • Fils et connecteurs dupont (Déjà présent dans la liste principale)

2) Câblage

Le câblage est simple : Il y a 4 pins d’entrée sur le PCB :

  • le 5V va au 5V
  • Le GND (ground) va à la masse
  • Le SDA va au pin 2 de l’Arduino
  • Le SCL va au pin 3 de l’Arduino
  • A0, A1 et A2 doivent être tous les trois reliés à la masse.

5) Les fonctions

Chaque bouton peut effectuer une fonction particulière dont voici la liste :

0 – désactivé, le bouton ne fait rien. Idéal si vous ne l’avez pas câblé

1 – bouton simple : réagit comme n’importe quel bouton. Exemple : ath, lcd, centrer vue VR…

2 – encodeur rotatif : le bouton suivant doit être associé à la fonction 0.

3 – calibration : permet de réaffecter les vitesses de la boîte, voir explications plus bas

4 – inversion de la boîte : permute 1-2, 3-4, 5-6. Exemple : ancienne Ferrari

5 – reset pin : réinitialise les pins. Efface la configuration de la fonction calibration

6 – Flèche du haut

7 – Flèche du bas

8 – Flèche de droite

9 – Flèche de gauche

10 – Entrée

11 – Echap

12 – Activer/Désactiver le frein à main

13 – Passer de Analog Handbrake à Digital Handbrake

Et enfin on peut affecter à un bouton n’importe quelle touche du clavier.

4) Le code

Dans le code ( version >2.52), il n’y a pas grand chose à faire. Il suffit de :

1 – Ajouter la librairie disponibles ici. Après le téléchargement et l’extraction, ouvrir le logiciel Arduino, aller dans Sketch>Inclure une librairie>Ajouter une bibliothèque ZIP et de sélectionner la librairie.

2 – Activer le mod ButtonBoxMod: remplacer //#define ButtonBoxMod par #define ButtonBoxMod

3 – Assigner à chaque bouton une fonction dans la liste :

int ButtonBoxPinAssignement[16] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};

Par exemple avec : int ButtonBoxPinAssignement[16] = {1, 1, 2, 0, 10, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};

A0, A1 sont des boutons simples, A2, A3 correspondent à un encodeur rotatif, A4 la touche entrée et A5 la touche échap. Les autres touchent sont désactivées

5) Les fichiers 3D

Il n’y en a pas ! Pourquoi ? Parce qu’il est impossible de proposer quelque chose qui plairait à tout le monde ou qui soit entièrement personnalisable et aussi montable sur tout.

Deux options :

  • Adapter une boîte déjà existante, on trouve pleins de projets sur internet.
  • Dessiner votre propre boîte ! Si vous vous êtes lancé dans la fabrication de la boîte, vous serez déjà à l’aise avec l’impression 3D, pourquoi ne pas acquérir les bases du dessin sur ordinateur ?

Peut-être que je publierai un design de référence plus tard. Dans tous les cas : soudez des connecteurs dupont sur le PCB, cela permet de tester pleins de branchement sans consommer une carte à chaque test, et prévoyez un connecteur GX12 4 pin sur la button box pour pouvoir brancher et débrancher facilement la boîte.

J’ai soudé les connecteurs du côté où on a toutes les indications, sinon c’est source d’erreur.
Le connecteur GX12 (bon GX16 ici, je n’avais plus de GX12) permet de monter/démonter facilement.
De l’autre côté, j’ai un fil qui relie A0, A1 et A2 à la masse du PCB (A ne veut pas dire ici analogique).
Passionné de bagnoles depuis tout petit ! J'ai appris les multiples déclinaisons de la Skyline R34 à travers les Gran Tursimo, jusqu'à découvrir GTR2 au volant d'un clavier. Quelques années plus tard je replonge corps et âmes dans le Sim Racing équipé d'un G27 qui me fera entrer dans le monde du DIY. Toujours à la recherche d'une immersion hors d'atteinte dans la réalité, je développe des projets que je prends soin de rendre accessibles à tout possesseur d'imprimante 3D !
Posts created 114

2 thoughts on “Mod “Button Box” WIP

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Related Posts

Begin typing your search term above and press enter to search. Press ESC to cancel.

Back To Top
Ads Blocker Image Powered by Code Help Pro

Ads Blocker Détecté !!!

Nous avons détecté que vous utilisez un bloqueur de pub. Merci de le désactiver afin de nous soutenir et de poursuivre la navigation. 

Devenez contributeur Patreon pour accéder au site sans pub !