After configuring their Marlin fork and adapting it to the MPCNC the basics worked ok. I spent quite a bit of time trying to get sensorless homing to work. In the end I managed to get it working, but homing is very harsh. The steppers take a couple of seconds (or more) to realize they hit the corner. I have often have to kind of push and/or pull the gantry a bit to make it stop homing. The steppers make an awful noise because they are essentially skipping steps and repeatedly crashing into the corners. This seems to be related to TMC2209 drivers, there is an open issue on Marlin’s github for this.
Then I had the problems I wrote about in this thread. During a move, the steppers would sometimes just disable themselves and loose all torque. At first I thought it was only the Z axis, but it happened on all axes. The Z stepper being disabled (even temporarily) is just more apparent (and more disastrous). I replaced the TMC2209’s with DRV8825’s I still had lying around and thought all my problems were solved.
Then I made a few semi-successful parts, but I noticed that some of the bearings were a bit loose. I guess that’s just part of breaking in the MPCNC. So I tightened everything up such that all bearings grip the stainless steel tubes (but not too tight). I double checked the belt tension, and made sure everything runs smoothly when I move the gantry by hand.
But then, when I just do a simple linear move (G1), sometimes one stepper looses synchronization with the stepper on the other side and the gantry is pulled out of square. Then the stepper that was still working starts skipping steps because there is a lot of friction when the gantry isn’t square anymore. This happened with the DRV8825’s, so it was not caused by possibly faulty TMC2209’s.
I then replaced the SKR Pro with an old RAMPS board, and used the same DRV8825’s. The problem no longer happens. Everything works fine. The steppers stay in sync and aren’t losing any steps.
On the SKR Pro I was using 5 drivers and I configured Marlin (or rather, the BigTreeTech fork of Marlin) to use dual X and Y steppers. On the RAMPS I used 3 drivers with Ryan’s MPCNC_Ramps_T8_16T_LCD_32step firmware.
Anyway, I’m going to stick with the RAMPS and ditch the SKR Pro. Still not sure what the actual root cause is, but it works now.