How to win at 3D printing

Adventures with an Ender 3

Similar projects worth following
Despite being 1 of the 1st affordable printers, the Ender 3 actually a kind of anachronism. Most of the internet uses much more expensive prusa printers. The lion kingdom got an Ender 3 anyway because it was cheap. Here are the travails of surviving with it. Lions also use Cura for slicing while most of the internet uses prusaslicer.

11 years after the expiration of the FDM patent, 3D printing is still kind of like Linux in 1996, purely considered a hobby with no economic value. Like Linux, it could end up being a requirement to have any kind of job. The lion kingdom's day job buys a lot of FDM printed enclosures from China. Lions have previously taken posession of commercial FDM printed prototypes.


nozzle: .4mm 

 layer height: .2mm 

 line width: .4mm 

 wall thickness: 1.2mm 

 top/bottom thickness: .8mm 

 ironing: off 

 infill: 25% 

 nozzle temperature: 200C 

 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: None for better layer adhesion.  100% if printing any 90 degree overhangs or supports.

 support: touching buildplate

support overhang angle: 80deg 

 adhesion: skirt

Layer height must be a multiple of .04mm.

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.


The stock bed works at 60C.  Increase temperature to increase adhesion.  Decrease temperature to decrease adhesion. 

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.  There are specially treated glasses which might give smoother surfaces with adhesion.


Use 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.

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.


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...

Read more »

Fix gcode bugs

x-python - 4.10 kB - 12/29/2020 at 04:23




gcode - 4.86 kB - 12/18/2020 at 21:16


  • Filament stash

    lion mclionhead12/30/2020 at 19:46 0 comments

    Despite every attempt, the lion kingdom ended up with a growing filament stash.  Some filament ends up unprintable, like Matterhackers PRO TPU.  It all takes so long to order, every filament type needs 2 rolls.   Lions have spent $160 on filament since the journey began, with $120 accounted for here.

View project log

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates