Wednesday, May 31, 2017

Start Printing Faster with the MonoPrice Select Mini 3D printer

I have a MonoPrice Select Mini 3d printer, and I love it.  This is an amazing sub $200 3d printer.

Today I figured out a cool performance tweak that saves almost two minutes off of my print jobs.

When you start printing, by default, the printer homes the print head, heats up the print bed, and then heats the extruder.  Each of these steps occurs sequentially.  This process takes 3:30 minutes on my printer.  When you are waiting for a part, this initial wait for a print job "feels" like it takes forever.

So I fixed it.  In my slicer (Slic3r*), I set the default Starting G-Code to this:  (Click to Zoom.)

These commands tell the printer to heating both the bed and the extruder simultaneously as the printer is homing, and it cuts almost two minutes off of my print times.

The key to this is the M140 and M104 commands, highlighted in Red.  These click the heaters on, but continues on to the next command without waiting.  Then the printer can run the homing routine before it hits the heat-up-and-wait M109 and M190 commands highlighted in green.

This is an incredibly easy slicer change, and it pays for itself in the time it saves you.

* This trick will work in other slicers too (i.e. Cura).

Edit: I got some feedback from the Reddit 3d printing community, and want to add some of their thoughts here.

AddictedToComedy pointed out that some extruders heat much more quickly than print beds, and keeping the extruder at an elevated temperature for a long time could cook ABS or Nylon filaments and jam the extruder.  This is an excellent point that I hadn't considered.  3dPrintedLife suggested an alternative approach would be to preheat the extruder to a lower temperature e.g. 150C, then bring it to printing temperatures after the bed is ready.  The g-code to accomplish that in Slic3r is

M140 S[first_layer_bed_temperature] ;Start the bed heating
M104 S150 T0 ;and preheat the extruder to 150C
; insert your code for homing, etc here
M190 S[first_layer_bed_temperature] ;Wait for the bed heat up
M109 S[first_layer_temperature] T0 ;Bring the extruder to full temp.

On my printer the bed heats much more rapidly than the extruder, so this isn't an issue for me.  If your bed takes a long time to heat, you might also consider insulating it.  I understand that helps a great deal.

Several users pointed out that running both heaters simultaneously creates a higher sustained load on the power supply compared to running the heaters one-at-a-time.  I guess this could be a concern if you have a sketchy not-quite-big-enough power supply.  I quietly think that a printer should be able to run the steppers, fans, extruders, and heaters simultaneously.  If it can't, it's defective.  That's said, I get that people make do with what they have.

... and here is how you set it up in CuraEngine

No comments: