Shop OBEX P1 Docs P2 Docs Learn Events
TMC2209 + CNC-shield + P2 : A nice Combination to Control Step Motors — Parallax Forums

TMC2209 + CNC-shield + P2 : A nice Combination to Control Step Motors

Christof Eb.Christof Eb. Posts: 1,194
edited 2024-10-22 07:24 in General Discussion

Hi,
just thought I could share a way to control step motors with P2, that I find "quiet" convincing. As there is not much clear information, whether the combination works, this post might be helpful.

TMC2209 V1.3 is a little module using the Trinamic step motor driver TMC2209. I bought mine from BIGTREETECH/Amazon. This chip has advantages over A4988 modules:

  • lower RDS.on, so it will generate less heat
  • higher resolution of microsteps
  • interpolation of 256 microsteps. This feature makes the combination to run with significantly less noise.
    It has also a nice feature to reduce current in standstill. Other features, like detection of stalling I have not yet tested.
    There is information for the similar version 1.2: https://github.com/bigtreetech/BIGTREETECH-TMC2209-V1.2

One reason to make this post, was that when I hooked up the combination, I for some time tried to find a bug in my setup and I could not find it. - Until I realised, that the stepper did actually move, but so quietly, that I just didn't notice....

CNC-shield V3.00 is made for arduino boards. And you will find a lot of information to combine it with 5V control voltage and A4988 or DRV8825 driver modules. It also does work with 3V3. It has a nice additional header to connect to a different controller than arduino.

All MS jumpers left open means all are LOW, which means 8 microsteps. I also tested 32 microsteps.

As on the shield for A4988 "Reset" is connected to "Sleep", we cut off the "CLK"="Sleep" pin at the V2209 module, which has a pulldown resistor. We also cut the pins at the small side, because they might connect to the capacitor leads.

To get moving at one axis connect DC power < 28V -I initially use 12V- and between P2 and the shield:

  • 3V3 logic voltage from P2 to "5V" of the shield.
  • GND
  • EN at the shield to a port of P2. LOW will enable all the drivers of the shield. HIGH will switch off the motor currents.
  • Dir to a port pin to set the direction
  • Step to a port pin for a pulse for every microstep

Also you might want to set the drive current, see manual for V1.2. With R.sense=0,11 Ohms the complicated formula becomes I.rms= 0.707*V.ref

Reduction of current in standstill is already active by default.

This simple type of connection does not use the serial interface of the driver module.

Have fun!
Christof

Sign In or Register to comment.