Support my habit, Get cool Stuff

Friday, July 13, 2012

Hacking... er... Improving the start.gcode

Every time a print starts the first thing the makerbot does is lay down a blob of filament as an "anchor" point, then draws a line over to the print. Then it pauses while it calculates the next step, still extruding filament which makes another blob, then starts the print. So there's this long string of filament you have to remove as well as a thick blob you have to cut off of every print. The reasoning for this is to prime the extruder and make sure you're sticking to the base. However if I do multiple separate parts in the same print whatever part it doesn't start printing first doesn't have the advantage of this procedure and still prints just fine. I don't know why it took me so long to see this as a problem.

Most of this short adventure is documented on the makerbot user's google group including the resulting start.gcode edits.

I started out thinking that it needed to print something at the start so I would have it do a little logo that I could give away or at the very least not have a huge pile in my discard bucket. I considered a heart or smiley but in the end went with an asterisk since that's my logo for Cymon's Games. So I made a simple model, had ReplicatorG skien it, and copy/pasted the printing commands for the outline of the first layer from the generated gcode into my start.gcode. The result was... well, I didn't suppress the blob at the beginning so it didn't look much like an asterisk.

Then I realized, little logo coolness aside why did I need it to print anything. Again, multiple parts don't need it. So with my new found knowledge of gcode commands I simply inserted a single command that told it not to draw the line after it makes the blob. The result was exactly what I wanted. Pump primed and only a little plastic lost. Mission complete.

EDIT-Maybe not. Just did a print where I think I could have really benifited from a little more pre-extrusion. A lot of small details, report coming up.


  1. Hi Joe,

    Thanks so much for your blog, it's been helping me alot with my Replicator! I've been looking at modifying my own gcode startup procedure that lays down some test plastic at the x-y extremities of my print. I've found that build platform levelling can wander somewhat when swapping between extruders and at different ambient temperatures. I'd like to try a quick calibration script at the start of each print that I can use to fine-tune my print-bed height. Any thoughts? Thanks again for your insightful blog.

    Keep it awesome!

  2. Thanks for your feedback Tai.

    Do keep in mind that I've gone back to the blobby booger for now, but I'm going to be revisiting this soon just to be sure.

    Thinking minimalisticlly, a box outline at the extremes would give you somewhat the information you want, but a box outline could work on one corner, then piggyback that stick on the other corners. So what you really want is a separate shape on each corner. Again, going for the least necessary, I'd make 4 right triangles on each corner, the right angle at the extreme.

    ...I think I'm going to need to make a post about this.


Note: Only a member of this blog may post a comment.