Motion Control Protocols



Protocols - The Language of Motion Control

To use Trinamic products you need to speak their language. The simplest language is to toggle a pin between low and high (e.g. Step/Direction). For a more complex communication you have to set or read registers over a digital interface. This is how Trinamic ICs usually communicate. Improving convenience and readability, Trinamic's Engineers created the Trinamic Motion Control Language (TMCL™). It’s a mix between a protocol and a programming language, supported by most of the system-level products and made easy to use with the TMCL-IDE. Besides TMCL, the products developed by Trinamic also support CANopen, and CANopen over EtherCAT.



Trinamic Motion Control Language

The Trinamic Motion Control Language (TMCL™) is dedicated to motion control. It uses simple commands for positioning and setting all the relevant parameters of the motion controller to accelerate application development.

With a very motion control oriented command set like rotate right (ROR), rotate left (ROL), or move to position (MVP), TMCL™ lets you put any motor connected to a module into service within minutes of unboxing. At the same time, it offers a comprehensive command set for all the necessary motor control parameters.

TMCL™ is available for all Trinamic board-level solutions and for PANdrive. It may be used as a standalone script language, on a module or as a communications protocol optimized for motion control applications with a host PC or PLC. The protocol is available for USB and field buses like RS232, RS485 and CAN.

Trinamic's FAE using the TMCL at Thermoplan

TMCL™ provides a set of structured motion control commands that can be given by a host computer or can be stored in the module to form programs that run standalone. There are motion control commands and commands to control the program structure (like conditional jumps, compare and calculate). So, TMCL™ forms a powerful language that can either be used to control a module directly from a host (direct mode) or to program applications that run on a standalone module.

Every command has a binary representation and a mnemonic. The binary format is used to send commands from the host to a module in direct mode. The mnemonic format is used for developing standalone TMCL™ applications using the TMCL-IDE (Integrated Development Environment).

There is also a set of configuration variables for every axis and for global parameters which allow individual configuration of nearly every function of a module.


CANopen™ is a communication system. It comprises of higher-layer protocols and profile specifications, and has been developed as a standardized embedded network with highly flexible configuration capabilities. It was designed originally for motion-oriented machine control systems, such as handling systems of medical equipment, or building automation.

CANopen™ unburdens the system from dealing with CAN hardware-specific details such as bit timing and acceptance filtering. It provides standardized communication objects (COB) for time-critical processes and configuration as well as network management data.

Standardized CANopen™ devices and application profiles simplify the task of system integration. This requires not only compatible communication systems, but also interoperability and interchangeability. CANopen™ device, interface, and application profiles enable standardized interfaces to achieve devices with "plug-and-play" capability in CANopen™ networks.

Nevertheless, CANopen™ allows implementing manufacturer-specific functionalities. Trinamic products are designed to fulfill the CANopen™ DS402 and DS301 standards, but also to support our unique features like stallGuard™ or coolStep™ via CANopen™.

Trinamic is a member of the CAN-CiA, an international users’ and manufacturers’ group that develops and supports CANopen™ and other CAN-based higher-layer protocols. The nonprofit group was founded in 1992 to provide CAN-based technical, product and marketing information.



canopen software

CAN over EtherCAT (CoE)

EtherCAT® allows to use different high-level protocols. One of these high-level protocols is CANopen® over EtherCAT® (CoE). It uses the same standards and device profiles as CANopen®, but uses EtherCAT® instead of the CAN bus as the transmitting medium. This approach merges the advantages of the CANopen® protocol with the advantages of the EtherCAT® field bus system. The advantage of the CANopen® standard is that it is being widely used in many applications, and the main advantage of EtherCAT® is its high speed and real-time capability. So CANopen® is enabled for use in a real-time environment. As such, CoE is ideal for robots and general automation in industrial, medical, and lab automation applications where high reliability, high synchronicity, and high bandwidth is required.

All Trinamic modules that are equipped with EtherCAT® interfaces support the CoE protocol standard. All EtherCAT® masters also support CoE, so Trinamic motion control modules can be used with most EtherCAT® masters without problems.


EtherCAT™ is optimized for real-time transmission of process data and is transported directly within the Ethernet frame thanks to a special Ethertype. It may consist of several EtherCAT telegrams, each serving a particular memory area of the logical process images that can be up to 4 gigabytes in size.


Motion control

As real objects are involved, motion control requires precision and reliability more than most other disciplines.
scope full vs micro step

Our technologies

Trinamic's unique technologies enable customers to reduce time-to-market, while improving efficiency and precision.
trinamic staff

Why Trinamic

Trinamic's expertise and years of experience in motor and motion control allow you to focus on what's important to you.