BTT SKR x-axis not happy

Everything was working fine. I've been working on improving quality. Latest thing was adding a z-brace and a dual-z. I removed the brace bracket due to a clash with the extruder gantry reducing volume by around 20mm height. So im basically back to the working config.

However, when i try to home I get an error in Octoprint that x movement failed and the system shut down. After much debugging it appears that the controller x-axis driver is not working.

I did not move the hotend in x-direction with power on and I generally try to only do so while shut down and very slowly. Do the main boards die for no reason? Or could this be software somehow? Either way, is this the type of thing that can be reset and recovered from or typically requires a new board?

Ender 3 (original 2018 version)
BTT SKR Mini E3 v1.2 flashed with klipper
Meanwell PSU
RPi 3B with buck converter power
BTT TFT35 E3 V3.0 flashed with Teeminus v1.3.1
Octoprint 1.8.6 with Octoklipper

Various other upgrades but nothing that should be pertinent. I can list if it helps.

I saved the log file in case that helps. The critical line seems to be:

Stepper buzz stepper_x
Transition to shutdown state: Unable to read tmc uart 'stepper_x' register IFCNT

And in the Octoprint terminal I get:

Send: STEPPER_BUZZ STEPPER=stepper_z
Recv: ok
[...]
Send: STEPPER_BUZZ STEPPER=stepper_y
Recv: ok
[...]
Send: STEPPER_BUZZ STEPPER=stepper_x
Recv: // Klipper state: Shutdown
Recv: ok

klippy.log (141.7 KB)

That doesn't sound good - but I never used klipper so I don't know if this could be caused by other things like a wrong uart baudrate.
I would remove the x stepper cable from the mainboard and test it again. Just to rule the cable and the stepper out.

If that doesn't help you could ask the folks in the klipper discord.

Fingers crossed :crossed_fingers: I hope the driver isn't dead.

I always buy boards with driver sockets so I can replace one if something like that happens.
Depending on your rework skills you could also try to replace it on that board if you can't get it working again. I mean what's the worst that can happen? You can't use it anymore :person_shrugging:

Another option would be to buy a really cheap replacement board with drv8825 or a4988 drivers and use two boards for your printer. Afaik klipper supports multiple boards on one printer. You could use the cheap board just for the Z axis. It shouldn't matter that much if those steppers are not silent.

I had wondered what the faulty component on the board could be and if it was replaceable. I have been tinkering with SMD repair but am far from an expert. Dead is dead so wouldnt hurt to try swapping the controller if it was the suspect component and a new one could be sourced.

I did swap the leads for x, y, and z to confirm whether the issue was with the controller, wires, or the stepper. In all cases the only thing consistent was the x-controller. I will check the cable to be pedantic but based on current tests it appears the mainboard is the hangup.

My only other thought was swapping firmware to stock to test if klipper firmware for some reason got corrupted.

For it is about Klipper, I would recommend to go to the Klipper discourse:

I'll ask over there too. I figured that the commands were issued in octoprint so that was a good first place to ask. It sounds like either hardware or klipper firmware so this forum might not be the best place to look. Thanks.

If the board is bad I'll be needing a new mainboard. I'm currently leaning towards the BTT SKR Mini E3 v3.0 or possibly pico v1.0. Do either work better/not as well for octoprint. Both are klipper compatible so don't think that should be a problem.

For this is a Klipper command, it's a Klipper issue in first place.

Yes, I understand that the final message was that Klipper was shutting down. But without any other details I was not sure what caused that. Since I run everything through Octoprint I figured this would be a good place to start but I will continue my question over there. I am of the opinion the board driver is faulty but perhaps there is something at the firmware level in Klipper that could help.

1 Like

Aren't both of them boards with integrated drivers again?

That is correct. After doing more research it appears the SKR v1.4 with 4 or 5 TMC2209 would be a good choice with removable drivers. The down side is that I'd have to reconfigure things since it won't drop into the same box. Since overheating is likely what caused the failure though, i need a new solution anyway.

Yep that's a good alternative.
I got an Skr 1.4 turbo and an Skr 2 both with TMC2209 drivers.

Looks like the SKR 2 isn't available on the buqi web site so I'm assuming it's been deprecated. The main difference between SKR 1.4 and turbo appears to be a slightly faster processor (120 vs 100mhz).

I currently have a BTT TFT35 installed but with klipper it's very glitchy using the emulation drivers. I'm thinking that going back to the stock Ender3 screen would be more stable and it appears with the correct wiring it's just plug and play. Does the SKR and SKR mini use the same cable to connect to the stock screen (12864ZW-10)?

If that cable works (or could be rewired to work) that would be great!

On further investigation, it looks like both the SKR and 12864 have EXP1 and EXP2 so it doesn't look like any further cable beyond the stock ribbons are needed. I'll just need to configure the pins correctly in Klipper. Looks like that board is a winner!

FWIW, I was able to find a donor TMC2209 and replaced the one that appears dead on my SKR mini. I'm going to hook it up today to hopefully get it working again. The new board appears to be a 15-20 day shipping time from China so unless I can find a US based warehouse, I'll want to put this one back in as well as have it for a backup.