# Klipper + TMC2209 v3.0 (FYSETC) + SKR v1.3: Undervoltage GSTAT + Layershifts

**URL:** <https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151>\
**Category:** General Discussion\
**Created:** [April 18, 2021, 7:11pm UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151 "2021-04-18T19:11:37Z")\
**Posts on this page:** 19\
**Page:** 1

<div class="post-metadata">

**Author:** ![JanKolibri](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/jankolibri/32/67_2.png) [@JanKolibri](https://klipper.discourse.group/u/JanKolibri)\
**Post date:** [April 18, 2021, 7:11pm UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/1 "2021-04-18T19:11:37Z")

</div>

Dear Community

I can’t get my SKR v1.3 + 4x TMC2209 running with Klipper and hope you could give me some help. Thank you in advance.

I switched from Marlin to Klipper recently. So please excuse my lack of depth. Please see the attachment of the klippy.log and a descriptive image.

The hardware in use, is the following:  
Mainboard: BTT SKR v1.3 (Fig.: (B))  
Stepper Driver: 4x TMC2209 v3.0 (Fig.: (C), (D))  
Stepper Motor: 4x Nema17  
Voltage Extruder: 1.0V  
Voltage X,Y Stepper: 1.0V  
Voltage Z Stepper: 0.76V  
PSU: 24V

The following problems occurred.

Error: GSTAT: 00000004 uv\_cp=1 (undervoltage) keeped stopping my prints (Fig.: (A)), eventhough I used this configuration on Marlin for months and Klipper didn’t have issues before (maybe changes through update?). Considering UART might be the problem, I switched the configuration of Fig. (B), also by removing the SP-Pin (Fig.: (C), 8 and (D), 8) also. This made no difference, so I switched to the old configuration of Fig. (B).

According to [#1952](https://github.com/KevinOConnor/klipper/issues/1952), I changed the microsteps of the stepper X, Y and the extruder from 32 to 16, with no more undervoltage. But now I get random layershifts for X and Y (Fig.: (E), 7). As a side by side comparison, I documented the change of the registry for the X driver in Fig. (F). I don’t know how to interpret it and would appreciate your help.

According to [https://github.com/KevinOConnor/klipper/issues/1952](https://github.com/KevinOConnor/klipper/issues/1952) I tried the following with all stepper drivers, but no change:  
SET\_TMC\_FIELD STEPPER=stepper\_x FIELD=reset VALUE=1  
SET\_TMC\_FIELD STEPPER=stepper\_x FIELD=uvcp VALUE=1

I am now out of ideas and really would appreciate your input.

Best regards,  
Jan (ツ)╯

PS: I hope this post corresponds with the contribuition guidelines. If needed, changes are welcome.

 ![Unbenannt](https://global.discourse-cdn.com/free1/uploads/klipper/original/1X/ba42a9a5b3d26153c2d16563bd043c233506f312.jpeg)

---

<div class="post-metadata">

**Author:** ![Sineos](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/sineos/32/18_2.png) [@Sineos](https://klipper.discourse.group/u/Sineos)\
**Post date:** [April 18, 2021, 7:51pm UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/2 "2021-04-18T19:51:37Z")

</div>

Please attach your `klippy.log` file here.

Somehow this strikes me as rather odd:

- TMC2209 in UART mode do not control voltage (V) but current (A) → How did you set voltage?
- On a SKR1.3 board, UART mode is managed by using the correct jumper settings → No additional cables are needed. What are you trying to achieve?

Verify your hardware setup. Also ref to: [BIGTREETECH-SKR-V1.3/SKR V1.3-Instructions.pdf at master · bigtreetech/BIGTREETECH-SKR-V1.3 · GitHub](https://github.com/bigtreetech/BIGTREETECH-SKR-V1.3/blob/master/BTT%20SKR%20V1.3/SKR%20V1.3-Instructions.pdf)

---

<div class="post-metadata">

**Author:** ![JanKolibri](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/jankolibri/32/67_2.png) [@JanKolibri](https://klipper.discourse.group/u/JanKolibri)\
**Post date:** [April 18, 2021, 8:09pm UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/3 "2021-04-18T20:09:16Z")

</div>

Thank you for the quick answer.

The TMC2209 were oddly designed. Which is why UART is not working properly with the intended configuration for the SKR v1.3. It is being described here, at ‘UART, PDN, TX, RX’ [https://theres-probably-a-better-way-to-do-it.readthedocs.io/en/latest/pages/electronics/skr\_1.3\_and\_fysetc2209v3.html](https://theres-probably-a-better-way-to-do-it.readthedocs.io/en/latest/pages/electronics/skr_1.3_and_fysetc2209v3.html). Unfortuantely this makes the dupont connectors necessary. This setup has been successfully used with Marlin.

For my particular setup I removed all the jumpers for MS0, MS1, MS2 and MS3. Due to the installed extra cables no jumpers are used for the UART.

I added the klippy.log here: [https://github.com/KevinOConnor/klipper/issues/4185](https://github.com/KevinOConnor/klipper/issues/4185). Sorry - I don’t know how to add it in this particular forum.

Best regards,  
Jan

---

<div class="post-metadata">

**Author:** ![koconnor](https://avatars.discourse-cdn.com/v4/letter/k/aca169/32.png) [@koconnor](https://klipper.discourse.group/u/koconnor)\
**Post date:** [April 19, 2021, 12:04am UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/4 "2021-04-19T00:04:16Z")

</div>

There’s some information on the error at: [https://www.klipper3d.org/TMC\_Drivers.html#why-did-i-get-a-tmc-reports-error–error](https://www.klipper3d.org/TMC_Drivers.html#why-did-i-get-a-tmc-reports-error--error).

Basically, the driver detected an internal error and disabled itself.

There have been reports that some step sticks have bad capacitors, which may cause this sporadic failure. It’s also possible there is a wiring or voltage problem causing the drivers to misbehave. It’s also possible the stepper motor driver is no longer working correctly.

-Kevin

---

<div class="post-metadata">

**Author:** ![Sineos](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/sineos/32/18_2.png) [@Sineos](https://klipper.discourse.group/u/Sineos)\
**Post date:** [April 19, 2021, 10:29am UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/5 "2021-04-19T10:29:34Z")

</div>

Looking at your configuration, you have set the `run_current` of your steppers way too low. For regular steppers, the usual current is between 0.6A and 1.1A.

Look at the datasheet of your stepper motors. There you will find a current rating. Just be careful - some manufactures give RMS rating, some max rating.

If in doubt, consider it to be the max rating and calculate your RMS current:

`rms_current = max_current / 1.41`

Then we will apply a small margin to get to the `run_current`:

`run_current = rms_current * 0.9`

This will give you a good start. Monitor your stepper’s temperature during the first longer prints. If they get too hot to touch, cut down the current a bit. If they stay comfortable to touch you could yank up the current a bit.

---

<div class="post-metadata">

**Author:** ![JanKolibri](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/jankolibri/32/67_2.png) [@JanKolibri](https://klipper.discourse.group/u/JanKolibri)\
**Post date:** [April 19, 2021, 11:53am UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/6 "2021-04-19T11:53:57Z")

</div>

@kevin: Okay. I am checking the wiring. Also I have some spare stepper driver, which I will exchange too. Which capacitor is usually faulty within the TMC2209?

@Sineos: This might be a good idea. I had a similar discussion yesterday on Discord. So I changed the run\_current for X and Y to 0,2A and measured 65°C for both stepper motors. The steppers in use are those [SM42BYGHW603](https://www.neuhold-elektronik.at/datenblatt/N7756.pdf), with a max current of 400mA (rms\_current = 0,283A).  
Due to this, I consider now losses within the flat ribon cables (Fig.: (A), 4), due to poor connection or EMC within the connector or the cable (Fig.: (A), 9). For example; those [SM42BYGHW603](https://www.neuhold-elektronik.at/datenblatt/N7756.pdf) are being sold with 0,5mm [Ø] wires, while I am using 0,4mm [Ø] (Fig.: (B)). I am thinking about isolating both causes with a CAT5 cable.

As you can see, I am running out of ideas here. v[Ͼ\_Ͽ]v I appreciate your time and effort.

 ![Unbenannt6](https://global.discourse-cdn.com/free1/uploads/klipper/original/1X/575a3175c4d86faca95386c922eb1c5d4e778618.jpeg)

---

<div class="post-metadata">

**Author:** ![Sineos](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/sineos/32/18_2.png) [@Sineos](https://klipper.discourse.group/u/Sineos)\
**Post date:** [April 19, 2021, 1:25pm UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/7 "2021-04-19T13:25:26Z")

</div>

Personally, I do not think that it will make a difference between .4 and .5 wiring with such low currents.

Try switching to spread-cycle by setting `stealthchop_threshold = 0`  
(My opinion: Either run spread-cycle or stealth-cop completely. Transitions mid-movement is prone to causing problems)

---

<div class="post-metadata">

**Author:** ![JanKolibri](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/jankolibri/32/67_2.png) [@JanKolibri](https://klipper.discourse.group/u/JanKolibri)\
**Post date:** [April 19, 2021, 1:44pm UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/8 "2021-04-19T13:44:45Z")

</div>

@Sineos: I totally agree with you. I am trying to isolate the problem (e.g. mechanical, electronics, programing), because currently I have no clue what it is.  
Having no oscilloscope available, if have to fix it with the multimeter + trial & error. Which is why I am really happy to multiply the (brain power)\*contributor. (^‿^)  
I did the wiring. Next will be your suggestion, switching off the stealthchop.

---

<div class="post-metadata">

**Author:** ![JanKolibri](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/jankolibri/32/67_2.png) [@JanKolibri](https://klipper.discourse.group/u/JanKolibri)\
**Post date:** [April 22, 2021, 7:15pm UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/10 "2021-04-22T19:15:08Z")

</div>

I did some tinkering the last couples of days and fixed the issue for now. Here are my results.  
I excluded problems with programing and mechanics, by comparing code and exchanging parts.  
Recurring error message were (exp. Fig.: (A)):

- GSTAT: 00000004
- tmc uart register GCONF
- Internal error on command:“G1”.

Also in particular the extruder had troubles with the starting point of the extrusion. As you can see in Fig. (D), 1 the steps of the extrusion were missing, but only at the very beginning. After a layerchange and retracting the filament, gaps occured. Steps of the motor were calibrated, no clogging of the nozzle was present and the temperature of the motor was 55°C.

I did two things;  
For the y-stepper I exchanged the faulty stepper drivers TMC2209 V3.0 (FYSETC) (Fig.: (E)) with a new one (Fig.: (B)). Accordingly to GiHub the reseting of the GSTAT is intended.

As a second experiment, I exchanged the TMC2209 with a new TMC2208, because it was only available (Fig.: (C)). I noticed a change in of IOIN@TMC220X (Fig.: (C), 1). This could be related to the problems with the UART.

I am not sure if is due to the damaged chip are maybe a faulty component (i.e. resistor, capacitor). I will double check this in the future.

For now, this issue can be considered as solved.

Thank you for your help and stay healthy,  
Jan (ツ)╯

 ![Unbenannt7](https://global.discourse-cdn.com/free1/uploads/klipper/original/1X/015335497ae9ff94eeeb663a7cf9cc1bc95f3862.jpeg)

---

<div class="post-metadata">

**Author:** ![koconnor](https://avatars.discourse-cdn.com/v4/letter/k/aca169/32.png) [@koconnor](https://klipper.discourse.group/u/koconnor)\
**Post date:** [April 24, 2021, 3:53pm UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/11 "2021-04-24T15:53:20Z")

</div>

So, to summarize, swapping the stepper motor drivers solved the issue for you?

-Kevin

---

<div class="post-metadata">

**Author:** ![JanKolibri](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/jankolibri/32/67_2.png) [@JanKolibri](https://klipper.discourse.group/u/JanKolibri)\
**Post date:** [April 24, 2021, 5:29pm UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/12 "2021-04-24T17:29:24Z")

</div>

For now, yes. But I am not 100% sure what caused the problem. Do you guys see it? Should I upload another klippy.log?

---

<div class="post-metadata">

**Author:** ![koconnor](https://avatars.discourse-cdn.com/v4/letter/k/aca169/32.png) [@koconnor](https://klipper.discourse.group/u/koconnor)\
**Post date:** [April 24, 2021, 6:33pm UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/13 "2021-04-24T18:33:59Z")

</div>

The only information Klipper has is that the stepper motor driver disabled itself. If changing the stepstick fixed the issue it would generally indicate there was a problem with the previous stepstick.

-Kevin

---

<div class="post-metadata">

**Author:** ![superroach](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/superroach/32/146_2.png) [@superroach](https://klipper.discourse.group/u/superroach)\
**Post date:** [June 1, 2021, 12:56pm UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/14 "2021-06-01T12:56:27Z")

</div>

FWIW, I have this problem now too, although it happened suddenly after upgrading from ~0.9.1 to the latest nightly. I’m trying to downgrade (to confirm one way or the other) and will make a new topic about the trouble I’m having there. I wonder if it’s maybe to do with this commit?

> <https://github.com/KevinOConnor/klipper/commit/d184d9fd9179c8823d67cba1be9a9fae80c70e8c>
>
> Signed-off-by: Kevin O'Connor \<kevin@koconnor.net\>

---

<div class="post-metadata">

**Author:** ![hapklaar](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/hapklaar/32/581_2.png) [@hapklaar](https://klipper.discourse.group/u/hapklaar)\
**Post date:** [January 17, 2022, 5:44pm UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/15 "2022-01-17T17:44:25Z")

</div>

I now also have this problem with my corexy where the undervoltage issue follows one certain tmc2209, or actually a random tmc2209 scavenged from another printer.

To explain: I’ve put 5 recent BTT 2209’s (1.2) on an Octopus Pro and one older (about two years) driver of the same make and version I used in the donor printer. I have 4 of those older drivers and they all exhibit this strange undervoltage sometimes in my corexy.

Could some kind of update on the hardware side explain this, or what else could it be…

---

<div class="post-metadata">

**Author:** ![JanKolibri](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/jankolibri/32/67_2.png) [@JanKolibri](https://klipper.discourse.group/u/JanKolibri)\
**Post date:** [January 17, 2022, 7:13pm UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/16 "2022-01-17T19:13:43Z")

</div>

I redid the wiring completely on all those stepper motors. So I have to assume, this was the issue. v(ツ)v

This is total speculation, but I think the resistance of the cables over the distance (1.2m) was to high, proportional to cable diameter (Ø=0.8mm) and the containing conductor (aluminium). So I used some HDMI cables, because of the electromagnetic isolation of the wires and the copper. I didn’t have any undervoltage or layershifts since.

You don’t have to use that, but - as a tipp - try exchanging the wires first.

---

<div class="post-metadata">

**Author:** ![hapklaar](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/hapklaar/32/581_2.png) [@hapklaar](https://klipper.discourse.group/u/hapklaar)\
**Post date:** [January 18, 2022, 4:15pm UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/17 "2022-01-18T16:15:37Z")

</div>

For me the problem follows the driver module, not the wires.

---

<div class="post-metadata">

**Author:** ![JanKolibri](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/jankolibri/32/67_2.png) [@JanKolibri](https://klipper.discourse.group/u/JanKolibri)\
**Post date:** [January 18, 2022, 4:42pm UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/18 "2022-01-18T16:42:50Z")

</div>

Yes - I understand your issue.  
You asked, “I now also have this problem”, followed by “Could some kind of update on the hardware side explain this”.

This problem was resolved for **me** , by exchanging a hardware component, the wire. So maybe the driver module you scavenged is fine. But by touching the conductive part of the wire some oxidation was caused on the connector or maybe something got loose. Hence, the wire.

Best regards,  
Jan

---

<div class="post-metadata">

**Author:** ![Sineos](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/sineos/32/18_2.png) [@Sineos](https://klipper.discourse.group/u/Sineos)\
**Post date:** [January 18, 2022, 6:08pm UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/19 "2022-01-18T18:08:43Z")

</div>

If you check the posts here regarding some weird TMC error, the people who successfully resolved it, indeed found the one or the other hardware issue.  
Be it the driver himself, the stepper or some issue with the cables.

---

<div class="post-metadata">

**Author:** ![EddyMI3D](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/eddymi3d/32/1981_2.png) [@EddyMI3D](https://klipper.discourse.group/u/EddyMI3D)\
**Post date:** [January 21, 2025, 9:18pm UTC](https://klipper.discourse.group/t/klipper-tmc2209-v3-0-fysetc-skr-v1-3-undervoltage-gstat-layershifts/151/20 "2025-01-21T21:18:44Z")

</div>


