TCN Messenger implements the TCN MD protocol, also known as RTP MD protocol (Real-Time Message Data Protocol). RTP MD protocol is used for onboard communication through messages between devices within the train communication network (TCN).

The RTP MD protocol encompasses the link layer to the session layer according to the ISO/OSI reference model.

TCN Messenger is implemented as a source code library. The Messenger library contains a complete implementation of the TCN MD protocol, including optional TCN multicast services, TCN message transfer interface, and UIC E-Telegram transfer interface.

The TCN Messenger library is programmed in C++. Porting to the target platform is therefore only possible if a C++ compiler exists for that platform. External interfaces of the library are implemented only in C.

The TCN Messenger library is platform-independent; this library does not require any operating system or synchronization primitives. The library implements its own internal timers (derived from periodic calls to the main function) and its own dynamic memory management (heap). Porting the TCN Messenger library to a given target platform involves allocating memory for messages and packets (a pointer to this memory is provided to the library during initialization), connecting the LMA (Link Message Adapter) of the library to the TCN bus driver, and powering the library with periodic calls to the main function. Communication with the bus driver is managed using MD packet queues, which are implemented as circular buffers; this implementation also does not require synchronization primitives.

The TCN Messenger library can be used in any TCN device, from ED-type displays or VCU to TCN WTB gateway devices. It is also possible to use this library in service devices (e.g., PC notebooks).

The TNM (Train Network Management) Agent is a standard TCN responder (replier) application that utilizes the RTP MD communication protocol for its functionality. The TNM Agent is a server-type application that implements services for remote diagnostics, configuration, and firmware uploading. These services are then utilized by a client application referred to as the manager, which can be located anywhere on the TCN train network.

The TNM Agent application is implemented as a library using the TCN Messenger interface. It is programmed in C++. Therefore, a C++ compiler must be available on the target platform. The library’s external interfaces are programmed only in C.

The TNM Agent library implements all standard TNM station services, MVB/WTB link services, variable services, message services, domain services, UTC time services, logging, and a range of custom TNM services.

The TNM Agent library is platform-independent and does not require any operating system or synchronization primitives. The library implements its own internal timers (derived from periodic calls to the main function). TNM services are implemented using standard interfaces (AVI, LPI, AMI, LSI) or through callback functions provided externally during the initialization of individual TNM service groups.

The TNM Agent library can be used in any TCN device that has the TCN Messenger protocol implemented for message transfer.

  • Software support for communication within the train communication network (TCN)
  • Implementation of communication protocols for onboard communication
  • Implementation of remote diagnostics, configuration, and firmware uploading services
  • Source code libraries
  • Provision of link to relational layers of the ISO/OSI reference model (according to IEC61375-1)

Dostupný software:

   TCN Messenger


knihovna zdrojových kódů programována v jazyce C++

   TNM AgentTCN respondent (replier) aplikace