How to replace Allegro A4988 with TMC2208

How to replace an Allegro A4988 with the TMC2208

The TMC2208 stepper motor driver is an ultra-silent motor driver IC for 2-phase stepper motors. Its features and benefits make it a popular replacement for pin-compatible legacy drivers, such as the Allegro A4988. Whether you simply want to benchmark different stepper driver ICs or if you’re looking to replace an A4988 with the TMC2208 by TRINAMIC Motion Control, this application note explains in detail how you can drop-in the TMC2208 for any application that uses Allegro’s A4988.

Trinamic’s sophisticated StealthChop2™ chopper is supported by the TMC2208, ensuring absolute silence except for ball bearing noise, maximum efficiency, and motor torque. Its fast current regulation and optional combination with SpreadCycle™ allows for highly dynamic motion, making it a popular motor driver IC for compatible design upgrades, 3D printers, office and home automation, textile, CCTV, ATMs, HVAC systems and many more applications.

When one compares the Allegro A4988 and other motor drivers with the TMC2208, Trinamic’s chip offers additional features such as:

–    Power down: An automatic current reduction reduces power dissipation and cooling requirements. The standstill current is per default enabled by pulling PDN UART input to GND.

–    UART: The UART single wire interface allows control of the TMC2208 with any microcontroller UART. This gives the possibility to program the TMC2208 and add additional features such as full 256 Microsteps control (not only interpolation). UART is not available in legacy mode.

–    Diagnostics: An active DIAG output shows that the driver cannot work normally.

–    Index: The INDEX output signals the microstep counter zero position, which occurs once per electrical revolution/four full steps. In combination with a mechanical home switch, a more precise homing is enabled.

–    Microstepping: The TMC2208 is able to control the motor with 256 microsteps per full step. In legacy mode, the TMC2208 will interpolate received step signals to 256 microsteps.

For optimized performance in legacy mode, it is recommended to consider the hints shown in the application note.

Available through our distributors, it’s easy to use TRINAMIC Motion Control’s TMC2208 as a drop-in replacement for the Allegro A4988. One way of doing so is by following this application example:

A schematic of a SilentStepStick is depicted below as an application example. The TMC2208 is inserted and used in legacy mode, as shown in the second figure below. Recommended changed parts are marked blue. The Pins PDN/UART, INDEX, DIAG, MS2, MS1 feature additional or slightly changed functions as discussed in the app note.

The sense resistor should be chosen according to the motor current of the application. Table 1 (below) shows the relation between sense resistor and current for VREF = 2.5A after equation 1. For the application example, RSENSE is set to 0.18Ω which allows to control motor currents up to 1.2A.

 

The image above shows the pinout of the A4988. The image below shows the pinout of the TMC2208 used in legacy mode with recommended changed parts marked blue.

 

Following this application example to replace the Polulu A4988 with the Trinamic TMC2208, the sense resistor should be chosen according to the motor current of the application. Please have a look at the application note which explains this in further detail.

6 Comments

  • thesfreader

    Please note that the links to the application note are KO (they link to a “local” file)

  • Corné Bekkers

    Thanks, we’ve updated it now!

  • Tomas Mudrunka

    Hi! I’ve just read about your StallGuard2™ feature and it’s possibility to use it instead of endstops. That’s super awesome! Do you think you can add “endstop output” to your pololu compatible driver boards? Just two pins that would allow LED to be added. Such LED would illuminate when stall is detected. That way i could use optocoupler as endstop switch for my controller board. This setup would allow to easily add StallGuard endstops to most of the existing CNC boards, as all of them can usualy be triggered by switches and optocouplers…

  • Corné Bekkers

    Hey! We didn’t make these boards ourselves, but you can always reach out to Watterott and see if they’re interested in the idea.

  • dasPaul

    Would you recommend 0,15 or 0,18 Ohms RSENSE resistors for 1,5A Peak Steppers? And what is “VMM” in the drawings?

  • Lars Jaskulski

    Hi Paul,

    You can find a table on page 52 of the TMC220x datasheet to select the right sense resistor: https://www.trinamic.com/fileadmin/assets/Products/ICs_Documents/TMC220x_TMC222x_datasheet_Rev1.05.pdf
    1,5A peak = ~1.1A RMS
    Both sense resistors would work. If you have the choice we recommend 180mOhms. With 150mOhms you could increase the current slightly to up to ~1.35A RMS. If that is not necessary please use 180mOhms.

    VMM is the voltage for the motor supply.

    Hope this helps.

    Best regards,
    Lars

Leave a Reply

Your email address will not be published. Required fields are marked *