bigtreetech / BIGTREETECH-TMC2209-V1.2

TMC2209 is an ultra-silent motor driver IC for two-phase stepper motors. Its continuous drive current is 2A and peak current is 2.8A. Compared with TMC2208, the driving current of this IC is not only improved by 0.6a-0.8a, but also this IC increases the function of locked-motor test.
202 stars 35 forks source link

TMC2209-V1.3 #16

Open davcolme opened 1 year ago

davcolme commented 1 year ago

I have several TMC 2209 V1.3 drivers and I want to connect them via UART via hardwire. TMCs come with 3 pins marked RX, TX, and CLK. Using the RX or TX pins with and without a 1K resistor I am not able to connect to the module via UART. They do not have documentation on the github of said modules. Please, can you post the documentation and indicate how the connection is?

Emerica commented 1 year ago

I'd like to second this request. - Boards are Labeled 1.3 - Box is labeled 1.2 X0038B8MA9 I've got an Anycubic Mega S - Trigorilla 0.0.2 - Marlin 2+ , 2.1.2now I've tried for a portion of today to get these talking, they appear to function, just no UART comms. Are they addressed different or something? One of the approaches I've seen is here but it's for the 2208's https://ohkin.mydns.jp/archives/1072?unapproved=1545&moderation-hash=163a2dc04cda7f6088f3fa20b1a1070b#comment-1545

I'm trying a single stepstick on X, tried hardware and software serial, with and without resistors to multiple locations, not getting anywhere.

I've noted that RX on the stepstick does in fact reach the UART pin on the chip, but the TX pin seems to go no where? There's a un-jumped jumper on the board back to RX?

Limited research is telling me the SKR boards move a jumper to a weird position to deal with these. What are they jumping?

Emerica commented 1 year ago

I managed to connect one of my drivers up to a stock Arduino Mega 2650 with Talking over Serial1 18/19 using the Y cable with 1K to the 4th pin next to MS2. I have En grounded, dir, step, clk, ms1, ms2, diag floating It's addressed at 0b00

Appears to be working? I can set current levels and stepping, my PSU and the stepper confirm the changes. This only works while the external power is applied.

So either I've got Marlin issues, or the Trigorilla board is setting pins on the driver to states that breaks the UART comms, or has issues with Serial connections.

I've noted the EN pin on my board to be HIGH, not sure if it switches LOW to enable the driver and check for status.

dylanede commented 1 year ago

I have the same problem. @davcolme did you ever find a solution to this? @Emerica any ideas, considering you found one setup where it worked?

When trying to use the UART I have dir, step, clk all set low, and ms1, ms2 floating. I've tried the single UART wire connected to the TX and the RX pins, with no response from the driver.

The driver chip does not appear to be faulty as pulsing the step pin to move the motor works.

davcolme commented 1 year ago

hi @dylanede

I still can't solve the problem

nmaas87 commented 1 year ago

Does not work, can confirm

Emerica commented 1 year ago

I don't think I ended up getting it all to work with marlin. The drivers did work with stock arduino, so I don't think I can fault BTT. I was actually fighting two printers so my mind's slightly foggy. The Anycubic/Trigoriila is the one I mentioned above and I think I said F' it and put them in standalone and then shelved it for now. I've got more pi's now so maybe I'll get klipper loaded and try again there.

The other printer was with a ender 3 that I uart modded, and that had 2209s which I had problems getting all the axis to work at the same time and compile right, I had to use the deprecated maple compile, and eventually just switched to klipper with a switchwire conversion, worked out of the box...

Edit-plugged in the Anycubic and it's TMC Com Error, so yeah, no, didn't end up anywhere.