Recommended Layer Heights: Multiples of 0.04mm (between 0.08mm and 0.28mm)

The macic number is meant to place the printer in the same microstep inside the full step for each layer. This could result in more consistent layers. (like explained in the video of the OP)

Yes, sorry, I’ve correct the message! :slight_smile:

@Bullone @Melanchrom . This trick did have impacts on the print quality. Which is the reason why we have updated the default configuration in Luban 3.x version.




Thanks for response!
If I’m not wrong I saw also difference on PLA temperatures from Snapmakerjs and Luban… can you please explain also this changes?

Could you please update also Snapmakerjs default configurations? I’m still sticko on it form my Original.

Do you think it could be possible to keep Snapmakerjs aligned to Luban for these kind of improvements/fixes?


From Luban 3.3.3

  • Handle compatibilities for Snapmaker Original and Snapmaker 2.0 (#241)

it’s recommended to use Luban instead, in this way, the software development team can be agile, our users can get more feature.


these new settings based on multiples of 0.04mm is fine also for the Original?
I’ve just installed Luban but if I select Original machine the layers are not updated with values multiples of 0.04mm. I’ve tried to select a new 2.0 machine and for these new machine the value are multiples of 0.0.4mm.

You don’t need to be microstepping the z axis once you get beyond 2 to 5mm of layer height.

Using M420 S1 Z2 tells the printer to phase out the mesh over 2 mm if z height, for example.

Yes. I originally wrote this recommendation for the original Snapmaker. It uses similar geometry.

I don’t remember if the stepper motors were 1.8 degrees per step or 0.9. I think they’re 1.8 per step otherwise the printer would be slower.

If they are 1.8 degrees per step, increments of 0.4 are preferable. If they are 0.9 degrees per step, then you could use increments of 0.02 (but you could also use 0.04 because that is just double the whole step height.)

Thanks quarky42 for the explanation.
If I’ve understood well I expect that Luban SW apply multiples of 0.04mm (or 0.02mm) also for the Original not just for the 2.0 models.

Hope Snapmaker team could test and add this improvement in the next Luban release and/or let us know why has not been yet implemented.

The way I read it, I’m not sure that it does, but it certainly should have it’s default profiles aligned to layer heights that are evenly divisible by 0.04. I use full Cura, not Luban which is based on Cura, but still wanted to share what I’ve found out with others regardless of what software they use.

You certainly can go in and manually specify any layer height you want and make it that way, butit would be best if it was the defaults.

On V1 I found it tricky, but possible to print at 0.08mm layer height. I wouldn’t want to go any lower than that. So my custom profiles are something like this:

Layer heights:
0.08 - Ultra Fine (Ludicrous Slow Mode)
0.12 - Fine (Very Slow)
0.20 - Medium
0.32 - Max Thickness (Fastest)

Besides prints where I wanted max detail, I also used Ultra Fine for trying to weld clear PETG together at 99 to 100% infill to maximize the transparency effect. It will never be perfectly clear, but it certainly helps and is pretty neat if you don’t mind it taking forever. It’s always fun to experiment with something new. I made a pair of knife scales with this method. The texture on the outer finish had a decent grip to it pretty much by accident. Some people polish solid PETG by the way, to enhance the effect further.

Thanks, I really appreciate all you’ve done and all you’ve shared with us!

I have the Original ones and I think I’ll use the Layer heights you’ve posted, thanks!

In the subject you suggest between 0.08mm and 0.28mm but your fastest height is 0.32mm.
Have you made some tests and you thing 0.32mm is the best for fast printing or 0.28mm would be better?

What about “Top Thikness” and all the other settings (Outer Wall Speed, Inner Wall Speed…) that has been changed on 2.0 models?

I’m sure that the background of this “magic numbers” is true since I’m an electrical engineer and working with synchronus (and asyncronus) AC servo motors. These motors also have a thing called cogging torque (not so fine as with stepper motors since there are less poles).

My settings for the Snapmaker Original are multiples of 0,04 mm so I did the same for the profile of my A250 in Simplify3D. It’s working great BUT:

If Snapmaker team knows about this, why aren’t they changing the values of the leveling procedure?
0,05 mm as the finest step will not lead to the desired goal.
Maybe they calcualte internally with 0,04 mm and just don’t show it but I think the don’t since the motors are “singing” at some points (since there is a leveling mesh).

Can anyone from the team confirm my theory?

Like with a lot of 3d printing there are rules of thumb, there is always room for some level of variation.

The rule of thumb for max layer height is 75% of the nozzle width which is 0.3mm. However 0.3mm is not aligned to the whole 0.04mm division, so either 0.28 or 0.32mm are good. That isn’t to say that 0.36mm is automatically bad, it just means that somewhere around there you will start to have negative effects. If you tested this very carefully (in the way that CNC Kitchen does things on YouTube for example) you’d find that the effects start to be noticable at a certain point and continue to get worse the more you increase the variable. The point of diminishing returns is 75% percent of the nozzle width, but feel free to experiment a little. 0.28 and 0.32 layer heights are conservative enough that they can just be used. Anything beyond that is up to you and your own testing.

Line Width has its own rule of thumb. I’ll go about 120 to 150% of the nozzle width as a conservative value, and even if I’m pushing it to the edge of what I’m comfortable with, I’ll do about 88% to 200% of the nozzle width as a maximum usable range. At those outer limits you may start to notice that it effects the quality of the print.

I may not care about some effect at 200% of the nozzle width because I really really really want a single wall tool that has a single wall width of 0.8mm thick and the little bit of curl at the edge of the extrusion line won’t matter for the purpose I’m going to use that tool. (I’ve actually done this). If I tried to use 2 walls to make 0.8mm thick, there will be a seam and maybe it is important that this tool I’m making needs to not have a seam. So, all of these print settings have trade offs and sometimes those trade offs don’t matter and you just want to print fast and nice looking… So the ranges of desirable settings is wider, but maybe you want to make a tool that fits a very specific job, so now some settings are more critical than others because of how they effect the printed object.

I’m just trying to share some of my experience to give you a reasonable range, but you really should try things out for yourself, make adjustments, and try and see what the effects are first hand.

Snapmaker isn’t perfect. Limited personnel, limited time, limited resources. Luban itself is limited in order to try and simplify things for users.

I agree that they should make this change, but then again they were supposed to release the design of V1 as open source already. I haven’t seen the source code for their firmware, for their touch screen, and my V1 is not updateable or upgradable in the way they described when they asked for funding to make it in the first place. Snapmaker isn’t perfect. They’re better than M3D in some ways, worse in other ways.

Use Luban as a starting point. Maybe eventually try Cura and see if you can get the same results. Then try and learn more about Cura and get even better results. I absolutely love the adaptive layer heights in Cura. I can let the slicer decide what layer height is best at every layer based on the geometry of the part. I tell it I want a 0.28mm first layer, maybe, for example. Then I tell it I want a 0.24mm standard layer height Then I tell it I will allow a 0.08mm max deviation from that standard in steps of 0.04mm. The slicer takes my inputs and it decides where to apply different layer heights between 0.16 and 0.32mm to my part so that layers with less detailed (less curved parts in z axis) areas get thicker layer heights for faster printing and layers that need more detail in the z axis get thinner layer heights, taking more time only for the layers that need it. I’ve fallen in love with this one setting and there are so many more other useful ones, but they all take time to learn.

Luban is meant to be easier to pickup and to get started. With that comes the fact that it will never be truly and fully optimized in all regards. I do hope that Snapmaker at least makes simple and common sense changes to their default printing profiles so that they can make small improvements to print quality. Maybe they decided that the small improvement to the print quality isn’t worth the time to make the change, to test it, and to release it.


I’m not new to 3D printing and to the Snapmaker experience since I have 3 of their machines (beta SM1, stock SM1 and SM2.0 A250) as well as an Ultimaker 3. The Snapmaker team grew to a good size for a small company and I like their way of thinking ybout their product. Since I got my A250 a few days ago I can finally sell my crappy Ultimaker 3 (very poor print quality on flat, vertival surfaces) which did cost more than 4 times as much as the A250. The only thing about this expensice machine is that it can do very fast traveling (I’m working with PET-G so I dont need to go faster at printing than 60 mm/s).

Cura is a very good slicer but I don’t like it.
They provide really good upgrades to their functions but I just love the abilities of Simplify3D more.

But this is all off topic and doesn’t reffer to my post.
I just ment that doing 0,04 mm steps in the slicer software will not work as good as it can be since the bed leveling will always add a few hundredths…

@Edwin did we have some [quote=“rojaljelly, post:23, topic:4083”]
But this is all off topic and doesn’t reffer to my post.
I just ment that doing 0,04 mm steps in the slicer software will not work as good as it can be since the bed leveling will always add a few hundredths…

Snapmaker are aware of this problem and hopefully will fix it sooner than later

The error you’re talking about is absorbed by the first layer. The error that 0.04mm layer heights helps with is the error present at each layer of the print. You either didn’t watch the video I posted or missed a very key understanding from it that has to do with the very nature of stepper motors themselves and how to get the most repeatable results out of them possible. I won’t try and explain it all here, and if you’ve seen my posts, I’ve got no problem going into detail. So, if it is too wordy for me to explain, it’s a rather advanced concept.

I will add though, to clarify, that it is important to fade out the usage of the bed mesh over the first few mm of z height. There is no need to microstep the z motors for the whole height of a print. That is why I mentioned the M420 S1 Z2 command. The 0.04mm layer height really makes more of an impact after the microstepping of the z axis is faded out and he consistent layer height really helps with the remainder of the print. Some might want to change that command to Z1 and fade out the bed mesh even sooner.

And Cura, like several other slicers, is very good, but it takes experience to use it. I’m still constantly learning, but as a free open source product I wasn’t comparing it to a paid product that costs $150 or around there. The main reason I mentioned Cura is the fact that Luban is based on Cura. Someone that has learned Luban could get similar results from Cura and then have a whole new world of settings opened up to them. If you don’t like Cura and haven’t used it lately then you likely haven’t seen much of what they’ve added so far. Just like I wouldn’t begin to comment on Simplify3D because I don’t use it enough to really weigh in on whether or not the heat variation wizards and other stuff they’ve added are worth it.

This whole thread really has very little to do with Simplify3D or what slicers people prefer other than your mention that you prefer it. So really that’s a non-starter. If you would like to create your own thread on the benefits and uses of Simplify3D, please do. It’s a great product otherwise there would be no market for it. This thread was meant to help others be aware of the natural full step height change of the z stepper motors so they could consider trying this in their own prints. Someone asked why the developers haven’t made this change in Luban for the V1 yet, and really it comes down to them mostly ignoring V1 users largely over the last year. This is how I feel as an early backer of their first product. Your point about how many people they’ve added doesn’t change how they’ve been treating V1 backers this whole time.

The best thing they’ve done for V1 backers was to give their Kickstarter backers (and only their Kickstarter backers) a significant head start. Since I pre-ordered directly from them they have done nothing for us. I still helped them get their first product launched and waited a long time to receive it, but when it came time to deliver on their promises, they left us V1 pre-orders out. They haven’t even delivered their open source promises yet as far as I know. Maybe I missed something. I’ve been wanting to replace their anemic controller for a long time.

Source has been available for a long time. They just don’t go out of their way to announce it. People asked a long time ago and got it.

True, source isn’t available for the Touch Screen. Probably won’t be.

Thanks guys for all the information!
To be honest I just understant that the magic number of 0.04mm does it worth but if I go in Luban and try to Customize the settings it is not really clear to me what do change and what to keep for my Original.
There are too many parameters and I think Snapmaker Team should test and apply this magic number also as default settings for the Original.
I can choose and change the “Layer Height” but what about “Initial Layer Height”, “Wall, Top and Bottom Thikness”, “Speed…” etc… ?