Duet Maestro in MakerGear M3
-
@guycobb2 said in Duet Maestro in MakerGear M3:
M557 X25:215 Y16:Y248 P3
I think I see the issue... Do you notice the Y values? You've got an extra Y in there.
-
Sonofabitch.
-
Still curious to see what the console feedback would be from that line.
-
How in the crap have I overlooked that for 24 hours?
-
@Phaedrux it said the Y value too small
-
More specifically “error m557: bad grid definition: Y range too small”
-
Well that would have been a clue anyway.
-
Can someone give a brief explanation of the deviation and error results?
-
After bed mesh is complete do I need to reload the height map after a reboot of the board?
-
the max deviation is the lowest and highest point to either side of wherever you set the Z0 point.
mean error is the average of all the deviations. So your's is slightly below the 0 point on average.
RMS I'm not actually sure.
Yes you need to reload the heightmap after a power cycle. This would typically be done in your slicer start gcode after homing. Use G29 S1
-
@Phaedrux thanks for everybody’s help. I went ahead and knocked out a quick test print and all looks good. It looks like the duet is removing the artifacts I was experiencing with the stock Rambo board. More testing to confirm, I will play with it more tonight after I get back home from work.
I forgot that I plan on running the quick 9 point mesh at the start of every print so no need to reload the height map. But good to know if I decide to remove that from my starting process. Thanks again everybody.
-
@guycobb2 said in Duet Maestro in MakerGear M3:
I forgot that I plan on running the quick 9 point mesh at the start of every print so no need to reload the height map. But good to know if I decide to remove that from my starting process. Thanks again everybody.
If your bed is stable and doesn't really change from print to print you might benefit from doing a more detailed heightmap once, and then loading it, rather than doing a 9 point heightmap each time. Would need to compare to see what works best. It's also useful to do at least one high detail heightmap so you can see what your bed surface actually looks like.
-
@guycobb2 Sorry, I missed that extra Y too!
This post has a pretty good explanation of the results: https://forum.duet3d.com/post/53350
Max deviation is the lowest and highest point.
Mean error is the average error of all points.
RMS error is Root Mean Square. This takes a bit of understanding, probably best to read the thread above. I'm not sure I understand it!Ian
-
Quick question that I didn’t find the answer to.
A full step on my Z is 0.0158mm. So is it best to leave that number as is or better to just round up to 0.016? I didn’t know how the firmware handles decimal places. Same thing for the slicer....utilize multiples of 0.0158 or just use multiples of 0.016?
-
@guycobb2 I'm not sure I follow. Do you mean that a full step of the motor travels 0.0158mm?
Z_steps_per_mm = (motor_steps_per_rev * driver_microstep) / screw_lead
-
Yes. Brain fart.....corrected it.
-
Any info regarding my last question?
-
@guycobb2 From https://forum.duet3d.com/post/7222
The floating point calculations are done in single precision floating point, so 24 bits of precision. The integer calculations used in step generation are done mostly using 32 bits, with 64 bits where necessary.
So it will use all the decimal points you feed it. I'm guessing you're using imperial (1/4" 16 ACME rod?) for a 0.0158mm single step. Do you mean that many people report better Z consistency when they use multiples of the 'full step' distance for layer height? You can do this, though you end up with some strange layer heights; use Prusa's 'optimal layer height for your Z axis' calculator to see: https://blog.prusaprinters.org/calculator/
However, this was more of a problem in the 'old' days, when Z drivers turned off after moving, and when re-enabled moved to the closest full step. Usually now the Z driver is kept enabled, so doesn't lose position, and using multiples of full steps for layer height shouldn't be necessary.
Ian
-
@droftarts not sure exactly what the screw is for the Z. Was just told it was a double threaded rod with 8TPI. I’m not versed on them or how to identify what is what.
My interpretation was always that it was simply easier/more precise for the stepper to hold place on a full step. But that’s entirely based on my limited knowledge of steppers and the implementation of microstepping.
-
@guycobb2
8TPI is 8 Turns Per Inch, so 1/8" lead. 25.4mm / 8 = 3.175mm per revolution.
Assuming x16 microstepping and 1.8º stepper motor (200 steps per revolution), that makes 16x200/3.175 = 1007.874015748031496 steps per mm. I'd round that and setM92 Z1007.874
A single full step is 3.175 / 200 = 0.015875mmBasically, it's going to be difficult to get this to accurately step at full steps, as you are always using lots of decimal points. One reason you might want to is because of inaccurate microstepping (often with older drivers like DRV8825, see https://hackaday.com/2016/08/29/how-accurate-is-microstepping-really/ ), though the Trinamic drivers on Duets are MUCH better at this. Another reason is the quality of your stepper motors; they usually have an accuracy of +/-5% at the FULL step, but can be less accurate in the microsteps.
Then there's what the printer and slicer actually do. How do you makes sure that when the Z homes, it homes on a full step? And if the slicer makes the first layer extra big (mine often does a 0.3mm first layer, and the rest at 0.2mm), does that end up at a full step? And mesh levelling? And independent Z motors? You could run the Z in full step (ie no microstepping) but it'll be hellish noisy! And you'd miss out on the advantages of using microstepping for Z.
On the whole, I wouldn't worry about it, unless you notice Z banding issues, then deal with it. Or possibly switch to a metric leadscrew. Hope that helps!
Ian