Comme je sais que vous connaissez l’Arduino, est-ce que vous pouvez completer le programme pour ajouter des Serial.print pour visualiser les valeurs des datas
Je mets en téléchargement la section 3.4 qui a trait aux commandes de vitesse
Pour connaitre l’adresse de la locomotive, on peut lire les 4 octets ensembles avec
Serial.println(frame.data32[0]);
data32[0] permet de lire les 32 bits d’un bloc à partir de l’octet 0
Pour la vitesse Serial.println(frame.data16[4]);
data16[4]) c’est 2 octets de datas (16 bits) à partir dela 5° case du tableau data !
Notez que vous verrez 2 fois une commande qui vous paraîtra similaire, mais ce n’est pas le cas, le protocole prévoit que chaque commande soit confirmée. Dans l’une, vous aurez le bit 17 de l’identifiant à 0 (commande) ou à 1 (réponse)
OUI, mais pas tout de suite.
Je veux faire les autres Serialprint() avant pour explorer un peu …
Mais déjà comme cela, c’est un plaisir d’appuyer sur un bouton de la MS2 et de voir la réaction en console de l’ordi.
Merci bien Christophe.
Je pense que c’est bien que vous puissiez tester des commandes, voir quels sont les différents types de commande etc.
Mais on voit bien que ça va vite devenir compliqué si on continue à lire et écrire le code comme cela.
C’est pour cela qu’il va falloir commencer à s’intéresser à railuino. C’est une bibliothèque pour communiquer plus simplement en CAN avec une Gleisbos ou CSx
Alain entre autres avait participé à ce sujet que j’avais lancé en juillet dernier
Je vous laisse regarder ce sujet et éventuellement, poursuivre sur ce fil.
J’avais écrit plusieurs exemples pour tester cette bibliothèque avec des fonctionnalités interessantes.
La seule chose, c’est que je l’avais écrite pour ESP32 mais en regardant rapidement tout à l’heure, je pense que l’adaptation à l’Arduino devrait être très facile.
Bon, c’est en mauvaise voie pour moi. Ma CS2 refuse de sortir du mode stop. Elle semble bien démarer mais impossible de libérer le “STOP”… La lumière rouge reste allumée en permanence.
Je démonte demain … sans trop d’illusions.
JiPé
Un peu plus haut tu as montré, image à l’appui, que tu arrivais à faire varier la vitesse. Et maintenant plus rien ? Qu’est-ce qui a changé ?
Je n’ai pas la possibilité de faire de tests avec la CS2. Ce que tu décris me fait penser à un problème de maître / esclave. Bien que ce concept soit totalement absent du protocole CAN, j’avais vu parfois que Marklin utilisait ce terme.
Il est possible qu’un mécanisme électronique détecte ou non la présence d’un terminal en CAN et que le programme agisse en fonction mais je n’y crois guère.
Essaye l’ordre de branchement, 1° lancer la CS puis brancher l’Arduino… ou l’inverse.
Ne néglige pas non plus la résistance de terminaison de 120Ω
Bonjour,
je ne pense pas. Elle présentait déjà des petites difficultés à s’activer. Je l’avais emmené chez un forumiste la semaine dernière car il avait des pb de reconnaissance de locos mFx. A mon retour, au déballage, la bare d’activation s’était déssolidarisée et j’avais donc ouvert ma CS pour remettre en ordre. Là, je pense que c’est plus grave.
Mais pas eu le temps de jetter un oeil encore (travaux de plafond et de murs plus urgent).
Ne t’en sépares pas car si ça n’est que mécanique, tu vas peut-être pouvoir la piloter justement avec le bus CAN par exemple comme on a fait avec Jérôme, une passerelle entre Rocrail et la CS.
Vivement que l’on aborde les commandes extérieures en CAN !!!
Bonsoir Olivier,
Voilà un bel encouragement.
D’autres essais vont suivre, j’en suis certain.
C’est pour moi une découverte passionnante.
Alain (d’Auvergne)
J’ai reçu hier un nouveau module Can de chez SEEED puisque j’avais abimé par “charcutage” les autres. Ce matin j’ai refait les tests suivants:
a) Test de la boucle locale interne de la carte ==> OK
b) Test de transmission en duplex avec l’autre carte ==> OK
c) Test de surveillance du CAN-Märklin avec une Loco ==> OK
Conclusion: Ne pas toucher au Hardware du module CAN, mais s’en servir directement “Out of the Box”.
En pièce jointe, un rapport simplifié des expériences : Rapport-27-02.pdf (2,6 Mo)
Hé oui, quand j’ai vu Rocrail et la passerelle MS2 blablater en les surveillant des 2 cotés (Arduino IDE pour la passerelle CAN 》TCP et log de Rocrail de l’autre coté), j’ai trouvé cela fascinant. On ouvre le capot et on voit alors des choses que peu peuvent voir
Bon, allez, je vais acheter un Arduino et recommencer à 0 avec les bases du CAN. Cela m’éclate tout cela.