INTEGRATED CIRCUITS
Dedicated Motion Controller for 2-/3-Phase PMSM
TMC4670 Datasheet
IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
The TMC4670 is servo controller, providing Field Oriented Control for BLDC/PMSM and 2-phase
Stepper Motors. Main control functions as torque, velocity and position control are implemented
in hardware. Integrated ADCs, position sensor interfaces, position interpolators, enables a fully
functional servo controller.
Features
• Field Oriented Control (FOC)
w/ Servo Controller
• Torque Control (FOC),
Velocity Control, Position Control
• Feed Forward Offsets
• Integraded ADCs
• Encoder Engine: Hall analog/digital,
Encoder analog/digital,
2nd digital Encoder
• Supports 3-Phase PMSM (FOC3) and
2-Phase Stepper Motors (FOC2)
• PWM Engine including SVPWM
• SPI Communication Interface
Applications
• Robotics
• Pick and Place Machines
• Semiconductor Handling
• Factory Automation
• E-Mobility
• Laboratory Automation
Simplified Block Diagram
©2018 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.
• Blowers
• Pumps
2 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Contents
1 Order Codes
4
2 Functional Summary
5
3 Functional Description
3.1 Functional Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Communication Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2.1 SPI Slave User Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3 Register Bank . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.1 Register Bank - Read and Write . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.2 Register Access Datagram Examples . . . . . . . . . . . . . . . . . . . . . . .
3.3.3 Identification of Silicon via Type, Version, Date, and Time . . . . . . . . . .
3.3.4 Read of RAW Inputs & RAW Outputs . . . . . . . . . . . . . . . . . . . . . . .
3.4 Numerical Representation, Electrical Angle, Mechanical Angle, and Pole Pairs . .
3.4.1 Numerical Representation . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4.2 N_POLE_PAIRS, PHI_E, PHI_M . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4.3 Numerical Representation of Angles PHI . . . . . . . . . . . . . . . . . . . .
3.5 ADC Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5.1 Internal ADC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5.2 External ADC (LTC2351) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5.3 ADC Selector & ADC Scaler w/ Offset Correction . . . . . . . . . . . . . . . .
3.6 Encoder Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.6.1 Open Loop Encoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.6.2 Incremental ABN Encoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.6.3 Secondary Incremental ABN Encoder . . . . . . . . . . . . . . . . . . . . . .
3.6.4 Digital Hall Sensor Interface with optional Interim Position Interpolation .
3.6.5 Digital Hall Sensor - Interim Position Interpolation . . . . . . . . . . . . . .
3.6.6 Digital Hall together with Incremental Encoder . . . . . . . . . . . . . . . .
3.6.7 Analog Hall and Analog Encoder Interface (SinCos of 0°90° or 0°120°240°)
3.6.8 Analog Position Decoder (SinCos of 0°90° or 0°120°240°) . . . . . . . . . .
3.7 FOC23 Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.1 PI(D) Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.2 PI(D) Controller Calculations . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.3 PI(D) Controller - Clipping . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.4 PI Flux & PI Torque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.5 PI Velocity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.6 P(I) Position . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7.7 Inner FOC Control Loop - Flux & Torque . . . . . . . . . . . . . . . . . . . . .
3.7.8 FOC Transformations and PI(D) for control of Flux & Torque . . . . . . . . .
3.7.9 Motion Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.8 PWM Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.8.1 PWM Polarites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.8.2 PWM frequency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.8.3 PWM Resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.8.4 PWM Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.8.5 Brake-Before-Make (BBM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.8.6 Space Vector PWM (SVPWM) . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6
6
7
7
8
8
9
9
9
9
9
10
11
12
13
13
13
15
15
15
17
17
18
18
19
20
20
20
21
21
22
22
23
23
23
24
24
25
25
25
25
25
26
4 Safety Functions
26
5 Register Map
27
6 Pinning
85
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
3 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
7 Package Dimensions
95
8 Characteristics
8.1 Absolute Maximum Ratings . . . . . .
8.2 Recommended Operation Conditions
8.3 DC Characteristics . . . . . . . . . . . .
8.4 Timing Characteristics . . . . . . . . .
8.5 Power Dissipation . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
96
96
96
97
97
97
9 Supplemental Directives
9.1 Producer Information . . . . . . . . .
9.2 Copyright . . . . . . . . . . . . . . . . .
9.3 Trademark Designations and Symbols
9.4 Target User . . . . . . . . . . . . . . . .
9.5 Disclaimer: Life Support Systems . . .
9.6 Disclaimer: Intended Use . . . . . . .
9.7 Collateral Documents & Tools . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
98
98
98
98
98
98
98
99
10 Figures Index
100
11 Tables Index
101
12 Revision History
102
12.1 IC Revision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
12.2 Document Revision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
4 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
1
Order Codes
Order Code
Description
Size [mm]
TMC4670-BI
TMC4670 FOC Servo Controller IC
17 x 17 x 2.5
TMC4670-EVAL
TMC4670 Evaluation Board
85 x 79
Table 1: Order codes
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
2
5 / 102
Functional Summary
• Field Oriented Control (FOC) Servo Controller
–
–
–
–
torque (and flux) control mode
velocity control mode
position control mode
update rate 200 kHz (w/ 4 kHz velocity meter sampling frequency)
• PI Controllers
– programmable clipping of inputs and outputs of interim results
– error sum (error integral over time) clipping
– programmable target torque change in time (dTargetTorque/dt) limiter
q
2 + U 2 ) limiter
– programmable circular ( UD
Q
– PI controller clipping status bit vector for real time Monitoring
– Feed Forward Offsets for Target Values
• Supported Motor Types
– FOC3 : three-phase permanent magnet synchronous motors (PMSM)
– FOC2 : two-phase stepper motors
• ADC Engine with Offset Correction and Scaling
– integrated 12 bit ADCs as analog interface for currents and analog encoders
– interface to external AD (LTC2351, 14 bit or 12 bit)
– ADC register to write externally sampled data via SPI communication interface
• Encoder Engine
–
–
–
–
–
–
–
open loop position generator (programmable [rpm], [rpm/s]) for initial setup
digital incremental encoder (ABN resp. ABZ, up to 5MHz)
secondary digital incremental encoder
digital hall sensor interface (H1 , H2 , H3 resp. HU , HV , HW )
digital hall sensor interface with interpolation of interim positions
analog encoder/analog hall sensor interface (SinCos (0°, 90°) or 0°, 120°, 240°)
position multi-turn counter (32 Bit)
• PWM Engine including SVPWM
– programmable PWM frequency within range 25kHz . . . 200kHz
– programmable Brake-Before-Make (BBM) times (high side, low side) 0ns . . . 2.5µs in 10ns steps
– PWM auto scaling for transparent change of PWM frequency during motion
• SPI Communication Interface
– 40 bit datagram length (1 ReadWrite bit + 7 address bits + 32 data bits)
– immediate SPI read response (register read access by single datagram)
• Supply Voltages 3.3V, 2.5V, 1.2V
• IO Voltage 3.3V
• Clock Frequency 25MHz
• Package 17mm x 17mm BGA w/ 1mm ball pitch
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
3
6 / 102
Functional Description
TMC4670 is a fully integrated controller for field-oriented control (FOC) of either one 2-phase stepper motor
(FOC2) or one 3-phase brushless motor (FOC3). It contains the complete control loop core architecture
(position, velocity, torque) as well as required peripheral interfaces for communication with an application
controller, for feedback (digital encoder, analog interpolator encoder, digital Hall, decoder Hall position
interpolator, analog inputs for current and motor supply voltage measurement), and helpful additional IO.
It supports highest control loop speed and PWM frequencies.
The TMC4670 is the building block for the user application that takes care of all real time critical tasks of
field oriented motor control. It decouples the real time field oriented motor control and its real sub-tasks
as current measurement, real time sensor signal processing, real time PWM signal generation from the
user application layer as outlined by figure 17.
Figure 1: Hardware FOC Application Diagram
3.1
Functional Blocks
Application interface, register bank, ADC engine, encoder engine, FOC torque PI controller, velocity PI
controller, position P controller, and PWM engine form the TMC4670. The TMC4670 supports 3-phase
PMSM motors (FOC3) and 2-phase PMSM stepper motors (FOC2).
Figure 2: Hardware FOC Block Diagram
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
7 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
The ADC engine interfaces integrated ADC channels and maps raw ADC values to signed 16 bit (s16) values
for the inner FOC current control loop based on programmable offset and scaling factors. The FOC torque
PI controller forms the inner base component including required transformations (Clark, Park, inverse
Park, inverse Clark). All functional blocks are pure hardware.
3.2
Communication Interface
The TMC4670 is equipped with an SPI interface for access to all registers of the TMC4670.
3.2.1
SPI Slave User Interface
The SPI of the TMC4670 for the user application has an easy command and control structure. The TMC4670
user SPI acts as a slave. The SPI datagram length is 40 bit with up to 2Mbit/s. The MSB (bit#39) is sent
first. The LSB (bit#0) is sent last. The MSB (bit#39) is the WRITE_notREAD (WRnRD) bit. The bits (bit#39 to
bit#32) are the address bits (ADDR). Bits (bit#31) to (bit#0) are (up to) 32 data bits. The SPI of the TMC4670
immediately responses within the actual SPI datagram on read and write for ease-of-use communication.
Figure 3: SPI Timing
SPI Interface Timing
Characteristics, fCLK = 25MHz
Parameter
Symbol
SCK valid before or after change of nSCS
Condition
Min
Typ
Max
Unit
tCC
250
ns
nSCS high time
tCSH
250
ns
nSCS low time
tCSL
250
ns
SCK high time
tCH
250
ns
SCK low time
tCL
250
ns
SCK low time
tCL
250
ns
SCK frequency
2
fSCK
MHz
MOSI setup time before rising edge of SCK
tDU
250
ns
MOSI hold time after falling edge of SCK
tDH
250
ns
MISO data valid time after falling edge of SCK
tDO
Table 2: SPI Timing Parameter
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
10
ns
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
8 / 102
Figure 4: SPI Datagram Structure
3.3
Register Bank
Info
This section gives a functional description as an overview. The section 5 starting
page 27 gives the detailed description of each register.
The register bank is the interface to the user application. Each register of the TMC4670 has 8 bit address
followed by up to 32 data bits. Some addresses hold more then one data registers for simultaneous access
or composed control bit vectors. Section 5 page 27 describes all registers in detail.
During initialization, the user writes parameters into associated registers. These parameters are scaling
factors and offsets, sensor configuration parameters, limits for clipping, selections, P and I parameters for
the FOC torque controller, P and I parameters for velocity controller, and P parameter for the position
controller.
During application, the user writes application parameters into associated registers. These are - depending
on the motion mode - target torque, target velocity, or target position.
The TMC4670 has direct access registers and indirect access registers. Most registers are direct access
registers with read or write access by a single datagram. Some less often used registers (e.g. silicon version
registers, internal values for read out) are accessed via two registers: address register and data register.
The address register selects the address, the second register holds the data.
3.3.1
Register Bank - Read and Write
From the access point of view there are two kind of registers: read-only and read-write. The most significant
bit (MSB) of each register access datagram defines read (=0) or write (=1). So, there are 128 read addresses
(0x00h . . . 0x7Fh ) and 128 write addresses (0x80h . . . 0xFFh ) available. The TMC4670 ignores write accesses
to read-only registers.
• Fixed Read Only Register (e.g. SILICON_TYPE, SILICON_VERSION, SILICON_DATE, SILICON_TIME)
• Read Only Register for internal values (e.q. scaled ADC values)
• Read Only Register for external Signals (e.g. ADC raw values, ABN encoder inputs, Hall signal inputs)
• Read Write Register for configurations (e.g. P and I parameter of PI controller, clipping parameters)
• Read Write Register for target values (e.g. target torque, target velocity, target position)
• Dual Ported Read Write Register (e.g. encoder count, actual position)
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
9 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
3.3.2
Register Access Datagram Examples
0x0100000000h : reads data from address 0x01h
0x8123456789h : writes data 0x23456789h to address 0x01h
3.3.3 Identification of Silicon via Type, Version, Date, and Time
The read-only registers of silicon type, version with date and time identify the type of the silicon, the version
of the silicon together with unique date stamp and time stamp. This enables the automatic identification
of IC and version and enable the automatic handling of different IC and different versions.
3.3.4
Read of RAW Inputs & RAW Outputs
For ease-of-use while setting up the configuration, raw input signals and raw output signals are mapped
into the register bank for user read out. With this, the user can initially check without a scope that the
desired signals come into the TMC4670 as expected. Examples of readable raw input signals are digital
Hall signals and incremental encoder signals.
3.4
Numerical Representation, Electrical Angle, Mechanical Angle, and Pole Pairs
The TMC4670 uses different numerical representations for different parameters, measured values, and
interim results. The terms electrical angle PHI_E, mechanical angle PHI_M, and number of pole pairs
(N_POLE_PAIRS) of the motor are important for setup of FOC. This section describes the different numerical
representations of parameters and terms.
3.4.1
Numerical Representation
The TMC4670 uses singed and unsigned values of different length and fixed point representation for
parameters that require a non-integer granularity.
Symbol
Description
u16
unsigned 16 bit value
s16
signed 16 bit values, 2’th complement
u32
unsigned 32 bit value
s32
signed 32 bit values, 2’th complement
Min
Max
0
65535
-32767
32767
0
232 = 4294967296
-2147483647
231 - 1 = 2147483647
q8.8
signed fix point value with 8 bit interger part
and 8 bit fractional part
-32767/256
32767/256
q4.12
signed fix point value with 4 bit interger part
and 12 bit fractional part
-32767/4096
-32767/4096
Table 3: Numerical Representations
Info
Two’s complement of n bit is −2n−1 . . . −2n−1 − 1. To avoid un-wanted overflow,
the range is clipped to −2n−1 + 1 . . . −2n−1 − 1.
Because the zero is interpreted as a positive number for 2’th complement representation of interger n bit
number, the smallest negative number is −2(n−1) where the largest positive number is 2(n−1) − 1. Using
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
10 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
the smallest negative number −2(n−1) might cause critical under-flow or over-flow. Internal clipping takes
this into account by mapping −2(n−1) to −2(n−1) + 1.
Hexadecimal Value
u16
s16
q8.8
q4.12
0x0000h
0
0
0.0
0.0
0x0001h
1
1
1 / 256
1 / 4096
0x0001h
2
2
2 / 256
2 / 4096
0x0080h
128
128
0.5
0.03125
0x0100h
256
256
1.0
0.0625
0x0200h
512
512
2.0
0.125
0x3FFFh
16383
16383
16383 / 256
16383 / 4096
0x5A81h
23169
23169
23169 / 256
23169 / 4096
0x7FFFh
32767
32767
32767 / 256
32767 / 4096
0x8000h
32768
-32768
-32768 / 256
-32768 / 4096
0x8001h
32769
-32767
-32767 / 256
-32767 / 4096
0x8002h
32770
-32766
-32766 / 256
-32766 / 4096
0xC001h
49153
-16383
-16383 / 256
-16383 / 4096
0xFFFEh
65534
-2
-2 / 256
-2 / 4096
0xFFFFh
65535
-1
-1 / 256
-1 / 4096
Table 4: Examples of u16, s16, q8.8, q4.12
The q8.8 and q4.12 are used for P and I parameters which are positive numbers but q8.8 and q4.12 are
used as signed numbers. This is because theses values are multiplied with signed error values resp. error
integral values.
3.4.2
N_POLE_PAIRS, PHI_E, PHI_M
The parameter N_POLE_PAIRS defines the factor between electrical angle PHI_E and mechanical angle
PHI_M of a motor (pls. refer figure 5).
A motor with one (1) pole pair turns once for each electrical period. A motor with two (2) pole pairs turns
once for each two electrical periods. A motor with three (3) pole pairs turns once for each three electrical
periods. A motor with four pole (4) pairs turns once for each four electrical periods.
The electrical angle PHI_E is relevant for the commutation of the motor. It is relevant for the torque control
of the inner FOC loop.
PHI_E = PHI_M · N_POLE_PAIRS
(1)
The mechanical angle PHI_M is primarily relevant for velocity control and for positioning. This is because
one wants to control the motor speed in terms of mechanical turns and not in terms of electrical turns.
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
PHI_M = PHI_E/N_POLE_PAIRS
11 / 102
(2)
Different encoders give different kind of position angles. Analog hall sensors normally give the electrical
position PHI_E that can be used for commutation. Analog encoders give - depending on their resolution - angles that have to be scaled first to mechanical angles PHI_M and to electrical angles PHI_E for
commutation.
Figure 5: N_POLE_PAIRS - Number of Pole Pairs
3.4.3
Numerical Representation of Angles PHI
Electrical angels and mechanical angles are represented as 16 bit integer values. One full revolution of
360 deg is equivalent to 216 = 65536 steps. Any position coming from a sensor is mapped to this interger
range. Adding an offset of PHI_OFFSET causes a rotation of an angle PHI_OFFSET/216 . Subtraction of an
offset causes a rotation of an angle PHI_OFFSET in opposite direction.
Figure 6: Integer Representation of Angles with 16 Bit as s16 resp. u16
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
12 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
u16
s16
PHI[°]
±PHI[°]
0x0000h
0
0
0.0
0.0
0x1555h
5461
5461
30.0
-330.0
0x2AAAh
10922
10922
60.0
-300.0
0x4000h
16384
16384
90.0
-270.0
0x5555h
21845
21845
120.0
-240.0
0x6AAAh
27306
27768
150.0
-210.0
0x8000h
32768
-32768
180.0
-180.0
0x9555h
38229
-27307
210.0
-150.0
0xAAAAh
43690
-21846
240.0
-120.0
0xC000h
49152
-16384
270.0
-90.0
0xD555h
54613
-10923
300.0
-60.0
0xEAAAh
60074
-5462
330.0
-30.0
Hexadecimal Value
Table 5: Examples of u16, s16, q8.8
The option of adding an offset is for adjustment of angle shift between motor and stator and rotor and
encoder. Finally, the relative orientations between motor and stator and rotor and encoder can be adjusted
by just one offset. Alternatively, one can set the counter position of an incremental encoder to zero on
initial position. For absolute encoders one needs to use the offset to set an initial position.
3.5
ADC Engine
The ADC engine controls the sampling of different available ADC channels.
The FOC engine expects offset corrected ADC values, scaled into the FOC engine 16 bit (s16) fixed point
representation. The integrated scaler and offseter maps raw ADC samples of current measurement
channels to 16 bit two’s complement values (s16). Both, offset and scale calculations are signed. With this,
the user can change the signs of current according to the application by the scaling factors.
The s16 scaled ADC values are available for read out from the register by the user. ADC samples for motor
supply voltage (VM), MOSFET temperature, motor temperature, general purpose analog input (AIN) are
only raw values without scaling.
• ADC samples of integrated ADC
• ADC samples from external ADC (LTC2351)
• ADC samples from external sources can be written into dedicated registers (ADC EXT)
• ADC values are for:
– phase current measurement (most important task)
– Supply voltage measurement (for monitoring or brake chopper)
– Analog Hall signal measurement
– analog Sine/Cosine encoder signal measurement
– analog voltage input for MOS-FET temperature signal monitoring
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
13 / 102
– analog voltage input for motor temperature signal monitoring
Wrong scaling factors or wrong offsets might cause damages when the closed current regulation is active. Integrated hardware limiters allow protection especially
in the setup phase when using carful limits.
Info
3.5.1 Internal ADC
The TMC4670 is equipped with internal ADCs with input voltage range of 0V . . . 2.5V for current measurement, supply voltage measurement, analog hall signal measurement, analog encoder.
3.5.2
External ADC (LTC2351)
Alternatively to the integrated ADCs, the TMC4670 supports external SPI ADCs LTC2351 from Linear
Technology for current measurements. This is intended for current sensing on separate power stages.
3.5.2.1
ADC RAW
The sampled raw ADC values are available for read out by the user. This is important during the system
setup phase to determine offset and scaling factors.
3.5.2.2
ADC EXT
The user can write ADC values into the ADC EXT registers of the register bank from external ADC sources.
For example it there are high precision ADC values availbale from an external ADC.
3.5.3
ADC Selector & ADC Scaler w/ Offset Correction
The ADC selector selects ADC channles for FOC. The 3-phase FOC used two of three ADC channles for
measurement and calculates the third channel via Kirchhoff’s Law from the scaled an offset corrected
ADC values. The 2-phase FOC just used two ADC channels because for the 2-phase stepper motor the two
phases are independent from each other.
Note
The Open Loop Encoder is useful for setup of ADC channel selection, scaling, and
offset by turning a motor open loop.
The FOC23 Engine processes currents as 16 bit signed (s16) values. Raw ADC values are expanded to 16 bit
width independent of their resolution. With this, each ADC is available for read out a a 16 bit number.
The ADC scaler w/ offset correction is for pre-processing of measured raw current values. It might be used
to map to own units (e.g. A or mA). For scaling, gains of current amplifiers, reference voltages, and offsets
have to be takin into account.
Info
Raw ADC values generally are of 16 bit width independent of their real resolution.
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Info
14 / 102
The job of the ADC scaler is to map raw ADC values to the 16 bit signed (s16)
range and to center the values to zero by removing of offsets.
Figure 7: ADC Selector & Scaler w/ Offset Correction
ADC offsets and ADC scalers for the analog current measurement input channels need to be programmed
into the associated registers. Each ADC_I_U, ADC_I_V, ADC_I_UX, ADC_I_WY, ADCSD_I_UX, ADCSD_I_WY,
ADC_I0_EXT, ADC_I1_EXT is mapped either to ADC_I0_RAW or to ADC_I1_RAW by ADC_I0_SELECT and
ADC_I1_SELECT.
In addition, the ADC_OFFSET is for conversion of unsigned ADC values into signed ADC values as required
for the FOC.
ADC_I0 = (ADC_I0_RAW + ADC_I0_OFFSET) · ADC_I0_SCALE
(3)
ADC_I1 = (ADC_I1_RAW + ADC_I1_OFFSET) · ADC_I1_SCALE
(4)
For FOC3 the third current ADC_I2 is calculated via Kirchhoff’s Law. This requires the correct scaling and
offset correction before. For FOC2 there is no calculation of a third current.
The ADC_UX_SELECT selects one of the three ADC channels ADC_I0 ADC_I1, ADC_I2 for ADC_UX.
The ADC_V_SELECT selects one of the three ADC channels ADC_I0 ADC_I1, ADC_I2 for ADC_V.
The ADC_WY_SELECT selects one of the three ADC channels ADC_I0 ADC_I1, ADC_I2 for ADC_WY.
For FOC3 the third current ADC_I2 is calculated via Kirchhoff’s Law. This requires the correct scaling and
offset correction before. For FOC2 there is no calculation of a third current.
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
15 / 102
The ADC_UX, ADC_V, ADC_WY are for the FOC3 (U, V, W). The ADC_UX. and ADC_WY (X, Y) are for the FOC2.
Note
3.6
The Open Loop Encoder is useful for setup of ADC channel selection, scaling, and
offset by turning a motor open loop.
Encoder Engine
The encoder engine is an unified position sensor interface. It maps the selected encoder position information to electrical position (PHI_E) and to mechanical position (PHI_M). Both are 16 bit values. The encoder
engine maps single turn positions from position sensors to multi-turn position. The user can overwrite the
multi-turn position for initialization.
The different position sensors are the position sources for torque and flux control via FOC, for velocity
control, and for position control. The PHI_E_SELECTION selects the source of the electrical angel PHI_E
for the inner FOC control loop. VELOCITY_SELECTION selects the source for velocity measurement. With
PHI_E selected as source for velocity measurement, one gets the electrical velocity. With the mechanical
angle PHI_M selected as source for velocity measurement one gets the mechanical velocity taking the set
number of pole pairs (N_POLE_PAIRS) of the motor into account. Nevertheless, for high precision position
it might be useful to do positioning based on the electrical angel PHI_E.
3.6.1
Open Loop Encoder
For initial system setup the encoder engine is equipped with an open loop position generator. With one
can turn the motor open-loop by specifying speed in rpm and acceleration in rpm/s together with a voltage
UD_EXT in D direction. So, the open-loop encoder it is not a real encoder, it just gives positions as an
encoder does. The open-loop decoder has a direction bit to define once the direction of motion for the
application.
Note
The open loop encoder is useful for initial ADC setup, encoder setup, hall signal
validation, and for validation of the number of pole pairs of a motor. The open
loop encoder turns a motor open with programmable velocity in unit [RPM] with
programmable acceleration in unit [RPM/s].
So, with the open loop encoder one can turn a motor without any position sensor and without any current
measurement as the first step of doing the system setup. With the turning motor one can adjust the ADC
scales and offsets and set up positions sensors (hall, incremental encoder, . . . ) according to resolution,
orientation, direction of rotation.
3.6.2 Incremental ABN Encoder
Incremental encoders give two phase shifted incremental pulse signals A and B. Some incremental
encoders have an additional null position signal N or zero pulse signal Z. An incremental encoder (called
ABN encoder or ABZ encoder) has an individual number of incremental pulses per revolution. The number
of incremental pulses defines the number of positions per revolution (PPR). The PPR might mean pulses
per revolution or periods per revolution. Instead of positions per revolution some incremental encoder
vendors call these CPR counts per revolution.
The PPR parameter is the most important parameter of the incremental encoder interface. With that, it
forms a modulo (PPR) counter, counting from 0 to (PPR-1). Depending on the direction, it counts up or
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
16 / 102
down. The modulo PPR counter is mapped into the register bank as a dual ported register. the user can
overwrite it with an initial position. The ABN encoder interface provides both, the electrical position and
the multi-turn position are dual-ported read-write registers.
Note
The PPR parameter must be set exactly according to the used encoder.
The N pulse from an encoder triggers either sampling of the actual encoder count to fetch the position at
the N pulse or it re-writes the fetched N position on an N pulse. The N pulse can either be used as stand
alone pulse or and-ed with NAB = N and A and B. It depends on the decoder what kind of N pulse has to be
used, either N or NAB. For those encoders with precise N pulse within on AB quadrature, the N pulse must
be used. For those encoders with N pulse over four AB quadratures the user can enhance the precision of
the N pulse position detection by using NAB instead of N, which is recommended.
Note
Incremental encoders are available with N pulse and without N pulse.
Figure 8: ABN Incremental Encoder N Pulse
The polarity of N pulse, A pulse and B pulse are programmable. The N pulse is for re-initialization with
each turn of the motor. Once fetched, the ABN decoder can be configured to write back the fetched N
pulse position with each N pulse.
Note
The ABN encoder interface has a direction bit to set once the direction of motion
for the application.
Logical ABN = A and B and N might be useful for incremental encoders with low resolution N pulse to
enhance the resolution. On the other hand, for incremental encoders with high resolution n pulse a logical
abn = a and b and n might totally suppress the resulting n pulse.
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
17 / 102
Figure 9: Encoder ABN Timing - high precise n pulse and less precise N pulse
3.6.3
Secondary Incremental ABN Encoder
For commutating a motor with FOC one selects a position sensor source (digital incremental encoder,
digital hall, analog hall, analog incremental encoder, . . . ) that is mounted close to the motor. The inner
FOC loop controls torque and flux of the motor based on the measured phase currents and the electrical
angle of the rotor.
The TMC4670 is equipped with a secondary incremental encoders interface. This secondary encoder
interface is available as source for velocity control or position control. This is for applications where a
motor turns an object with a gear to position the object. An example is a robot arm where a motor moves
an angle with a the mechanical angle of the arm as the target.
Info
3.6.4
The secondary incremental encoder is not available for commutation (PHI_E) for
the inner FOC. In others words, there is no electrical angle PHI_E selectable from
the secondary encoder.
Digital Hall Sensor Interface with optional Interim Position Interpolation
The digital hall interface is the position sensor interface for digital hall signals. The digital hall signal
interface first maps the digital hall signals to an electrical position PHI_E_RAW. An offset PHI_E_OFFSET can
be used to rotate the orientation of the hall signal angle. The electrical angle PHI_E is for commutation.
Optionally, the default electrical positions of the Hall sensors can be adjusted by writes into the associated
registers.
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
18 / 102
Figure 10: Hall Sensor Angles
Hall Sensors give absolute positions within an electrical period with a resolution of 60° as 16 bit positions
(s16 resp. u16) PHI. With activated interim hall position interpolation the TMC4670 additionally generates
high resolution interim positions, when the motor is running at speed beyond 60 rpm.
3.6.5
Digital Hall Sensor - Interim Position Interpolation
For lower torque ripple the user can enable the position interpolation of interim hall positions. This
function is useful for motors, which are compatible with sine wave commutation, but are equipped with
digital hall sensors.
When the position interpolation is switched on, it becomes active on speed beyond 60 rpm. For lower
speed it is automatically disabled. This is important especially when the motor has to be at rest.
Motors that are intended for block commutation might smarter turn with hall signal interpolation but the
user should not expect too much for those motors.
3.6.6
Digital Hall together with Incremental Encoder
If a motor is equipped with both Hall sensors and incremental encoder, the hall sensors can be used for
the initialization as a low resolution absolute position sensor and later the incremental encoder can be
used a a high resolution sensor for commutation.
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
3.6.7
19 / 102
Analog Hall and Analog Encoder Interface (SinCos of 0°90° or 0°120°240°)
An analog encoder interface is part of the decoder engine. It is able to handle analog position signals of 0°
and 90° and 0° 120° 240°. The analog decoder engine adds offset, scales the raw analog encoder signals
and calculates the electrical angle PHI_E from these analog position signals.
ADC offsets and ADC scalers need to be programmed into the associated registers to use analog Hall
sensors or analog encoders. Each AENC_0_SELECT, AENC_1_SELECT, AENC_2_SELECT, and AENC_3_SELECT,
selects one raw analog ADC input channel AENC out of AENC_UX_RAW, AENC_VN_RAW, AENC_WY_RAW,
AENC_N_RAW, or one AENC register channel AENC_UX_EXT, AENC_VN_EXT, AENC_WY_EXT, AENC_NEXT.
An individual signed offset is added to each associated raw ADC channel and scaled by its associated
scaling factor according to
AENC_VALUE = (AENC_RAW + AENC_OFFSET) · AENC_SCALE
(5)
In addition, the AENC_OFFSET is for conversion of unsigned ADC values into signed ADC values as required
for the FOC.
Figure 11: Analog Encoder (AENC) Selector & Scaler w/ Offset Correction
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Info
3.6.8
20 / 102
The analog N pulse is just a raw ADC value. Scaling, offset correction, manual
handling of analog N pulse similar to N pulse handling of digital encoder N pulse
is not implemented for analog encoder.
Analog Position Decoder (SinCos of 0°90° or 0°120°240°)
The extracted positions from the analog decoder are available for read out from registers.
3.6.8.1
Multi-Turn Counter
Electrical angles are mapped to a multi-turn position counter. The user can overwrite this multi-turn
position for initialization purposes.
3.6.8.2
Encoder Engine Phi Selector
The angle selector selects the source for the commutation angel PHI_E. That electrical angle is available for
commutation.
3.6.8.3
External Position Register
A register value written via the application interface into the register bank is available for commutation
also. With this, the user can interface to any encoder by just writing positions extracted from external
encoder into this regulator. From the decoder engine point of view this is just one more selectable encoder
source. As the application interface is not fast enough for high commutation frequencies, this mode of
operation is only recommended for initialization.
3.7
FOC23 Engine
Info
Support for the TMC4670 is integrated into the TMCL-IDE including wizards for
system setup, which allow easy and fast commissioning and even turn the motor
with a few steps. With the TMCL-IDE the user has direct access to all registers of
the TMC4670.
The FOC23 engine performs the inner current control loop for the torque current IQ and the flux current
ID including the required transformations. Programmable limiters take carep
of clipping of interim results.
p
Per default, the programmable circular limiter clips U_D and U_Q to U_D_R = (2)· U_Q and U_R_R = (2)·
U_D. PI controllers perform the control tasks.
3.7.1
PI(D) Controllers
PI controllers are used for current control and velocity control. A P controller is used for position control.
The D part is not yet supported, it is just a register place holder for future variants.
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
3.7.2
21 / 102
PI(D) Controller Calculations
The PI controllers performs the calculation
Z
dXdT = P · e + I ·
t
e(t) dt
(6)
0
with
e = X_TARGET − X
(7)
where X_TARGET stands for target flux, target torque, target velocity, or target position with error e that is
the difference between target value and actual values. The time constant dt is 1µs with the integral part is
divided by 256.
3.7.3
PI(D) Controller - Clipping
The limiting of target values for PI controllers and output values of PI controllers is programmable. Per
power on default theses limiter are set to maximum values. Before one starts a motor one should set the
limiters for clipping.
The target input is clipped to X_TARGET_LIMIT. The output of a PI(D) is named dXdT because it gives the
desired derivative d/dt as a target value to the following stage: The position (x) controller gives velocity
(dx/dt). The output of the PI(D) is clipped to dXdT_LIMIT. The error integral of (6) is clipped to dXdT_LIMIT /
I.
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Figure 12: PID Architectures
3.7.4
PI Flux & PI Torque
The P part is represented as q8.8 and I is the I part represented as q0.15.
3.7.5
PI Velocity
The P part is represented as q8.8 and I is the I part represented as q0.15.
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
22 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
3.7.6
23 / 102
P(I) Position
For the position regulator, the P part is represented as q4.12 to be compatible with the high resolution
positions - one single rotation is handled as an s16.
This is because e = x - x_target might result in larger e[s32] for x[s32] and x_target[s32] represented as s32
for e = x - x_target for x[s16] and x_target[s16] represented as s16.
3.7.7 Inner FOC Control Loop - Flux & Torque
The inner FOC loop (figure 13) controls the flux current to a flux target and the torque current to the
desired torque target. The inner FOC loop performs the desired transformations according to figure 14
for 3-phase motors (FOC3). For 2-phase motors (FOC2) both Clarke (CLARKE) transformation and inverse
Clarke (iCLARKE) a by-passed.
The inner FOC control loop gets a target torque value (I_Q_TARGET) that represents acceleration, the rotor
position, and the measured currents as input data. Together with the programmed P and I parameters,
the inner FOC loop calculates three target voltage values as input for the PWM engine.
Figure 13: Inner FOC Control Loop
3.7.8
FOC Transformations and PI(D) for control of Flux & Torque
The Clarke transformation (CLARKE) maps three motor phase currents (IU , IV , IW ) to a two dimensional
coordinate system with two currents (Iα , Iβ ). Based on the actual rotor angle determined by an encoder or
via sensorless techniques, the Park transformation (PARK) maps these two currents to a quasi-static coordinate system with two currents (ID , IQ ). The current ID represents flux and the current IQ corresponds
to the torque. The flux just pulls on the rotor and effects the torque constant. The torque is effected by
IQ . Two PI controllers determine two voltages (UD , UQ ) to drive desired currents for a target torque and a
target flux of zero. The determined voltages (UD , UQ ) are re-transformed into the stator system by the
inverse Parke transformation (iPARK). The inverse Clarke Transformation (iCLARKE) transforms these two
currents into three voltages (UU , UV , UW ). Theses three voltage are the input of the PWM engine to drive
the power stage.
In case of the FOC2, Clarke transformation CLARKE and inverse Clarke Transformation iCLARKE are skipped.
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
24 / 102
Figure 14: FOC3 Transformations (FOC2 just skips CLARKE and iCLARKE)
3.7.9
Motion Modes
Figure 15: Motion Modes
3.8
PWM Engine
The PWM engine takes care of converting voltage vectors to pulse width modulated (PWM) control signals.
These digital PWM signals control the gate drivers of the power stage. For detailed description of the PWM
control registers and PWM register control bits pls. refer section 5 page 27.
The ease-of-use PWM Engine requires just a couple of parameter settings. Primarily, the polarities for
the gate control signal of high side and low side must be set. The power on default PWM mode is 0 that
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
25 / 102
means PWM = OFF. For operation, the centered PWM mode must be set on by setting the PWM mode to
7. A single bit controls the Space vector PWM (SVPWM). For 3-phase PMSM the SVPWM = ON gives more
effective voltage. Nevertheless, for some applications it makes sense to switch the SVPWM = OFF to keep
the star point voltage of the motor almost at rest.
3.8.1
PWM Polarites
The PWM polarities register PWM_POLARITES controls the polarities of the control signals. Positive polarity
for gate control means 1 represents ON and 0 represents OFF. The gate control signal polarities are
individually programmable for high side gate control and for low side gate control. The PWM polarities
register controls the polarity of other control signals as well.
3.8.2
PWM frequency
The PWM counter maximum length register PWM_MAXCNT controls the PWM frequency. For a clock
frequency fCLK = 25 MHz, the PWM frequency fPWM[Hz] = is (4.0 * fCLK[Hz]) / (PWM_MAXCNT + 1). With
fCLK = 25 MHz and power-on reset (POR) default of PWM_MAXCNT = 3999 the PWM frequency is fPWM =
25 kHz. The PWM frequency fPWM is recommended to be in the range of 25 kHz to 200 kHz by setting
PWM_MAXCNT between 3999 to 499.
Note
3.8.3
The PWM frequency can be changed any time also during motion.
PWM Resolution
The base resolution of the PWM is 12 bit internally mapped to 16 bit range. MAX_PWMCNT=4095 gives the
full resolution of 12 bit with ≈ 25kHz w/ fCLK = 25 MHz. MAX_PWMCNT = 2047 results in 11 bit resolution
but with ≈ 50 kHz w/ fCLK = 25 MHz. So the PWM_MAXCNT defines the PWM frequency but effects the
resolution of the PWM.
3.8.4
PWM Modes
The power-on reset (POR) default of the PWM is OFF. The standard PWM scheme is the centered PWM.
Passive Breaking and Free Wheeling Modes are available on demand. Please refer [?] concerning the
settings.
3.8.5
Brake-Before-Make (BBM)
One register controls BBM time for the high side. One register controls BBM time for the low side. The
BBM times are programmable in 10 ns steps. The BBM time can be set to zero for gate drivers that have
there own integrated BBM timers.
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
26 / 102
Figure 16: BBM Timing
Info
Note
3.8.6
Measured BBM times at MOS-FET gates differs from programmed BBM times due
to driver delays and possible additional gate driver BBM times. The programmed
BBM times are for the digital control signals.
Too small BBM times cause electrical short of the MOS-FET bridges - so called
shoot through - that shorts the power supply and might damage the power stage
and the power supply.
Space Vector PWM (SVPWM)
A single bit controls the internal Space vector PWM (SVPWM) enable. No further settings are required for
the space vector PWM - just ON or OFF. The power on default for the SVPM is OFF.
Note
4
The SVPWM is for 3-phase motors only. For 2-phase motors there is no SVPWM.
Safety Functions
Different safety functions are integrated and mapped to status bits. Two programmable mask register
select those bits for WARNING or ERROR. Warning just indicated the warning status at the WARNING
output. An Error will cause programmable actions on error conditions and indicate the error status directly
at ERROR output, as PWM = OFF on over current condition or ADC raw values with permanent zero or ADC
raw values at maximum.
Info
Programmable autonomous error handling or warning handling is not available.
Internal hardware limiters for real time clipping and monitoring of interim values are available. LIMIT or
LIMITS is part of register names of registers associated to internal limiters. Please refer 5.
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
27 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
5
Register Map
Register Map for TMC4670
Address
Registername
0x00h
Access
CHIPINFO_DATA
R
Variant 0
Mask
0xFFFFFFFFh
Name
Type
SI_TYPE
ASCII
Min
Max
Default
0
4294967295
0
Unit
Hardware type (ASCII).
Variant 1
Mask
Name
0xFFFFFFFFh
Type
SI_VERSION
Version
Min
Max
Default
0
4294967295
0
Unit
Hardware version (u16.u16).
Variant 2
Mask
0xFFFFFFFFh
Name
Type
SI_DATE
Date
Min
Max
Default
0
4294967295
0
Unit
Hardware date (nibble wise date stamp yyyymmdd).
Variant 3
Mask
0xFFFFFFFFh
Name
Type
SI_TIME
Time
Min
Max
Default
0
16777215
0
Unit
Hardware time (nibble wise time stamp –hhmmss)
Variant 4
Mask
Name
0xFFFFFFFFh
0x01h
Type
SI_VARIANT
Unsigned
Min
Max
Default
0
4294967295
0
Unit
CHIPINFO_ADDR
Mask
Name
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
RW
Type
28 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
0x000000FFh
Access
CHIP_INFO_ADDRESS
Min
Max
Default
0
4
0
Choice
Unit
0: SI_TYPE
1: SI_VERSION
2: SI_DATE
3: SI_TIME
4: SI_VARIANT
0x02h
ADC_RAW_DATA
R
Variant 0
Mask
Name
0x0000FFFFh
Type
ADC_I_UX_RAW
Unsigned
Min
Max
Default
0
65535
0
Unit
Raw phase current U resp. X (LTC2351).
Mask
Name
0xFFFF0000h
Type
ADC_I_WY_RAW
Unsigned
Min
Max
Default
0
65535
0
Unit
Raw phase current W resp. Y (LTC2351).
Variant 1
Mask
Name
0x0000FFFFh
Type
ADC_I_U_RAW
Unsigned
Min
Max
Default
0
65535
0
Unit
Raw phase current U (ADC_I_UX analog input for FOC2).
Mask
Name
0xFFFF0000h
Type
ADC_I_V_RAW
Unsigned
Min
Max
Default
0
65535
0
Unit
Raw phase current V (ADC_I_WY analog input for FOC2).
Variant 2
Mask
Name
0x0000FFFFh
Type
ADC_I_B_RAW
Min
Max
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unsigned
Default
Unit
29 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
0
65535
Access
0
Raw phase current Bottom (analog input).
Variant 3
Mask
Name
0x0000FFFFh
Type
ADC_VM_RAW
Unsigned
Min
Max
Default
0
65535
0
Unit
Raw supply voltage.
Variant 4
Mask
Name
0x0000FFFFh
Type
ADC_T_MOSFETS_RAW
Min
Max
Default
0
65535
0
Unsigned
Unit
Raw mosfet temperature.
Mask
Name
0xFFFF0000h
Type
ADC_T_MOTOR_RAW
Unsigned
Min
Max
Default
0
65535
0
Unit
Raw motor temperature.
Variant 5
Mask
Name
0x0000FFFFh
Type
ADC_U_UX_RAW
Unsigned
Min
Max
Default
0
65535
0
Unit
Raw voltage terminal U resp. X.
Mask
Name
0xFFFF0000h
Type
ADC_U_WY_RAW
Unsigned
Min
Max
Default
0
65535
0
Unit
Raw voltage terminal W resp. Y.
Variant 6
Mask
Name
0x0000FFFFh
Type
ADC_U_V_RAW
Unsigned
Min
Max
Default
0
65535
0
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
30 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
Raw voltage terminal V.
Variant 7
Mask
Name
0x0000FFFFh
Type
AENC_UX_RAW
Unsigned
Min
Max
Default
0
65535
0
Unit
Raw analog encoder voltage U resp. X.
Mask
Name
0xFFFF0000h
Type
AENC_WY_RAW
Unsigned
Min
Max
Default
0
65535
0
Unit
Raw analog encoder voltage W resp. Y.
Variant 8
Mask
Name
0x0000FFFFh
Type
AENC_V_RAW
Unsigned
Min
Max
Default
0
65535
0
Unit
Raw analog encoder voltage V.
Mask
Name
0xFFFF0000h
Type
AENC_N_RAW
Unsigned
Min
Max
Default
0
65535
0
Unit
Raw analog encoder zero position voltage N.
Variant 9
Mask
Name
0x0000FFFFh
Type
ANALOG_GPI_RAW
Unsigned
Min
Max
Default
0
65535
0
Unit
Raw analog input voltage.
Variant 10
Mask
Name
0x0000FFFFh
Type
ADCSD_I_UX_RAW
Signed
Min
Max
Default
-32768
32767
0
SigmaDeltaADC current UX.
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
31 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Mask
Access
Name
0xFFFF0000h
Type
ADCSD_I_WY_RAW
Signed
Min
Max
Default
-32768
32767
0
Unit
SigmaDeltaADC current WY.
Variant 11
Mask
Name
0x0000FFFFh
Type
ADCSD_I_B_RAW
Signed
Min
Max
Default
-32768
32767
0
Unit
SigmaDeltaADC current at bottom (PCB S (sense) instead of B
(bottom).
0x03h
ADC_RAW_ADDR
Mask
Name
0x000000FFh
RW
Type
ADC_RAW_ADDR
Choice
Min
Max
Default
0
11
0
Unit
0: ADC_I_WY_RAW & ADC_I_UX_RAW
1: ADC_I_V_RAW & ADC_I_U_RAW
2: ADC_I_B_RAW
3: ADC_VM_RAW
4: ADC_T_MOSFETS_RAW & ADC_T_MOTOR_RAW
5: ADC_U_WY_RAW & ADC_U_UX_RAW
6: ADC_U_V_RAW
7: AENC_WY_RAW & AENC_UX_RAW
8: AENC_N_RAW & AENC_V_RAW
9: ANALOG_GPI_RAW
10: ADCSD_I_WY_RAW & ADCSD_I_UX_RAW
11: ADCSD_I_B_RAW
0x04h
ADCSD_CLKCFG
Mask
Name
0x0000FFFFh
0x06h
RW
Type
ADCSD_CLKCFG
Unsigned
Min
Max
Default
0
65535
0
ADC_I1_I0_EXT
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
RW
32 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Mask
Access
Name
0x0000FFFFh
Type
ADC_I0_EXT
Unsigned
Min
Max
Default
0
65535
0
Unit
Register for write of ADC_I0 value from external source (eg.
CPU).
Mask
Name
0xFFFF0000h
Type
ADC_I1_EXT
Unsigned
Min
Max
Default
0
65535
0
Unit
Register for write of ADC_I1 value from external source (eg.
CPU).
0x08h
ADC_I1_SCALE_OFFSET
Mask
Name
0x0000FFFFh
RW
Type
ADC_I1_OFFSET
Signed
Min
Max
Default
-32768
32767
0
Unit
Offset for current ADC channel 1.
Mask
Name
0xFFFF0000h
Type
ADC_I1_SCALE
Signed
Min
Max
Default
-32768
32767
0
Unit
Scaling factor for current ADC channel 1.
0x09h
ADC_I0_SCALE_OFFSET
Mask
Name
0x0000FFFFh
RW
Type
ADC_I0_OFFSET
Signed
Min
Max
Default
-32768
32767
0
Unit
Offset for current ADC channel 0.
Mask
Name
0xFFFF0000h
Type
ADC_I0_SCALE
Signed
Min
Max
Default
-32768
32767
0
Unit
Scaling factor for current ADC channel 0.
0x0Ah
ADC_I_SELECT
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
RW
33 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Mask
Access
Name
0x000000FFh
Type
ADC_I0_SELECT
Choice
Min
Max
Default
0
7
0
Unit
Select input for raw current ADC_I0_RAW.
0: ADC_I0_RAW (analog input ADC_I_U)
1: ADC_I1_RAW (analog input ADC_I_V)
2: ADC_I0_EXT (from register)
3: ADC_I1_EXT (from register)
4: ADCSD_I0_RAW (sigma delta ADC)
5: ADCSD_I1_RAW (sigma delta ADC)
6: ADCSPI_I0_RAW (SPI ADC_I_UX)
7: ADCSPI_I1_RAW (SPI ADC_I_WY)
Mask
Name
0x0000FF00h
Type
ADC_I1_SELECT
Choice
Min
Max
Default
0
7
0
Unit
Select input for raw current ADC_I1_RAW.
0: ADC_I0_RAW (analog input ADC_I_U)
1: ADC_I1_RAW (analog input ADC_I_V)
2: ADC_I0_EXT (from register)
3: ADC_I1_EXT (from register)
4: ADCSD_I0_RAW (sigma delta ADC)
5: ADCSD_I1_RAW (sigma delta ADC)
6: ADCSPI_I0_RAW (SPI ADC_I_UX)
7: ADCSPI_I1_RAW (SPI ADC_I_WY)
Mask
Name
0x03000000h
Type
ADC_I_UX_SELECT
Choice
Min
Max
Default
0
2
0
Unit
0: UX = ADC_I0 (default)
1: UX = ADC_I1
2: UX = ADC_I2
Mask
0x0C000000h
Name
ADC_I_V_SELECT
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Type
Choice
34 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
Min
Max
Default
0
2
0
Unit
0: V = ADC_I0
1: V = ADC_I1 (default)
2: V = ADC_I2
Mask
Name
0x30000000h
Type
ADC_I_WY_SELECT
Choice
Min
Max
Default
0
2
0
Unit
0: WY = ADC_I0
1: WY = ADC_I1
2: WY = ADC_I2 (default)
0x0Dh
AENC_0_SCALE_OFFSET
Mask
Name
0x0000FFFFh
RW
Type
AENC_0_OFFSET
Signed
Min
Max
Default
-32768
32767
0
Unit
Offset for Analog Encoder ADC channel 0.
Mask
Name
0xFFFF0000h
Type
AENC_0_SCALE
Signed
Min
Max
Default
-32768
32767
0
Unit
Scaling factor for Analog Encoder ADC channel 0.
0x0Eh
AENC_1_SCALE_OFFSET
Mask
Name
0x0000FFFFh
RW
Type
AENC_1_OFFSET
Signed
Min
Max
Default
-32768
32767
0
Unit
Offset for Analog Encoder ADC channel 1.
Mask
Name
0xFFFF0000h
Type
AENC_1_SCALE
Signed
Min
Max
Default
-32768
32767
0
Unit
Scaling factor for Analog Encoder ADC channel 1.
0x0Fh
AENC_2_SCALE_OFFSET
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
RW
35 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Mask
Access
Name
0x0000FFFFh
Type
AENC_2_OFFSET
Signed
Min
Max
Default
-32768
32767
0
Unit
Offset for Analog Encoder ADC channel 2.
Mask
Name
0xFFFF0000h
Type
AENC_2_SCALE
Signed
Min
Max
Default
-32768
32767
0
Unit
Scaling factor for Analog Encoder ADC channel 2.
0x10h
AENC_3_SCALE_OFFSET
Mask
Name
0x0000FFFFh
RW
Type
AENC_3_OFFSET
Signed
Min
Max
Default
-32768
32767
0
Unit
Offset for Analog Encoder ADC channel 3.
Mask
Name
0xFFFF0000h
Type
AENC_3_SCALE
Signed
Min
Max
Default
-32768
32767
0
Unit
Scaling factor for Analog Encoder ADC channel 3.
0x11h
AENC_SELECT
Mask
RW
Name
0x000000FFh
Type
AENC_0_SELECT
Choice
Min
Max
Default
0
3
0
Unit
Select analog encoder ADC channel for raw analog encoder
signal AENC_0_RAW.
0: AENC_UX_RAW (default)
1: AENC_VN_RAW
2: AENC_WY_RAW
3: AENC_N_RAW
Mask
Name
0x0000FF00h
Type
AENC_1_SELECT
Min
Max
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Choice
Default
Unit
36 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
0
3
Access
0
Select analog encoder ADC channel for raw analog encoder
signal AENC_1_RAW.
0: AENC_UX_RAW
1: AENC_VN_RAW (default)
2: AENC_WY_RAW
3: AENC_N_RAW
Mask
Name
0x00FF0000h
Type
AENC_2_SELECT
Choice
Min
Max
Default
0
3
0
Unit
Select analog encoder ADC channel for raw analog encoder
signal AENC_2_RAW.
0: AENC_UX_RAW
1: AENC_VN_RAW
2: AENC_WY_RAW (default)
3: AENC_N_RAW
Mask
Name
0xFF000000h
Type
AENC_3_SELECT
Choice
Min
Max
Default
0
3
0
Unit
Select analog encoder ADC channel for raw analog encoder
signal AENC_3_RAW.
0: AENC_UX_RAW
1: AENC_VN_RAW
2: AENC_WY_RAW
3: AENC_N_RAW (default)
0x12h
ADC_IWY_IUX
Mask
R
Name
0x0000FFFFh
Type
ADC_IUX
Signed
Min
Max
Default
-32768
32767
0
Unit
Register of scaled current ADC value including signed added
offset as input for the FOC.
Mask
0xFFFF0000h
Name
ADC_IWY
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Type
Signed
37 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
Min
Max
Default
-32768
32767
0
Unit
Register of scaled current ADC value including signed added
offset as input for the FOC.
0x13h
ADC_IV
Mask
R
Name
0x0000FFFFh
Type
ADC_IV
Signed
Min
Max
Default
-32768
32767
0
Unit
Register of scaled current ADC value including signed added
offset as input for the FOC.
0x15h
AENC_WY_UX
Mask
R
Name
0x0000FFFFh
Type
AENC_UX
Signed
Min
Max
Default
-32768
32767
0
Unit
Register of scaled analog encoder value including signed added
offset as input for the interpolator.
Mask
Name
0xFFFF0000h
Type
AENC_WY
Signed
Min
Max
Default
-32768
32767
0
Unit
Register of scaled analog encoder value including signed added
offset as input for the interpolator.
0x16h
AENC_N_VN
Mask
R
Name
0x0000FFFFh
Type
AENC_VN
Signed
Min
Max
Default
-32768
32767
0
Unit
Register of scaled analog encoder value including signed added
offset as input for the interpolator.
Mask
Name
0xFFFF0000h
Type
AENC_N
Signed
Min
Max
Default
-32768
32767
0
Unit
Register of scaled analog encoder value including signed added
offset of analog N pulse.
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
38 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
0x17h
Access
PWM_POLARITIES
Mask
0x00000001h
RW
Name
Type
PWM_POLARITIES[0]
Bool
Min
Max
Default
0
1
0
Unit
polarity of Low Side (LS) gate control signal
0: off
1: on
Mask
0x00000002h
Name
Type
PWM_POLARITIES[1]
Bool
Min
Max
Default
0
1
0
Unit
polarity of High Side (HS) gate control signal
0: off
1: on
Mask
0x00000004h
Name
Type
PWM_POLARITIES[2]
Bool
Min
Max
Default
0
1
0
Unit
pulse AB polarity
0: off
1: on
Mask
0x00000008h
Name
Type
PWM_POLARITIES[3]
Bool
Min
Max
Default
0
1
0
Unit
pulse B polarity
0: off
1: on
Mask
0x00000010h
Name
Type
PWM_POLARITIES[4]
Bool
Min
Max
Default
0
1
0
pulse C center polarity
0: off
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
39 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
1: on
Mask
0x00000020h
Name
Type
PWM_POLARITIES[5]
Bool
Min
Max
Default
0
1
0
Unit
pulse A polarity
0: off
1: on
Mask
0x00000040h
Name
Type
PWM_POLARITIES[6]
Bool
Min
Max
Default
0
1
0
Unit
pulse zero Z pulse polarity
0: off
1: on
Mask
0x00000080h
Name
Type
PWM_POLARITIES[7]
Bool
Min
Max
Default
0
1
0
Unit
over current signal polarity
0: off
1: on
0x18h
PWM_MAXCNT
Mask
RW
Name
0x0000FFFFh
Type
PWM_MAXCNT
Unsigned
Min
Max
Default
0
65535
0
Unit
PWM maximum (count-1), PWM frequency is fPWM[Hz] =
100MHz/(PWM_MAXCNT+1)
0x19h
PWM_BBM_H_BBM_L
Mask
Name
0x000000FFh
Type
PWM_BBM_L
Unsigned
Min
Max
Default
0
255
0
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
RW
Unit
40 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
Break Before Make time tBBM_L[10ns] for low side MOS-FET
gate control
Mask
Name
0x0000FF00h
Type
PWM_BBM_H
Unsigned
Min
Max
Default
0
255
0
Unit
Break Before Make time tBBM_H[10ns] for high side MOS-FET
gate control
0x1Ah
PWM_SV_CHOP
Mask
RW
Name
0x000000FFh
Type
PWM_CHOP
Choice
Min
Max
Default
0
7
0
Unit
PWM chopper mode, defining how to chopper
0: PWM = OFF, free running
1: PWM = OFF, Low Side (LS) permanent = ON
2: PWM = OFF, High Side (HS) permanent = ON
3: PWM off, free running
4: PWM off, free running
5: PWM low side (LS) chopper only, high side (HS) off; not
suitable for FOC
6: PWM high side (HS) chopper only, low side (LS) off; not
suitable for FOC
7: centered PWM for FOC
Mask
0x00000100h
Name
Type
PWM_SV
Bool
Min
Max
Default
0
1
0
Unit
use Space Vector PWM
0: Space Vector PWM disabled
1: Space Vector PWM enabled
0x1Bh
MOTOR_TYPE_N_POLE_PAIRS
Mask
Name
0x0000FFFFh
Type
N_POLE_PAIRS
Unsigned
Min
Max
Default
1
65535
1
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
RW
Unit
41 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
Number n of pole pairs of the motor for calcualtion phi_e =
phi_m / N_POLE_PAIRS.
Mask
Name
0x00FF0000h
Type
MOTOR_TYPE
Choice
Min
Max
Default
0
3
0
Unit
0: FOC2
1: FOC3
2: reserved
3: reserved
0x1Ch
PHI_E_EXT
Mask
RW
Name
0x0000FFFFh
Type
PHI_E_EXT
Signed
Min
Max
Default
-32768
32767
0
Unit
Electrical angle phi_e_ext for external writing into this register.
0x1Dh
PHI_M_EXT
Mask
RW
Name
0x0000FFFFh
Type
PHI_M_EXT
Signed
Min
Max
Default
-32768
32767
0
Unit
Mechanical angle phi_m_ext for external writing into this register.
0x1Eh
POSITION_EXT
Mask
RW
Name
0xFFFFFFFFh
Type
POSITION_EXT
Signed
Min
Max
Default
-2147483648
2147483647
0
Unit
Mechanical (multi turn) position for external writing into this
register.
0x1Fh
OPENLOOP_MODE
Mask
0x00001000h
RW
Name
Type
OPENLOOP_PHI_DIRECTION
Bool
Min
Max
Default
0
1
0
Open loop phi direction.
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
42 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
0: positive
1: negative
0x20h
OPENLOOP_ACCELERATION
Mask
Name
0xFFFFFFFFh
RW
Type
OPENLOOP_ACCELERATION
Min
Max
Default
0
4294967295
0
Unsigned
Unit
Acceleration of open loop phi.
0x21h
OPENLOOP_VELOCITY_TARGET
Mask
Name
0xFFFFFFFFh
RW
Type
OPENLOOP_VELOCITY_TARGET
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
Target velocity of open loop phi.
0x22h
OPENLOOP_VELOCITY_ACTUAL
Mask
Name
0xFFFFFFFFh
RW
Type
OPENLOOP_VELOCITY_ACTUAL
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
Actual velocity of open loop generator.
0x23h
OPENLOOP_PHI
Mask
RW
Name
0x0000FFFFh
Type
OPENLOOP_PHI
Signed
Min
Max
Default
-32768
32767
0
Unit
Angle phi open loop (either mapped to electrical angel phi_e
or mechanical angle phi_m).
0x24h
UQ_UD_EXT
Mask
RW
Name
0x0000FFFFh
Type
UD_EXT
Signed
Min
Max
Default
-32768
32767
0
Unit
External writable parameter for open loop voltage control
mode, usefull during system setup, U_D component.
Mask
Name
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Type
43 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
0xFFFF0000h
Access
UQ_EXT
Signed
Min
Max
Default
-32768
32767
0
Unit
External writable parameter for open loop voltage control
mode, usefull during system setup, U_Q component.
0x25h
ABN_DECODER_MODE
RW
Mask
Name
Type
0x00000001h
apol
Bool
Min
Max
Default
0
1
0
Unit
Polarity of A pulse.
0: off
1: on
Mask
Name
Type
0x00000002h
bpol
Bool
Min
Max
Default
0
1
0
Unit
Polarity of B pulse.
0: off
1: on
Mask
Name
Type
0x00000004h
npol
Bool
Min
Max
Default
0
1
0
Unit
Polarity of N pulse.
0: off
1: on
Mask
0x00000008h
Name
Type
use_abn_as_n
Bool
Min
Max
Default
0
1
0
Unit
0: Ignore A and B polarity with Npulse = N, 1 : Npulse = N and
A and B
0: Ignore A and B polarity with Npulse = N
1: Npulse = N and A and B
Mask
Name
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Type
44 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
0x00000100h
Access
cln
Bool
Min
Max
Default
0
1
0
Unit
Clear writes ABN_DECODER_COUNT_N into decoder count at
Npulse.
0: off
1: on
Mask
0x00001000h
Name
Type
direction
Bool
Min
Max
Default
0
1
0
Unit
Decoder count direction.
0: positive
1: negative
0x26h
ABN_DECODER_PPR
Mask
Name
0x00FFFFFFh
RW
Type
ABN_DECODER_PPR
Unsigned
Min
Max
Default
0
16777215
0
Unit
Decoder pules per mechanical revolution.
0x27h
ABN_DECODER_COUNT
Mask
Name
0x00FFFFFFh
RW
Type
ABN_DECODER_COUNT
Min
Max
Default
0
16777215
0
Unsigned
Unit
Raw decoder count; the digital decoder engine counts modulo
(decoder_ppr).
0x28h
ABN_DECODER_COUNT_N
Mask
Name
0x00FFFFFFh
RW
Type
ABN_DECODER_COUNT_N
Min
Max
Default
0
16777215
0
Unsigned
Unit
Decoder count latched on N pulse, when N pulse clears decoder_count also decoder_count_n is 0.
0x29h
ABN_DECODER_PHI_E_PHI_M_OFFSET
Mask
Name
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
RW
Type
45 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
0x0000FFFFh
Access
ABN_DECODER_PHI_M_OFFSET
Min
Max
Default
-32768
32767
0
Signed
Unit
ABN_DECODER_PHI_M_OFFSET to shift (rotate) angle DECODER_PHI_M.
Mask
Name
0xFFFF0000h
Type
ABN_DECODER_PHI_E_OFFSET
Min
Max
Default
-32768
32767
0
Signed
Unit
ABN_DECODER_PHI_E_OFFSET to shift (rotate) angle DECODER_PHI_E.
0x2Ah
ABN_DECODER_PHI_E_PHI_M
Mask
Name
0x0000FFFFh
R
Type
ABN_DECODER_PHI_M
Min
Max
Default
-32768
32767
0
Signed
Unit
ABN_DECODER_PHI_M = ABN_DECODER_COUNT * 2ˆ
16 /
ABN_DECODER_PPR + ABN_DECODER_PHI_M_OFFSET;
Mask
Name
0xFFFF0000h
Type
ABN_DECODER_PHI_E
Min
Max
Default
-32768
32767
0
Signed
Unit
ABN_DECODER_PHI_E
=
(ABN_DECODER_PHI_M
N_POLE_PAIRS_) + ABN_DECODER_PHI_E_OFFSET
0x2Ch
ABN_2_DECODER_MODE
RW
Mask
Name
Type
0x00000001h
apol
Bool
Min
Max
Default
0
1
0
Unit
Polarity of A pulse.
0: off
1: on
Mask
Name
Type
0x00000002h
bpol
Bool
Min
Max
Default
0
1
0
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
*
Unit
46 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
Polarity of B pulse.
0: off
1: on
Mask
Name
Type
0x00000004h
npol
Bool
Min
Max
Default
0
1
0
Unit
Polarity of N pulse.
0: off
1: on
Mask
0x00000008h
Name
Type
use_abn_as_n
Bool
Min
Max
Default
0
1
0
Unit
0: Ignore A and B polarity with Npulse = N, 1 : Npulse = N and
A and B
0: Ignore A and B polarity with Npulse = N
1: Npulse = N and A and B
Mask
0x00000100h
Name
Type
cln
Bool
Min
Max
Default
0
1
0
Unit
Clear writes ABN_2_DECODER_COUNT_N into decoder count
at Npulse.
0: off
1: on
Mask
0x00001000h
Name
Type
direction
Bool
Min
Max
Default
0
1
0
Unit
Decoder count direction.
0: positive
1: negative
0x2Dh
ABN_2_DECODER_PPR
Mask
0x00FFFFFFh
Name
ABN_2_DECODER_PPR
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
RW
Type
Unsigned
47 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
Min
Max
Default
1
16777215
0
Unit
Decoder_2 pules per mechanical revolution. This 2nd ABN
encoder interface is for positioning or velocity control but NOT
for motor commutation.
0x2Eh
ABN_2_DECODER_COUNT
Mask
Name
0x00FFFFFFh
RW
Type
ABN_2_DECODER_COUNT
Min
Max
Default
0
16777215
0
Unsigned
Unit
Raw decoder_2 count; the digital decoder engine counts modulo (decoder_2_ppr).
0x2Fh
ABN_2_DECODER_COUNT_N
Mask
Name
0x00FFFFFFh
RW
Type
ABN_2_DECODER_COUNT_N
Min
Max
Default
0
16777215
0
Unsigned
Unit
Decoder_2 count latched on N pulse, when N pulse clears
decoder_2_count also decoder_2_count_n is 0.
0x30h
ABN_2_DECODER_PHI_M_OFFSET
Mask
0x0000FFFFh
Name
RW
Type
ABN_2_DECODER_PHI_M_OFFSET
Min
Max
Default
-32768
32767
0
Signed
Unit
ABN_2_DECODER_PHI_M_OFFSET to shift (rotate) angle DECODER_2_PHI_M.
0x31h
ABN_2_DECODER_PHI_M
Mask
Name
0x0000FFFFh
R
Type
ABN_2_DECODER_PHI_M
Min
Max
Default
-32768
32767
0
Signed
Unit
ABN_2_DECODER_PHI_M = ABN_2_DECODER_COUNT * 2ˆ
16 /
ABN_2_DECODER_PPR + ABN_2_DECODER_PHI_M_OFFSET;
0x33h
HALL_MODE
Mask
0x00000001h
Min
RW
Name
Type
polarity
Bool
Max
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Default
Unit
48 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
0
1
Access
0
polarity
0: off
1: on
Mask
0x00000100h
Name
Type
interpolation
Bool
Min
Max
Default
0
1
0
Unit
interpolation
0: off
1: on
Mask
0x00001000h
Name
Type
direction
Bool
Min
Max
Default
0
1
0
Unit
direction
0: off
1: on
0x34h
HALL_POSITION_060_000
Mask
Name
0x0000FFFFh
RW
Type
HALL_POSITION_000
Signed
Min
Max
Default
-32768
32767
0
Unit
s16 hall sensor position at 0°
Mask
Name
0xFFFF0000h
Type
HALL_POSITION_060
Signed
Min
Max
Default
-32768
32767
0
Unit
s16 hall sensor position at 60°.
0x35h
HALL_POSITION_180_120
Mask
Name
0x0000FFFFh
Type
HALL_POSITION_120
Signed
Min
Max
Default
-32768
32767
0
s16 hall sensor position at 120°.
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
RW
Unit
49 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Mask
Access
Name
0xFFFF0000h
Type
HALL_POSITION_180
Signed
Min
Max
Default
-32768
32767
0
Unit
s16 hall sensor position at 180°.
0x36h
HALL_POSITION_300_240
Mask
Name
0x0000FFFFh
RW
Type
HALL_POSITION_240
Signed
Min
Max
Default
-32768
32767
0
Unit
s16 hall sensor position at 240°.
Mask
Name
0xFFFF0000h
Type
HALL_POSITION_300
Signed
Min
Max
Default
-32768
32767
0
Unit
s16 hall sensor position at 300°.
0x37h
HALL_PHI_E_PHI_M_OFFSET
Mask
Name
0x0000FFFFh
RW
Type
HALL_PHI_M_OFFSET
Min
Max
Default
-32768
32767
0
Signed
Unit
Offset of mechanical angle hall_phi_m of hall decoder.
Mask
Name
0xFFFF0000h
Type
HALL_PHI_E_OFFSET
Signed
Min
Max
Default
-32768
32767
0
Unit
Offset for electrical angle hall_phi_e of hall decoder.
0x38h
HALL_DPHI_MAX
Mask
Name
0x0000FFFFh
RW
Type
HALL_DPHI_MAX
Unsigned
Min
Max
Default
0
65535
0
Unit
Maximum dx for interpolation (default for digital hall: u16/6).
0x39h
HALL_PHI_E_INTERPOLATED_PHI_E
Mask
Name
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
R
Type
50 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
0x0000FFFFh
Access
HALL_PHI_E
Signed
Min
Max
Default
-32768
32767
0
Unit
Raw electrical angle hall_phi_e of hall decoder, selection programmed via HALL_MODE control bit.
Mask
Name
0xFFFF0000h
Type
HALL_PHI_E_INTERPOLATED
Min
Max
Default
-32768
32767
0
Signed
Unit
Interpolated electrical angle hall_phi_e_interpolated, selection
programmed via HALL_MODE control bit.
0x3Ah
HALL_PHI_M
Mask
R
Name
0x0000FFFFh
Type
HALL_PHI_M
Signed
Min
Max
Default
-32768
32767
0
Unit
Mechanical angle hall_phi_m of hall decoder.
0x3Bh
AENC_DECODER_MODE
Mask
0x00000001h
RW
Name
Type
AENC_DECODER_MODE[0]
Bool
Min
Max
Default
0
1
0
Unit
nXY_UVW : 0: SinCos Mode // 1: 0° 120° 240° Mode
0: off
1: on
Mask
0x00001000h
Name
Type
AENC_DECODER_MODE[12]
Bool
Min
Max
Default
0
1
0
Unit
decoder count direction
0: positive
1: negative
0x3Ch
AENC_DECODER_N_THRESHOLD
Mask
0x0000FFFFh
Name
AENC_DECODER_N_THRESHOLD
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
RW
Type
Signed
51 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
Min
Max
Default
-32768
32767
0
Unit
Threshold for generating of N pulse from analog AENC_N signal
(only needed for analog SinCos encoders with analog N signal).
0x3Dh
AENC_DECODER_PHI_A_RAW
Mask
Name
0x0000FFFFh
R
Type
AENC_DECODER_PHI_A_RAW
Min
Max
Default
-32768
32767
0
Signed
Unit
Raw analog angle phi calculated from analog AENC inputs
(analog hall, analog SinCos, ...).
0x3Eh
AENC_DECODER_PHI_A_OFFSET
Mask
Name
0x0000FFFFh
RW
Type
AENC_DECODER_PHI_A_OFFSET
Min
Max
Default
-32768
32767
0
Signed
Unit
Offset for angle phi from analog decoder (analog hall, analog
SinCos, ...).
0x3Fh
AENC_DECODER_PHI_A
Mask
Name
0x0000FFFFh
R
Type
AENC_DECODER_PHI_A
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
Resulting phi available for the FOC (phi_e might need to be
calculated from this angle via aenc_decoder_ppr, for analog
hall sensors phi_a might be used directly as phi_e depends on
analog hall signal type).
0x40h
AENC_DECODER_PPR
Mask
Name
0x0000FFFFh
RW
Type
AENC_DECODER_PPR
Min
Max
Default
-32768
32767
1
Signed
Unit
Number of periods per revolution also called lines per revolution (different nomenclatur compared to digital ABN encoders).
0x41h
AENC_DECODER_COUNT
Mask
0xFFFFFFFFh
Name
AENC_DECODER_COUNT
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
RW
Type
Signed
52 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
Min
Max
Default
-2147483648
2147483647
0
Unit
Decoder position, raw unscaled.
0x42h
AENC_DECODER_COUNT_N
Mask
Name
0xFFFFFFFFh
RW
Type
AENC_DECODER_COUNT_N
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
Latched decoder position on analog N pulse event.
0x43h
AENC_DECODER_COUNT_N_MASK
Mask
0x0000FFFFh
Name
RW
Type
AENC_DECODER_COUNT_N_MASK
Min
Max
Default
-32768
32767
0
Signed
Unit
Optional position mask (position) for the analog N pulse within
phi_a period to be and-ed with the digital N pulse generated
via aenc_decoder_n_threshold.
0x45h
AENC_DECODER_PHI_E_PHI_M_OFFSET
Mask
Name
0x0000FFFFh
RW
Type
AENC_DECODER_PHI_M_OFFSET
Min
Max
Default
-32768
32767
0
Signed
Unit
Offset for mechanical angle phi_m.
Mask
Name
0xFFFF0000h
Type
AENC_DECODER_PHI_E_OFFSET
Min
Max
Default
-32768
32767
0
Signed
Unit
Offset for electrical angle phi_e.
0x46h
AENC_DECODER_PHI_E_PHI_M
Mask
Name
0x0000FFFFh
R
Type
AENC_DECODER_PHI_M
Min
Max
Default
-32768
32767
0
Signed
Unit
Resulting angle phi_m.
Mask
Name
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Type
53 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
0xFFFF0000h
Access
AENC_DECODER_PHI_E
Min
Max
Default
-32768
32767
0
Signed
Unit
Resulting angle phi_e.
0x47h
AENC_DECODER_POSITION
Mask
Name
0xFFFFFFFFh
RW
Type
AENC_DECODER_POSITION
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
Multi-turn position.
0x50h
VELOCITY_SELECTION
Mask
Name
0x000000FFh
RW
Type
VELOCITY_SELECTION
Min
Max
Default
0
12
0
Choice
Unit
0: phi_e selected via PHI_E_SELECTION
1: phi_e_ext
2: phi_e_openloop
3: phi_e_abn
4: reserved
5: phi_e_hal
6: phi_e_aenc
7: phi_a_aenc
8: reserved
9: phi_m_abn
10: phi_m_abn_2
11: phi_m_aenc
12: phi_m_hal
0x51h
POSITION_SELECTION
Mask
Name
0x000000FFh
Type
POSITION_SELECTION
Min
Max
Default
0
12
0
0: phi_e selected via PHI_E_SELECTION
1: phi_e_ext
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
RW
Choice
Unit
54 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
2: phi_e_openloop
3: phi_e_abn
4: reserved
5: phi_e_hal
6: phi_e_aenc
7: phi_a_aenc
8: reserved
9: phi_m_abn
10: phi_m_abn_2
11: phi_m_aenc
12: phi_m_hal
0x52h
PHI_E_SELECTION
Mask
Name
0x000000FFh
RW
Type
PHI_E_SELECTION
Choice
Min
Max
Default
0
7
0
Unit
0: reserved
1: phi_e_ext
2: phi_e_openloop
3: phi_e_abn
4: reserved
5: phi_e_hal
6: phi_e_aenc
7: phi_a_aenc
0x53h
PHI_E
R
Mask
Name
Type
0x0000FFFFh
PHI_E
Signed
Min
Max
Default
-32768
32767
0
Unit
Angle used for the inner FOC loop.
0x54h
PID_FLUX_P_FLUX_I
Mask
Name
0x0000FFFFh
Type
PID_FLUX_I
Signed
Min
Max
Default
0
32767
0
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
RW
Unit
55 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Mask
Access
Name
0xFFFF0000h
Type
PID_FLUX_P
Signed
Min
Max
Default
0
32767
0
0x55h
Unit
PID_FLUX_D
Mask
RW
Name
0x0000FFFFh
Type
PID_FLUX_D
Signed
Min
Max
Default
0
32767
0
0x56h
Unit
PID_TORQUE_P_TORQUE_I
Mask
Name
0x0000FFFFh
Type
PID_TORQUE_I
Signed
Min
Max
Default
0
32767
0
Mask
Name
0xFFFF0000h
Unit
Type
PID_TORQUE_P
Signed
Min
Max
Default
0
32767
0
0x57h
RW
Unit
PID_TORQUE_D
Mask
RW
Name
0x0000FFFFh
Type
PID_TORQUE_D
Signed
Min
Max
Default
0
32767
0
0x58h
Unit
PID_VELOCITY_P_VELOCITY_I
Mask
Name
0x0000FFFFh
Signed
Min
Max
Default
0
32767
0
Name
0xFFFF0000h
0x59h
Type
PID_VELOCITY_I
Mask
RW
Unit
Type
PID_VELOCITY_P
Signed
Min
Max
Default
0
32767
0
Unit
PID_VELOCITY_D
Mask
0x0000FFFFh
Name
PID_VELOCITY_D
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
RW
Type
Signed
56 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
Min
Max
Default
0
32767
0
0x5Ah
Unit
PID_POSITION_P_POSITION_I
Mask
Name
0x0000FFFFh
Type
PID_POSITION_I
Signed
Min
Max
Default
0
32767
0
Mask
Name
0xFFFF0000h
Unit
Type
PID_POSITION_P
Signed
Min
Max
Default
0
32767
0
0x5Bh
RW
Unit
PID_POSITION_D
Mask
Name
0x0000FFFFh
Type
PID_POSITION_D
Signed
Min
Max
Default
0
32767
0
0x5Ch
RW
Unit
PID_TORQUE_FLUX_TARGET_DDT_LIMITS
Mask
0xFFFFFFFFh
Name
RW
Type
PID_TORQUE_FLUX_TARGET_DDT_LIMITS
Unsigned
Min
Max
Default
Unit
0
32767
32767
[1/?s]
Limits of change in time [d/dt] of the target torque and target
flux.
0x5Dh
PIDOUT_UQ_UD_LIMITS
Mask
Name
0x0000FFFFh
RW
Type
PIDOUT_UQ_UD_LIMITS
Min
Max
Default
0
32767
0
Unsigned
Unit
Two dimensional circular limiter for inputs of iPark.
0x5Eh
PID_TORQUE_FLUX_LIMITS
Mask
Name
0x0000FFFFh
Type
PID_TORQUE_FLUX_LIMITS
Min
Max
Default
0
32767
0
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
RW
Unsigned
Unit
57 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
PID torque limt and PID flux limit, limits the target values coming from the target registers.
0x5Fh
PID_ACCELERATION_LIMIT
Mask
Name
0xFFFFFFFFh
RW
Type
PID_ACCELERATION_LIMIT
Min
Max
Default
0
4294967295
0
Unsigned
Unit
Acceleration limit.
0x60h
PID_VELOCITY_LIMIT
Mask
Name
0xFFFFFFFFh
RW
Type
PID_VELOCITY_LIMIT
Unsigned
Min
Max
Default
0
4294967295
0
Unit
Velocity limit.
0x61h
PID_POSITION_LIMIT_LOW
Mask
Name
0xFFFFFFFFh
RW
Type
PID_POSITION_LIMIT_LOW
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
Position limit low, programmable positon barrier.
0x62h
PID_POSITION_LIMIT_HIGH
Mask
Name
0xFFFFFFFFh
RW
Type
PID_POSITION_LIMIT_HIGH
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
Position limit high, programmable positon barrier.
0x63h
MODE_RAMP_MODE_MOTION
Mask
Name
0x000000FFh
Type
MODE_MOTION
Choice
Min
Max
Default
0
8
0
0: stopped_mode
1: torque_mode
2: velocity_mode
3: position_mode
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
RW
Unit
58 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
4: reserved
5: reserved
6: reserved
7: reserved
8: uq_ud_ext
Mask
Name
0x0000FF00h
Type
MODE_RAMP
Choice
Min
Max
Default
0
7
0
Unit
0: no velocity ramping
1: reserved
2: reserved
3: reserved
4: reserved
5: reserved
6: reserved
7: reserved
0x64h
PID_TORQUE_FLUX_TARGET
Mask
Name
0x0000FFFFh
Type
PID_FLUX_TARGET
Signed
Min
Max
Default
-32768
32767
0
Mask
Name
0xFFFF0000h
Unit
Type
PID_TORQUE_TARGET
Min
Max
Default
-32768
32767
0
0x65h
RW
Signed
Unit
PID_TORQUE_FLUX_OFFSET
Mask
Name
0x0000FFFFh
RW
Type
PID_FLUX_OFFSET
Signed
Min
Max
Default
-32768
32767
0
Unit
Flux offset for feed forward control.
Mask
Name
0xFFFF0000h
Type
PID_TORQUE_OFFSET
Min
Max
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Default
Signed
Unit
59 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
-32768
32767
Access
0
Torque offset for feed forward control.
0x66h
PID_VELOCITY_TARGET
Mask
Name
0xFFFFFFFFh
RW
Type
PID_VELOCITY_TARGET
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
Target velocity register (for velocity mode).
0x67h
PID_VELOCITY_OFFSET
Mask
Name
0xFFFFFFFFh
RW
Type
PID_VELOCITY_OFFSET
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
Velocity offset for feed forward control.
0x68h
PID_POSITION_TARGET
Mask
Name
0xFFFFFFFFh
RW
Type
PID_POSITION_TARGET
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
Target position register (for position mode).
0x69h
PID_TORQUE_FLUX_ACTUAL
Mask
Name
0x0000FFFFh
Type
PID_FLUX_ACTUAL
Signed
Min
Max
Default
-32768
32767
0
Mask
Name
0xFFFF0000h
Unit
Type
PID_TORQUE_ACTUAL
Min
Max
Default
-32768
32767
0
0x6Ah
R
Signed
Unit
PID_VELOCITY_ACTUAL
Mask
Name
0xFFFFFFFFh
Type
PID_VELOCITY_ACTUAL
Min
Max
Default
-2147483648
2147483647
0
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
R
Signed
Unit
60 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
Actual velocity.
0x6Bh
PID_POSITION_ACTUAL
Mask
Name
0xFFFFFFFFh
RW
Type
PID_POSITION_ACTUAL
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
Actual multi turn position for positioning.
WRITE
on PID_POSITION_ACTUAL writes same value into
PID_POSITION_TARGET to avoid unwanted move.
0x6Ch
PID_ERROR_DATA
R
Variant 0
Mask
Name
0xFFFFFFFFh
Type
PID_TORQUE_ERROR
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
PID torque error.
Variant 1
Mask
Name
0xFFFFFFFFh
Type
PID_FLUX_ERROR
Signed
Min
Max
Default
-2147483648
2147483647
0
Unit
PID flux error.
Variant 2
Mask
Name
0xFFFFFFFFh
Type
PID_VELOCITY_ERROR
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
PID velocity error.
Variant 3
Mask
Name
0xFFFFFFFFh
Type
PID_POSITION_ERROR
Min
Max
Default
-2147483648
2147483647
0
PID position error.
Variant 4
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Signed
Unit
61 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Mask
Access
Name
0xFFFFFFFFh
Type
PID_TORQUE_ERROR_SUM
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
PID torque error.
Variant 5
Mask
Name
0xFFFFFFFFh
Type
PID_FLUX_ERROR_SUM
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
PID flux error sum.
Variant 6
Mask
Name
0xFFFFFFFFh
Type
PID_VELOCITY_ERROR_SUM
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
PID velocity error sum.
Variant 7
Mask
Name
0xFFFFFFFFh
Type
PID_POSITION_ERROR_SUM
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
PID position error sum.
0x6Dh
PID_ERROR_ADDR
Mask
Name
0x000000FFh
Type
PID_ERROR_ADDR
Choice
Min
Max
Default
0
7
0
0: PID_TORQUE_ERROR
1: PID_FLUX_ERROR
2: PID_VELOCITY_ERROR
3: PID_POSITION_ERROR
4: PID_TORQUE_ERROR_SUM
5: PID_FLUX_ERROR_SUM
6: PID_VELOCITY_ERROR_SUM
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
RW
Unit
62 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
7: PID_POSITION_ERROR_SUM
0x6Eh
INTERIM_DATA
RW
Variant 0
Mask
Name
0xFFFFFFFFh
Type
PIDIN_TARGET_TORQUE
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
PIDIN target torque.
Variant 1
Mask
Name
0xFFFFFFFFh
Type
PIDIN_TARGET_FLUX
Signed
Min
Max
Default
-2147483648
2147483647
0
Unit
PIDIN target flux.
Variant 2
Mask
Name
0xFFFFFFFFh
Type
PIDIN_TARGET_VELOCITY
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
PIDIN target velocity.
Variant 3
Mask
Name
0xFFFFFFFFh
Type
PIDIN_TARGET_POSITION
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
PIDIN target position.
Variant 4
Mask
Name
0xFFFFFFFFh
Type
PIDOUT_TARGET_TORQUE
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
PIDOUT target torque.
Variant 5
Mask
0xFFFFFFFFh
Name
PIDOUT_TARGET_FLUX
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Type
Signed
63 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
Min
Max
Default
-2147483648
2147483647
0
Unit
PIDOUT target flux.
Variant 6
Mask
Name
0xFFFFFFFFh
Type
PIDOUT_TARGET_VELOCITY
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
PIDOUT target velocity.
Variant 7
Mask
Name
0xFFFFFFFFh
Type
PIDOUT_TARGET_POSITION
Min
Max
Default
-2147483648
2147483647
0
Signed
Unit
PIDOUT target position.
Variant 8
Mask
Name
0x0000FFFFh
Type
FOC_IUX
Signed
Min
Max
Default
-32768
32767
0
Mask
Name
0xFFFF0000h
Unit
Type
FOC_IWY
Signed
Min
Max
Default
-32768
32767
0
Unit
Variant 9
Mask
Name
0x0000FFFFh
Type
FOC_IV
Signed
Min
Max
Default
-32768
32767
0
Unit
Variant 10
Mask
Name
0x0000FFFFh
Mask
Type
FOC_IA
Signed
Min
Max
Default
-32768
32767
0
Name
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
Type
64 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
0xFFFF0000h
Access
FOC_IB
Signed
Min
Max
Default
-32768
32767
0
Unit
Variant 11
Mask
Name
0x0000FFFFh
Type
FOC_ID
Signed
Min
Max
Default
-32768
32767
0
Mask
Name
0xFFFF0000h
Unit
Type
FOC_IQ
Signed
Min
Max
Default
-32768
32767
0
Unit
Variant 12
Mask
Name
0x0000FFFFh
Type
FOC_UD
Signed
Min
Max
Default
-32768
32767
0
Mask
Name
0xFFFF0000h
Unit
Type
FOC_UQ
Signed
Min
Max
Default
-32768
32767
0
Unit
Variant 13
Mask
Name
0x0000FFFFh
Type
FOC_UD_LIMITED
Signed
Min
Max
Default
-32768
32767
0
Mask
Name
0xFFFF0000h
Unit
Type
FOC_UQ_LIMITED
Signed
Min
Max
Default
-32768
32767
0
Unit
Variant 14
Mask
Name
0x0000FFFFh
Type
FOC_UA
Signed
Min
Max
Default
-32768
32767
0
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
65 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Mask
Access
Name
0xFFFF0000h
Type
FOC_UB
Signed
Min
Max
Default
-32768
32767
0
Unit
Variant 15
Mask
Name
0x0000FFFFh
Type
FOC_UUX
Signed
Min
Max
Default
-32768
32767
0
Mask
Name
0xFFFF0000h
Unit
Type
FOC_UWY
Signed
Min
Max
Default
-32768
32767
0
Unit
Variant 16
Mask
Name
0x0000FFFFh
Type
FOC_UV
Signed
Min
Max
Default
-32768
32767
0
Unit
Variant 17
Mask
Name
0x0000FFFFh
Type
PWM_UX
Signed
Min
Max
Default
-32768
32767
0
Mask
Name
0xFFFF0000h
Unit
Type
PWM_WY
Signed
Min
Max
Default
-32768
32767
0
Unit
Variant 18
Mask
Name
0x0000FFFFh
Type
PWM_V
Signed
Min
Max
Default
-32768
32767
0
Unit
Variant 19
Mask
0x0000FFFFh
Name
ADC_I_0
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Type
Signed
66 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
Min
Max
Default
-32768
32767
0
Mask
Name
0xFFFF0000h
Unit
Type
ADC_I_1
Signed
Min
Max
Default
-32768
32767
0
Unit
Variant 192
Mask
Name
0x0000FFFFh
Type
DEBUG_VALUE_0
Signed
Min
Max
Default
-32768
32767
0
Mask
Name
0xFFFF0000h
Unit
Type
DEBUG_VALUE_1
Signed
Min
Max
Default
-32768
32767
0
Unit
Variant 193
Mask
Name
0x0000FFFFh
Type
DEBUG_VALUE_2
Signed
Min
Max
Default
-32768
32767
0
Mask
Name
0xFFFF0000h
Unit
Type
DEBUG_VALUE_3
Signed
Min
Max
Default
-32768
32767
0
Unit
Variant 194
Mask
Name
0x0000FFFFh
Type
DEBUG_VALUE_4
Signed
Min
Max
Default
-32768
32767
0
Mask
Name
0xFFFF0000h
Unit
Type
DEBUG_VALUE_5
Signed
Min
Max
Default
-32768
32767
0
Unit
Variant 195
Mask
Name
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Type
67 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
0x0000FFFFh
Access
DEBUG_VALUE_6
Signed
Min
Max
Default
-32768
32767
0
Mask
Name
0xFFFF0000h
Unit
Type
DEBUG_VALUE_7
Signed
Min
Max
Default
-32768
32767
0
Unit
Variant 196
Mask
Name
0x0000FFFFh
Type
DEBUG_VALUE_8
Unsigned
Min
Max
Default
0
65535
0
Mask
Name
0xFFFF0000h
Unit
Type
DEBUG_VALUE_9
Unsigned
Min
Max
Default
0
65535
0
Unit
Variant 197
Mask
Name
0x0000FFFFh
Type
DEBUG_VALUE_10
Unsigned
Min
Max
Default
0
65535
0
Mask
Name
0xFFFF0000h
Unit
Type
DEBUG_VALUE_11
Unsigned
Min
Max
Default
0
65535
0
Unit
Variant 198
Mask
Name
0x0000FFFFh
Type
DEBUG_VALUE_12
Unsigned
Min
Max
Default
0
65535
0
Mask
Name
0xFFFF0000h
Type
DEBUG_VALUE_13
Unsigned
Min
Max
Default
0
65535
0
Variant 199
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
Unit
68 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Mask
Access
Name
0x0000FFFFh
Type
DEBUG_VALUE_14
Unsigned
Min
Max
Default
0
65535
0
Mask
Name
0xFFFF0000h
Unit
Type
DEBUG_VALUE_15
Unsigned
Min
Max
Default
0
65535
0
Unit
Variant 200
Mask
Name
0xFFFFFFFFh
Type
DEBUG_VALUE_16
Signed
Min
Max
Default
-2147483648
2147483647
0
Unit
Variant 201
Mask
Name
0xFFFFFFFFh
Type
DEBUG_VALUE_17
Signed
Min
Max
Default
-2147483648
2147483647
0
Unit
Variant 202
Mask
Name
0xFFFFFFFFh
Type
DEBUG_VALUE_18
Signed
Min
Max
Default
-2147483648
2147483647
0
Unit
Variant 203
Mask
Name
0xFFFFFFFFh
Type
DEBUG_VALUE_19
Signed
Min
Max
Default
-2147483648
2147483647
0
0x6Fh
Unit
INTERIM_ADDR
Mask
RW
Name
0x000000FFh
Type
INTERIM_ADDR
Choice
Min
Max
Default
0
203
0
0: PIDIN_TARGET_TORQUE
1: PIDIN_TARGET_FLUX
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
69 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
2: PIDIN_TARGET_VELOCITY
3: PIDIN_TARGET_POSITION
4: PIDOUT_TARGET_TORQUE
5: PIDOUT_TARGET_FLUX
6: PIDOUT_TARGET_VELOCITY
7: PIDOUT_TARGET_POSITION
8: FOC_IWY_IUX
9: FOC_IV
10: FOC_IB_IA
11: FOC_IQ_ID
12: FOC_UQ_UD
13: FOC_UQ_UD_LIMITED
14: FOC_UB_UA
15: FOC_UWY_UUX
16: FOC_UV
17: PWM_WY_UX
18: PWM_UV
19: ADC_I1_I0
192: DEBUG_VALUE_1_0
193: DEBUG_VALUE_3_2
194: DEBUG_VALUE_5_4
195: DEBUG_VALUE_7_6
196: DEBUG_VALUE_9_8
197: DEBUG_VALUE_11_10
198: DEBUG_VALUE_13_12
199: DEBUG_VALUE_15_14
200: DEBUG_VALUE_16
201: DEBUG_VALUE_17
202: DEBUG_VALUE_18
203: DEBUG_VALUE_19
0x75h
ADC_VM_LIMITS
Mask
RW
Name
0x0000FFFFh
Type
ADC_VM_LIMIT_LOW
Unsigned
Min
Max
Default
0
65535
0
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
70 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
Low limit for brake chopper output BRAKE_OUT.
Mask
Name
0xFFFF0000h
Type
ADC_VM_LIMIT_HIGH
Min
Max
Default
0
65535
0
Unsigned
Unit
High limit for brake chopper output BRAKE_OUT.
0x76h
TMC4670_INPUTS_RAW
Mask
0x00000001h
R
Name
Type
TMC4670_INPUTS_RAW[0]
Bool
Min
Max
Default
0
1
0
Unit
A of ABN_RAW
0: off
1: on
Mask
0x00000002h
Name
Type
TMC4670_INPUTS_RAW[1]
Bool
Min
Max
Default
0
1
0
Unit
B of ABN_RAW
0: off
1: on
Mask
0x00000004h
Name
Type
TMC4670_INPUTS_RAW[2]
Bool
Min
Max
Default
0
1
0
Unit
N of ABN_RAW
0: off
1: on
Mask
0x00000008h
Name
Type
TMC4670_INPUTS_RAW[3]
Bool
Min
Max
Default
0
1
0
—
0: off
1: on
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
71 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Mask
0x00000010h
Access
Name
Type
TMC4670_INPUTS_RAW[4]
Bool
Min
Max
Default
0
1
0
Unit
A of ABN_2_RAW
0: off
1: on
Mask
0x00000020h
Name
Type
TMC4670_INPUTS_RAW[5]
Bool
Min
Max
Default
0
1
0
Unit
B of ABN_2_RAW
0: off
1: on
Mask
0x00000040h
Name
Type
TMC4670_INPUTS_RAW[6]
Bool
Min
Max
Default
0
1
0
Unit
N of ABN_2_RAW
0: off
1: on
Mask
0x00000080h
Name
Type
TMC4670_INPUTS_RAW[7]
Bool
Min
Max
Default
0
1
0
Unit
—
0: off
1: on
Mask
0x00000100h
Name
Type
TMC4670_INPUTS_RAW[8]
Bool
Min
Max
Default
0
1
0
HALL_UX of HALL_RAW
0: off
1: on
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
72 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Mask
0x00000200h
Access
Name
Type
TMC4670_INPUTS_RAW[9]
Bool
Min
Max
Default
0
1
0
Unit
HALL_V of HALL_RAW
0: off
1: on
Mask
0x00000400h
Name
Type
TMC4670_INPUTS_RAW[10]
Bool
Min
Max
Default
0
1
0
Unit
HALL_WY of HALL_RAW
0: off
1: on
Mask
0x00000800h
Name
Type
TMC4670_INPUTS_RAW[11]
Bool
Min
Max
Default
0
1
0
Unit
—
0: off
1: on
Mask
0x00001000h
Name
Type
TMC4670_INPUTS_RAW[12]
Bool
Min
Max
Default
0
1
0
Unit
REF_SW_R_RAW
0: off
1: on
Mask
0x00002000h
Name
Type
TMC4670_INPUTS_RAW[13]
Bool
Min
Max
Default
0
1
0
REF_SW_H_RAW
0: off
1: on
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
73 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Mask
0x00004000h
Access
Name
Type
TMC4670_INPUTS_RAW[14]
Bool
Min
Max
Default
0
1
0
Unit
REF_SW_L_RAW
0: off
1: on
Mask
0x00008000h
Name
Type
TMC4670_INPUTS_RAW[15]
Bool
Min
Max
Default
0
1
0
Unit
ENABLE_IN_RAW
0: off
1: on
Mask
0x00010000h
Name
Type
TMC4670_INPUTS_RAW[16]
Bool
Min
Max
Default
0
1
0
Unit
STP of DIRSTP_RAW
0: off
1: on
Mask
0x00020000h
Name
Type
TMC4670_INPUTS_RAW[17]
Bool
Min
Max
Default
0
1
0
Unit
DIR of DIRSTP_RAW
0: off
1: on
Mask
0x00040000h
Name
Type
TMC4670_INPUTS_RAW[18]
Bool
Min
Max
Default
0
1
0
PWM_IN_RAW
0: off
1: on
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
74 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Mask
0x00080000h
Access
Name
Type
TMC4670_INPUTS_RAW[19]
Bool
Min
Max
Default
0
1
0
Unit
—
0: off
1: on
Mask
0x00100000h
Name
Type
TMC4670_INPUTS_RAW[20]
Bool
Min
Max
Default
0
1
0
Unit
ESI_0 of ESI_RAW
0: off
1: on
Mask
0x00200000h
Name
Type
TMC4670_INPUTS_RAW[21]
Bool
Min
Max
Default
0
1
0
Unit
ESI_1 of ESI_RAW
0: off
1: on
Mask
0x00400000h
Name
Type
TMC4670_INPUTS_RAW[22]
Bool
Min
Max
Default
0
1
0
Unit
ESI_2 of ESI_RAW
0: off
1: on
Mask
0x00800000h
Name
Type
TMC4670_INPUTS_RAW[23]
Bool
Min
Max
Default
0
1
0
—
0: off
1: on
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
75 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Mask
0x01000000h
Access
Name
Type
TMC4670_INPUTS_RAW[24]
Bool
Min
Max
Default
0
1
0
Unit
CFG_0 of CFG
0: off
1: on
Mask
0x02000000h
Name
Type
TMC4670_INPUTS_RAW[25]
Bool
Min
Max
Default
0
1
0
Unit
CFG_1 of CFG
0: off
1: on
Mask
0x04000000h
Name
Type
TMC4670_INPUTS_RAW[26]
Bool
Min
Max
Default
0
1
0
Unit
CFG_2 of CFG
0: off
1: on
Mask
0x08000000h
Name
Type
TMC4670_INPUTS_RAW[27]
Bool
Min
Max
Default
0
1
0
Unit
CFG_3 of CFG
0: off
1: on
Mask
0x10000000h
Name
Type
TMC4670_INPUTS_RAW[28]
Bool
Min
Max
Default
0
1
0
PWM_IDLE_L_RAW
0: off
1: on
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
76 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Mask
0x20000000h
Access
Name
Type
TMC4670_INPUTS_RAW[29]
Bool
Min
Max
Default
0
1
0
Unit
PWM_IDLE_H_RAW
0: off
1: on
Mask
0x40000000h
Name
Type
TMC4670_INPUTS_RAW[30]
Bool
Min
Max
Default
0
1
0
Unit
DRV_ERR_IN_RAW
0: off
1: on
Mask
0x80000000h
Name
Type
TMC4670_INPUTS_RAW[31]
Bool
Min
Max
Default
0
1
0
Unit
—
0: off
1: on
0x77h
TMC4670_OUTPUTS_RAW
Mask
0x00000001h
R
Name
Type
TMC4670_OUTPUTS_RAW[0]
Bool
Min
Max
Default
0
1
0
Unit
PWM_UX1_L
0: off
1: on
Mask
0x00000002h
Name
Type
TMC4670_OUTPUTS_RAW[1]
Bool
Min
Max
Default
0
1
0
PWM_UX1_H
0: off
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
77 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
1: on
Mask
0x00000004h
Name
Type
TMC4670_OUTPUTS_RAW[2]
Bool
Min
Max
Default
0
1
0
Unit
PWM_VX2_L
0: off
1: on
Mask
0x00000008h
Name
Type
TMC4670_OUTPUTS_RAW[3]
Bool
Min
Max
Default
0
1
0
Unit
PWM_VX2_H
0: off
1: on
Mask
0x00000010h
Name
Type
TMC4670_OUTPUTS_RAW[4]
Bool
Min
Max
Default
0
1
0
Unit
PWM_WY1_L
0: off
1: on
Mask
0x00000020h
Name
Type
TMC4670_OUTPUTS_RAW[5]
Bool
Min
Max
Default
0
1
0
Unit
PWM_WY1_H
0: off
1: on
Mask
0x00000040h
Name
Type
TMC4670_OUTPUTS_RAW[6]
Bool
Min
Max
Default
0
1
0
PWM_Y2_L
0: off
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
78 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
1: on
Mask
0x00000080h
Name
Type
TMC4670_OUTPUTS_RAW[7]
Bool
Min
Max
Default
0
1
0
Unit
PWM_Y2_H
0: off
1: on
0x7Ch
STATUS_FLAGS
Mask
0x00000001h
RW
Name
Type
STATUS_FLAGS[0]
Bool
Min
Max
Default
0
1
0
Unit
pid_x_target_limit
0: off
1: on
Mask
0x00000002h
Name
Type
STATUS_FLAGS[1]
Bool
Min
Max
Default
0
1
0
Unit
pid_x_target_ddt_limit
0: off
1: on
Mask
0x00000004h
Name
Type
STATUS_FLAGS[2]
Bool
Min
Max
Default
0
1
0
Unit
pid_x_errsum_limit
0: off
1: on
Mask
0x00000008h
Name
Type
STATUS_FLAGS[3]
Bool
Min
Max
Default
0
1
0
pid_x_output_limit
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
79 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
0: off
1: on
Mask
0x00000010h
Name
Type
STATUS_FLAGS[4]
Bool
Min
Max
Default
0
1
0
Unit
pid_v_target_limit
0: off
1: on
Mask
0x00000020h
Name
Type
STATUS_FLAGS[5]
Bool
Min
Max
Default
0
1
0
Unit
pid_v_target_ddt_limit
0: off
1: on
Mask
0x00000040h
Name
Type
STATUS_FLAGS[6]
Bool
Min
Max
Default
0
1
0
Unit
pid_v_errsum_limit
0: off
1: on
Mask
0x00000080h
Name
Type
STATUS_FLAGS[7]
Bool
Min
Max
Default
0
1
0
Unit
pid_v_output_limit
0: off
1: on
Mask
0x00000100h
Name
Type
STATUS_FLAGS[8]
Bool
Min
Max
Default
0
1
0
pid_id_target_limit
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
80 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
0: off
1: on
Mask
0x00000200h
Name
Type
STATUS_FLAGS[9]
Bool
Min
Max
Default
0
1
0
Unit
pid_id_target_ddt_limit
0: off
1: on
Mask
0x00000400h
Name
Type
STATUS_FLAGS[10]
Bool
Min
Max
Default
0
1
0
Unit
pid_id_errsum_limit
0: off
1: on
Mask
0x00000800h
Name
Type
STATUS_FLAGS[11]
Bool
Min
Max
Default
0
1
0
Unit
pid_id_output_limit
0: off
1: on
Mask
0x00001000h
Name
Type
STATUS_FLAGS[12]
Bool
Min
Max
Default
0
1
0
Unit
pid_iq_target_limit
0: off
1: on
Mask
0x00002000h
Name
Type
STATUS_FLAGS[13]
Bool
Min
Max
Default
0
1
0
pid_iq_target_ddt_limit
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
81 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
0: off
1: on
Mask
0x00004000h
Name
Type
STATUS_FLAGS[14]
Bool
Min
Max
Default
0
1
0
Unit
pid_iq_errsum_limit
0: off
1: on
Mask
0x00008000h
Name
Type
STATUS_FLAGS[15]
Bool
Min
Max
Default
0
1
0
Unit
pid_iq_output_limit
0: off
1: on
Mask
0x00010000h
Name
Type
STATUS_FLAGS[16]
Bool
Min
Max
Default
0
1
0
Unit
ipark_cirlim_limit_u_d
0: off
1: on
Mask
0x00020000h
Name
Type
STATUS_FLAGS[17]
Bool
Min
Max
Default
0
1
0
Unit
ipark_cirlim_limit_u_q
0: off
1: on
Mask
0x00040000h
Name
Type
STATUS_FLAGS[18]
Bool
Min
Max
Default
0
1
0
ipark_cirlim_limit_u_r
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
82 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
0: off
1: on
Mask
0x00080000h
Name
Type
STATUS_FLAGS[19]
Bool
Min
Max
Default
0
1
0
Unit
—
0: off
1: on
Mask
0x00100000h
Name
Type
STATUS_FLAGS[20]
Bool
Min
Max
Default
0
1
0
Unit
ref_sw_r
0: off
1: on
Mask
0x00200000h
Name
Type
STATUS_FLAGS[21]
Bool
Min
Max
Default
0
1
0
Unit
ref_sw_h
0: off
1: on
Mask
0x00400000h
Name
Type
STATUS_FLAGS[22]
Bool
Min
Max
Default
0
1
0
Unit
ref_sw_l
0: off
1: on
Mask
0x00800000h
Name
Type
STATUS_FLAGS[23]
Bool
Min
Max
Default
0
1
0
—
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
83 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
0: off
1: on
Mask
0x01000000h
Name
Type
STATUS_FLAGS[24]
Bool
Min
Max
Default
0
1
0
Unit
pwm_min
0: off
1: on
Mask
0x02000000h
Name
Type
STATUS_FLAGS[25]
Bool
Min
Max
Default
0
1
0
Unit
pwm_max
0: off
1: on
Mask
0x04000000h
Name
Type
STATUS_FLAGS[26]
Bool
Min
Max
Default
0
1
0
Unit
adc_i_clipped
0: off
1: on
Mask
0x08000000h
Name
Type
STATUS_FLAGS[27]
Bool
Min
Max
Default
0
1
0
Unit
aenc_clipped
0: off
1: on
Mask
0x10000000h
Name
Type
STATUS_FLAGS[28]
Bool
Min
Max
Default
0
1
0
enc_n
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
84 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Address
Registername
Access
0: off
1: on
Mask
0x20000000h
Name
Type
STATUS_FLAGS[29]
Bool
Min
Max
Default
0
1
0
Unit
enc_2_n
0: off
1: on
Mask
0x40000000h
Name
Type
STATUS_FLAGS[30]
Bool
Min
Max
Default
0
1
0
Unit
aenc_n
0: off
1: on
Mask
0x80000000h
Name
Type
STATUS_FLAGS[31]
Bool
Min
Max
Default
0
1
0
Unit
—
0: off
1: on
0x7Dh
WARNING_MASK
Mask
Name
0xFFFFFFFFh
Type
WARNING_MASK
Unsigned
Min
Max
Default
0
4294967295
0
0x7Eh
RW
Unit
ERROR_MASK
Mask
RW
Name
0xFFFFFFFFh
Type
ERROR_MASK
Unsigned
Min
Max
Default
0
4294967295
0
Table 6: Register Map for TMC4670
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
Unit
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
6
85 / 102
Pinning
All power supply pins (1V2, 2V5, 3V3) must be connected.
Info
All ground pins (GND, GND_REF) must be connected.
All pins specified as n.c. (=not connected) must be left open.
Analog inputs (AI) are 2.5V single ended inputs. Voltage dividers are required to
scale down higher input voltages.
Digital inputs (I) resp. (IO) are 3.3V single ended inputs. Voltage dividers are
required to scale done higher input voltages.
IO
Description
AI
analog input, 2.5V
I
digital input, 3.3V
IO
digital input or digital output, direction programmable, 3.3V
O
digital output, 3.3V
Table 7: Pin Type Definition
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
86 / 102
Name
Ball
IO
Description
nRST
B10
I
active low reset input
CLK
M3
I
clock input, 25 MHz
ENABLE_IN
T13
I
active high enable input
ENABLE_OUT
A5
O
enable output
SPI_nSCS
R7
I
SPI active low chip select input
SPI_SCK
T7
I
SPI clock input
SPI_MOSI
T6
I
SPI master out slave input
SPI_MISO
R6
O
SPI master in sleave output
WARNING_OUT
P10
O
Maskable Warning Output
ERROR_OUT
T11
O
Maskable Error Output
ESI_0
H16
I
Emergency Switch Input #0
ESI_1
J15
I
Emergency Switch Input #1
ESI_2
J16
I
Emergency Switch Input #2
ENC_A
L1
I
A input of incremental encoder
ENC_B
L2
I
B input of incremental encoder
ENC_N
M1
I
N input of incremental encoder
ENC2_A
R1
I
A input of incremental encoder
ENC2_B
P2
I
B input of incremental encoder
ENC2_N
P4
I
N input of incremental encoder
HALL_UX
N2
I
digital hall input H1 for 3-phase (U) or 2-phase (X)
HALL_V
N1
I
digital hall input H2 for 3-phase (V)
HALL_WY
M2
I
digital hall input H3 for 3-phase (W) or 2-phase (Y)
REF_SW_L
A9
I
Left (L) reference switch
REF_SW_H
A8
I
Home (H) reference switch
REF_SW_R
A10
I
Right (R) reference switch
AENC_UX
C1
AI
analog hall or analog encoder, 3-phase (U) or 2-phase (X (cos))
AENC_V
D1
AI
analog hall or analog encoder, 3-phase (V)
AENC_WY
E1
AI
analog hall or analog encoder, 3-phase (W) or 2-phase (Y (sin))
AENC_N
B1
AI
analog encoder N pulse input
ADC_I_0
F2
AI
phase current measurement voltage input I_0 (I_U, I_X)
ADC_I_1
F4
AI
phase current measurement voltage input I_1 (I_V, I_W, I_Y)
ADC_VM
E3
AI
analog input for motor suppply voltage (VM) measurement
AGPI
G2
AI
Analog general purpose input (analog GPI)
ADC_T_MOSFETS
C3
AI
analog input for MOSFET temperature signal
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Name
87 / 102
Ball
IO
Description
ADC_T_MOTOR
C4
AI
analog input for motor temperature signal
ADC_U_UX
F1
AI
analog voltage input for terminal UX
ADC_U_V
F5
AI
analog voltage input for terminal V
ADC_U_WY
B2
AI
analog voltage input for terminal WY
ADC_I_S
C2
AI
analog bottom current measurement voltage input, reserved
ADC_START
B5
O
ADC start pulse for LTC2351
ADC_BIP
B4
O
output driving ADC LTC2351 BIP input
ADC_nSCS
B7
O
ADC LTC2351 nSCS signal
ADC_SCK
B6
O
ADC LTC2351 SCK signal
ADC_MISO
A6
I
from ADC LTC2351 SDO output
ADC_MOSI
A7
O
reserved for ADC w/ SDI input
PWM_IDLE_H
A11
I
Idle Level of high side gate control signals
PWM_IDLE_L
B11
I
Idle Level of low side gate control signals
PWM_UX1_H
D16
O
high side gate control output U (3-phase) resp. X1 (2-phase)
PWM_UX1_L
D15
O
low side gate control output U (3-phase) resp. X1 (2-phase)
PWM_VX2_H
C16
O
high side gate control output V (3-phase) resp. X2 (2-phase)
PWM_VX2_L
D14
O
low side gate control output V (3-phase) resp. X2 (2-phase)
PWM_WY1_H
B16
O
high side gate control output W (3-phase) resp. Y1 (2-phase)
PWM_WY1_L
C15
O
low side gate control output W (3-phase) resp. Y1 (2-phase)
PWM_Y2_H
B15
O
high side gate control output Y2 (2-phase only)
PWM_Y2_L
C14
O
low side gate control output Y2 (2-phase only)
PWM_Z_OUT
L15
O
pulse, indicating start of PWM period (zero count)
PWM_C_OUT
L16
O
pulse, indicating center of PWM period
BRAKE_OUT
A13
O
brake chopper control signal
DRV_ERR_IN
A12
I
driver error input (from gate driver)
Table 8: Functional Pin Description
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Name
Ball
IO
VCCIO3V3
K4
3.3V
VCCIO3V3
L4
3.3V
VCCIO3V3
N6
3.3V
VCCIO3V3
N7
3.3V
VCCIO3V3
N8
3.3V
VCCIO3V3
N10
3.3V
VCCIO3V3
N11
3.3V
VCCIO3V3
K13
3.3V
VCCIO3V3
L13
3.3V
VCCIO3V3
M13
3.3V
VCCIO3V3
F13
3.3V
VCCIO3V3
G13
3.3V
VCCIO3V3
H13
3.3V
VCCIO3V3
J13
3.3V
VCCIO3V3
D10
3.3V
VCCIO3V3
D11
3.3V
VCCIO3V3
C7
3.3V
VCCIO3V3
D7
3.3V
VCCIO3V3
D8
3.3V
VCCrefR1
E8
3.3V via 10K
reference resistor to be connected to 3.3V supply voltage
VCCrefR2
F7
3.3V via 10K
reference resistor to be connected to 3.3V supply voltage
VCCrefR3
E7
3.3V via 10K
reference resistor to be connected to 3.3V supply voltage
ADCVREF2V5
E4
2.5V
VCCA2V5
D5
2.5V
VCCA2V5
E12
2.5V
VCCA2V5
L5
2.5V
VCCA2V5
M12
2.5V
VCCA2V5
E5
2.5V
VCCA2V5
G4
2.5V
VCCA2V5
H4
2.5V
VCCA2V5
J4
2.5V
VCC1V2
G7
1.2V
VCC1V2
G9
1.2V
VCC1V2
H8
1.2V
Supply Voltage Pins and Ground Pins
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
88 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Name
Ball
IO
VCC1V2
H9
1.2V
VCC1V2
H10
1.2V
VCC1V2
J7
1.2V
VCC1V2
J8
1.2V
VCC1V2
J9
1.2V
VCC1V2
K8
1.2V
VCC1V2
K10
1.2V
VCCINT1V2
F6
1.2V
VCCPLL1V2
D4
1.2V
VCCPLL1V2
D13
1.2V
VCCPLL1V2
M5
1.2V
VCCPLL1V2
N13
1.2V
GND
A1
0V
GND
A16
0V
GND
B14
0V
GND
C8
0V
GND
C11
0V
GND
D2
0V
GND
D3
0V
GND
D6
0V
GND
E6
0V
GND
E13
0V
GND
E14
0V
GND
E15
0V
GND
E16
0V
GND
F8
0V
GND
F15
0V
GND
F3
0V
GND
G3
0V
GND
G8
0V
GND
G10
0V
GND
H7
0V
GND
H14
0V
GND
J10
0V
Supply Voltage Pins and Ground Pins
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
89 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Name
Ball
IO
GND
K1
0V
GND
K3
0V
GND
K7
0V
GND
K9
0V
GND
K16
0V
GND
L14
0V
GND
M4
0V
GND
N9
0V
GND
N12
0V
GND
N15
0V
GND
P3
0V
GND
P7
0V
GND
R8
0V
GND
R10
0V
GND
R11
0V
GND
R13
0V
GND
T1
0V
GND
T2
0V
GND
T3
0V
GND
T4
0V
GND
T5
0V
GND
T8
0V
GND
T10
0V
GND
T14
0V
GND
T15
0V
GND
T16
0V
REFGND
E2
0V
Supply Voltage Pins and Ground Pins
Table 9: Supply Voltage Pins and Ground Pins
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
90 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Name
Ball
IO
n.c.
A2
-
not connect
n.c.
A3
-
not connect
n.c.
A4
-
not connect
n.c.
A14
-
not connect
n.c.
A15
-
not connect
n.c.
B3
-
not connect
n.c.
B8
-
not connect
n.c.
B9
-
not connect
n.c.
B12
-
not connect
n.c.
B13
-
not connect
n.c.
C5
-
not connect
n.c.
C6
-
not connect
n.c.
C9
-
not connect
n.c.
C10
-
not connect
n.c.
C12
-
not connect
n.c.
C13
-
not connect
n.c.
D9
-
not connect
n.c.
D12
-
not connect
n.c.
E9
-
not connect
n.c.
E10
-
not connect
n.c.
E11
-
not connect
n.c.
F9
-
not connect
n.c.
F10
-
not connect
n.c.
F11
-
not connect
n.c.
F12
-
not connect
n.c.
F14
-
not connect
n.c.
F16
-
not connect
n.c.
G5
-
not connect
n.c.
G1
-
not connect
n.c.
G11
-
not connect
n.c.
G12
-
not connect
n.c.
G14
-
not connect
n.c.
G6
-
not connect
n.c.
G15
-
not connect
Not Connect (n.c.) Pins
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
91 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Name
Ball
IO
n.c.
G16
-
not connect
n.c.
H5
-
not connect
n.c.
H6
-
not connect
n.c.
H1
-
not connect
n.c.
H11
-
not connect
n.c.
H12
-
not connect
n.c.
H15
-
not connect
n.c.
H2
-
not connect
n.c.
H3
-
not connect
n.c.
J1
-
not connect
n.c.
J2
-
not connect
n.c.
J3
-
not connect
n.c.
J5
-
not connect
n.c.
J6
-
not connect
n.c.
J11
-
not connect
n.c.
J12
-
not connect
n.c.
J14
-
not connect
n.c.
K2
-
not connect
n.c.
K5
-
not connect
n.c.
K6
-
not connect
n.c.
K11
-
not connect
n.c.
K12
-
not connect
n.c.
K14
-
not connect
n.c.
K15
-
not connect
n.c.
L3
-
not connect
n.c.
L6
-
not connect
n.c.
L7
-
not connect
n.c.
L8
-
not connect
n.c.
L9
-
not connect
n.c.
L10
-
not connect
n.c.
L11
-
not connect
n.c.
L12
-
not connect
n.c.
M6
-
not connect
n.c.
M7
-
not connect
Not Connect (n.c.) Pins
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
92 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Name
Ball
IO
n.c.
M8
-
not connect
n.c.
M9
-
not connect
n.c.
M10
-
not connect
n.c.
M11
-
not connect
n.c.
M14
-
not connect
n.c.
M15
-
not connect
n.c.
M16
-
not connect
n.c.
N3
-
not connect
n.c.
N4
-
not connect
n.c.
N5
-
not connect
n.c.
N14
-
not connect
n.c.
N16
-
not connect
n.c.
P1
-
not connect
n.c.
P5
-
not connect
n.c.
P6
-
not connect
n.c.
P13
-
not connect
n.c.
P14
-
not connect
n.c.
P16
-
not connect
n.c.
R2
-
not connect
n.c.
R3
-
not connect
n.c.
R4
-
not connect
n.c.
R5
-
not connect
n.c.
R9
-
not connect
n.c.
R12
-
not connect
n.c.
R14
-
not connect
n.c.
R15
-
not connect
n.c.
R16
-
not connect
n.c.
P8
-
not connect
n.c.
P9
-
not connect
n.c.
P12
-
not connect
n.c.
P11
-
not connect
n.c.
P15
-
not connect
n.c.
T9
-
not connect
n.c.
T12
-
not connect
Not Connect (n.c.) Pins
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
93 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
Name
Ball
IO
Not Connect (n.c.) Pins
Table 10: List of pins that must not be conncet (must be left open)
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
94 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
7
Package Dimensions
Package: FBGA 256 balls, 1.0mm pitch, size 17mm x 17mm,
industrial temperature range -40°C . . . 100°C, RoHS compliant.
Figure 17: FBGA256 Package Outline
FBGA256 Package Dimensions in mm
min.
typ.
max.
A
-
-
2.20
A1
0.30
-
-
A2
-
-
1.80
A3
0.70 REF
D
17.00 BSC
E
17.00 BSC
b
e
0.50
0.60
0.70
1.00 BSC
JEDEC MS-034, Variation: AAF-1
Table 11: Package Outline Dimensions
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
95 / 102
96 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
8
Characteristics
8.1
Absolute Maximum Ratings
This section defines the maximum operating conditions for the device. Normal operation must occure
within recomended operation conditions at any time. The functional operation of the device is not implied
for these absolute maximum rating conditions.
Symbol
Parameter
VCC3V3
DC supply voltage IO
VCC2V5
Condition
min.
typ.
max.
Unit
-0.5
3.9
V
DC analog supply voltage
-0.5
-3.4
V
VCC1V2
DC core supply voltage
-0.5
1.6
V
VI
DC input voltage
-0.5
3.6
V
VO
DC output voltage
0
VCC3V3
V
TJOP
Junction temperature range (industrial)
-40
100
°C
TST G
Storage temperature range
-65
150
°C
25
Table 12: Absolute Maximum Ratings
Conditions out of absolute maximum rating range may cause permanent damage
to the device. Operation at absolute maximum ratings for extended time periods
may cause damage of the device.
Info
8.2
Recommended Operation Conditions
Symbol
Parameter
VCC3V3
Condition
min.
typ.
max.
Unit
DC supply voltage IO
3.14
3.3
3.465
V
VCC2V5
DC analog supply voltage
2.375
2.5
2.625
V
VCC1V2
DC core supply voltage
1.15
1.2
1.25
V
Table 13: Recommended Operation Conditions
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
97 / 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
8.3
DC Characteristics
Symbol
Parameter
Condition
V IH
High level input voltage threshold
V IL
Low level input voltage threshold
V IHY
Schmitt-Trigger hysteresis
V OH
High level output voltage
V OL
Low level output voltage
IILEAK
Input leakage current
IOP IN DC
IOP IN AC
min.
typ.
max.
Unit
1.7
3.6
V
0.3
0.8
V
180
mV
VCC3V3 - 0.2
V
0.2
V
10
µA
DC output current per pin
300
µA
DC output current per pin
8
mA
-10
Table 14: DC Characteristics
8.4
Timing Characteristics
Symbol
Parameter
Condition
fCLK
Clock frequency
quarz stabilized clock
tCLK
min.
typ.
max.
Unit
25
MHz
Clock period
40
ns
tCLKH
Clock high time
20
ns
tCLKL
Clock low time
20
ns
tSU
setup time
relative to rising CLK edge
-0.75
ns
tHD
hold time
relative to rising CLK edge
1.25
ns
tPD
propagation delay time
relative to rising CLK edge
5
ns
Table 15: Characteristics
8.5
Power Dissipation
Symbol
Parameter
Condition
PD3V3
IO supply power dissipation
25°C
75
mW
PD2V5
Analog supply power dissipation
25°C
5
mW
PD1V2
Core power dissipation
25°C
200
mW
Table 16: Power Dissipation
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
min.
typ.
max.
Unit
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
9
98 / 102
Supplemental Directives
9.1
Producer Information
9.2
Copyright
TRINAMIC owns the content of this user manual in its entirety, including but not limited to pictures, logos,
trademarks, and resources. © Copyright 2018 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.
9.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 Datasheet 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.
9.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.
9.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.
9.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
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
99 / 102
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.
9.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.
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
10
1
2
3
4
5
6
7
8
100 / 102
Figures Index
Hardware FOC Application Diagram .
Hardware FOC Block Diagram . . . . .
SPI Timing . . . . . . . . . . . . . . . .
SPIdatagramStructure . . . . . . . . .
nPolePairsNumberOfPolePairs . . . .
Integer Representation of Angles with
16 Bit as s16 resp. u16 . . . . . . . . .
ADC Selector and Scaler with Offset
Correction . . . . . . . . . . . . . . . .
ABN Incremental Encoder N Pulse anywhere between 0° and 360° . . . . . .
6
6
7
8
11
9
Encoder ABN Timing . . . . . . . . . .
17
10
Hall Sensor Angles . . . . . . . . . . .
18
11
nPolePairsNumberOfPolePairs . . . .
19
12
PID Architectures and Motion Modes
22
13
Inner FOC Control Loop . . . . . . . .
23
11
14
FOC Transformations . . . . . . . . . .
24
14
15
16
Motion Modes . . . . . . . . . . . . . .
BBM Timing . . . . . . . . . . . . . . .
24
26
16
17
FBGA256 Package Outline . . . . . . .
95
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
11
1
2
3
4
5
6
7
8
9
101 / 102
Tables Index
Order codes . . . . . . . . . . . . . . .
TABspiTimingParameter . . . . . . . .
Numerical Representations . . . . . .
Examples of u16, s16, q8.8, q4.12 . .
Examples of u16, s16, q8.8 . . . . . .
Register Map for TMC4670 . . . . . .
Pin Type Definition . . . . . . . . . . .
Functional Pin Description . . . . . . .
Supply Voltage Pins and Ground Pins
4
7
9
10
12
84
85
87
90
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com
10
11
12
13
14
15
16
17
18
Functional Pin Description . . . . . . . 94
Package Outline Dimensions . . . . . 95
Absolute Maximum Ratings . . . . . . 96
Recommended Operation Conditions 96
DC Characteristics . . . . . . . . . . . . 97
Timing Characteristics . . . . . . . . . 97
Power Dissipation . . . . . . . . . . . . 97
IC Revision . . . . . . . . . . . . . . . . 102
Document Revision . . . . . . . . . . . 102
TMC4670 Datasheet • IC Version V1.01 | Document Revision V1.00 • 2018-Oct-08
12
102 / 102
Revision History
12.1
IC Revision
Version
Date
Author
Description
V0.90
2016-JUN-30
LL
Preliminary release.
V0.99
2016-SEP-30
LL
Engineering Sample Release.
V1.01
2016-DEC-21
LL
First Revision for Production.
Table 17: IC Revision
12.2
Document Revision
Version
Date
Author
Description
V0.9
2016-MAY-23
LL
Initial version.
V0.9
2016-JUL-29
LL
First draft committed.
V0.91
2016-OCT-13
LL
Functional summary added, updated register set of TMC4670 0v99,
ADC selector with scaling and offset correction added, Analog Encoder (AENC) selector with scaling and offset correction added,
V0.91
2016-OCT-19
LL
Pinning updated.
V0.91
2016-NOV-02
LL
Short Spec Block Diagram added.
V0.91
2016-NOV-04
LL
PID architecture and PID motion mode drawings added
V0.91
2016-NOV-07
LL
Functional description hierachies updated
V0.91
2016-NOV-08
LL
First version for www.trinamic.com
V0.99
2017-MAR-01
LL, OM
Typos and minor corrections
V1.00
2017-MAR-08
LL
Characteristics added, table form updated
V1.00
2017-MAR-10
LL
Characteristics added, table form updated
V1.00
2017-APR-27
LL
n.c. (not connected) corrected to (not connect); pin table updated;
size of package corrected in order codes table;
V1.00
2018-MAR-08
LL
industrial temperature range updated;
V1.00
2018-OCT-08
OM
Pin Table corrected;
Table 18: Document Revision
©2018 TRINAMIC Motion Control GmbH & Co. KG, Hamburg, Germany
Terms of delivery and rights to technical change reserved.
Download newest version at www.trinamic.com