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 - bobyAndCo

Pages: 1 2 3 [4] 5 6 ... 76
46
Vos projets / Re : LaBox" : Une Centrale DCC polyvalente et abordable
« le: janvier 08, 2025, 07:58:23 pm »
Bonsoir à tous,

Sur la version 03c3 de labox, comment se fait-il que j'ai été obligé de relier l'entrée Vs (2) du L6203 directement à l'entrée 18V de la carte ?

Je n'ai rien vu sur le forum à ce sujet. Je suis quand même pas le seul à avoir le problème ?

Après cette modification et l'inversion des 2 diodes, je confirme que la carte en 03c3 fonctionne.

Christophe

47
Bonjour à tous,

J'avais commandé des composants en DIP pour le RDS car je ne voyais pas comment m'en sortir (soudure) avec les composants CMS qui sont microscopiques. Finalement, ces composants en DIP sont vraisemblablement défectueux. J'avais un signal même sans liaison au rails et à la centrale, juste le VCC des composants. Ca a corroboré mes craintes car il est fréquents que, pour des composants que l'on ne trouve plus sur le marché (ou qui sont en rupture longue), des escrocs refilent des composants défectueux, probablement éjectés au cours des contrôles de fabrications. Nous avons connu cela avec les MAX471 quand ceux-ci ont cessé d'être fabriqué.

Finalement, bk4nt m'a gentiment envoyé des adaptateurs vers le format 2,54 (et d'autres petites choses) et je l'en remercie.

Je redoutais la soudure et finalement, cela c'est très bien passé. J'ai utilisé de la soudure liquide et le résultat que vous voyez ci-dessous me semble très correct. Pour m'assurer qu'il ne restait pas de soudure entre les pattes, j'ai nétoyé le surplus de soudure avec un pinceau à fibres de verre. D'où les traces que l'on observe en surface, un peu comme des coups de balais !

Je n'ai pas eu le temps de tester aujourd'hui mais je le ferai certainement demain. Je vous tiens au courant.



Christophe

48
Nous nous sommes appelés et avons fait un peu le tour du problème. A ce stade tout semble indiquer que c'est le MCP2562 du PCB qui a un dysfonctionnement. Il n'est pas soudé à l'envers.

Pat95 à d'autres PCB, il va en tester un autre. J'espère cependant que ce ne soit pas une série défectueuse.

Tu peux chercher un MCP2562 sur Ebay en livraison rapide chez un vendeur en France ou RS-online ou le demander à Christophe ...

Je vais en effet lui envoyer demain des MCP2562 en DIP pour tester son ESP32 en CAN et en CMOS pour essayer de remplacer celui de la carte au cas où.

Christophe

49
Vos projets / Re : LaBox" : Une Centrale DCC polyvalente et abordable
« le: janvier 05, 2025, 09:11:24 pm »
Dominique,

Utilise plutôt ce programme plus limité mais plus simple qui convient mieux pour les tests.

Christophe

 

50
Je n'y vois qu'une difficulté: identifier le bon modèle de carte lorsqu'on utilise autre chose qu'un Uno.

Pour les cartes, c'est comme pour les bibliothèques, on entre ce que l'on souhaite dans le fichier .ini

Exemple :

[env:esp32dev]
platform = espressif32
board = esp32dev
framework = arduino
build_flags = -DCORE_DEBUG_LEVEL=5
monitor_speed = 115200
lib_deps =
pierremolinaro/ACAN_ESP32@=1.1.2
arduino-libraries/Ethernet@^2.0.2
debug_tool = esp-prog
debug_init_break = tbreak setup


Comme je travaille (presque) toujours avec les mêmes cartes, environnements ou bibliothèques, je fais un copié-collé entre mes projets.

C'est vraiment top et simple à faire. Plus facile pour les cartes que l'IDE Arduino

Christophe

51
Je suis sur IO visual studio code,
La bibliothèque  chargée :
  pierremolinaro/ACAN_ESP32@^1.1.2
Pour info j'ai remarqué que la bibliothèque ACAN_ESP32 n'est pas identique dans IDE Aduino et Plateforme IO !

Bonjour à tous,

Je voudrais attirer votre attention sur ceci : @^1.1.2
PlatformIO autorise au travers du fichier platformio.ini une réglage fin et sur mesure pour les bibliothèques externes.

Il est possible de personnaliser les bibliothèques externes pour chaque projet. Il est donc par exemple possible d'avoir une version 1.1.2 d'un bibliothèque pour un projet PlatformIO t une version 2.0 avec un autre projet. Ce qui n'est pas possible avec l'IDE Arduino où tous les projets partagent les mêmes bibliothèques.

Dans le cas précis de ACAN_ESP32 de Pierre Molinaro, j'avais eu des problèmes avec la version 2, aussi ai-je systématiquement recours "à ce blocage de version" à la 1.1.2. C'est le cas pour les satellites autonomes et aussi pour la Box

Thierry avait lui aussi signalé sur ce même fil la nécessité d'utiliser une version inférieure à la 2 de ACAN_ESP32 pour laBox car il avait certainement rencontré les mêmes problèmes.

Autant il est assez facile d'effectuer ce réglage sur PlatformIO, autant l'IDE Aruino nous propose régulièrement de mettre à jour les bibliothèques et cela suffit, sans s'en rendre compte bien souvent, à modifier cette limite de version.

Pour plus de détails sur la gestion des versions dans PlatformIO, vous pouvez consulter la documentation officielle :

https://docs.platformio.org/en/latest/manifests/library-json/fields/version.html

Pour une discussion sur la spécification des versions de bibliothèques dans platformio.ini, vous pouvez consulter ce fil de discussion sur le forum PlatformIO :

Library management : choose a specific version in platformio.ini : https://community.platformio.org/t/library-management-choose-a-specific-version-in-platformio-ini/110

Pour info, voici la liste des réglages possibles dans PlatformIO pour une bibliothèque donnée :

lib_deps =
    library_name@^1.2.3    ; Allows versions 1.2.3 up to 2.0.0, excluding 2.0.0
    library_name@~1.2.3    ; Allows versions 1.2.3 up to 1.3.0, excluding 1.3.0
    library_name@=1.2.3    ; Only version 1.2.3
    library_name@>1.2.3    ; Any version greater than 1.2.3
    library_name@>=1.2.3   ; Version 1.2.3 and above
    library_name@<1.2.3    ; Any version less than 1.2.3
    library_name@<=1.2.3   ; Version 1.2.3 and below

Christophe

52
Merci. Je vais m'y remettre maintenant que les fêtes sont passées et que les risques de crise de foie s'éloignent !

53
Trucs & astuces / Re : Manette ESP32 sur MRH
« le: décembre 29, 2024, 09:11:21 pm »
Merci Marcel, tu as vraiment le génie pour dénicher des trucs sympas.

Bien amicalement

Christophe

54
Vos projets / Re : LaBox" : Une Centrale DCC polyvalente et abordable
« le: décembre 29, 2024, 08:50:18 pm »
Oui là c'est effectivement surprenant :

1° - Peu de risque que ce soit le PCB, nous sommes plusieurs à avoir les mêmes qui fonctionnent
2° - L'ESP32 ??? Faible risque mais en as tu un autre pour intervertir ?
3° - LoopBackDemo ??? Les deux seuls réglages qui n'en sont pas dans ton cas sont les broches de sortie. Mais 4 et 5 par défaut sont bien celle de laBox. Et le débit, mais loopBackDemo l'ignore puisqu'il agit comme si l'émetteur et le récepteur étaient les mêmes.

Tu veux tester "hors laBox" ton ESP32 et un MCP2562 ? Pourquoi pas ? Combien as tu d'ESP sous la main ? Pour les MCP2562, si tu devais avoir des délais longs ou des frais de port élevés tu me fais signe, j'en ai beaucoup d'avance, je t'en met deux à la poste. Il est bien d'avoir deux condensateurs de 100nF par MCP2562. Tu en as ?

Tu n'hésiteras pas à revenir vers nous pour le câblage.

Christophe

55

Avec Railcom, les décodeurs envoient un courant DC/pulsé dans la voie; la data. La polarité du signal reçu sera fonction de l'orientation physique de la loco sur la voie.

Si c'est un signal positif, c'est un des LM339 qui le détecte. Sinon, c'est l'autre LM339. L'un a sa ref à +18mV, l'autre à -18 mV.

Ok, effectivement c'est OK alors. Au même moment, je viens de trouver quelque choses d'assez détaillé qui traite de cela, je regarde et je te redis.

56
Pour que ce que tu proposes fonctionne, il faut que d'une manière ou d'une autre, les informations véhiculées par l'un ou l'autre rail soient différentes. Mais j'ai beau chercher, je ne vois nulle part quelque chose qui confirmerait cela.

Je crois qu'il faut ressortir l'oscillo, décidément un bon investissement, et regarder si le retour d'infos se fait sur un seul rail, ce dont je doute cependant !!!

Sais tu si un UART software à base de RMT peut fonctionner à 250kbps? Il n'y a que quelques octets à recevoir, de temps en temps. Tu peux peut-être faire des tests avec Railcom out, ou encore avec un UART qui envoie quelques octets/s à 250k vers un UART RMT...

Et pourquoi ne pas utiliser les UART hard ? Quoiqu'il en soit, Hard ou Soft, à 250Kbs ça ne doit pas poser de problème sur un ESP ou un RP.

C'est des tests qui peuvent en effet être facilement réalisés, il n'est pas compliqué d'envoyer 2 octets à 250 Kbs à partir d'un µc et de les lire avec un autre.

57
Ok, je comprends l'histoire de polarité avec l'UART 1 état repos 0 état actif. Merci

Le sens de la loco, on le trouvera aux sorties des deux LM339.

Comment peut-on récupérer cette info ? Aurait-il fallu un branchement supplémentaire ?

58

Autre petit souci, notamment par rapport à ce schema sur le site

j'ai du inverser le DCC entre l'entrée et la sortie. je ne pense pas avoir fait d'erreur de câblage mais si je branchais tel que sur le schéma, ma centrale se mettait en court circuit à l'arrivée de la loco dans la zone.

Merci de ton retour en tous cas


En DCC malgré ce que l'on pense souvent, il y a une polarité. Si tu as été obligé de modifier la polarité sur la carte Railcom, c'est qu'au niveau de tes rails, il y a une inversion de polarité et pas dans la carte Railcom. Tout tes rails intérieurs doivent être branchés sur la même polarité (couleur de câble) et tous les rails extérieurs sur l'autre polarité !!!

59
Je profite de ce fil pour savoir si quelqu'un peut m'apporter la réponse :

J'ai vu qu'il était normalement possible de détecter le sens de roulage des locomotives avec Railcom. Or je ne vois pas comment. Depuis que j'ai fait l'acquisition d’un oscilloscope, je me rattrape et je passe à la moulinette tout ce que j’aurais aimé faire avec au paravant.

J’ai donc scanné le retour du signal Railcom. J’espérais voir à l’oscillo un changement quelconque en changeant le sens de roulage ou en retournant la locomotive. Mais que nenni, l’image ne change pas !

Le signal en bleu est le DCC, celui en jaune Railcom. Je trouve étonnant que Railcom ait une polarité positive au repos (quand il n’y a pas de signal). Mais peut-être que tout ceci tient à la conception même de la carte.

Christophe

60
J'en ai profité pour tester les autres versions que j'avais publiées.

La plus intéressante à mon sens est ici sur le Github : https://github.com/Locoduino/Railcom_detector_inClass/tree/main/src

Il s'agit d'une version où, tout d'abord, le code est organisé en fichiers séparés, un peu comme un bibliothèque. Ce qui fait que la partie de code exposé à l'utilisateur est très sommaire et plus simple à comprendre. Ce code est par ailleurs organisé sous forme de classe c++. Il est donc possible de créer plusieurs instances qui fonctionnent en parallèle. On peut relier jusqu'à trois lecteurs Railcom. Trois étant le nombre de ports série hardware sur un ESP32.

Voici le code du fichier principal :



/*

   Programme de lecture, de decodage et d'affichage des messages Railcom ©
   qui retourne l'adresse d'un decodeur (adresse courte ou longue) sur le port serie (250000 bauds)

   Fonctionne exclusivement sur ESP32
   © christophe bobille - locoduino.org

   lib_deps = locoduino/RingBuffer@^1.0.3 / https://github.com/Locoduino/RingBuffer

*/

#ifndef ARDUINO_ARCH_ESP32
#error "Select an ESP32 board"
#endif

#include <Arduino.h>
#include "Railcom.h"

#define VERSION "v 1.7"
#define PROJECT "Railcom Detector ESP32"
#define AUTHOR  "christophe BOBILLE Locoduino : christophe.bobille@gmail.com"

#define  UNUSED_PIN 255

Railcom railcom_0(GPIO_NUM_14, (gpio_num_t) UNUSED_PIN);  // Instance de la classe Railcom
Railcom railcom_1(GPIO_NUM_16, (gpio_num_t) UNUSED_PIN);  // Instance de la classe Railcom
Railcom railcom_2(GPIO_NUM_13, (gpio_num_t) UNUSED_PIN);  // Instance de la classe Railcom

void setup()
{
  Serial.begin (250000); // <- ATTENTION

  Serial.printf("\n\nProject :    %s", PROJECT);
  Serial.printf("\nVersion :      %s", VERSION);
  Serial.printf("\nAuthor :       %s", AUTHOR);
  Serial.printf("\nFichier :      %s", __FILE__);
  Serial.printf("\nCompiled  :      %s - %s \n\n", __DATE__, __TIME__);
}


void loop ()
{
  // Affiche toutes les secondes dans le moniteur serie l'adresse de la locomotive
  Serial.printf("Adresse loco 0 = %d\n", railcom_0.address());
  Serial.printf("Adresse loco 1 = %d\n", railcom_1.address());
  Serial.printf("Adresse loco 2 = %d\n", railcom_2.address());

  delay(1000);
}


Il faut faire attention à la vitesse du port série programmée à 250Kbs. Il faut paramétrer le moniteur série de l'IDE en fonction.

Il suffit juste de régler la bonne broche pour chaque entrée de lecteur Railcom

Christophe

Pages: 1 2 3 [4] 5 6 ... 76