Protocole mfx

Bonjour à tous!
Je suis nouveau, donc susceptible de ne pas avoir lu tous les sujets déjà publiés; mais tant pis: je me lance.
Peut-on trouver de la documentation technique sur le protocole MFX ?
On effet je suis curieux de nature et je trouve le prototcole DCC un peu “dépassé”. Hornby propose une amélioration avec son système HM7000 et Märklin propose son protocole MFX qui permet entre autre la négociation que j’appellerai “One-Ticket” de façon dynamique pour un certain nombre de paramètres. Mais j’aimerai bien en savoir un peu plus. Ou peut t’on trouver unn document de référence de protocole comme le fait Roco ?
D’avance merci. Alain (D’Auvergne)

1 « J'aime »

Bonjour,

Je pense que tu mélanges certaines choses. Tu parles de Hornby et de son système HM7000 qui est un mode de communication. Mais le protocole qu’utilise Hornby est le DCC et c’est la seule chose que l’on puisse comparer au MFX.

Le HM7000 est une technologie de communication en Bluetooth entre une centrale et le décodeur et qui utilise toujours le DCC comme protocole de commande. Le signal ne passe plus par la voie mais en sans fil donc. Il est cependant toujours nécessaire de faire « passer » le courant de puissance par les rails.

Il existe de nombreux système de commande sans fil pour piloter des locomotives chez Marklin comme chez les autres constructeurs. Peux-tu préciser quel avantage tu vois à l’utilisation du HM7000 que l’on ne puisse déjà trouver sur le marché ou en DIY ?

Christophe

Bonjour Christophe,
Merci de ta réponse.
Je vais essayer de mieux m’exprimer.
Le système HM7000 n’est qu’une encapsulation du protocole DCC dans une couche physique appelée Bluetooth; pour cela je suis d’accord; mais ce n’est pas le fond de mon propos.
Le fond de mon propos est de comprendre le fonctionnement du protocole MFX.; puisqu’il apporte visiblement un “PLUS” par rapport au DCC.
Donc, en clair, m’a question est : Existe-il une documentation technique dispoinble sur le protocole MFX ?

Alain (d’Auvergne)

Il existe un document Marklin qui s’intitule « CAN protokol » (*) qui détaille la structure des messages qui permettent, sur un bus CAN, d’envoyer des commandes à une centrale qui va ensuite les « convertir » en messages sur la voie à destination des décodeurs.

Je pense que tu parles donc de ce dernier protocole que l’on peut appeler le protocole de voie, comparable à ce qu’est le DCC.

A ma connaissance et j’ai cherché longtemps, ce protocole n’a jamais fait l’objet de publication. Mais au travers de différents travaux on en connait maintenant tous les aspects. Gelit vient justement de publier un post à ce sujet et il a après beaucoup de travail, réussi à encoder de manière logicielle des trames MFX pour adresser toutes les commandes nécessaires aux décodeurs.

C’est ce fil qu’il faut que tu suives si c’est bien cela que tu recherches.

Christophe

(*)
cs2can-protokoll-2_0.pdf (957,6 Ko)

Bien que dénommé CAN protockol, c’est une structure de message très similaire que Marklin utilise pour les communications en TCP.

Merci pour ta réponse.
Oui, cela va répondre à ma question.
Je vais donc lire ce qui a été publié par Gelit.
Je vais lire également le document dont tu donnes le lien.
Mon objectif est de comprendre (et d’apprendre)
Merci encore Christophe.
Alain

Si ça te facilite la vie, j’ai traduit le document allemand mais seulement pour les commandes qui m’intéressaient. ll y en a tout de même 60 pages.

marklin_can_protokoll.pdf (678,3 Ko)

Je crois que tu as fait déjà un énorme travail. Je te remercie car je ne suis pas familier de la langue de Goethe.
J’apprécie ton geste. Merci.
Alain.

Bonjour,
En complément je tiens à confirmer que Maerklin n’a jamais publié la spécification MFX.
Maerklin possède la marque MFX (qui est protégée) mais je doute qu’elle possède la propriété intellectuelle du protocole MFX.

Mon développement a été rendu possible grâce à l’excellent travail de Stefan Krauss et son équipe https://www.skrauss.de/modellbahn/Schienenformat.pdf
En l’étudiant, j’ai compris l’utilité de l’UID (identifiant unique présent sur chaque décodeur) qui permet d’identifier une locomotive. Ma centrale MFX a besoin de connaître cet UID que je lis via une Gleisbox et ce logiciel Raildue/examples/Get_MFX_UID at master · gelit/Raildue · GitHub
Par fainéantise, j’ai renoncé à implémenter la lecture des données MFX; je voulais aussi démontrer qu’il est possible de contrôler mes trains sans lecture

Maerklin, qui n’est pas une société logicielle, se devait de faciliter l’usage de produit tiers tel que TrainController, …
Le lien, dont parle Christophe, est la solution consistant à DEVOIR utiliser une Gleisbox, via l’interface CAN utilisé dans le monde automobile, pour commander les trains.
Avant ma période MFX, j’ai développé une centrale autonome MM2 et profité de critiquer le fonctionnement de cette Gleisbox multiprotocole dans https://gelit.ch/Train/DirectMM2.pdf

A votre disposition pour tout complément

Bonjour Gelit,
Je répond suite à une conversation avec bobyAndCo.
J’ai commencé à lire des documents sur le protocole MFX. Je suis un habitué des protocoles de la suite TCP/IP et je ne m’étais jamais intérressé aux “Bus industriels”. Donc je commence à comprendre que ce sont (dans mon langage et ma culture), des trames de niveau II avec un en-tête et une charge utile; à priori basé sur des échanges de type “Request / Response”.
Par contre, je ne saisi pas encore sont positionnenemt ou son rapport avec le protocole DCC. Je poursuit donc ma lecture.
En tout cas, merci pour les informations.
Alain (d’Auvergne)

Bonjour Alain,
le protocole MFX, comme le protocole MM2 ou DCC, sont concurrents pour commander les locomotives.
MFX et MM2 sont propriétaires alors que DCC est dans le domaine publique
MFX est particulièrement confortable avec une centrale Maerklin qui va facilement identifier une nouvelle loc sans que l’utilisateur ne fasse quoi que ce soit.

La référence au modèle OSI en 7 couches n’est pas utile … car une pure implémentation de niveau 2 (comme HDLC) sans couche physique ni couche applicative n’a pas d’utilité pratique … comme les couches TCP et IP sans les couches physique et applicative

Bonsoir Gelit,
Très bien, ton explication me suffit amplement. On peut dire que les protocoles MFX, MM2 ou DCC sont des protocoles dédiés qui n’ont pas forcément besoin d’encapsulation. La différence pratique se situe au niveau des outils de mise en oeuvre; dans mon cas, une Mobile Station 2.
Bonne soirée et merci.
Alain

Bonjour Alain,
J’ai beaucoup critiqué la Mobile Station 2 mais je dois reconnaître qu’elle permet à quiconque de commander une locomotive équipée d’un décodeur DCC ou MFX (ou MM2 qui est obsolète). L’utilisateur va pouvoir donner à sa loc. une adresse DCC particulière ou laisser sa loc MFX fonctionner “par magie”
Mes petits-enfants (3-5-8 ans) l’utilise avec plaisir

Bonjour Gelit.
Oui, c’est parfait pour moi, pour débuter. Et cela n’exclut pas la CS3 … mais pour plus tard car il va y avoir déjà un budjet pour les rails. (MarcD vient de me faire le plan Anyrail à partir du plan Noch Baden-Baden.

Donc je suis dans les rails.

Merci.
Alain