Auteur Sujet: JRMI avec un booster BaseStation DCC++  (Lu 23994 fois)

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2889
  • 100% Arduino et N
    • Voir le profil
Re : Re : JRMI avec un booster BaseStation DCC++
« Réponse #15 le: janvier 15, 2017, 02:38:17 pm »
Bonjour msport,

Bonjour,
J'ai pu lire et programmer sur la voie de programmation. Par contre je n'ai rien pu faire sur la voie principale en dehors de faire tourner le moteur (donc pas lire le CV1, mais ça ne figure pas dans la bible).
J'ai utilisé des décodeurs LAISDCC et des LENZ V2.
Ma conclusion : se méfier des faux contacts et des filtres divers (alimentation des voies et sur les locos)
A suivre quand j'aurais maitrisé un peu mieux l'utilisation des divers CV et programmé les locos.

Tout d'abord un rappel des possibilités de DCC++ BaseStation (de base) :
  • Sur la voie de programmation, DCC++ peut écrire et lire les CV parce qu'il demande une réponse au décodeur (qui est unique sur cette voie) sous forme de consommation de courant. Il peut donc programmer (la réponse est un acquittement) ou lire les CV (la réponse est le CV)
  • Sur la voie principale, comme il peut y avoir plusieurs décodeurs en même temps, il n'est pas possible de demander une réponse au(x) décodeur(s). Donc on ne peut pas lire les CV.
    Mais on peut programmer un CV (un à la fois) sans acquittement seulement.

Donc ce que tu expliques est normal sur la voie de programmation et, sur la voie principale, tu devrais pouvoir programmer certains CV avec la commande "w" qui intègre l'adresse DCC du décodeur .

Maintenant, ce qui n'est pas expliqué dans DCC++, que nous cherchons à documenter (lentement mais surement), c'est pourquoi certains décodeurs ne satisfont pas ces principes.

Personnellement j'en ai un (livré avec un ABJ Renault, dont je n'ai pas encore regardé la marque et le type) qui va me servir à rechercher la réponse...

Cela dit, il me parait normal  de ne pas pouvoir programmer le CV1 (l'adresse courte en DCC) ainsi que d'autres CV "stratégiques" sur la voie principale. Mais ceci demande plus d'éclaircissement.
.
Malheureusement tous les décodeurs ne se ressemblent pas à 100% et il faut lire leur documentation au minimum. Nous espérons pouvoir lister les cas intéressants à connaitre.

Amicalement
Cordialement,
Dominique

msport

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2218
  • HO avec DCC++ en DIY Réseaux très éphémères
    • Voir le profil
Re : JRMI avec un booster BaseStation DCC++
« Réponse #16 le: janvier 20, 2017, 09:57:27 pm »
Merci Dominique pour cette synthèse. J'avoue que j'ai été perturbé par ton programme DCC_UnoVV qui lit d'entrée l'adresse, le CV1, de la loco présente sur la voie principale ...
Cordialement

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2889
  • 100% Arduino et N
    • Voir le profil
Re : JRMI avec un booster BaseStation DCC++
« Réponse #17 le: janvier 20, 2017, 10:22:33 pm »
J'irai même jusqu'à dire que mon algo de recherche d'adresse DCC est plus complet que ça :

- lecture du CV29, bit 5
- si bit 5 == 1 alors lecture de l'adresse longue en CV17 & 18
- sinon lecture de l'adresse courte en CV1


///////////////////////////////////////////////////////////////////////
// RECHERCHE ADRESSE DCC DE LA LOCO
///////////////////////////////////////////////////////////////////////

int trouveAdresseDCC() {
  int  areponse = -1;
  SerialCommand::getCV29();
  areponse = mainRegs.valeurCV;
  if ((areponse != -1) && (bitRead(areponse, 5))) {
    // adresse longue : lire CV#17 et CV#18
    SerialCommand::getCV18();
    areponse = mainRegs.valeurCV;
    if (areponse != -1) {
      SerialCommand::getCV17();
      if (mainRegs.valeurCV != -1) {
        areponse = areponse + ((mainRegs.valeurCV - 192)<<8);
      }
    }
  } else {
    // adresse courte : lire CV#1
    SerialCommand::getCV1();
    areponse = mainRegs.valeurCV;
  }
  return(areponse);
}
Cordialement,
Dominique

Erik84750

  • Newbie
  • *
  • Messages: 31
    • Voir le profil
Re : JRMI avec un booster BaseStation DCC++
« Réponse #18 le: février 06, 2017, 11:08:56 am »
Bonjour,
j'ai, avec succes, installé un base station et controller avec Arduino Uno R3, un motorshield, un décodeur LaisDCC sur un locomotive, et JMRI DecoderPro et PanelPro software. Tout encore en état de test; mais pour une bonne explication de DCC++ et son installation avec Arduino Uno ou Mega et le JMRI interface (en anglais): http://www.clubncaldes.com/2016/02/build-your-own-dcc-command-station-for-8.html

Il faut que je note que pour avoir de bonnes explications sur ce sujet il est quasi nécessaire de s'adresses en anglais.

Pour LaisDCC il est imortant de télécharger les documentations du site; ce décodeur fonctionne bien si l'on prend le type avec courant minimal de 1A. Ce décodeur est un clone de TCS.


Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2889
  • 100% Arduino et N
    • Voir le profil
Re : Re : JRMI avec un booster BaseStation DCC++
« Réponse #19 le: février 06, 2017, 11:39:00 am »
Bonjour,
j'ai, avec succes, installé un base station et controller avec Arduino Uno R3, un motorshield, un décodeur LaisDCC sur un locomotive, et JMRI DecoderPro et PanelPro software. Tout encore en état de test; mais pour une bonne explication de DCC++ et son installation avec Arduino Uno ou Mega et le JMRI interface (en anglais): http://www.clubncaldes.com/2016/02/build-your-own-dcc-command-station-for-8.html

Il faut que je note que pour avoir de bonnes explications sur ce sujet il est quasi nécessaire de s'adresses en anglais.

Pour LaisDCC il est imortant de télécharger les documentations du site; ce décodeur fonctionne bien si l'on prend le type avec courant minimal de 1A. Ce décodeur est un clone de TCS.

Bravo pour avoir réussi à faire fonctionner DCC++ avec JMRI.

Merci aussi pour ce site que j'ai regardé et qui ne me semble pas apporter plus d'informations que les articles que nous avons publiés (http://www.locoduino.org/spip.php?article182, http://www.locoduino.org/spip.php?article185, http://www.locoduino.org/spip.php?article187), hormis l'interface Loconet et une version spécifique de DCC++ pour Loconet qui peut intéresser effectivement des modélistes.

Oui la connaissance de la langue anglaise n'est pas inutile notamment si vous voulez suivre le forum de Trainboard (http://www.trainboard.com/highball/index.php?forums/dcc.177/) qui est consacré à DCC++.

Pour les pures francophones, nous essayons de mettre à disposition le maximum d'informations utiles en français sur Locoduino. Cela n'exclut pas que vous puissiez demander des compléments sur les sujets qui vous sont nécessaires dans votre projet. Mais le rédacteur le mieux placé pour fournir l'information est toujours celui qui a réalisé et dispose de l'expérience.

Par conséquent, je vous inviterai à décrire votre expérience  personnelle, notamment ce qui ne vous paraît pas décrit sur Locoduino.
D'avance merci  :D
« Modifié: février 06, 2017, 11:40:35 am par Dominique »
Cordialement,
Dominique