LOCODUINO

Aide
Forum de discussion
Dépôt GIT Locoduino
Flux RSS

samedi 27 avril 2024

Visiteurs connectés : 62

Ma nouvelle manette DCC avec ESP32 (1)

Evolution de la manette déjà publiée

.
Par : msport

DIFFICULTÉ :

Vous avez réalisé Une manette simple et autonome pour LaBox ou vous vous y êtes intéressé. Vous maitrisez les concepts, la démarche et vous avez les moyens pour sa réalisation.
Depuis la parution de cet article, la technique a avancé et un nouveau microcontrôleur, l’ESP32, a été intégré dans l’écosystème Arduino.
Une manette simple et autonome pour LaBox fonctionne bien, mais elle est basée sur un Arduino Pro Mini dont les performances sont correctes, alors que l’ESP32 rend cette manette très réactive.

<

Cette fois ci, on ne fera pas de montage sur table comme pour Ma première manette DCC (1) et c’est le circuit imprimé qui supporte tous les composants.
Cette manette basique utilisera Ma première centrale DCC ou Une station DCC complète, polyvalente et économique avec JMRI. en autonomie, éventuellement sans ordinateur ou Raspberry. Ou encore LaBox. (article à venir)
Le sans fil (radio) assure le lien avec la centrale via une paire de HC12, tout en permettant la connexion de plusieurs manettes simultanément. Ici, on n’exploite pas le WiFi de l’ESP32. Cette manette est destinée aux centrales DCC++ et DCCpp. Cette manette se connecte sur le port série d’une centrale via une liaison radio tout simplement, donc toute centrale configurée de cette sorte. Une liaison filaire est également possible pour une manette unique.

Le schéma

Schéma

Le circuit imprimé définitif

Circuit imprimé

Ci-dessous les photos du circuit. Il comporte coté cuivre trois résistances CMS R2, R3 et R4. Ce sont des 10 K 1206 pour permettre l’affichage de la tension de la batterie à la mise sous tension. R4 est réservée à un usage ultérieur qui pourrait être le réglage de la luminosité de l’écran à partir d’une LDR.
La visserie hexagonale est en nylon afin de ne pas créer de court-circuit.
Vous vérifierez que votre interrupteur ferme les positions des broches correspondant aux pistes. (les deux en bas à droite, vue de dessous).

La manette au complet
La manette au complet
Circuit imprimé coté composants
Circuit imprimé coté composants
Circuit imprimé coté cuivre
Circuit imprimé coté cuivre
Les composants
Les composants
Step up 3,7V vers 5V
Step up 3,7V vers 5V

Ce petit module doit être soudé avec des queues de résistance.

Vous noterez que sur la photo, les boutons ne sont pas soudés. Leurs pattes faisant ressort, le contact est assuré et le montage fonctionne bien pour les tests. Ces boutons seront remplacés par des modèles à queue longue pour la mise en boite afin que les capuchons dépassent de la surface du boitier. Ces modèles à queue longue sont fragiles et cela évite les casser pendant les tests.

Le matériel

Les composants sont ceux de Une manette simple et autonome pour LaBox sauf :

  • Arduino Pro Mini remplacé par un ESP32 (header femelle 15 broches à prévoir)
  • régulateur 3.3V
  • condensateur 100 nF CMS
  • 10 câbles DuPont femelle/femelle (pour programmation de l’Arduino via FTDI)
La liste des composants

La batterie

La batterie 1000mAh embarque de l’électronique empêchant sa décharge profonde et sa destruction. Elle est doublement protégée par le chargeur qui comporte aussi cette fonction.
L’autonomie est supérieure à une heure. L’autonomie peut être augmentée en adoptant une batterie de plus grande capacité.

Attention en manipulant les batteries, même les petites capacités peuvent faire des dégâts en cas de court-circuit

Les bibliothèques

La liste :

  • SPI.h
  • TFT_eSPI.h
  • Adafruit_GFX.h
  • Adafruit_ST7735.h
  • ESP32Encoder.h
  • Keypad.h

Vous devez avoir installé les bibliothèques :

Si vous commencez à utiliser la bibliothèque TFT_eSPI, il vous est dit : Assurez-vous que toutes les connexions du pilote d’affichage et des broches sont correctes en éditant le fichier User_Setup.h dans le dossier de la bibliothèque TFT_eSPI.
Ici, ces User_Setup.h ont été configurés pour un écran ST7735, vous remplacerez donc le User_Setup.h de votre bibliothèque TFT_eSPI par un de ceux-ci.

User_Setup.h pour ST7735
User_Setup.h V2 pour ST7735

Attention, il existe des variantes de cet écran 1,44" ST7735 dont les déclinaisons figurent dans le fichier User_Setup.h. Vous trouverez au dos V1.1 ou V2.1 (par exemple)
Vous serez peut-être obligé de tester plusieurs User_Setup.h avant de trouver celui qui correspond à votre modèle. Deux versions vous sont proposées ici.
Par ailleurs, j’ai récemment reçu des exemplaires (deux sur trois) de V1.1 dont l’affichage était très vif à la mise sous tension et qui devenaient rapidement bleutés avec un échauffement important au niveau de la nappe de connexion (probablement la LED de rétro éclairage). Je pense qu’ils sont utilisables en rajoutant une résistance en série avec la broche LED - ce qui nécessite une intervention sur le circuit imprimé. (ou bien en remplaçant la 5,6 ohms CMS que l’écran comporte) Si vous rencontrez ce problème, ouvrez un sujet sur le forum pour que l’on vous apporte de l’aide

Deux versions de l'écran 1,44"
Deux versions de l’écran 1,44"
  • Adafruit_GFX.h driver de l’écran
  • Adafruit_ST7735.h idem
ESP32Encoder.h
Keypad.h
  • ESP32Encoder.h gestion de l’encodeur rotatif et son bouton
  • Keypad.h gestion du clavier 4x4 boutons

Le programme

Il est sur la même base que celui d’ Une manette simple et autonome pour LaBox. On trouvera dans l’article de cette manette des explications détaillées.

programme esp32_throttle_st_13.ino

Le mode d’emploi

On se reportera à celui d’ Une manette simple et autonome pour LaBox.
Sans changement pour les locomotives : Vitesse, sens, adresse, numéro.
Il a été amélioré pour les fonctions. En 4 groupes choisies avec la touche D.
Chaque groupe de fonctions est affiché sur une ligne de gauche à droite.
(1 : fonction enclenchée, 0 : fonction déclenchée).
Chaque fonction du groupe est commandée par le pavé numérique depuis 1 jusqu’à 4 ou 8.
Toutes les pressions de touche sont décodées mais seul l’appui dans un groupe (G0, G1, G2, G3) commande la fonction et l’affiche.
L’affichage des fonctions se présente sur quatre lignes :
G0 de F0 à F8
G1 de F9 à F12
G2 de F13 à F20
G3 de F21 à F28
F0 appartient au groupe 0 et est commandé par la touche 0.
Cette disposition correspond à la norme NMRA.

Le fichier à envoyer au fournisseur de circuit imprimé

les fichiers de fabrication.

Gerber

Où acheter ?

Où acheter ?, une liste de fournisseurs.
On se reportera à l’article Une manette simple et autonome pour LaBox dont le matériel est en grande partie identique.
Voir la liste des composants.
https://www.ebay.fr/itm/173596166343 ESP32 8€
https://jlcpcb.com circuit imprimé 5 € les 5
https://www.ebay.fr/itm/173474533492 l’écran TFT 1.44" 8,25€
https://fr.aliexpress.com/item/3294... écran TFT 1.44" 8,25€
https://www.ebay.fr/itm/354967542108 step up 3,7V 5V 1,28€
https://www.ebay.fr/itm/274596559950 module chargeur 3,7V 2,8 €
Ici, c’est un écran ST7735, étiquette verte.
si un lien ne fonctionne pas, une recherche avec le nom du produit donnera des résultats actualisés.

Réagissez à « Ma nouvelle manette DCC avec ESP32 (1) »

Qui êtes-vous ?
Votre message

Pour créer des paragraphes, laissez simplement des lignes vides.

Lien hypertexte

(Si votre message se réfère à un article publié sur le Web, ou à une page fournissant plus d’informations, vous pouvez indiquer ci-après le titre de la page et son adresse.)

Rubrique « Matériel »

Le microcontrôleur ATtiny45 (1)

Le microcontrôleur ATtiny45 (2)

Le microcontrôleur ATtiny45 (3)

Le microcontrôleur ATtiny45 (4)

Le microcontrôleur ATtiny45 (5)

Le microcontrôleur ATtiny45 (6)

Le microcontrôleur ATtiny45 (7)

Le microcontrôleur ATtiny45 (8)

Le microcontrôleur ATtiny45 (9)

Le microcontrôleur ATtiny45 (10)

Ma première centrale DCC

Choisir sa carte Arduino

Une station DCC complète, polyvalente et économique avec JMRI.

Écran couleur tactile Kuman

Capteurs à effet Hall

Programmation des ATtiny Digispark

LES SATELLITES AUTONOMES : une nouvelle approche du concept de Satellites Locoduino. (5)

Ma première manette DCC (1)

Une station DCC minimale avec boutons de commande et écran Oled

Ma première manette DCC (2)

Le Raspberry Pi Pico

Signalisation et sonorisation du va-et-vient pour deux trains

Configurateur de CV sur base de la station DCC minimale

Fabrication d’un programmateur pour microcontrôleurs ATtiny

Détection RailCom© avec ESP32 (ou Arduino)

Adieu Uno, bonjour Uno !

LES SATELLITES AUTONOMES : une nouvelle approche du concept de Satellites Locoduino. (1)

LES SATELLITES AUTONOMES : une nouvelle approche du concept de Satellites Locoduino. (2)

LES SATELLITES AUTONOMES : une nouvelle approche du concept de Satellites Locoduino. (3)

LES SATELLITES AUTONOMES : une nouvelle approche du concept de Satellites Locoduino. (4)

Fonctionnement et pilotage d’une DEL

La carte Arduino Uno

Qu’est ce qu’une carte Arduino ?

Amplifier le signal de sortie d’un ARDUINO avec un ULN 2803

Un minimum pour jouer rapidement avec un Arduino

Où acheter ?

Résistances, kézako ?

Les cartes Teensy

Relais électromagnétique

Les diodes classiques

Détecteurs à ultrasons

De nouveaux composants pour continuer à jouer

Commande de moteur à courant continu

Bouton poussoir

Les différents types de mouvements d’un servomoteur

Les encodeurs en quadrature

Les indispensables du prototypage

Les écrans LCD alphanumériques

Des bus de communication pour l’Arduino

Les interrupteurs

Signaux lumineux et Arduino

Les shields de prototypage et de connexion

Les derniers articles

LES SATELLITES AUTONOMES : une nouvelle approche du concept de Satellites Locoduino. (5)


bobyAndCo

LES SATELLITES AUTONOMES : une nouvelle approche du concept de Satellites Locoduino. (4)


bobyAndCo

LES SATELLITES AUTONOMES : une nouvelle approche du concept de Satellites Locoduino. (3)


bobyAndCo

LES SATELLITES AUTONOMES : une nouvelle approche du concept de Satellites Locoduino. (2)


bobyAndCo

LES SATELLITES AUTONOMES : une nouvelle approche du concept de Satellites Locoduino. (1)


bobyAndCo

Détection RailCom© avec ESP32 (ou Arduino)


bobyAndCo, catplus

Ma nouvelle manette DCC avec ESP32 (2)


msport

Ma nouvelle manette DCC avec ESP32 (1)


msport

Adieu Uno, bonjour Uno !


Christian

Fabrication d’un programmateur pour microcontrôleurs ATtiny


Christian, Dominique, Jean-Luc

Les articles les plus lus

Commande de moteur à courant continu

Une station DCC complète, polyvalente et économique avec JMRI.

Capteurs à effet Hall

La carte Arduino Uno

Programmation des ATtiny Digispark

Relais électromagnétique

LES SATELLITES AUTONOMES : une nouvelle approche du concept de Satellites Locoduino. (1)

Configurateur de CV sur base de la station DCC minimale

Ma première centrale DCC

Les diodes classiques