CS2 - Problème de reconnaissance et de programmation de décodeur loco : comment résoudre ?

Bonjour à Toutes et à Tous,

J’ai effectué le week-end dernier une série de tests de programmation d’un décodeur 60760 à l’aide d’une CS2 qui sont aussi valables pour n’importe quel décodeur répondant uniquement au protocole MM2 et je suis sidéré de voir à quel point les développeurs de Märklin ont fournis un travail bâclé, indigne de tout développeur qui se respecte.

Comme déjà vu sur les interventions précédentes, de nombreux bugs ont été ajoutés dans la dernière version pour la programmation des décodeurs MM2.

Voici un petit récapitulatif.

• Le changement d’adresse ne fonctionne plus depuis le panneau de configuration locomotive.
• La transmission des données vers le décodeur ne fonctionne plus (flèche direction locomotive) sur ce même panneau…
• Dans les CVs, Il n’est plus possible d’entrer une adresse supérieure à 79 en utilisant la valeur décimale. Seule l’utilisation de la représentation binaire permet de contourner le problème.
• Lors de la modification de l’adresse via le CV1, les données sont bien transmises au décodeur à l’aide de la flèche en direction de la locomotive, mais ensuite la locomotive ne répond pas sans effectuer une bidouille au niveau de l’adresse.

Ci-dessous un petit tutoriel pour s’en sortir avec la programmation des CVs en MM2 dans l’attente (je l’espère) d’un correctif de la part de Märklin.

Dans un premier temps, je vais créer une nouvelle locomotive avec un décodeur de type **MM2 programmable

Voici ce qui se passe au niveau des données stockées dans la CS2
lokomotive
.name=00_test_loc_MM2
.uid=0x4e
.adresse=0x4e
.typ=mm2_prg
.icon=BR 185 RTS

A ce stade, comme il s’agit de l’adresse d’origine du décodeur, il répond correctement aux ordres transmis par la CS2.

Une fois la locomotive créée, j’édite les paramètres et je vais sur Accès CV

Afin de rendre plus compréhensible, j’édite le nom des CVs qui m’intéressent et je supprime les autres (pour la suppression, il faut sélectionner la ligne du CV et cliquer sur le symbole ci-dessous

Comme je souhaite attribuer l’adresse 250, je suis obliger de passer par la Représentation binaire, car si j’indique un valeur supérieure à 79 dans le champ valeur, je me retrouve systématiquement avec 79 comme valeur.

A cette fin, j’active les bits 1,3,4,5,6,7 du CV1 pour trouver la valeur 250. En détail, voilà à quoi cela correspond :
Bit 7 On = 128
Bit 6 On = 64
Bit 5 On = 32
Bit 4 On = 16
Bit 3 ON = 8
Bit 2 Off = 0
Bit 1 On = 2
Bit 0 Off = 0
En additionnant la valeur des bit 0 à 7, on obtient bien 250.
Finalement je transmets les informations au décodeur à l’aide de la touche Progr. située à droite du champ
Pour ressortir de la configuration CV, je valide avec le Vu vert

On voit maintenant que l’adresse indiquée dans la configuration de ma loco est 250.

Cependant, il y a un gros bug qui fait que mon décodeur n’est plus en phase avec les données enregistrées dans la CS2.

Voici ce qui se passe maintenant au niveau des données stockées dans la CS2
lokomotive
.name=00_test_loc_MM2
.uid=0x4e
.adresse=0xfa
.typ=mm2_prg
.icon=BR 185 RTS

On constate que l’adresse qui est bien 250 (fa en hexa = 250 décimal) ne correspond plus à uid dont la valeur est toujours de 78 (4e hexa =78 décimal)

Pour resynchroniser uid avec adresse, je propose la méthode suivante :

On change l’adresse en ajoutant ou soustrayant une unité


On valide avec le Vu vert
Puis on revient à la configuration de la loc et on remet la valeur correcte de l’adresse soit 250 pour mon exemple

Et on valide à nouveau avec le Vu vert

Voici ce qui se passe maintenant au niveau des données stockées dans la CS2
lokomotive
.name=00_test_loc_MM2
.uid=0xfa
.adresse=0xfa
.typ=mm2_prg
.icon=BR 185 RTS

uid et adresse ont maintenant la même valeur, soit fa en hexa ou 250 en décimal
Et maintenant le décodeur répond enfin aux commandes de la centrale sur la nouvelle adresse

A+

Roland**

1 « J'aime »