How to achieve the best microstepping holding torque ?



  • So I noticed something interesting with grid based bed compensation that leads me to ask a question about micro stepping with the TMC2660. What I noticed is when I had a decent bed level issue with the bed tilted a bit on one side instead of getting a nice smooth surface on the bottom of a case I was printing I got stair steps where the Z axis motor just couldn't hold any good resemblance of a microstep. I think it was getting 1/8 step holding torque at best. I'm running 8mm pitch on my modded FFCP system, so this made for some pretty bad results.

    Edit: Part of my problem was/is that I was trying to do exactly 0.300 mm layer heights with an 8mm pitch. The question still holds of course.

    So my question is for the TMC2660 drivers do we want to run the motors at or close to rated current to get the best microstepping holding torque or have people found their is some percentage of max that works best, etc? I'm running 1/128th mostly for noise and I know I'll never get anything near that resolution. If I'm lucky I'm sure I'm seeing 1/20th steps if I'm lucky, but that's not the topic.

    Thanks,

    Jeff



  • Some testing on my end appears to show in my case at least for the Z axis more current produces better results for microstepping. For example if I reduce to 50% rated current I get a pretty bumpy height map moving to 75% is better, 100% is even better and 125% is slightly better. Technically I don't really want to run even at full rated current…but I will. Noting some active cooling can't solve.

    My test aside I would love to hear the official stance on this for the TMC2660 drivers.

    Thanks,

    Jeff



  • are you using 0.9 or 1.8 degree stepper motors and what is the reason for going to 0.3mm layers that is what is probably giving you the issues as it is not an even number of microsteps 0.2 layer would be better.



  • @Dougal1957:

    are you using 0.9 or 1.8 degree stepper motors and what is the reason for going to 0.3mm layers that is what is probably giving you the issues as it is not an even number of microsteps 0.2 layer would be better.

    The Z axis is still the stock flashforge stepper which is 1.8 deg/step. The motor is only rated at 400 ma. I already determined and added via an edit that my problem was because I was using 0.3mm instead of say 0.32 or 0.28mm layers. My question still holds however as I want to get the best microstepping results possible for all axis. I also use grid based bed compensation to help with the warped gantry on the bot so the microstepping comes into play.

    Jeff



  • Not sure I really understand the question but as a general rule, running the steppers at 80% of their rated current is usually deemed to be best practice.

    So the stock Flashforge has a 400mA stepper driving an 8mm pitch screw and it also has a warped gantry? And they charge money for these things?

    TBH, if it were my printer, I'd swap out those course screws for 1 or 2 mm pitch rather than try and rely on firmware to paper over the cracks. Doing that will mean that you can also drop micro stepping and not have to rely on it for positional accuracy and still have greater holding torque (but why not swap out the motor as well for something with bit more oomph). Unless of course there is some reason why you need a very fast Z axis that the 8mm pitch screws give you.



  • @deckingman:

    TBH, if it were my printer, I'd swap out those course screws for 1 or 2 mm pitch rather than try and rely on firmware to paper over the cracks. Doing that will mean that you can also drop micro stepping and not have to rely on it for positional accuracy and still have greater holding torque (but why not swap out the motor as well for something with bit more oomph). Unless of course there is some reason why you need a very fast Z axis that the 8mm pitch screws give you.

    Funny, I've already been searching around for a replacement, I even contemplated gearing or belting it down in ratio.

    I'm slowly gutting the printer out and replacing stuff. It actually doesn't do a half bad job. Outside of the very obvious heat issues do you know of any negative microstepping problems related to running higher currents with the TMC2660 drivers , does it get better or worse?

    Thanks,

    Jeff


  • administrators

    Holding torque is proportional to motor current. As Doug says, running the motors at 80% or perhaps 85% of their rated current is generally considered a good compromise between torque and motor heating. You can run them higher than that as long as the motor is not getting too hot.

    Increasing microstepping does not affect the torque per unit angle error, except when you change from 1x to 2x, but of course the angle gets smaller with increased microstepping so the torque per microstep does go down with increased microstepping. If your leadscrew is 8mm pitch single start and the motor is 1.8deg, then you have 0.04mm per full step, which isn't too bad.

    The other factor that might affect you is motor inductance and back emf. These may be high because of your low-current motor. At https://duet3d.com/wiki/Choosing_stepper_motors I show how to calculate the power supply voltage needed to maintain full torque at a given speed. It could possibly be that at the probing speed you are using, your PSU voltage isn't high enough to maintain full torque. In which case, get a lower inductance motor (perhaps a 0.9deg one), a higher voltage PSU (max. 25V), or use a lower probing speed.



  • Ok, thanks for answering the question on the current. I didn't know if these drivers had quirks like some others where they get worse on microsteps with more current. The other items such as the EMF , inductance, microstepping resolution etc. I've already educated myself on and it all makes sense.

    For now I'll just continue to bake the motors a little bit as I want to get as much accuracy as possible without smelling burnt enamel. In the case of the Z axis stepper I'll find a replacement, it's the only motor that's still stock. The X axis I went with a short nema 17 as it's doing the job well and reduced weight on the Y axis. I'm still debating sticking with my current 1.2A rated Y axis motor or switching to the 2A motor I have. My only motive for not using the 2A motor was rotor inertia. I may be worrying about a whole lot of nothing.

    I'm running a 24v supply.

    Thanks,

    Jeff



  • I had a FFCP, and from your description I suspect you might be seeing a fairly common issue with leadscrew based Z axis systems

    On my FFCP I had minor Z banding, but at the same time I also had a cheaper CTC makerbot clone (almost identical design to ffcp) and that had quite noticable Z banding along with obvious ridges along the height of the print. None of which was due to microsteps or resolution. As DC42 pointed out you have a resolution of 0.04 (at 1/16 uSteps) which is plenty fine eniough to get a decent finish

    I used to do most of my printing at 0.25 layer height and got decent prints. I have since passed my ffcp onto a friend and he continues to get good prints,

    on the CTC I had in particular, the issue was a fairly badly bent leadscrew, as the bed raises the bed "wobbles" along with the bent screw creating noticable banding. I was able to reduce this by loosening the vertical rods and the Z ztepper and ensuring everything was as centralised and as smooth as I could. I was always going to replace the leadscrew to get rid of the remaining minor banding altogether but sold the printer before I got around to it. I also suspect getting a perfectly straight leadscrew with absolutely no run-out may not as easy as it should be.

    On the FFCP it's actually a bit of a design flaw.. what I found after my reading up on it was in good design the leadscrew should be driven at one end and the other end left floating - by floating one end of the leadscrew it can "wobble" for any runout without trying to push that side movement into the bed itself. flashforge tried to make things better by going to 10mm linear rods (good) and also holding the top of the Z leadscrew (bad) I pulled that top piece off and drilled it out slightly to allow the leadscrew to wobble at the top and it reduced the minor Z banding to almost nothing on my ffcp.



  • My FFCP actually has a ball bearing at the top, perhaps I'll remove that. Layer heights I now only print in multiples of 0.04mm and all is well now. I do have the Z-Wobble banding issue so perhaps I'll pull that top bearing out and see how it does. It has two heavy linear bearing with metal T mounts, overall not a bad design.

    Overall it's not a terrible printer, I have a thread posted about it here

    I was doing 160mm/s with 4000 acceleration the other night with lots of twist and curves and had no skipped steps. I was planing on building a hypercube until I realized just how much money I've dumped into this FFCP mess.

    Jeff



  • @Crash69:

    On the FFCP it's actually a bit of a design flaw.. what I found after my reading up on it was in good design the leadscrew should be driven at one end and the other end left floating - by floating one end of the leadscrew it can "wobble" for any runout without trying to push that side movement into the bed itself. flashforge tried to make things better by going to 10mm linear rods (good) and also holding the top of the Z leadscrew (bad) I pulled that top piece off and drilled it out slightly to allow the leadscrew to wobble at the top and it reduced the minor Z banding to almost nothing on my ffcp.

    Taking the ball bearing that was holding the top of my lead screw appears to have completely eliminated any noticeable z wobble. With that I think I'm going to leave the current stepper and lead screw as is.

    Thanks much for the tip,

    Jeff



  • Awesome, good to hear it was a fairly easy fix, and I agree the ffcp is actually quite a good printer, my mate still uses it almost daily and gets great prints out of it.

    I mainly moved on as I wanted to do taller prints, and chose to go down the build my own delta route, but I still have fond memories of my ffcp.



  • @Crash69:

    Awesome, good to hear it was a fairly easy fix, and I agree the ffcp is actually quite a good printer, my mate still uses it almost daily and gets great prints out of it.

    I mainly moved on as I wanted to do taller prints, and chose to go down the build my own delta route, but I still have fond memories of my ffcp.

    Thanks,

    With all the mods I've done to mine so far it's really distancing itself from the original design. I can print faster and with much more accuracy then before and have a hotend that'll do 400C with the PT100's to match. Now to do something about these annoying LM8UU bearings.

    Jeff



  • I checked out your link, good stuff on all the changes.

    One thing was bugging me today when I thought about it.. I didnt recall teh flashforge being that course on the leadscrew.

    Your leadscrew should be 400steps/mm at 1/16 stepping. I was able to load up my config in simplfy3d from when I had the flashforge, and sure enough under the X3G firmware it was set to 400 steps/mm

    1mm divided by 400 steps = 0.0025 per step with the standard ffcp leadscrew and 1/16 microstepping,

    that makes more sense to me, since I recall I did a lot of printing at 0.25 layer height, which would be 100 complete microsteps.

    my ffcp was the 1st release of the pro, but I cant imagine they changed the z leadscrew as ultimately it maintained compatibility with the makerbot replicator which had 400steps/mm on the Z



  • @Crash69:

    I checked out your link, good stuff on all the changes.

    Your leadscrew should be an 8mm, with 2mm pitch, that works out to 400steps/mm at 1/16 stepping. I was able to load up my config in simplfy3d from when I had the flashforge, and sure enough under the X3G firmware it was set to 400 steps/mm

    1mm divided by 400 steps = 0.0025 per step with the standard ffcp leadscrew and 1/16 microstepping

    Just checked the Prussa calculator. 8mm pitch gives you 400 steps/dev at 1/16 stepping which you are correct that is what the FFCP has. Still it's only 25 full steps which gives you 0.04 mm full step heights which is what you should use for multiples of your layer height.

    Thanks,

    Jeff



  • Do not confuse pitch with lead. The pitch is the distance between threads - peak to peak if you like. The lead is the linear distance that a nut fitted to the screws would travel in one revolution. On a single start start screw, pitch and lead happen to be one and the same. On multi start screws, there are 2 or more threads offset by 360/the number of starts. i.e a 2 start screws has two threads offset at 180 degrees, a 4 start screw has 4 threads offset by 90 degrees. Multi start screws are simply a way of getting a very course thread (as is required for large or high speed linear movement for a small angular movement) but with the contact area between nut and screw of a fine thread. When calculating steps per mm, you should always use the lead (which may or may not be the same as the pitch depending on the number of starts).



  • Thanks Deck, good information to know. It appears the FFCP is using an 8mm pitch single start lead screw. Removing the ball bearing they so intelligently placed at the top has eliminated any noticeable z-wobble which the printer had recently been suffering. The thread started out targeting how to achieve the best micro step holding torque per microstep. As it turns out at least in my case cooking the poor little motor appears to give the best results while running bed comp. I just need to replace it with a real motor.

    I've also limited myself to 0.04mm increments on layers to try and stay close to the full step positions of the motor. The microstepping for now at least appears to be holding well enough to achieve good enough resolution for nice flat prints with bed comp. Ultimately it's not the bed on my printer that suffers so much as the 8mm rods which have been bowed from carrying around the MK10 extruders the printer came with.

    Thanks,

    Jeff



  • @(In)Sanity:

    …............ It appears the FFCP is using an 8mm pitch single start lead screw...............

    I'm willing to bet £10 to a pinch of Chinese excrement that it isn't. Are saying that the distance between the peak of one thread and the peak of the next adjacent one is 8 mm? That would make it a cork screw, not a lead screw:)



  • @deckingman:

    @(In)Sanity:

    …............ It appears the FFCP is using an 8mm pitch single start lead screw...............

    I'm willing to bet £10 to a pinch of Chinese excrement that it isn't. Are saying that the distance between the peak of one thread and the peak of the next adjacent one is 8 mm? That would make it a cork screw, not a lead screw:)

    You are correct, it's 2mm pitch (just measured) with 8mm per rev and 400 steps per mm at 1/16 microstepping or 25 full steps per rev. In the end I only really care about the 25 full steps per mm. The Prussa calculator btw appears to have some perhaps poor labeling of terms as it shows "Leadscrew pitch" with the units being in mm per revolution. This is a bit misleading at best. I suppose technically still accurate.

    Jeff



  • @(In)Sanity:

    …................... The Prussa calculator btw appears to have some perhaps poor labeling of terms as it shows "Leadscrew pitch" with the units being in mm per revolution. This is a bit misleading at best. I suppose technically still accurate.

    Jeff

    It's a common mistake that I often see . Pitch and lead get mis-quoted a lot and no, technically it isn't accurate.


Log in to reply