TAP on Trinamic's Technology!

Trinamic products offer easy access to comprehensive motion and motor control features. To close the gap between digital and physical layers, engineers need to create custom hardware and software.

To start a development, several supporting data is needed. A PCB design requires schematic symbol and footprints for the layout in the CAE tool format. Software development needs libraries and code examples in a common programming language, or as a project file for the used IDE.

The Trinamic Technology Access Package (TTAP) is a comprehensive collection of technical support information and tools for Trinamic’s chip and module solutions. The intention of TTAP is to simplify (physical) design-in and bring-up, and to speed-up firmware development.

The TTAP archive file contains all available development data for a specific product like CAE files for different vendors, code examples, TMCL™ scripts, and data sheets.

Description of Content

The TTAP is split into two sections - hardware and software. The hardware part is specific for each product and can be found on the detail pages at the product section. The software package is identical to all products and is described below.


The hardware section includes detailed descriptions of the evaluation boards and reference designs. Both are typically available as design files for the EAGLE PCB CAD tool. An overview of materials and minimum circuits is provided. To help with the integration of Trinamic chips into own board designs, each chip product comes with free libraries for the following PCB CAD tools: Altium Designer™, Mentor PADS™, Pulsonix™, and CadSoft EAGLE™.


Software is provided in terms of complete Eclipse™ projects for Trinamic’s evaluation board system as well as code snippets to support own firmware development and integration of Trinamic chip components. The software is written in C.

TMC-API Structure

The API is designed for C applications and can be used for different CPU types. For example, the API is used for Trinamic’s modular evaluation system boards called Landungsbrücke (Freescale MK20 cortex M4 processor) and Startrampe (STM-F205 cortex M3 processor).

Folder description:

  • tmc/helpers contains general definitions for data types and bit handling, regardless of the processor used.
  • tmc/ic contains a folder for each Trinamic chip, e.g. tmc/ic/TMC4670. Each of these folders contains a header file with the chip’s register address list (e.g. TMC4670_Register.h). Another .h and .c file (e.g. TMC4670.h/.c) provide low-level, mid-level, and high-level functions for the specific chip. Low-level functions are necessary for SPI read and write access. Mid-level functions like setTargetVelocity(. . . ) or getActualPosition() demonstrate the typical register access for different application scenarios, e.g. for velocity or position mode. For some chips, there are also functions available for encoder initialization and real-world current scaling.

Evaluation Board Project Structure

The evaluation board project demonstrates the usage of the TMC-API and can be used as a starting point for your own firmware development. It should be an example for you to simplify and speed-up firmware development based on hardware with TRINAMIC motion control IC’s.

Requirements and Installation

These are the software packages you need in order to use the TMC-API in your project:

  • Eclipse: An open-source integrated development environment (IDE)
  • GNU ARM Embedded Toolchain: Pre-built GNU toolchain for ARM Cortex-M processors
  • TMCL-IDE: The visual software to control and update Trinamic modules and evaluation boards


AN038_Using_TRINAMICs_IC_Software_API_and_Examples.pdf 540 KBMay 16, 2017, 8:11 AM
TMC-API.zip 150 KBJun 16, 2017, 7:46 AM
TMC-EvalSystem.zip 1.1 MBJun 16, 2017, 7:46 AM
TMC-API_Release_v3.02.zip 400 KBDec 12, 2017, 10:48 AM
TMC-API_Release_v3.01.zip 150 KBAug 7, 2017, 12:59 PM
TMC-EvalSystem_Release_v3.02.zip 1.3 MBDec 12, 2017, 10:48 AM
TMC-EvalSystem_Release_v3.01.zip 1.2 MBAug 7, 2017, 12:59 PM

Visit our GitHub for nighly snapshots or latest Linux version of the TMCL-IDE.