Saturday 30 January 2021

Tests of magic numbers, part 1

 There's some talk about "magic numbers" in 3D printing, the idea being that the Z stepper motors are more precise when aligned with full steps (or somewhat with half steps). Others say that it doesn't matter with modern precise printers[1], and that since the stepper motor starts at some random state, using magic numbers won't help. With my Prusa i3 mk3s, I certainly have a modern and precise printer, so let's find out!

First, the magic number. Prusa i3 mk3s steps/revolution at a step angle of 1.8 is 200. By marking the Z threaded rod and moving the Z axis, I found that one revolution is 8mm. 8mm/200 means the magic number is 0.04mm - confirmed by this thread. One should thus always use layer heights that are a multiple of 0.02mm (because a half magic number is still OK, with the motor evenly balanced between two magnets).

Now to deal with the random initial state. The initial state could be reset by briefly disabling the stepper motors. That would offset the Z level by at most 0.01mm, less than I adjust the Z level by, and thus not a concern for bed levelling. So if I try with and without magic number layer height and with and without aligning, I should be able to determine if it really makes a difference.

This is the required GCode in the 'Before layer change G-code' section:

; Briefly disable Z motors before start to align magnets. 
{if layer_num == 0}
M18 Z
G4 P10
M17 Z
{endif}

First I tried with just plain DasFilament PLA and my current nozzle, because that's what was in there.

Here's a shaman with 0.2mm layers and alignment, two detailed areas zoomed in:



Details in larger:




The same shaman with 0.19mm layers and no alignment:

Details in larger:


There are some differences to be seen, but you have to look carefully. My current nozzle has been used for a while, including with UniCoFil filament and sparkly filament. Maybe it's a bit worn. and maybe the DasFilament filament doesn't match the settings as perfectly as Prusament does. 

So next I'll switch to a fresh 0.4mm nozzle and freshly unpacked Prusament and do a test piece with 0.2mm and 0.1975mm - one microstep away from a full step, presumably the worst case. Then I'll try with 0.1175mm unaligned and 0.12 aligned, probably the finest a 0.4mm nozzle can realistically do. Then I'll switch to my slightly used 0.25mm nozzle and go extreme: 0.04mm (yes, that's 40 microns) and 0.0425mm layers.

[1] Some of the posts in that thread get the numbers quite wrong, which is why I went to manually confirm the mm/revolution.

Sunday 24 January 2021

A UniCoFil vase

Back in August, I did some more prints with the UniCoFil filament after replacing the heatbreak. It's possible that replacement wasn't necessary, but I will never know. Even after that, the stripping continued, though possibly not as often or as much. After printing out a failed hexagon vase that simply came apart at a layer that had stripped, I changed the filament settings to a) have a 1.0 extrusion multiplier, and b) extrude at 230°C. That eliminated the stripping, and I was able to print this nice small vase:



Just goes to show that each filament has its own best settings.