MODULE
Module for Stepper Motors
TMCM-6110 TMCL™ Firmware Manual
Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
The TMCM-6110 is a six axis controller/driver module for 2-phase bipolar stepper motors. The
TMCM-6110 TMCL firmware allows to control the module using TMCL™ commands, supporting
standalone operation as well as direct mode control, making use of the Trinamic TMC429 motion
controller and the TMC262 motor driver. Dynamic current control, and quiet, smooth and efficient
operation are combined with stallGuard™ and coolStep™ features.
Features
•
•
•
•
•
•
•
•
Six axis stepper motor control
Supply voltage 9. . . 28V DC
TMCL™
USB interface
RS485 interface
CAN interface
coolStep™
stallGuard2™
Applications
• Lab-Automation
• Semiconductor Handling
• Manufacturing
• Robotics
• Factory Automation
• CNC
• Laboratory Automation
Simplified Block Diagram
3x 2 reference
switches
TMCL
Memory
+5V
SPI
+5V
SPI
RS485
progammable
Motion
Controller
Step/Dir
TMC
Step/Dir
TMC
Step/Dir
Outputs
TMC
Motor 2
260
µC
USB
Inputs
Motor 1
260
with TMC429
CAN
Motor 0
260
SPI
(ARM)
Step/Dir
TMC
Motor 3
260
8
progammable
8
SPI
Motion
Controller
with TMC429
Step/Dir
Step/Dir
TMC
260
Motor 4
TMC
260
Motor 5
+5V
+5V
9..28V
TMCMD6110
3x 2 reference
switches
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at: www.trinamic.com
Read entire documentation.
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
2 / 109
Contents
1 Features
1.1 stallGuard2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 coolStep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
6
6
2 First Steps with TMCL
2.1 Basic Setup . . . . . . . . . . . . . . . .
2.2 Using the TMCL Direct Mode . . . . .
2.3 Changing Axis Parameters . . . . . . .
2.4 Testing with a simple TMCL Program .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
7
7
7
7
8
3 TMCL and the TMCL-IDE — An Introduction
3.1 Binary Command Format . . . . . . . . . . .
3.1.1 Checksum Calculation . . . . . . . . .
3.2 Reply Format . . . . . . . . . . . . . . . . . .
3.2.1 Status Codes . . . . . . . . . . . . . .
3.3 Standalone Applications . . . . . . . . . . . .
3.4 The ASCII Interface . . . . . . . . . . . . . . .
3.4.1 Entering and leaving the ASCII Mode
3.4.2 Format of the Command Line . . . .
3.4.3 Format of a Reply . . . . . . . . . . . .
3.4.4 Configuring the ASCII Interface . . . .
3.5 TMCL Command Overview . . . . . . . . . .
3.5.1 TMCL Commands . . . . . . . . . . . .
3.6 TMCL Commands by Subject . . . . . . . . .
3.6.1 Motion Commands . . . . . . . . . . .
3.6.2 Parameter Commands . . . . . . . . .
3.6.3 Branch Commands . . . . . . . . . . .
3.6.4 I/O Port Commands . . . . . . . . . .
3.6.5 Calculation Commands . . . . . . . .
3.6.6 Interrupt Processing Commands . . .
3.7 Detailed TMCL Command Descriptions . . .
3.7.1 ROR (Rotate Right) . . . . . . . . . . .
3.7.2 ROL (Rotate Left) . . . . . . . . . . . .
3.7.3 MST (Motor Stop) . . . . . . . . . . . .
3.7.4 MVP (Move to Position) . . . . . . . .
3.7.5 SAP (Set Axis Parameter) . . . . . . .
3.7.6 GAP (Get Axis Parameter) . . . . . . .
3.7.7 STAP (Store Axis Parameter) . . . . . .
3.7.8 RSAP (Restore Axis Parameter) . . . .
3.7.9 SGP (Set Global Parameter) . . . . . .
3.7.10 GGP (Get Global Parameter) . . . . .
3.7.11 STGP (Store Global Parameter) . . . .
3.7.12 RSGP (Restore Global Parameter) . .
3.7.13 RFS (Reference Search) . . . . . . . . .
3.7.14 SIO (Set Output) . . . . . . . . . . . . .
3.7.15 GIO (Get Input) . . . . . . . . . . . . .
3.7.16 CALC (Calculate) . . . . . . . . . . . . .
3.7.17 COMP (Compare) . . . . . . . . . . . .
3.7.18 JC (Jump conditional) . . . . . . . . . .
3.7.19 JA (Jump always) . . . . . . . . . . . .
3.7.20 CSUB (Call Subroutine) . . . . . . . . .
3.7.21 RSUB (Return from Subroutine) . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
10
10
11
12
12
13
14
14
14
15
15
16
16
17
17
18
18
19
19
20
23
23
24
25
26
29
30
31
32
33
34
35
36
37
39
41
44
46
47
49
50
51
.
.
.
.
.
.
.
.
.
.
.
.
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
3.7.22
3.7.23
3.7.24
3.7.25
3.7.26
3.7.27
3.7.28
3.7.29
3.7.30
3.7.31
3.7.32
3.7.33
3.7.34
3.7.35
3.7.36
3.7.37
3.7.38
WAIT (Wait for an Event to occur) . . . . . . . . . . . . . . . . . . . . . . .
STOP (Stop TMCL Program Execution – End of TMCL Program) . . . . .
SCO (Set Coordinate) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GCO (Get Coordinate) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CCO (Capture Coordinate) . . . . . . . . . . . . . . . . . . . . . . . . . . .
ACO (Accu to Coordinate) . . . . . . . . . . . . . . . . . . . . . . . . . . .
CALCX (Calculate using the X Register) . . . . . . . . . . . . . . . . . . . .
AAP (Accu to Axis Parameter) . . . . . . . . . . . . . . . . . . . . . . . . .
AGP (Accu to Global Parameter) . . . . . . . . . . . . . . . . . . . . . . .
CLE (Clear Error Flags) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
EI (Enable Interrupt) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DI (Disable Interrupt) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
VECT (Define Interrupt Vector) . . . . . . . . . . . . . . . . . . . . . . . .
RETI (Return from Interrupt) . . . . . . . . . . . . . . . . . . . . . . . . .
Customer specific Command Extensions (UF0. . . UF7 – User Functions)
Request Target Position reached Event . . . . . . . . . . . . . . . . . . .
TMCL Control Commands . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 / 109
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4 Axis Parameters
5 Global Parameters
5.1 Bank 0 . . . . .
5.2 Bank 1 . . . . .
5.3 Bank 2 . . . . .
5.4 Bank 3 . . . . .
52
54
55
56
58
59
60
62
63
64
66
67
68
70
71
72
74
76
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
84
84
87
87
88
6 Module Specific Hints
6.1 Velocity and Acceleration Calculation . . . . . . . . . .
6.1.1 Velocity Conversion . . . . . . . . . . . . . . . .
6.1.2 Acceleration Conversion . . . . . . . . . . . . . .
6.1.3 How to choose Pulse Divisor and Ramp Divisor
6.1.4 Conversion between PPS, RPM and RPS . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
90
90
90
90
91
91
7 Hints and Tips
7.1 Reference Search
7.1.1 Mode 1 . .
7.1.2 Mode 2 . .
7.1.3 Mode 3 . .
7.1.4 Mode 4 . .
7.1.5 Mode 5 . .
7.1.6 Mode 6 . .
7.1.7 Mode 7 . .
7.1.8 Mode 8 . .
7.2 stallGuard2 . . . .
7.3 coolStep . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
92
92
93
93
93
94
94
95
95
96
97
98
8 TMCL Programming Techniques and Structure
8.1 Initialization . . . . . . . . . . . . . . . . . . . . .
8.2 Main Loop . . . . . . . . . . . . . . . . . . . . . .
8.3 Using Symbolic Constants . . . . . . . . . . . . .
8.4 Using Variables . . . . . . . . . . . . . . . . . . .
8.5 Using Subroutines . . . . . . . . . . . . . . . . .
8.6 Combining Direct Mode and Standalone Mode
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
100
100
100
100
101
102
102
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
9 Figures Index
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
104
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
4 / 109
10 Tables Index
11 Supplemental Directives
11.1 Producer Information . . . . . . . . .
11.2 Copyright . . . . . . . . . . . . . . . . .
11.3 Trademark Designations and Symbols
11.4 Target User . . . . . . . . . . . . . . . .
11.5 Disclaimer: Life Support Systems . . .
11.6 Disclaimer: Intended Use . . . . . . .
11.7 Collateral Documents & Tools . . . . .
105
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
106
106
106
106
106
106
106
107
12 Revision History
108
12.1 Firmware Revision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
12.2 Document Revision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
1
5 / 109
Features
The TMCM-6110 is a six axis controller/driver module for 2-phase bipolar stepper motors with state of the
art feature set. It is highly integrated, offers a convenient handling and can be used in many decentralized
applications. The module has been designed for coil currents up to 1.1A RMS and 28V DC supply voltage.
It is also equipped with end switch inputs as well as some general purpose digital inputs and outputs
and two analog inputs. Furthermore it is equipped with three ABN encoder inputs. With its high energy
efficiency from TRINAMIC’s coolStep™ technology cost for power consumption is kept down. The TMCL
firmware allows for both standalone and direct mode operation.
Main characteristics
• Motion controller & stepper motor driver:
– Hardware motion profile calculation in real-time.
– On the fly alteration of motion parameters (e.g. position, velocity, acceleration).
– High performance microcontroller for overall system control and communication protocol
handling.
– Up to 256 microsteps per full step.
– High-efficient operation, low power dissipation.
– Dynamic current control.
– Integrated protection.
– stallGuard2™ feature for stall detection.
– coolStep™ feature for reduced power consumption and heat dissipation.
• Interfaces
– USB interface.
– RS485 bus.
– CAN bus.
– Eight additional digital inputs and eight additional digital outputs.
– Two analog inputs.
– End switch inputs for each axis.
Software
TMCL remote controlled operation via USB, RS485 or CAN interface and/or stand-alone operation via TMCL
programming. PC-based application development software TMCL-IDE available for free.
Electrical data
• Supply voltage: 9V. . . 28V supply range.
• Motor current: up to 1.1A RMS / 1.6A peak (programmable).
Please see also the separate Hardware Manual.
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
1.1
6 / 109
stallGuard2
stallGuard2 is a high-precision sensorless load measurement using the back EMF of the coils. It can be
used for stall detection as well as other uses at loads below those which stall the motor. The stallGuard2
measurement value changes linearly over a wide range of load, velocity, and current settings. At maximum
motor load, the value reaches zero or is near zero. This is the most energy-efficient point of operation for
the motor.
stallGuard2
Load [Nm]
Initial stallGuard2 (SG) value: 100%
Max. load
stallGuard2 (SG) value: 0
Maximum load reached.
Motor close to stall.
Motor stalls
Figure 1: stallGuard2 Load Measurement as a Function of Load
1.2
coolStep
coolStep is a load-adaptive automatic current scaling based on the load measurement via stallGuard2
adapting the required current to the load. Energy consumption can be reduced by as much as 75%.
coolStep allows substantial energy savings, especially for motors which see varying loads or operate at a
high duty cycle. Because a stepper motor application needs to work with a torque reserve of 30% to 50%,
even a constant-load application allows significant energy savings because coolStep automatically enables
torque reserve when required. Reducing power consumption keeps the ystem cooler, increases motor life,
and allows cost reduction.
0,9
Efficiency with coolStep
0,8
Efficiency with 50v torque reserve
0,7
0,6
0,5
Efficiency
0,4
0,3
0,2
0,1
0
0
50
100
150
200
250
300
350
Velocity [RPM]
Figure 2: Energy Efficiency Example with coolStep
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
2
7 / 109
First Steps with TMCL
In this chapter you can find some hints for your first steps with the TMCM-6110 and TMCL. You may skip
this chapter if you are already familiar with TMCL and the TMCL-IDE.
Things that you will need
• Your TMCM-6110 module.
• A USB cable with micro USB plug or an RS485 interface with suitable cable or a CAN interface with
suitable cable.
• A power supply (24V DC) for your TMCM-6110 module.
• The TMCL-IDE 3.x already installed on your PC
• A two-phase bipolar stepper motor.
2.1
Basic Setup
First of all, you will need a PC with Windows (at least Windows 7) and the TMCL-IDE 3.x installed on it. If
you do not have the TMCL-IDE installed on your PC then please download it from the TMCL-IDE product
page of Trinamic’s website (http://www.trinamic.com) and install it on your PC.
Please also ensure that your TMCM-6110 is properly connected to your power supply and that the stepper
motor is properly connected to the module. Please see the TMCM-6110 hardware manual for instructions
on how to do this. Do not connect or disconnect a stepper motor to or from the module while the
module is powered!
Then, please start up the TMCL-IDE. After that you can connect your TMCM-6110. The easiest way to do
that is via USB. Just connect the module via USB and switch on the power supply for the module (while the
TMCL-IDE is running on your PC). The module will be recognized by the TMCL-IDE, and necessary driver
registrations in Windows will automatically done by the TMCL-IDE.
Of course you can also use RS485 or CAN bus. Please see the TMCM-6110 hardware manual on how to
connect to RS485 or CAN bus.
2.2
Using the TMCL Direct Mode
At first try to use some TMCL commands in direct mode. In the TMCL-IDE a tree view showing the TMCM6110 and all tools available for it is displayed. Click on the Direct Mode entry of the tool tree. Now, the
Direct Mode tool will pop up.
In the Direct Mode tool you can choose a TMCL command, enter the necessary parameters and execute
the command. For example, choose the command ROL (rotate left). Then choose the appropriate motor
(motor 0 if your motor is connected to the motor 0 connector). Now, enter the desired speed. Try entering
51200 (pps) as the value and then click the Execute button. The motor will now run.
Choose the MST (motor stop) command and click Execute again to stop the motor.
2.3
Changing Axis Parameters
Next you can try changing some settings (also called axis parameters) using the SAP command in direct
mode. Choose the SAP command. Then choose the parameter type and the motor number. Last, enter
the desired value and click execute to execute the command which then changes the desired parameter.
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
8 / 109
The following table points out the most important axis parameters. Please see chapter 4 for a complete
list of all axis parameters.
Most important axis parameters
Number
Axis Parameter
Description
Range
[Units]
Access
4
Maximum
positioning
speed
The maximum speed used for positioning ramps.
1. . . 2047
[int]
RW
5
Maximum
acceleration
Maximum acceleration in positioning ramps. Acceleration and deceleration value in velocity
mode.
1. . . 2047
[int]
RW
6
Maximum
current
Motor current used when motor is running. The
maximum value is 255 which means 100% of the
maximum current of the module.
The most important setting, as too high values can
cause motor damage.
0. . . 255
RW
7
Standby
current
The current used when the motor is not running.
The maximum value is 255 which means 100% of
the maximum current of the module. This value
should be as low as possible so that the motor
can cool down when it is not moving. Please see
also parameter 214.
0. . . 255
RW
Table 1: Most important Axis Parameters
2.4
Testing with a simple TMCL Program
Now, test the TMCL stand alone mode with a simple TMCL program. To type in, assemble and download
the program, you will need the TMCL creator. This is also a tool that can be found in the tool tree of
the TMCL-IDE. Click the TMCL creator entry to open the TMCL creator. In the TMCL creator, type in the
following little TMCL program:
1
3
5
ROL 0 , 1000
WAIT TICKS , 0 , 500
MST 0
ROR 0 , 100
WAIT TICKS , 0 , 500
MST 0
// Rotate motor 0 with speed 1000
// Rotate motor 0 with 1000
7
9
11
13
15
SAP 4 , 0 , 100
SAP 5 , 0 , 100
Loop :
MVP ABS , 0 , 512000
WAIT POS , 0 , 0
MVP ABS , 0 , -512000
WAIT POS , 0 , 0
JA Loop
// Set max . Velocity
// Set max . Acceleration
// Move to Position 512000
// Wait until position reached
// Move to Position -512000
// Wait until position reached
// Infinite Loop
After you have done that, take the following steps:
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
9 / 109
1. Click the Assemble icon (or choose Assemble from the TMCL menu) in the TMCL creator to assemble
the program.
2. Click the Download icon (or choose Download from the TMCL menu) in the TMCL creator to donwload
the program to the module.
3. Click the Run icon (or choose Run from the TMCL menu) in the TMCL creator to run the program on
the module.
Also try out the debugging functions in the TMCL creator:
1. Click on the Bug icon to start the debugger.
2. Click the Animate button to see the single steps of the program.
3. You can at any time pause the program, set or reset breakpoints and resume program execution.
4. To end the debug mode click the Bug icon again.
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
3
10 / 109
TMCL and the TMCL-IDE — An Introduction
As with most TRINAMIC modules the software running on the microprocessor of the TMCM-6110 consists
of two parts, a boot loader and the firmware itself. Whereas the boot loader is installed during production
and testing at TRINAMIC and remains untouched throughout the whole lifetime, the firmware can be
updated by the user. New versions can be downloaded free of charge from the TRINAMIC website
(http://www.trinamic.com).
The TMCM-6110 supports TMCL direct mode (binary commands). It also implements standalone TMCL
program execution. This makes it possible to write TMCL programs using the TMCL-IDE and store them in
the memory of the module.
In direct mode the TMCL communication over RS-232, RS-485, CAN and USB follows a strict master/slave
relationship. That is, a host computer (e.g. PC/PLC) acting as the interface bus master will send a command
to the TMCM-6110. The TMCL interpreter on the module will then interpret this command, do the
initialization of the motion controller, read inputs and write outputs or whatever is necessary according to
the specified command. As soon as this step has been done, the module will send a reply back over the
interface to the bus master. Only then should the master transfer the next command.
Normally, the module will just switch to transmission and occupy the bus for a reply, otherwise it will stay
in receive mode. It will not send any data over the interface without receiving a command first. This way,
any collision on the bus will be avoided when there are more than two nodes connected to a single bus.
The Trinamic Motion Control Language [TMCL] provides a set of structured motion control commands.
Every motion control command can be given by a host computer or can be stored in an EEPROM on the
TMCM module to form programs that run standalone on the module. For this purpose there are not only
motion control commands but also commands to control the program structure (like conditional jumps,
compare and calculating).
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, whereas the mnemonic format is used for easy usage of
the commands when developing standalone TMCL applications using the TMCL-IDE (IDE means Integrated
Development Environment).
There is also a set of configuration variables for the axis and for global parameters which allow individual
configuration of nearly every function of a module. This manual gives a detailed description of all TMCL
commands and their usage.
3.1
Binary Command Format
Every command has a mnemonic and a binary representation. When commands are sent from a host
to a module, the binary format has to be used. Every command consists of a one-byte command field, a
one-byte type field, a one-byte motor/bank field and a four-byte value field. So the binary representation
of a command always has seven bytes. When a command is to be sent via RS-232, RS-485, RS-422 or USB
interface, it has to be enclosed by an address byte at the beginning and a checksum byte at the end. In
these cases it consists of nine bytes.
The binary command format with RS-232, RS-485, RS-422 and USB is as follows:
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
11 / 109
TMCL Command Format
Bytes
Meaning
1
Module address
1
Command number
1
Type number
1
Motor or Bank number
4
Value (MSB first!)
1
Checksum
Table 2: TMCL Command Format
Info
Note
3.1.1
The checksum is calculated by accumulating all the other bytes using an 8-bit
addition.
When using the CAN interface, leave out the address byte and the checksum byte.
With CAN, the CAN-ID is used as the module address and the checksum is not
needed because CAN bus uses hardware CRC checking.
Checksum Calculation
As mentioned above, the checksum is calculated by adding up all bytes (including the module address
byte) using 8-bit addition. Here are two examples which show how to do this:
Checksum calculation in C:
1
unsigned char i , Checksum ;
unsigned char Command [9];
3
5
7
9
// Set the Command array to the desired command
Checksum = Command [0];
for ( i =1; i run infinitely
8.3
Using Symbolic Constants
To make your program better readable and understandable, symbolic constants should be taken for all
important numerical values that are used in the program. The TMCL-IDE provides an include file with
symbolic names for all important axis parameters and global parameters. Please consider the following
example:
1
3
5
// Define some constants
# include TMCLParam . tmc
MaxSpeed = 50000
MaxAcc = 10000
Position0 = 0
Position1 = 500000
7
9
// Initialization
SAP APMaxPositioningSpeed , Motor0 , MaxSpeed
SAP APMaxAcceleration , Motor0 , MaxAcc
11
13
15
MainLoop :
MVP ABS , Motor0 , Position1
WAIT POS , Motor0 , 0
MVP ABS , Motor0 , Position0
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
17
101 / 109
WAIT POS , Motor0 , 0
JA MainLoop
Have a look at the file TMCLParam.tmc provided with the TMCL-IDE. It contains symbolic constants that
define all important parameter numbers.
Using constants for other values makes it easier to change them when they are used more than once in a
program. You can change the definition of the constant and do not have to change all occurrences of it in
your program.
8.4
Using Variables
The user variables can be used if variables are needed in your program. They can store temporary values.
The commands SGP, GGP and AGP as well as STGP and RSGP are used to work with user variables:
• SGP is used to set a variable to a constant value (e.g. during initialization phase).
• GGP is used to read the contents of a user variable and to copy it to the accumulator register for
further usage.
• AGP can be used to copy the contents of the accumulator register to a user variable, e.g. to store the
result of a calculation.
• The STGP command stores the contents of a user varaible in the EEPROM.
• The RSGP command copies the value stored in the EEPROM back to the user variable.
• Global parameter 85 controls if user variables will be restored from the EEPROM automatically on
startup (default setting) or not (user variables will then be initialized with 0 instead).
Please see the following example:
1
3
5
7
9
11
MyVariable = 42
// Use a symbolic name for the user variable
// ( This makes the program better readable and understandable .)
SGP MyVariable , 2 , 1234
// Initialize the variable with the value 1234
...
...
GGP MyVariable , 2
// Copy contents of variable to accumulator register
CALC MUL , 2
// Multiply accumulator register with two
AAP MyVariable , 2
// Store contents of accumulator register to variable
...
...
Furthermore, these variables can provide a powerful way of communication between a TMCL program
running on a module and a host. The host can change a variable by issuing a direct mode SGP command
(remember that while a TMCL program is running direct mode commands can still be executed, without
interfering with the running program). If the TMCL program polls this variable regularly it can react on
such changes of its contents.
The host can also poll a variable using GGP in direct mode and see if it has been changed by the TMCL
program.
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
8.5
102 / 109
Using Subroutines
The CSUB and RSUB commands provide a mechanism for using subroutines. The CSUB command branches
to the given label. When an RSUB command is executed the control goes back to the command that
follows the CSUB command that called the subroutine.
This mechanism can also be nested. From a subroutine called by a CSUB command other subroutines can
be called. In the current version of TMCL eight levels of nested subroutine calls are allowed.
8.6
Combining Direct Mode and Standalone Mode
Direct mode and standalone mode can also be combined. When a TMCL program is being executed in
standalone mode, direct mode commands are also processed (and they do not disturb the flow of the
program running in standalone mode). So, it is also possible to query e.g. the actual position of the motor
in direct mode while a TMCL program is running.
Communication between a program running in standalone mode and a host can be done using the TMCL
user variables. The host can then change the value of a user variable (using a direct mode SGP command)
which is regularly polled by the TMCL program (e.g. in its main loop) and so the TMCL program can react
on such changes. Vice versa, a TMCL program can change a user variable that is polled by the host (using a
direct mode GGP command).
A TMCL program can be started by the host using the run command in direct mode. This way, also a set
of TMCL routines can be defined that are called by a host. In this case it is recommended to place JA
commands at the beginning of the TMCL program that jump to the specific routines. This assures that
the entry addresses of the routines will not change even when the TMCL routines are changed (so when
changing the TMCL routines the host program does not have to be changed).
Example:
2
4
6
8
10
// Jump commands to the TMCL routines
Func1 : JA Func1Start
Func2 : JA Func2Start
Func3 : JA Func3Start
Func1Start :
MVP ABS , 0 , 1000
WAIT POS , 0 , 0
MVP ABS , 0 , 0
WAIT POS , 0 , 0
STOP
12
14
16
Func2Start :
ROL 0 , 500
WAIT TICKS , 0 , 100
MST 0
STOP
18
20
22
Func3Start :
ROR 0 , 1000
WAIT TICKS , 0 , 700
MST 0
STOP
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
103 / 109
This example provides three very simple TMCL routines. They can be called from a host by issuing a run
command with address 0 to call the first function, or a run command with address 1 to call the second
function, or a run command with address 2 to call the third function. You can see the addresses of the
TMCL labels (that are needed for the run commands) by using the ”Generate symbol file function” of the
TMCL-IDE.
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
9
104 / 109
Figures Index
1
2
3
4
5
6
stallGuard2 Load Measurement as a
Function of Load . . . . . . . . . . . .
Energy Efficiency Example with coolStep
Reference search Mode 1 . . . . . . .
Reference search Mode 2 . . . . . . .
Reference search Mode 3 . . . . . . .
Reference search Mode 4 . . . . . . .
6
6
93
93
94
94
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
7
Reference search Mode 5 . . . . . . .
95
8
Reference search Mode 6 . . . . . . .
95
9
Reference search Mode 7 . . . . . . .
96
10
Reference search Mode 8 . . . . . . .
96
11
coolStep Adjustment Points and
Thresholds . . . . . . . . . . . . . . . .
98
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
10
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
105 / 109
Tables Index
Most important Axis Parameters . . .
TMCL Command Format . . . . . . . .
TMCL Reply Format . . . . . . . . . . .
TMCL Status Codes . . . . . . . . . . .
Overview of all TMCL Commands . . .
Motion Commands . . . . . . . . . . .
Parameter Commands . . . . . . . . .
Branch Commands . . . . . . . . . . .
I/O Port Commands . . . . . . . . . .
Calculation Commands . . . . . . . .
Interrupt Processing Commands . . .
Interrupt Vectors . . . . . . . . . . . .
TMCL Control Commands . . . . . . .
Meaning of the Letters in the Access
Column . . . . . . . . . . . . . . . . . .
All Axis Parameters of the TMCM-6110
Module . . . . . . . . . . . . . . . . . .
8
11
12
12
17
18
18
19
19
19
20
21
75
16
17
18
19
20
21
22
23
76
83
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
24
25
Meaning of the Letters in the Access
Column . . . . . . . . . . . . . . . . . . 84
All Global Parameters of the TMCM6110 Module in Bank 0 . . . . . . . . . 87
Meaning of the Letters in the Access
Column . . . . . . . . . . . . . . . . . . 87
User Variables in Bank 2 . . . . . . . . 88
Meaning of the Letters in the Access
Column . . . . . . . . . . . . . . . . . . 88
Interrupt Parameters in Bank 3 . . . . 89
Reference Search Modes . . . . . . . . 92
coolStep Adjustment Points and
Thresholds . . . . . . . . . . . . . . . . 99
Firmware Revision . . . . . . . . . . . 108
Document Revision . . . . . . . . . . . 109
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
11
106 / 109
Supplemental Directives
11.1
Producer Information
11.2
Copyright
TRINAMIC owns the content of this user manual in its entirety, including but not limited to pictures, logos,
trademarks, and resources. © Copyright 2017 TRINAMIC. All rights reserved. Electronically published by
TRINAMIC, Germany.
Redistributions of source or derived format (for example, Portable Document Format or Hypertext Markup
Language) must retain the above copyright notice, and the complete Datasheet User Manual documentation of this product including associated Application Notes; and a reference to other available
product-related documentation.
11.3
Trademark Designations and Symbols
Trademark designations and symbols used in this documentation indicate that a product or feature is
owned and registered as trademark and/or patent either by TRINAMIC or by other manufacturers, whose
products are used or referred to in combination with TRINAMIC’s products and TRINAMIC’s product documentation.
This TMCL™ Firmware Manual is a non-commercial publication that seeks to provide concise scientific
and technical user information to the target user. Thus, trademark designations and symbols are only
entered in the Short Spec of this document that introduces the product at a quick glance. The trademark
designation /symbol is also entered when the product or feature name occurs for the first time in the
document. All trademarks and brand names used are property of their respective owners.
11.4
Target User
The documentation provided here, is for programmers and engineers only, who are equipped with the
necessary skills and have been trained to work with this type of product.
The Target User knows how to responsibly make use of this product without causing harm to himself or
others, and without causing damage to systems or devices, in which the user incorporates the product.
11.5
Disclaimer: Life Support Systems
TRINAMIC Motion Control GmbH & Co. KG does not authorize or warrant any of its products for use in life
support systems, without the specific written consent of TRINAMIC Motion Control GmbH & Co. KG.
Life support systems are equipment intended to support or sustain life, and whose failure to perform,
when properly used in accordance with instructions provided, can be reasonably expected to result in
personal injury or death.
Information given in this document is believed to be accurate and reliable. However, no responsibility
is assumed for the consequences of its use nor for any infringement of patents or other rights of third
parties which may result from its use. Specifications are subject to change without notice.
11.6
Disclaimer: Intended Use
The data specified in this user manual is intended solely for the purpose of product description. No representations or warranties, either express or implied, of merchantability, fitness for a particular purpose
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
107 / 109
or of any other nature are made hereunder with respect to information/specification or the products to
which information refers and no guarantee with respect to compliance to the intended use is given.
In particular, this also applies to the stated possible applications or areas of applications of the product.
TRINAMIC products are not designed for and must not be used in connection with any applications where
the failure of such products would reasonably be expected to result in significant personal injury or death
(safety-Critical Applications) without TRINAMIC’s specific written consent.
TRINAMIC products are not designed nor intended for use in military or aerospace applications or environments or in automotive applications unless specifically designated for such use by TRINAMIC. TRINAMIC
conveys no patent, copyright, mask work right or other trade mark right to this product. TRINAMIC assumes
no liability for any patent and/or other trade mark rights of a third party resulting from processing or
handling of the product and/or any other use of the product.
11.7
Collateral Documents & Tools
This product documentation is related and/or associated with additional tool kits, firmware and other
items, as provided on the product page at: www.trinamic.com.
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
12
12.1
108 / 109
Revision History
Firmware Revision
Version
Date
Author
Description
1.10
2011-AUG-22
OK
First version supporting all features
1.11
2011-SEP-05
OK
WAIT command updated. Inverting home switch during reference
search corrected.
1.12
2011-DEC-20
OK
STAP/RSAP 140 corrected.
1.13
2012-JAN-17
OK
Adjustments related to hardware version 1.2. Full functionality preserved with hardware version 1.1.
USB bus powered operation: abandonment of TMCL-program (resp.
no automatic start) in case of undervoltage. If the voltage is sufficient:
re-initialization resp. auto start.
New axis parameter #200 (boost current).
1.14
2012-FEB-29
OK
coolStep updated.
Positioning range enlarged: 32 bit.
Pin change interrupts for additional I/Os added.
Heartbeat function added.
1.15
2012-MAR-12
OK
Global parameter #133 (random number) added.
1.16
2012-MAR-28
OK
Global parameter #84 (coordinate storage) added.
1.17
2012-APR-26
OK
Automatic current reduction (axis 3-5) updated.
1.18
2012-JUN-18
OK
GIO 255,2 and SIO 255, 2, x implemented.
1.19
2012-JUN-26
OK
Reference switch inputs can be inverted.
1.20
2012-OKT-04
OK
Global parameter #87 (secondary address for RS232/RS485) added.
Reference search: the last position before setting the counter to zero
can be read out with axis parameter #197.
1.21
2012-NOV-16
OK
Axis parameter #130 (minimum speed) updated.
1.22
2013-FEB-20
OK
Axis parameter #193 updated.
1.23. . . 1.28
2014-FEB-28
OK
Not deployed.
1.29. . . 1.30
2014-APR-23
OK
Not deployed.
1.31
2014-APR-23
OK
Improved command request target position reached.
1.34
2014-OCT-10
OK
RFS STATUS also copies result into accumulator.
1.35
2015-APR-8
OK
Using new USB IDs.
1.36. . . 1.38
2015-MAY-24
OK
Not deployed.
1.39. . . 1.41
2016-NOV-28
OK
Not deployed.
1.42
2017-FEB-14
OK
MVP COORD command corrected.
New axis parameter #150.
Table 24: Firmware Revision
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
TMCM-6110 TMCL™ Firmware Manual • Firmware Version V1.42 | Document Revision V1.13 • 2017-MAR-13
12.2
Document Revision
Version
Date
Author
Description
V1.11
2017-FEB-14
OK
Document completely revised.
V1.12
2017-FEB-22
OK
Missing axis parameters #175. . . #179, #183 added.
V1.13
2017-MAR-13
OK
Superfluous interrupt numbers deleted.
Table 25: Document Revision
©2017 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Read entire documentation.
109 / 109