Notifications
Clear all

Fine Vertical Artifacts / Trinamic Chop Tuning, Any Effect?  

Page 4 / 7
  RSS
Bunny Science
(@bunny-science)
Noble Member
Topic starter answered:
Moons Stepper Greatly Reduces VFA

I tested Trinamic chopsync and interpolation - made for more noise, but did not much to the VFA's

Adding various degrees of 5th harmonic sine to alter the sine wave also had minimal effect on VFA.

I had read that the Moon's didn't do much for print quality on the y-axis. That didn't make sense since we already knew that they are more linear on the extruder, but that is what the scant reports I could find said. So, I didn't test a Moons stepper earlier.

Finally replaced the y-stepper with a Moons stepper motor. First thing I noticed was manually moving the build platform met softer resistance between step positions.

Tested with just simple sine wave, no linearity correction, no special Trinamic tuning.
WOW! The Moons stepper made the biggest improvement I have seen in months of work. The VFA's are greatly reduce in amplitude and doubled in frequency. Also, longer period waves were also reduced on larger print areas.

I think prior testers simply didn't pay attention to the VFA's. Maybe it's because I print PETG and really see surface finish. Also, the stock bearings and rods are sloppy enough to smear details a bit and hide VFA's. Once your bearings, rods and build are accurate enough to reveal more detail, a Moons stepper makes a huge difference. I could not have been happier to see this much improvement.

In this picture, you can see the VFA pattern is doubled and more unitonic, but what you cannot appreciate from the pict is that the depth of VFA's is maybe 1/3 that of baseline. On large surfaces, bigger than the xy cube, the improved smoothness is remarkable.

Earlier (if you followed this thread) I did manage to hide things somewhat and double the VFA frequency by glitching the native motor with a discontinuous sine wave, but that didn't reduce the amplitude of the VFA's, nor did that smooth out longer wavelength waviness. Also, the glitched sine wave made stealth mode prone to losing steps. The Moons motor change doesn't incur that instability and decreases VFA amplitude.

I'm going to also replace my x and e steppers with Moons after seeing this. I think we can possibly make the Moons even better if Trinamic settings are tuned for them.

The motor and cable I tested are....

$41 MOONS' NEMA17 Stepper Motor 3D Printer 1A 0.48Nm(68oz-in) 2Phase 1.8 degree Step Motor 39.8mm(1.57in.) model MS17HD2P4100)
https://www.amazon.com/gp/product/B071F163WT

$8 YOTINO Bipolar Stepper Motor Cable,4 x 100cm Long NEMA 17 Extended Connector (The cables I received didn't require any rewiring of pins, but that may vary with package)
https://www.amazon.com/gp/product/B07CBV8DVZ

Posted : 18/02/2019 2:57 pm
Bunny Science
(@bunny-science)
Noble Member
Topic starter answered:
Moons Stepper Greatly Reduces VFA 2

Here is another pict giving a better idea of how the surfaces look with more typical lighting. I stacked the two cubes so their lighting angles are the same. There are some globs on the new Moons' printed version due to wetter filament spool and moire from my camera, but you can see the surface VFA difference. The surface portions to the right of the Y is most representative of what one sees live.

Moon's y-stepper, standard mode print is on top.

Interestingly, if I feell the Prusa/Lido stock motor detents while manually rotating it from one step to another, the hold resistances are NOT unitonic. Some step detents are much harder than others.

I conclude that our stock stepper motors ARE limiting surface finish quality in not only the extruder axis, but also the y-axis.

Posted : 18/02/2019 10:30 pm
bhawkeye
(@bhawkeye)
Eminent Member
Re: Fine Vertical Artifacts / Trinamic Chop Tuning, Any Effect?

Wow, that's great!
Based on your results, I'm considering ordering a moons .9 degree motor(MS17HA2P4100) to try out. Thought I would make mres 8, instead of 16, and double the axis steps per unit. I think this will keep the processor load the same, but due to the tmc2130 interpolation should keep the smooth movement(I hope).
Any reason I shouldn't do this?

Posted : 19/02/2019 12:13 am
Bunny Science
(@bunny-science)
Noble Member
Topic starter answered:
Moons Stepper Greatly Reduces VFA

Moons + stealth mode further reduces the VFA's. Stealth mode print is on top.

One thing mentioned by others about Moons' steppers is the flat portion of shaft does not go all the way to the motor body. Using a Moons in y-axis position had been reported as difficult. Even reversing the pulley did not quite work because the grub screws would be off the shaft end. I had no problems getting a good alignment with my drive pulley reversed and totally forgot that detail. Yes, it is a problem if you use the stock Prusa 16T drive pulleys.

I forgot I changed drive pulleys a couple months ago because the stock Prusa ones are very slightly too small in diameter and print along x and y dimensions a tiny bit too short. My replacement pulleys are slightly larger diameter so 1 cm in the STL print as one cm long. A side benefit is the replacement pulleys are also slight shorter in length.

You may need to swap the drive pulleys to get good belt alignment and firm attachment to a Moon's drive shaft.

I inadvertently got my drive pulleys while picking up some spare GT2 belt.
DerBlue 5 Meters GT2 2mm Pitch 6mm Wide Rubber Timing Belt+ 5 Pcs 16 Teeth Aluminum Timing Pulley Wheel for 3D Printer
$15 https://www.amazon.com/gp/product/B0714R39BC

Posted : 19/02/2019 12:28 am
Bunny Science
(@bunny-science)
Noble Member
Topic starter answered:
Re: Fine Vertical Artifacts / Trinamic Chop Tuning, Any Effect?

Based on your results, I'm considering ordering a moons .9 degree motor(MS17HA2P4100) to try out. Thought I would make mres 8, instead of 16, and double the axis steps per unit. I think this will keep the processor load the same, but due to the tmc2130 interpolation should keep the smooth movement(I hope).
Any reason I shouldn't do this?

Experiment away! The 0.9 degree should have even finer VFA patterns. My only concern is whether it will have enough torque. The 0.9's have less torque/step than the 1.8's. Your results will be breaking new ground for the Mk3.

Now that we have verified the benefit of a better stepper motor, I think our tuning efforts will no longer be swamped out by the stock motor's inherent physical non-uniformity.

Posted : 19/02/2019 12:33 am
Spacemarine
(@spacemarine)
Estimable Member
Re: Fine Vertical Artifacts / Trinamic Chop Tuning, Any Effect?


My only concern is whether it will have enough torque. The 0.9's have less torque/step than the 1.8's. Your results will be breaking new ground for the Mk3.

True, but if it will lead to a major improvement, it will be easy to switch to longer steppers with more torque. Who know, maybe this will become the new standard in 3D-printing soon?

Posted : 19/02/2019 2:41 pm
richard.l
(@richard-l)
Member Moderator
Re: Fine Vertical Artifacts / Trinamic Chop Tuning, Any Effect?

I don't think .9 will cut it on the y-axis. You could increase the voltage but then you risk overheating the Trinamic steppers.

Posted : 19/02/2019 2:53 pm
K-Lab
(@k-lab)
Active Member
Maybe the revisited LDO motor also helps?

Hi, I'm quietly following here with great interesst but hadn't something helpfull to contribute, maybe until now.

Now that the positive effects of Moons steppers are confirmed I rememberd that LDO revisited their motor for the use as a extruder motor for the MK3.
Their revision was driven by the positive effects a Moons stepper had as a replacement on the MK3.

Here is their Facebook post about the new stepper motor:
https://www.facebook.com/ldomotors/posts/2142833079363883

The interesting part I think is point two:
2, Specified resistance and inductance (as datasheet), to have better tune with TMC2130 stepper driver, reduce the ripple and vibration of the motor.

Where I live Moons steppers are expensive and hard to get, maybe this new LDO motor has similar effects on X and Y as the Moons?!

I'm planing to rebuild a second MK3 and want to try this specifically as an extruder motor marketed LDO motor on the X and Y axis. But thats at the moment some weeks in the future due to not enoug free time 🙁 . Maybe someone else already has one of the new LDO's and is keen to try it on the X and Y axis.

Posted : 19/02/2019 9:14 pm
Bunny Science
(@bunny-science)
Noble Member
Topic starter answered:
Re: Fine Vertical Artifacts / Trinamic Chop Tuning, Any Effect?

A lower cost stepper with the uniformity of the Moon's would be a welcome alternative.
$19 at https://www.printedsolid.com/products/ldo-nema-17-motor-cooler-ldo-42sth40-1004asr

A head to head against the Moons would be ideal.
[Edit: Two of the Lido "cool step" motors have been ordered. Be a while before they arrive for testing.
After the cost of Misumi bearings, rods, moon's steppers, tools, probes, what's another two motors?!]

At least we have one path with positive results. Finding another would be great.

My next steps are swapping out the E and X axis steppers with Moon's and then going back to tune the Trinamic parameters for the Moons.

BTW, when I swapped in the Moons on the Y-axis, I tried to minimize other changes including not altering belt tension. I left the belt at normal tension. Unbolted the motor mount from the frame and slipped the motor out of the belt.. Then, I swaped in the new motor and pulley. Slipped the belt on the pulley and bolted the mount back into place. Didn't touch the belt tensioner at all.

Posted : 19/02/2019 9:52 pm
bhawkeye
(@bhawkeye)
Eminent Member
Re: Fine Vertical Artifacts / Trinamic Chop Tuning, Any Effect?

I don't think .9 will cut it on the y-axis. You could increase the voltage but then you risk overheating the Trinamic steppers.
I wouldn’t mess with the voltage, but the stock Y axis stepper is being driven at .348A(20). By increasing the current to ~.431A(25) the .9 will generate the same or greater torque than stock, and because of lower coil resistance, the .9 will run cooler at this increased current than the stock Y stepper. The increased current is still well within the safe limits of the 2130’s(the stock extruder is being driven with .57A(36)).
Of course, there is a LOT I don’t understand about stepper motors – and the .9 may well not perform as I hope but I’ve ordered one to try.
Speaking of my lack of understanding, I’ve been digging into the waveform generation stuff more and neither the standard Prusa code nor my modified version of linear correction in tmc2130_set_wave corrected the generated wave forms for constant torque. A pure sine wave generates constant torque, but our linear correction wave forms don’t. I’m still trying to understand the implications of this & whether it is worth trying to fix.

Posted : 20/02/2019 1:15 am
edgar.s2
(@edgar-s2)
New Member
Re: Fine Vertical Artifacts / Trinamic Chop Tuning, Any Effect?


A lower cost stepper with the uniformity of the Moon's would be a welcome alternative.
$19 at https://www.printedsolid.com/products/ldo-nema-17-motor-cooler-ldo-42sth40-1004asr

A head to head against the Moons would be ideal.
[Edit: Two of the Lido "cool step" motors have been ordered. Be a while before they arrive for testing.
After the cost of Misumi bearings, rods, moon's steppers, tools, probes, what's another two motors?!]

At least we have one path with positive results. Finding another would be great.

My next steps are swapping out the E and X axis steppers with Moon's and then going back to tune the Trinamic parameters for the Moons.

BTW, when I swapped in the Moons on the Y-axis, I tried to minimize other changes including not altering belt tension. I left the belt at normal tension. Unbolted the motor mount from the frame and slipped the motor out of the belt.. Then, I swaped in the new motor and pulley. Slipped the belt on the pulley and bolted the mount back into place. Didn't touch the belt tensioner at all.

Well, I decided to buy this motor and test if it reduces the vertical lines. I will report back once I install it.

Posted : 24/02/2019 7:02 pm
Bunny Science
(@bunny-science)
Noble Member
Topic starter answered:
LDO and Moon's Motors / Goodbye VFA's

Amazingly, the LDO improved, cool step motors arrived.

Included cables are PVC jacketed. They will connect directly to the Einsy, but are are not keyed. They and can physically fit in two orientations. I think it will work in either orientation because flipping it interchanges coils and reversed connection on both of the . Mine is working with red wire positioned up in the Einsy jack.

Wiring of the LDO motor differs from that of the Moons. The connectors at the motors are physically identical, but the pinout wiring differs. You cannot use the Moon's cable with the LDO motor. Swap out the entire cable when switching between Moons and the the LDO Coolstep.

Manually turning the new motor shafts, I find the steps quite soft and very regular - even softer and more regular than when I manually turn a Moons' stepper. The stock LDO motors are quite rough and irregularly notchy in comparison.

Speaking of shafts, the LDO shafts lack a flat grind. You are completely dependent on the grub screws digging into the shaft. I think I would grind a flat if these motors end up getting installed permanently.

Stallguard detection does not work with the LDO coolstep motors. This probably can be fixed by changing the stall detection parameter in firmware, but I have not worked on that yet. Meanwhile, I'm letting the y-axis home by hitting physical stop and losing steps.

Initial test print is under way

Posted : 24/02/2019 11:57 pm
Bunny Science
(@bunny-science)
Noble Member
Topic starter answered:
WTH? They shipped the wrong motors.

Test print is a disaster...

WTH! These are 0.9 degree steppers! I had thought the weird print positioning was a homing or shaft slip issue. Nope, it's a 0.9 degree motor and therefore y-is half size. One blob mess after printer tried to pack twice as much filament into the smaller dimension.

M92 Y200
M500
and y-axis is back to normal size.

Trying print again.

I guess, I'm testing how a 0.9 degree stepper works, not just a cool step LDO. 😮

Posted : 25/02/2019 12:36 am
Bunny Science
(@bunny-science)
Noble Member
Topic starter answered:
LDO 0.9 Degree and Moons 1.8 degree Motors. Goodbye VFAs

I have installed Moons's 1.8 degree steppers on XY and E axes. Then I swapped out the Y-axis motor with a LDO 0.9 degree stepper. (That was supposed to be a 1.8 degree "over the moons" cool step LDO, but I was shipped the wrong motors)

Results are definitely for the better with Y-axis motions. Both Moons 1.8 degree and LDO 0.9 degree motors produce markedly less VFA than the stock LDO/Prusa motor. The 0.9 degree LDO motor produced the smoothest surface finish and least degree of VFA. It is clearly better than the Moons.

On the X-axis, the Moons produces less depth in the VFA's, but in photos you can only see the VFA's are more regular along X. The Moons is an improvement, but nowhere near as much as on the y-axis.

I will post e-axis results for the Moon's later. Those are not quite as one would expect.

My findings....

Both Moon's and the 0.9 degree LDO motors are a good upgrade for the y-axis to reduce or nearly eliminate VFA's. The 0.9 degree LDO is particularly good for getting rid of the VFAs. The Moon's is a big improvement and easier to get working than the 0.9 degree LDO. I do not have any 1.8 degree LDO's to test. We'll await edgar.s2. Let's hope he gets the correct motor shipped.

I am going to keep the 0.9 degree LDO on my y-axis. It seems to move just as fast as my 1.8 degree motors and the y-axis surfaces is visibly improved even over the Moons' results. One must do some firmware patches to get the 0.9 degree LDO work properly. Y steps per unit must be changed to 200 and stallguard threshold adjusted downward. The following firmware changes lets the 400 step/ 0.9 degree LDO detect home properly and be correct length.

in Configuration_prusa.h
//#define DEFAULT_AXIS_STEPS_PER_UNIT {100,100,3200/8,280}
#define DEFAULT_AXIS_STEPS_PER_UNIT {100,200,3200/8,280} //Kuo y changed to 200 for 0.9 degree stepper

//#define TMC2130_SG_THRS_Y 3 // stallguard sensitivity for Y axis
#define TMC2130_SG_THRS_Y 1 // stallguard sensitivity for Y axis (Kuo use 0 or 1 here. 2 was slightly too high)

--------

in tmc2130.cpp
//uint8_t tmc2130_sg_thr_home[4] = {3, 3, TMC2130_SG_THRS_Z, TMC2130_SG_THRS_E};
uint8_t tmc2130_sg_thr_home[4] = {3, TMC2130_SG_THRS_Y, TMC2130_SG_THRS_Z, TMC2130_SG_THRS_E}; //Kuo apply TMC2130_SG_THRS_Y here

--------

Must also apply G-codes to set and store new y resolution in EEPROM

M92 Y200
M500

Posted : 25/02/2019 3:24 am
Martin Wolfe
(@martin-wolfe)
Reputable Member
Re: LDO 0.9 Degree and Moons 1.8 degree Motors. Goodbye VFAs


in tmc2130.cpp
//uint8_t tmc2130_sg_thr_home[4] = {3, 3, TMC2130_SG_THRS_Z, TMC2130_SG_THRS_E};
uint8_t tmc2130_sg_thr_home[4] = {3, TMC2130_SG_THRS_Y, TMC2130_SG_THRS_Z, TMC2130_SG_THRS_E}; //Kuo apply TMC2130_SG_THRS_Y here

It looks like that line should have been
uint8_t tmc2130_sg_thr_home[4] = {TMC2130_SG_THRS_X, TMC2130_SG_THRS_Y, TMC2130_SG_THRS_Z, TMC2130_SG_THRS_E};
Then it would use the stallguard values for X and Y from Configuration_prusa.h which by default are 3 for X & Y or 3 and 1 respectively with your change for the 0.9° LDO motor on the Y. It does not make sense to have them hard coded to 3 in tmc2130.cpp

Regards,
Martin

Martin Wolfe

Posted : 25/02/2019 4:52 am
bhawkeye
(@bhawkeye)
Eminent Member
Re: Fine Vertical Artifacts / Trinamic Chop Tuning, Any Effect?

@guy.k2, you are making amazing progress! Guess I won't be the 1st guinea pig for .9 degree steppers 😀 . What is the model number of the .9 LDO's, and can one order them on purpose? Keep up the great work & keep us updated. Thanks

Posted : 25/02/2019 5:58 am
Bunny Science
(@bunny-science)
Noble Member
Topic starter answered:
LDO 0.9 Degree Motor Serendipity

WARNING - 0.9 degree stepper motor current load is not proven to be EINSY safe. The 0.9 degree motors have a much higher rated amperage load and lower coil resistance. Please exercise caution. Following in my footsteps is at your own risk and could lead to printer damage or worse. In no way am I claiming that the test setups in this thread are safe to emulate.

Yes, Martin. That's not the only place in the firmware where a programmer used a literal value rather than the constant. Makes for some confusion as one adjusts the constant only to find no effect. I only fixed what I needed for the y-axis, but now that I have also installed on the x-axis, I have edited accordingly.

Hawkeye, the motors that were shipped to me by Printed Solid are...

LDO-42STH40-1684MAC
0.9 degree motors
https://www.printedsolid.com/products/ldo-nema-17-motor-power-ldo-42sth40-1684

Had I realized what they were before installing them, I would have been scared off by their ohm and amperage ratings.

What I ordered were LDO-42STH40-1004ASR
These are the 1.8 degree ones designed to compete against Moons.

Here are videos showing how surface finish has improved. I never could capture this adequately in still images. I think the video better shows specular surface effects.

x-plane
y-plane

All cubes were printed in black PETG, which really emphasizes surface finish. From left to right.

1. Stock bearings and rods. x-belt is a bit loose as evidenced by ringing.

2. Misumi rods and bearings in good alignment and belts properly tensioned. Minimal ringing, but now you can appreciate the VFA's created by stock stepper motor.

3. Moons' 1.8 degree stepper greatly reduces VFA's

4. LDO 0.9 degree stepper creates the nicest surface finish yet. This is without tuning trinamic parameters.

----
For installation on x and y-axes the following firmware and g-code commands were used...

in Configuration_prusa.h


//#define DEFAULT_AXIS_STEPS_PER_UNIT {100,100,3200/8,280}
#define DEFAULT_AXIS_STEPS_PER_UNIT {200,200,3200/8,280} //Kuo y changed to 200 for 0.9 degree stepper

//#define TMC2130_SG_THRS_X 3 // stallguard sensitivity for X axis
//#define TMC2130_SG_THRS_Y 3 // stallguard sensitivity for Y axis

#define TMC2130_SG_THRS_X 1 // stallguard sensitivity for X axis (Kuo use 0 or 1 here. 2 was slightly too high)
#define TMC2130_SG_THRS_Y 1 // stallguard sensitivity for Y axis (Kuo use 0 or 1 here. 2 was slightly too high)

--------

in tmc2130.cpp

//uint8_t tmc2130_sg_thr_home[4] = {3, 3, TMC2130_SG_THRS_Z, TMC2130_SG_THRS_E};
uint8_t tmc2130_sg_thr_home[4] = {TMC2130_SG_THRS_X, TMC2130_SG_THRS_Y, TMC2130_SG_THRS_Z, TMC2130_SG_THRS_E}; //Kuo apply TMC2130_SG_THRS_Y here

--------

G-code sent via terminal to set x and y resolutions and store in EEPROM

M92 Y200
M92 X200
M500

--------
So, this leaves my printer with stock LDO on z-axis, 0.9 degree LDO's on x & y, and 1.8 Moons on extruder.

If further testing shows this configuration is stable, I will grind some flats on the LDO motor shafts and tune Trinamics for the new motors. Right now, they are running with just stock settings for chop and waveform.

A 12 hour print job should exercise x and y adequately

Posted : 25/02/2019 8:19 am
bhawkeye
(@bhawkeye)
Eminent Member
Re: Fine Vertical Artifacts / Trinamic Chop Tuning, Any Effect?

I don't think you need to worry about the safety issue with the lower resistance of your .9's. The 2130's control the max current, so the .9's should run much cooler(same current & lower coil resistance).
However, if you run them with the stock current settings(20 for Y or ~.348A), you are getting less than half the torque of the stock motors. I wouldn't have expected the .9's to run the Y reliably at the stock current setting - but if they do that's great.
If you need to increase the current settings, I wouldn't go above 44(~.69A). That would give the same motor heating as the stock 1.8 and approximately the same torque as the stock 1.8
The Moons .9 I got is MS17HA2P4100. It has slightly higher rated torque at 1A than the LDO at 1.65A, and it has a flat on the shaft. Of course, it cost more than the LDO.

Posted : 25/02/2019 6:33 pm
Bunny Science
(@bunny-science)
Noble Member
Topic starter answered:
Re: Fine Vertical Artifacts / Trinamic Chop Tuning, Any Effect?

Uh oh. 8 hours into print job...

Recv: TMC DRIVER OVERTEMP0
Recv: KILL: 0
Recv: Error:Printer halted. kill() called!

Have to either cool the TMC2130 more or drop current. At stock current levels, both x and y axes are moving well. I think I'll try dropping them a bit.
It has to be pretty close if it went 8 hours before temp issue.

I do have a ridiculously easy to move y-carriage with my rod and bearing setup.

Posted : 25/02/2019 7:25 pm
bhawkeye
(@bhawkeye)
Eminent Member
Re: Fine Vertical Artifacts / Trinamic Chop Tuning, Any Effect?

Were you running in stealth mode? If so, the motor current is(at least partially) controlled by a different set of registers - not just the normal run & hold current registers. This would explain the increased heating & also the better than I expected torque - since this is a voltage based chopper. But it means you will need to tune(or set) the stealth mode registers to correct this. Unfortunately I can't help, as I'm just starting to dig into the stealth mode part of the data sheet.
My best guess would be to start with:(in Configuration_prusa.h)
#define TMC2130_PWM_GRAD_Y 2 // PWMCONF
#define TMC2130_PWM_AMPL_Y 235 // PWMCONF

Probably lowering TMC2130_PWM_AMPL_Y would be good. Since you ran for 8 hr. before problem, maybe around 200 would be a reasonable 1st try. But again, I'm just starting on the stealth mode stuff. You may be way ahead of me on this.

Posted : 25/02/2019 8:13 pm
Page 4 / 7
Share: