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

Pages: [1] 2 3 ... 6
1
JMRI et Arduino / Re : Pas de communication avec décodeur
« le: octobre 18, 2021, 09:01:00 pm »
Il ne faut pas shunter ni enlever le max471, c'est lui qui permet la communication avec les décodeurs :)
 
Il faut le tester (plusieurs sujets traitent de cette problématique sur le forum) et le remplacer par un autre composant s'iol est foireux . La aussi,  tu as quelques discussions sur ce sujet .

JMRI t'indique qu'il ne reconnait pas tes locos. C'est que le max471 ne fait pas son travail et/ou que le sketch est mal configuré.

Si  tu veux utiliser la bibliothèque DCCpp, il ne faut plus utiliser DCC++ .
Le sketch devient tres court.

Je te montre mon sketch en connexion USB mais que je n'ai utilisé que pour le test  (enfin, il fonctionnait il y a quelques mois, mais je ne peux plus le tester, tout est démonté chez moi)

/*************************************************************
project: <Dc/Dcc Controller>
author: <Thierry PARIS>
description: <Dcc Serial Controller sample>
*************************************************************/

#include "DCCpp.h"

#ifndef USE_TEXTCOMMAND
#error To be able to compile this sample,the line #define USE_TEXTCOMMAND must be uncommented in DCCpp.h
#endif

void setup()
{
Serial.begin(115200);
 Serial.println("le setup est lancé");

DCCpp::begin();
  Serial.println(" DCCPP est lancé");
 
  // Configuration for my LMD18200. See the page 'Configuration lines' in the documentation for other samples.
#if defined(ARDUINO_ARCH_ESP32)
  DCCpp::beginMain(UNDEFINED_PIN, 33, 32, 36);
#else
 

  DCCpp::beginMain(UNDEFINED_PIN, DCC_SIGNAL_PIN_MAIN, 3, A0);
  DCCpp::beginProg(UNDEFINED_PIN, DCC_SIGNAL_PIN_PROG, 11, A0);
#endif
}

void loop()
{
DCCpp::loop();
}

Par contre, il FAUT modifier la bibliothèque DCCpp pour l'adapter à ta configuration.
Cela se fait par une simple éditeur de texte.
le DCCpp que tu as téléchargé ne peut pas fonctionner avec ta config si te ne le personnalises pas.
Tout cela est tres bien renseigné par l'auteur :)
Je ne vais pas pouvoir t'aider plus, je ne me souviens plus des modifs a faire. Il me semble que cela se joue au niveau des #define au tout début

Et je te montre aussi le sketch de ma configuration qui est la même que la tienne, mais avec un  shield ethernet (V2, ;) ) en plus.

/*************************************************************
project: <Dc/Dcc Controller>
author: <Thierry PARIS>
description: <Dcc Ethernet Controller sample>
*************************************************************/

#include "DCCpp.h"

#if !defined(USE_TEXTCOMMAND) || !defined(USE_ETHERNET)
#error To be able to compile this sample,the lines #define USE_TEXTCOMMAND and #define USE_ETHERNET must be uncommented in DCCpp.h
#endif

// the media access control (ethernet hardware) address for the shield:
uint8_t mac[] = {0xBE, 0xEF, 0xBE, 0xEF, 0xBE, 0xEF };
//the IP address for the shield:
uint8_t ip[] = { 192, 168, 0, 200 };

EthernetServer DCCPP_INTERFACE(2560);                  // Create and instance of an EthernetServer

void setup()
{
Serial.begin(115200);
 
  DCCpp::begin();
 
  // Configuration for my LMD18200. See the page 'Configuration lines' in the documentation for other samples.
#if defined(ARDUINO_ARCH_ESP32)
  DCCpp::beginMain(UNDEFINED_PIN, 33, 32, 36);
#else
DCCpp::beginMain(UNDEFINED_PIN, DCC_SIGNAL_PIN_MAIN, 3, A0);
  DCCpp::beginProg(UNDEFINED_PIN, DCC_SIGNAL_PIN_PROG, 11, A0);
#endif
  DCCpp::beginEthernet(mac, ip, EthernetProtocol::TCP);


}
void loop()
{
DCCpp::loop();
 
}

Tu vois, ce ne sont que quelques lignes. C'est la bibliothèque  appelée au tout début du sketch qui fait tout.  :)


2
JMRI et Arduino / Re : Pas de communication avec décodeur
« le: octobre 18, 2021, 12:05:47 pm »
Bonjour J Luc

J'ai peur que ce soit ton, max471 qui soit foireux, comme la plupart, désormais.

Il y a des personnalisations a effectuer dans la bibliothèque DCCpp en fonction de ta configuration. Pourrais tu les détailler ?

Pourrais tu également tester avec une autre loco si tu y  as accès  ? S'il le faut c'est ton décodeur qui est mort.

Et puis tant qu'on y est, pourrais tu poster ton sketch complet que je puisse comparer avec le mien qui fonctionne sur une configuration similaire à la tienne puisque issue du même article.

3
Bonsoir JP33,

Avez vous résolu le problème que vous avez  signalé dans cette discussion ?

https://forum.locoduino.org/index.php?topic=1191.0

Merci par avance de votre retour .

4
Vos projets / Re : projet centrale "LaBox" wifi DCC++ Can
« le: avril 04, 2021, 08:23:49 pm »
Bonsoir,

J'ai du répondre 5 aussi, même si je n'en suis pas certain, puisque je suis attiré par l'automatisation du réseau et des itinéraires.

Je reste un néophyte qui se fait souvent larguer dans la compréhension, surtout sur le forum.
Je voudrai encore une fois vous remercier tous pour la qualité du site et votre capacité à me motiver et à me faire monter en compétence.

Mais vous avez du boulot  :P




5
Le logiciel DCC++ / Re : Problème de shield Ethernet
« le: avril 03, 2021, 07:06:17 pm »
Pas de nouvelles ... bonnes nouvelles ?  ::)

Une question et puis s'en fut  :)

6
Le logiciel DCC++ / Re : Problème de shield Ethernet
« le: mars 31, 2021, 01:41:25 pm »
Bonjour

Si le shield ethernet est un V2, la solution qui a fonctionné chez moi est a la fin de la discussion dont j'ai mis le lien plus haut. 

Il faut désactiver la gestion de l eeprom dans DCCpp . Mais je ne sais pas "pourquoi" :)






7
Le logiciel DCC++ / Re : Problème de shield Ethernet
« le: mars 31, 2021, 12:19:32 am »
 as tu lu cette discussion ?  https://forum.locoduino.org/index.php?topic=1074.0

8
Merci Thierry. Je n'ai pas le temps de l'installer pour l'instant , mais je le ferai dès que possible et je te tiendrai au courant  :)

9
Bonsoir

Mon fils a trouvé où l'affichage des CV pèche :  8)
J'avais bien dégrossi le travail, mais il a trouvé en quelques minutes  ;)

int ControllerDccpp::ReadCv(byte inCv)
{
// return this->mainRegs.readCVmain(1, 100+inCv, 100+inCv); Pourquoi 1 ?
return this->mainRegs.readCVmain(inCv, 100+inCv, 100+inCv);

dans le fichier   controllerDccpp.cpp  ligne :844  :)


A présent ma petite centrale fonctionne comme je le veux . Je n'ai pas encore testé les fonctions et leurs modifications.

Joyeux Noel a tous


10
Vos projets / Re : projet centrale "LaBox" wifi DCC++ Can
« le: décembre 08, 2020, 06:12:15 pm »
Bonjour a tous

Je réaliserai cette box, mais je ne peux pas m'y lancer immédiatement.

Le  concept de Locoduino Satellite Can evolutif et peu cher m'intéresse vraiment, autant le faire avec LaBox.


Pour l'instant,  il y a plein de choses que je n'ai pas encore fait depuis mes débuts l'année dernière entre autres : le soudage de cms, la réalisation de détecteurs, des satellites  et l'utilisation de circuits imprimes  dédiés.

Ah oui il me faut aussi faire un "vrai" petit réseau de test, mon double ovale n'est vraiment pas assez complexe : ni canton, aucune détection et les aiguilles sont manuelles.

J'aurai beaucoup plus de temps disponible à partir de mai  ... :) si tout va bien

Si aucun autre néophyte ne vous fait de retour, vous pourrez compter sur moi.

Vous pouvez me mettre une platine de coté, ou il faudra que je la fasse faire en Chine ?


Jerome
Pret a vous aider, mais pas tout de suite :)




11
Bibliothèques / Re : Bibliothèque DCCpp
« le: novembre 23, 2020, 06:47:16 pm »
Bonsoir

Thierry,
pour faire fonctionner mon Shield V2 5500 j'ai du désactiver l'EPROM.
C'est grave, docteur ?

En tout cas, pour l'instant ça roule  8)

Jerome
Trop content que ca  fonctionne comme il veut  8)

12
J AI TROUVE  ! 8) 8) 8) 8) 8)

Il faut desactiver l'EEPROM dans DCCpp.h

#define USE_TURNOUT
//#define USE_EEPROM
#define USE_OUTPUT
#define USE_SENSOR
#define USE_TEXTCOMMAND
//#define USE_ETHERNET_WIZNET_5100
#define USE_ETHERNET_WIZNET_5500
//#define USE_ETHERNET_WIZNET_5200
//#define USE_ETHERNET_ENC28J60

Alors .. je ne sais pas pourquoi, je laisse la réponse à de plus pointus que moi.

Mais tout marche nickel désormais  sous DCCpp, Ethernet et JMRI  (la centrale de Christophe) !

J'suis trop content !

A (très) bientot pour de nouvelles aventures  :)
Jerome

13
Bonjour

Merci  Christophe pour ta proposition, je te fais un MP dans la foulée

Néanmoins je farfouille toujours :

J 'ai rajouté 3 Println au script dans le setup:

void setup()
{
Serial.begin(115200);
  Serial.println(" le setup est lancé ");
  Serial.println(COMM_SHIELD_NAME);
 
DCCpp::begin();
  Serial.println(" DCCpp est lancé ");


et voici ce qui s'affiche dans la console  en 115200 baud

14:27:16.886 ->  le setup est lancé
14:27:16.886 -> ARDUINO-ORG ETHERNET-2 SHIELD (WIZNET 5500)
14:27:16.886 ->  le setup est lancé
14:27:16.886 -> ARDUINO-ORG ETHERNET-2 SHIELD (WIZNET 5500)

deux fois !
et le programme ne lance pas le DCC ?

Par contre, il me semble que le comm.h est bien activé correctement puisque le nom du shield est OK. Dans ce comm.h,  la ligne juste en dessous de la definition du nom du shield lance la bibliotheque Ethernet2,je ne vois pas de raison pour que ce ne soit pas fait.

Extrait du comm.h :
#elif defined(USE_ETHERNET_WIZNET_5500)
    #define COMM_SHIELD_NAME      "ARDUINO-ORG ETHERNET-2 SHIELD (WIZNET 5500)"
    #include <Ethernet2.h>        // https://github.com/arduino-org/Arduino

J'ai aussi tenté de définir le shield V1 au lieu du shieldV2, mais ca m'a envoyé une jolie erreur de compilation (normal, me direz vous, ce n'est pas le matériel installé :) )

J'ai meme tenté de inclure la bibliotheque Ethernet2 directement dans le programme principal ... ca n'a pas marché  :)


Pour l'instant je suis a court d'idée .

Mais je  cherche , je cherche 

a bientot pour la suite du casse tête du jour  ;D

Jerome

EDIT 17:30 .
En désactivant la ligne
    // DCCpp::begin();
le sketch va jusqu'au bout.
Tous mes Serial.println  s'affichent  toujours deux fois sauf  celui ci qui ne s'affiche qu'une fois :
DCCpp::beginEthernet(mac, ip, EthernetProtocol::TCP);
 Serial.println(" ethernet est activé  ");

Il n'y a aucune erreur à la compilation et le V2 est  pingable !
Et JMRI se connecte bien a ma centrale, mais bien entendu ne peut pas l'utiliser (normal, y a pas DCCp dessus  ;D)

Je commence donc a penser comme Christophe. Il y a une incompatibilité avec entre DCCpp et la bibliothèque  Ethernet2 du Shield V2

Décidément, après mes décodeurs D&H, c'est le choix de mon Shield Ethernet qui  pêche :)



14
Bonsoir Christophe

Je suis sous W10 .
Et malheureusement, je ne peux pas changer de shield, je n'en ai qu'un  ... pour l'instant  :)

Je soupçonne de plus en plus que DCCpp  ne va pas chercher la bibliothèque ethernet2 qui est nécessaire pour mon V2, comme le fait DCC++

Malheureusement je ne sais pas où chercher dans la bibliothèque.

Pour info, j'ai ajouté un bail fixe DHCP, avec l'adresse MAC et mon IP  . Mais pas de changement :) .

Merci bcp encore



15
Bonsoir 

Plusieurs tests

J'ai connecté ma centrale sur le routeur de ma box, directement  sur la sortie Ethernet1. C'est le seul matériel connecté à cette sortie du routeur.

Avec DCC++ :
Allumage de la centrale  : Ethernet1 passe de statut inactif à statut actif. L'adresse MAC n'est pas affichée.
Ping de l'adresse 192.168.0.200 : l'adresse MAC de mon ShieldV2500 apparait et les paquets sont OK en 1ms.
Et bien sur JMRI fonctionne et pilote la centrale , y compris avec mon smartphone.


Avec DCCpp : 
J'utilise le sketch EthernetDcc sans aucune autre modification que l' IP et le Mac.
Et DCCpp.h est modifié comme dans le post précédent.

/*************************************************************
project: <Dc/Dcc Controller>
author: <Thierry PARIS>
description: <Dcc Ethernet Controller sample>
*************************************************************/

#include "DCCpp.h"

#if !defined(USE_TEXTCOMMAND) || !defined(USE_ETHERNET)
#error To be able to compile this sample,the lines #define USE_TEXTCOMMAND and #define USE_ETHERNET must be uncommented in DCCpp.h
#endif

// the media access control (ethernet hardware) address for the shield:
uint8_t mac[] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xEF };
//the IP address for the shield:
uint8_t ip[] = { 192, 168, 0, 200 };

EthernetServer DCCPP_INTERFACE(2560);                  // Create and instance of an EthernetServer

void setup()
{
Serial.begin(115200);

DCCpp::begin();
  // Configuration for my LMD18200. See the page 'Configuration lines' in the documentation for other samples.
#if defined(ARDUINO_ARCH_ESP32)
  DCCpp::beginMain(UNDEFINED_PIN, 33, 32, 36);
#else
DCCpp::beginMain(UNDEFINED_PIN, DCC_SIGNAL_PIN_MAIN, 3, A0);
#endif
DCCpp::beginEthernet(mac, ip, EthernetProtocol::TCP);
}

void loop()
{
DCCpp::loop();
}


Allumage de la centrale  : le port Ethernet1 passe du statut inactif à statut actif. L'adresse MAC n'est pas affichée.
Mais ensuite impossible de pinguer  l'adresse 192.168.0.200,et bien sur, l'adresse MAC du V2 ne s'affiche pas.
Donc ca  fonctionne pas  8)

Pistes :
-Le Shield V2 semble mal initialisé ? La bibliothèque Ethernet2  est bien installée
- Je n'ai aucun message d'erreur à la compilation, ni au téléversement.
- Est ce que la syntaxe de l Ip et/ou du MAc sont correctes ? C'est bien entre accolade ?
- Est ce que le protocole TCP  est le bon ?
_ Peut etre recharger la bibliothèque ? La désinstaller puis la remettre ?


Voilà . Je vais encore creuser un peu, puis je remettrai mon DCC++ rustiné .
Mais cela ne me satisfait pas  :)

Bonne soirée
Jerome.

Pages: [1] 2 3 ... 6