This makes very high quality parts, but takes forever.

nozzle: .4mm 

 layer height: .2mm 

 line width: .4mm 

 wall thickness: 1.2mm 

 top/bottom thickness: .8mm 

 ironing: off 

 infill: 25% 

 nozzle temperature: 210C 

 bed temperature: 60C 

 speed: 50mm/s 

 wall speed: 25mm/s 

 top/bottom speed: 25mm/s 

 travel speed: 75mm/s 

 initial layer speed: 20mm/s 

 retraction: 5mm 

 print cooling: OFF

 support: touching buildplate

support overhang angle: 80deg 

 adhesion: skirt

Layer height must be a multiple of .04mm.  Thicker layers print faster but make rougher diagonals.  Layers over .32mm can't make diagonal overhangs at all .

Design parts with multiples of the layer height.

Design 45 degree angles instead of using support whenever possible.

Avoid brims & rafts at all costs.  The bottom layer needs to press onto the bed to be flat.

Place parts in the center of the bed because this area tends to have more stable height.

Lions have never had any use for print cooling.  It might be useful for artwork but it weakens layer adhesion & the fan has to be cleaned.


The stock Ender 3 bed is a buildtak bed.  It works at 60C.  Increase temperature to increase adhesion.  Decrease temperature to decrease adhesion. 

For most models, the lion kingdom only heats the bed for the 1st layer.  It retains most of its adhesion after cooling.  Only difficult models with little contact with the bed need full time bed heating.

Lower the nozzle to press the filament down & increase adhesion.  Raise the nozzle to decrease adhesion.

Any print bed, whether glass or plastic, must be kept free of skin oil.  Washing it off with dishwashing soap greatly enhances adhesion.  If the bed is clean, the nozzle can achieve adhesion with very little downward pressure.

Remove the bed, let it cool down, & bend it to remove the part.  Use an xacto knife to remove the skirt & extra bits.

Ordinary glass provided no significant adhesion or improvement in leveling, but required a lot more heat.  The trick with glass is it makes a smooth surface.  There are specially treated glasses which might give better adhesion, for a price.


Lions started out by using this file to coarsely level the bed:

It's a modified version of

Clean excess filament from the nozzle before leveling.  Heat the bed to the printing temperature before leveling by going to control->temperature->bed.

After much experience, lions switched to just going to prepare->auto home, then prepare->disable steppers, then manually sliding the nozzle around.  Instead of sliding paper under the nozzle, lions just eyeballed the nozzle height. The nozzle height after auto home should be right on the bed.  It doesn't raise it a layer height.

Bed leveling is manely affected by changing nozzles, slippage of the springs & X arm.  The center of the bed is higher than the sides because it rocks around the center.  Turn the eccentric nuts under the bed to reduce the rocking, but it can never be completely eliminated.

Once coarsely leveled, it only needs to be fine tuned while printing the skirt.  Lions print 4 skirt lines.  There's no need to print a test pattern.


Automated bed leveling is cheap enough to be considered essential nowadays. You can't use the entire bed area or print the most optimum designs without it.


The print head parks on the right side after every layer to press the camera shutter.  This is the easiest way to do it.

Since Cura doesn't have persistent settings, here are the settings for timelapse mode:

extensions -> post processing -> modify g-code -> add script -> timelapse 

pause length: 1000ms
park X: 234
park Y: 190
feed rate: 9000

As far as lions know, a bug in Cura prevents the feed rate from being anything besides 9000, so timelapse mode is always loud.  It interprets the standard travel speed of 150 as 1.5.

Timelapse mode is only useful for shapes with many layers.  It doesn't retract the filament before parking the head, so you get strings going to the parked position.  It also causes under extrusion after the parking position.  Good timelapses would require hacking Cura.

The lion kingdom finally wrote a python program to fix the bugs in timelapse mode.

This retracts before each picture, heats the bed & nozzle simultaneously, & prints the filename on the screen.  The timelapse parameters have to be set in the python file.  It overwrites the gcode file.  The usage is ./ test.gcode


The mane reason for doing this is higher speed.  Lions settled on using a .8mm nozzle to print .8mm wide lines for coarse structural parts & a .4mm nozzle to print .4mm lines for higher detail.  Using a 1mm nozzle to print 1mm wide lines never worked, for some reason.  Using a .4mm nozzle to print anything wider than .4mm didn't work either.  Using a 1mm nozzle to print .8mm wide lines also works, but might be less precise than a .8mm nozzle for .8mm lines.

1mm line width from 1mm nozzle

Slowing down the speed from 50mm/s to 20mm/s, filament temperatures of 200C - 240C, layer height of .2mm or .32mm, walls of 1 line width, decreasing flow rate had no effect.

.8mm nozzle settings with 1mm nozzle.

The best settings for the .8mm nozzle .8mm line width have been:

nozzle: .8mm

layer height: .32mm

line width: .8mm

wall thickness: 1.6mm

top/bottom thickness: .8mm

ironing: off

infill: 25%

nozzle temperature: 210C

bed temperature: 60C

speed: 50mm/s

wall speed: 25mm/s

travel speed: 70mm/s

top/bottom speed: 25mm/s

travel speed: 75mm/s

initial layer speed: 20mm/s

retraction: 5mm

print cooling: OFF

support: Lions use support, but it's harder to break off than .4mm

adhesion: skirt

It's rough, so a slower travel speed keeps the nozzle from knocking protrusions.


The top layer should be smooth.  A rough top layer is caused by having 100% infill or having a top layer that's too thick.  

The minimum thickness of a smooth part is 1.2mm.  This requires setting the top/bottom layer to .4mm, using .2mm layer height & having 25% infill.

The filament naturally sags into infill.  Without voids, extra filament ends up building up into ridges.  It needs .4mm of infill between a top & bottom.  The top layer  shouldn't be thicker than 4 layers.


Filament breaks because it's held in tension for a long time.  When the printer isn't used, the filament should be unwound into coils so it's slack or it should be taken off the machine.  It should be tightened again before printing.  Unwinding it after it's fed into the machine doesn't cause tangles.


To avoid leftover filament, some guys build contraptions to splice multiple spools.  The lion kingdom just manually feeds in the next spool when a spool runs out.  Ideally, there would be a runout sensor, but you can estimate when the spool is going to run out.  The trick is to cut the filament at right angles if it is to be inserted while printing.  If the cut is a bevel, it always jams the extruder.


The filament jams when it crosses over itself on the roll.  This forms an X which travels with the unwinding, all the way until the end.  The mane cause of crossing over is when you 1st unwind the roll by pulling the end out from underneath another coil that should be farther down the line.  The end of the filament should be on top of of all the later filament.  After it's fed into the machine, it won't tangle.  It's not caused by having too much slack after it's fed into the machine, but is caused by having too much slack when the end is free.

Lions have checked for crossing over by unwinding all the filament for the next print & rewinding it.  To untangle the filament, unwind it onto another roll until encountering the X, then pass the entire unwound roll under the X.


TPU ended up requiring a slightly larger diameter filament & installing an EZR Struder.  1.7mm was unprintable, even on the EZR.  1.8mm was printable in the EZR Struder.  The extra .1mm made it just stiff enough to avoid kinking.  The extruder needs to transfer force to the nozzle.  The larger the diameter, the more force it can transfer.  The smaller the diameter, the more prone to kinking it is.

Unfortunately, 1.8mm of dimensional precision isn't reproducible.  The lion kingdom got lucky with an order of 1.8mm & it was cheap:

A 1.7mm filament which did not work was Matterhackers PRO series.

The bowden tube accepts up to 2mm.  There are no filaments specifically between 1.75 & 3.  While there are 3mm filaments, they're rare & going away.  The only other idea lions have for improving this process is to get a top of the line Bondtech extruder.

There was a rumor about a guy who stuffed a piece of PTFE tubing into the stock extruder to constrain the path.  This didn't work with 1.7mm filament but might work with 1.8mm.  Another guy claimed to extrude TPU with the stock extruder.  That would require very thick, hard filament.

Lions use a .8mm or a .4mm nozzle for TPU.  Best TPU settings:

nozzle: .8mm

nozzle setting: .8mm

layer height: .32mm

line width: .8mm

wall thickness: 1.2mm

top/bottom thickness: 1.28 mm

ironing: off

infill: 100%

nozzle temperature: 220C

bed temperature: 0C

flow: 100%

initial layer flow: 100%

speed: 20mm/s

wall speed: 20mm/s

top/bottom speed: 20mm/s

travel speed: 150mm/s

initial layer speed: 20mm/s

retraction: 7mm

print cooling: OFF

support: no

adhesion: skirt

TPU adheres tenaciously with the bed.  The internet recommended turning over the bed to use the FR4 side instead of the buildtak side, but this didn't stick at all.  Nozzle temperature must be below 230 or it'll destroy the bed, but 250 is required to get layer adhesion.  Bed temperature must be 0.

The final solution was to make a script to change the nozzle temperature after the 1st layer.  This ended the layer adhesion problems without destroying the bed.

The e-steps are higher with TPU than PLA because the drive gear slips, but the lion kingdom never worries about it.  The difference hasn't been enough.

TPU absorbs water from the air which makes voids in the print.  It's not an internet myth.  Swamp coolers, bathroom exhaust, & rain storms destroy TPU.

A wet filament is compared to a dry filament.  If TPU absorbs water, it makes structurally weak prints.  You can get away with baking it in an oven & storing it outside, but best results are going to require food dehydrators & enclosing the printer.


Lions had to set the nozzle to 250C & bed to 65C to print PETG.  Print with no cooling fan to promote layer adhesion.  It seemed to have weak layer adhesion.  PETG is weaker than PLA but resistant to higher temperatures.  It's good for fine details which have to retain their shape under pressure, like gears & screw holes.  It's hopeless for thin panels.


Horizontal dimensions are normally inaccurate while vertical dimensions are locked to the layer height.  The mane problems with vertical dimensions come from setting the "inital layer height" & "layer height" to the same value.

Lions normally shrink the bottom layers by .3mm per edge to compensate for elephant's paw.  2 edges facing each other have to be .6mm farther apart.

Higher layers are shrunk by .1mm per edge.   2 edges facing each other have to be .2mm farther apart.  

While cura has "horizontal expansion" & "initial layer horizontal expansion" which have to be negative numbers, these haven't been very effective.

These values tend to change based on the size of the edge, whether the edge is straight, curved, or a right angle, the diameter of a hole, the line width.  Some initial layers with right angles have to be shrunk by .5mm per edge.  Line width .26 has much less horizontal expansion than line width .4.


Lions switch between a .4 & a .8mm nozzle all the time.  The nozzle must 1st be heated to the melting temperature of filament by going in the control->temperature->nozzle menu.  Then, use a socket wrench to unscrew the hot nozzle.  Use tweezers to pull the old nozzle out of the socket wrench before its coating of filament solidifies.  Then, use the socket wrench to screw in a new nozzle.  The nozzle came with a rubber sock to prevent getting burned by the heater.  Lions found it easier to leave the sock off than risk getting burned by putting it back on.  

Nozzles must not be turned too tight or they'll strip the aluminum heating block.  You also have to carefully match the threads.