Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - nopxor

Pages: 1 [2] 3 4 ... 14
16
Vos projets / Identification de matériel roulant
« le: septembre 25, 2024, 07:25:33 pm »
Bonjour,

Geoff Bunza a réalisé un scanner de mini codes barres.  8)

https://forum.mrhmag.com/post/sma48-working-automatic-car-identification-aci-for-model-railroaders-13446525

C'est une alternative à l'identification par RFID.

Les codes barres sont collés sous les wagons et une mini caméra placée sous la voie les scanne. Un ESP32 fait l'acquisition et transmet par WIFI les listes identifiées à JMRI.  :)

17
Bus CAN / Re : Bus CAN DIY compatible JMRI
« le: septembre 20, 2024, 11:49:49 am »
Salut François,

C'est vrai, JMRI m'impressionne vraiment par sa puissance.
Il se révèle un gestionnaire hors pair pour configurer un réseau CAN.
Au début on est impressionné par toutes ces fenêtres de configuration, mais à l'usage c'est vraiment génial.
Chapeau bas à tous ses dévellopeurs.  :)

18
Bus CAN / Re : Bus CAN DIY compatible JMRI
« le: septembre 18, 2024, 07:22:04 pm »
Bonsoir Marcel,
Cela fait beaucoup de boulot pour allumer une led  :) mais cela offre des perspectives intéressantes.
Rien qu'avec la passerelle CAN-USB, on économise plus de 70€.
Si j' ai du courage je dessinerai un pcb pour un câblage propre.

20
Bus CAN / Re : Bus CAN DIY compatible JMRI
« le: septembre 18, 2024, 05:09:39 pm »
La suite du tuto : 2 sur 2

menu OpenLCB -> Configurer noeud



La fenètre Network Tree affiche les noeuds du réseau CAN avec leur identifiants en hexadécimal
Il y a bien 2 Arduino IO boards et 1 Arduino Serial Bridge de listés
Il y a aussi un noeud pour JMRI

05.01.01.01.18.2A - Arduino IO Board est le CAN1
05.01.01.01.18.2B - Arduino IO Board est le CAN2

cliquer sur le noeud CAN1
puis cliquer sur Open Configuration dialog

cela ouvre la fenêtre de dialogue du CAN1
cliquer sur Segment:Settings
on voit d'abord les 8 onglets des outputs du CAN1



descendre dans la fenêtre jusqu'au 8 inputs
le bouton est connecté (pin32) sur input1
l'appui correspond au niveau LOW cela produit l'event 05.01.01.01.18.2A.00.11
le relachement correspond au niveau HIGH cela produit l'event 05.01.01.01.18.2A.00.10



Il faut associer ces 2 events à la sortie 1 du CAN2
Pour cela on retourne dans la fenêtre Network Tree pour cliquer sur le noeud CAN2
cela ouvre la fenêtre de dialogue du CAN2
cliquer sur Segment:Settings
on va à l'onglet output1. C'est sur cette sortie qu'est connectée la led (pin15)
par copy / paste des events:
on associe  l'event 05.01.01.01.18.2A.00.10 du CAN1 à l'event output on du CAN2
et on associe l'event 05.01.01.01.18.2A.00.11 du CAN1 à l'event output off du CAN2

Les events passent en orange lorsqu'ils sont modifiés il faut appuyer sur write pour valider



L'appui (low) sur le bouton éteint bien la Led
Le relachement (HIGH) l'allume

Si on ouvre le moniteur de trafic on voit bien les events déclenchés par l'appui sur le bouton



21
Bus CAN / Re : Bus CAN DIY compatible JMRI
« le: septembre 18, 2024, 03:38:52 pm »
Ci-joint le tuto 1 sur 2 pour reproduire l'expérimentation.

D'abord les connections:

   * passerelle CAN-USB :

ESP32            FTDI232

pin RX 16        pin TX

pin TX 17        pin RX

3V3                VCC

GND              GND

jumper du FTDI232 sur 3V3


ESP32            WCMCU-230

pin 4               CRX

pin 5               CTX

3V3                 3V3

GND                 GND

                      CAN H

                      CAN L

installer la librairie OpenMRNLite

Compiler et téléverser le programme exemple ESP32SerialBridge.ino

-------------------------------------------------------------------

   * nœud CAN1 (WIFI-CAN) :

ESP32            WCMCU-230

pin 4                CRX

pin 5                CTX

3V3                  3V3

GND                  GND

                       CAN H

                       CAN L


ESP32            bouton poussoir

pin 32            avec résistance pullup 10k


Compiler et téléverser le programme ESP32IOBoard.ino

au préalable définir le réseau WIFI avec son mot de passe  ligne 117 et 120

-----------------------------------------------------------------

   * nœud CAN2 (CAN) :

ESP32            WCMCU-230

pin 4                CRX

pin 5                CTX

3V3                  3V3

GND                  GND

                    CAN H

                    CAN L

il faut virer (dessouder de préférence) la résistance CMS R2 de terminaison de bus de 120 ohm sur ce module WCMCU-230
il y a déja les 2 résistances nécessaires au CAN sur les 2 autres drivers CAN

ESP32            diode LED

pin 15            avec résistance environ 560 ohm reliée à GND


Compiler et téléverser le programme ESP32IOBoard.ino

au préalable commenter la ligne 57 en:   // #define USE_WIFI

ligne 100 il faut un identifiant de node qui soit différent de CAN1: remplacer à la fin la lettre a par b par exemple

-------------------------------------------------------------------------

relier ensemble les 3 CAN H

relier ensemble les 3 CAN L

vérifier bien les connections



Alimenter les 3 ESP32 et connecter la prise USB du FTDI232        si rien ne fume, on continue ; )

Il faudra noter le port COM du FTDI232, c'est lui qui est connecté au PC JMRI

aller dans le gestionnaire de périphériques pour l'identifier (dans Windows 10: touche WIN + x)

------------------------------------------------------------------------

Lancer JMRI,  aller dans menu Modifier -> Préférences

clic sur onglet + (ajouter nouvelle connexion)

Fabricant système -> choisir:  OpenLCB

Connexion système -> choisir:  CAN via GridConnect adapter

renseigner le port série COM du FTDI232

cocher  Réglages connexion supplémentaires

choisir débit en bauds :  115.200bps

enregistrer et relancer JMRI



Si tout va bien, il y a un nouvel onglet OpenLCB dans le menu JMRI




22
Bus CAN / Bus CAN DIY compatible JMRI
« le: septembre 17, 2024, 12:56:15 pm »
J'ai expérimenté un bus CAN à base de nœuds constitués d' ESP32 depuis JMRI.

J'ai utilisé simplement les exemples de la librairie OpenMRNLite.

J' ai d'abord fabriqué avec un ESP32, un module FTDI232 et un module WCMCU-230 une passerelle CAN-USB pour communiquer avec JMRI. J'ai utilisé le programme exemple ESP32SerialBridge qui emploie le format "Grid Connect".

J'ai ensuite rajouté un nœud WIFI-CAN avec un ESP32 et un module WCMCU-230. Il fonctionne avec le programme exemple ESP32IOBoard. C'est un nœud qui comporte 8 entrées et 8 sorties. Pour le test, je n'ai utilisé qu'un bouton poussoir avec une résistance pullup.

J'ai enfin rajouté au bus CAN un autre ESP32 avec toujours un driver WCMCU-230 dont j'ai viré la résistance de terminaison de 120 ohms. Il fonctionne lui aussi avec le programme exemple ESP32IOBoard, mais compilé cette fois sans l'option WIFI. Toujours doté de 8 entrées et 8 sorties. Je n'ai connecté qu'une led (avec sa résistance) en sortie.

Le but de la manip, vous l' aurez compris, étant d'allumer la led du nœud CAN2 en appuyant sur le bouton du nœud CAN1. Et surtout le faire depuis une configuration confortable de haut niveau dans JMRI. Adios la programmation Molinaro bas niveau bit à bit et ses sombres masques et filtres.

JMRI reconnaît tous les nœuds du bus CAN dans une arborescence où ils sont nommés en clair en plus de leur identifiant unique (hexadécimal).
Il suffit ensuite par copier-coller d'associer l'événement (event) appui sur input 1 du CAN1 à l'event output 1 sur ON du CAN2.

On ne peut plus simple.
Le tout en DIY open source normé.

Yes you CAN.  :)
Cqfd
 

23
Vos projets / Re : Pantographe fonctionnel en HO
« le: septembre 17, 2024, 09:12:06 am »
Bonjour Frédéric,
Le problème c'est la taille de l'actionneur. Est ce qu'un mini servo peut se dissimuler dans la caisse de la loco ? Si oui, on peut le commander avec un ATtiny et le relier au décodeur.

24
Composants / Re : servo numerique et plaque tournante
« le: août 17, 2024, 04:27:03 pm »
Bonjour,
Un moteur pas à pas me semble plus approprié pour animer une plaque tournante. Il suffit d'un Arduino muni d'un driver DRV8825 ou A4988 (moins d' un euro sur Aliexpress) et d'un capteur à effet Hall (indexation)pour piloter le moteur. C'est la solution que j' ai adoptée et elle me donne entière satisfaction. Je l'ai interfacé à JMRI avec CMRI et je commande la plaque tournante d'un simple clic de souris dans Panel Pro.

25
JMRI et Arduino / Re : Projet d'interface polyvalente pour JMRI
« le: mars 26, 2024, 06:18:18 pm »
Shame on me ! ::) :-X

26
JMRI et Arduino / Re : Projet d'interface polyvalente pour JMRI
« le: mars 26, 2024, 05:06:23 pm »
Merci pour cette présentation.
Un sacré projet !

As tu un lien vers le projet de Geoff Bunza ?

27
Bonjour,


L'interface avec JMRI (en direct USB, sans can ni c-mri ni autres bus préhistoriques) va générer automatiquement les objets avec des noms parlants.


Peux-tu nous en dire plus ?

28
Bonjour,

Marcel m'a envoyé cette vidéo:



Il est possible d'associer directement ce type de manette BLE à un smartphone androïd avec l'application EngineDriver.
https://enginedriver.mstevetodd.com
Cela fonctionne donc avec DCC-EX(avec son serveur WIFI), mais aussi avec JMRI et le serveur WiThrottle, j'ai testé.
Cependant l'ergonomie n'est pas la même car on ne peut pas changer de loco directement avec la manette.

Pour ceux qui sont allergiques  au DIY, aux lignes de code et au fer à souder, c'est une alternative !  :)

29
Bonjour,

Difficile de tester les fonction F1 à F28 quand on a pas de décodeur son... (pas facile à caser en HOe)
Néanmoins, j'ai pu tester F0, la lumière, et là j'ai eu dabord un fonctionnement bizarre (il fallait répéter 2 fois la commande F0 pour allumer/éteindre).
Je me suis donc plongé dans WiThrottle.cpp et dans la doc du protocole JMRI disponible ici:
https://www.jmri.org/help/en/package/jmri/jmrit/withrottle/Protocol.shtml#Commands

J'en ai déduit que pour un fonctionnement normal de F0 (bascule on/off) il fallait:
Remplacer la lettre F (majuscule) par la lettre f (minuscule) à la ligne 840 dans WiThrottle.cpp
Avec cette modification F0 fonctionne bien.

Cela fait une deuxième modification à apporter (après celle évoquée précédemment (réponse 7)) au fichier WiThrottle.cpp de la librairie WiThrottle.
Reste à espérer que F1 à F28 fonctionnent bien aussi. Tenez moi au courant en cas de soucis.

J'ai choisi un mini boitier pour loger l'électronique.



Les 2 boutons poussoirs du boitier (suivant et valider) permettent de naviguer dans les menus d'initialisation d'une nouvelle manette.
voir la doc sur le site de NitraThor:
https://www.nitrathor.fr/projets/micro-centrale-dcc/micro-centrale-dcc-modulaire/module-pad-ble

J'alimente le montage avec le +5V disponible sur mon réseau.

Le mode d'emploi de la manette est différent de celle de NitraThor.

Il figure dans l'entête du programme WIFI-BLE_04.ino que je fournis en pièce jointe à ce post.

30
Bonjour,

Ca y est, j'ai réussi à connecter mes manettes "2 doigts" BLE (Bluetooth Low Energy) au serveur WiThrottle de JMRI.
C'est effectivement un plaisir que de commander de 2 doigts seulement ses locos avec une telle manette !
C'est très ergonomique et plus agréable qu'un écran tactile.

L'ESP32 est une bestiole extraordinaire qui permet en même temps une connection à un réseau WIFI et une connection à un périphérique Bluetooth BLE.

C'est vraiment cool de pouvoir récupérer la liste de ses locos avec leurs adresses DCC (la roster list de JMRI) directement du serveur, par WIFI.
Je peux ainsi choisir facilement la loco affectée à la manette en faisant défiler avec le joystick les pages (écran OLED) de la liste roster des locos.

Un grand merci à Nitrathor pour son super programme, sur lequel je me suis basé, pour la connection BLE.

Pour la connection WIFI au seveur j'ai utilisé la librairie WiThrottle qui facilite grandement le travail.
https://github.com/lucadentella/WiThrottle
Cependant, attention, la librairie a un petit bug  :-\ (qui cause le crash de l'ESP32...), facilement corrigé  8) par la modification de WiThrottle.cpp selon:
https://github.com/lucadentella/WiThrottle/pull/2/commits/4fb8034fc052e8dcac14f2303e3b180ced795fc5

Le programme fonctione bien, il me reste à implanter la gestion des fonctions F0 à F29 des locos.

Au niveau hardware, c'est ultra basique:
- un ESP32,
- un écran OLED I2C (128x64)
- une led verte pour visualiser la marche avant
- une led rouge pour la marche arrière
- 2 boutons poussoirs

+ une manette BLE qui coûte 3.90€  ;)
https://shop.reparepc.fr/gaming/49-manette-vr-r1-bluetooth-magicsee.html

Reste plus qu'à mettre cela dans un joli petit boitier.

je fournirai le programme, pour ceux que cela intéresse, dès qu'il sera fini. (c'est jamais fini !...  :D)

Pages: 1 [2] 3 4 ... 14