SKR 1.3 with TMC 5160 drivers, sensorless homing with surprising results

SKR 1.3 and TMC5160 drivers arrived last week. I’ve been experimenting with it ever since. I’ve been using Arduino CNC shield with grbl 1.1 up until now.

I’ve cloned Marlin 2.x branch and began experimenting. After many sleepless nights… here are my results:

Sensorless homing with steppers hooked up in series:

  • No dual drivers for each axis needed!
  • I was able to do sensorless homing with self-squaring abilities. You just need to do homing a few times. If I twist the axis before powering the steppers, and home the axis, the axis self-aligns to be square.
  • I home to x_max, y_max since that places have less things to crash.
  • I made two small spacers on the Y axis so that the moving parts have a consistent plane to crash on.
  • Originally bought 5 stepper drivers, but I now have two drivers free. Maybe for A/B axis in the future?
Software endstops for X/Y
  • I hate when I overshoot jogging and the axis go out of bounds. Marlin settings help with that.
Consistent Z axis probing with feeler gauge
  • This is maybe a standard feature for many users around here... But I hooked up the z_min pins and made a probe. It's a night and day difference!
 

All my settings are published on my Github repo. Have a look:

https://github.com/serialx/Marlin/pull/1

 

And thanks to countless people on this forums and youtube. I wouldn’t be able to achieve this if it weren’t for this amazing community.

 

Thank you!

4 Likes

Whoa that is crazy. I am not sure how it works but will it still self square if it is not very square to begin with? I guess a better way to say that is separate drivers allows them to be physically pulled into square, without that I see it not working unless the build is pretty square already or just actually skewed at the start.

I think it is just skipping more steps on the motor that is most out of square. It’s assuming you have hard stops that are square though, right? This is sensorless homing?

Yeah so I have a spacer on the Y axis frame, nothing on the X axis frame. The gantry crashes on them fine.

When I twist the gantry and energize the steppers, they hold itself skewed right? After that, I home the axis, and they crash on the frames and the stepper that arrives first crashes first skips a few steps, and the second stepper becomes slightly more square to the first. I do this a second time, the gantry is fully square relative to the frame.

If your frame is not square, I think you can install fixed spacers instead of the endstop. I’ve shared the sensorless endstops[1]. They are a simple spacers, nothing fancy.

[1]: https://www.thingiverse.com/thing:3850447

Video showing the process: https://youtu.be/9Lj-dVEfty0

Notice once I home the first time, the further axis crashes first, and the second motor slightly aligns with the first. There’s still a slight gap in the axis. Homing second time, the motors are fully aligned.

I wonder if the mini might be a better choice for a CNC. It’s cheaper and only has four drivers soldered to the board. Very comparable to the miniRambo except with the sensorless homing designed into the 2208 drivers.

The Pro also looks pretty neat, with three extruders…

@serialx the TMC5160s can handle a lot of current, but can the Skr 1.3 handle it? It has a 10amp fuse on the motor circuits, which will be easily exceeded by the 5160s. How much current are you getting through the skr 1.3?

Output current from the motor drivers is significantly higher than the input current because it acts like a buck converter, transforming higher voltage, lower current into lower voltage, higher current. Even with 5 drivers at full blast you would be hard pressed to exceed even 4 or 5 amps of 12 V supply.