<p>I was in the process of printing a 16 hour print, but I must have failed to copy the G-code correctly, because the print stopped after 107 of 223 layers. Looking at the G-code, It also stops there. </p>

<p>However, I had the full G-code on my computer, and decided to try and resume the print from layer 108. It seemed to work, with the exception of a little excess extrusion at a single point in the beginning, but after three layers, i noticed that it wasn't extruding anymore. I am not completely positive that it isn't due to nozzle jamming, but I have a strong feeling that the problem is the G-code itself, as it does extrude some plastic just before printing starts.</p>

<p>Here are the first lines of my manually edited G-code. Can anyone see why I get the blob in the beginning, or why I don't get anything at all later on? Or does it look good, and my problem is probably the nozzle? </p>

<pre><code>;FLAVOR:UltiGCode
;TIME:60308
;MATERIAL:119047
;MATERIAL2:0
;NOZZLE_DIAMETER:0.400000
;NOZZLE_DIAMETER2:0.400000
;MTYPE:PLA

;Layer count: 222
;LAYER:109
G0 F9000 X208.213 Y107.948 Z16.610
;TYPE:FILL
G1 F3600 X210.390 Y105.771 E4104.65185
G0 F9000 X210.390 Y103.170
G1 F3600 X168.331 Y61.111 E4107.77457
G0 F9000 X167.074 Y61.111
G1 F3600 X120.237 Y107.949 E4111.25208
G0 F9000 X121.695 Y107.949
G1 F3600 X74.857 Y61.111 E4114.72962
G0 F9000 X73.600 Y61.111
G1 F3600 X26.763 Y107.948 E4118.20709
</code></pre>

[{'answer_id': 851, 'author': 'tbm0115', 'author_id': 98, 'author_profile': 'https://3dprinting.stackexchange.com/users/98', 'pm_score': 2, 'selected': False, 'text': '<p>According to the RepRap.org <a href="http://reprap.org/wiki/G-code" rel="nofollow noreferrer">list of G-Code commands</a>, see <strong><a href="http://reprap.org/wiki/G-code#G0_.26_G1:_Move" rel="nofollow noreferrer">G0 &amp; G1: Move</a></strong>:</p>\n\n<blockquote>\n  <p>The <code>Ennn</code> command is <em>The amount to extrude between the starting point and ending point</em>. </p>\n</blockquote>\n\n<p>However, according to <strike><a href="https://github.com/daid/Cura/issues/385" rel="nofollow noreferrer">this</a></strike> a discussion, that is now deleted from GitHub, about the Cura slicing engine:</p>\n\n<p>The <strong>E</strong> values are in <em>absolute mode</em>, so perhaps the firmware is attempting to move the stepper motor to the absolute position (which is almost 50% through your print). This may lead to clogging or skipping depending on how hot your extruder is at that point.</p>\n\n<p>As a last resort, you can perform a Boolean subtract on your model of the section that\'s already printed and re-slice the model to print the remaining bit. Then glue, or ABS weld, the remaining piece to the main print. I\'ve done this in the past, it\'s not super glamorous, but it gets the job done if the part doesn\'t require a lot of structural integrity.</p>\n\n<p><strong>I was incorrect with the following statements with regard to the Cura slicing engine:</strong> </p>\n\n<p><s>It\'s been a while since I\'ve looked at 3D printer G-Code, but from what I remember, <strong>E</strong> values can be the bane of any manually written G-Code. Usually the slicing engine generates the <strong>E</strong> value as an incremental step value throughout the G-Code (at least this was true for Skeinforge and early MakerWare, please verify this). So, if the value is incremental and depending on the controller, this value could be lost or corrupt if a new print is initialized.</p>\n\n<p>I would hope, that if you\'re using a slicing engine\'s <em>custom G-Code</em> input, that the software would be able to compensate situations like this and reformat your provided G-Code to match the value of <strong>E</strong> or any similar command.</s></p>\n'}, {'answer_id': 863, 'author': 'Tom van der Zanden', 'author_id': 26, 'author_profile': 'https://3dprinting.stackexchange.com/users/26', 'pm_score': 1, 'selected': False, 'text': '<p>Is the hotend temperature set correctly? If you only preheat the hotend but then turn it off, it will behave exactly as you described (while you\'re above <code>EXTRUDE_MINTEMP</code> it will behave normally, but once the temperature drops too low it will continue doing the XYZ-moves, but stop extruding). Perhaps you need to add a <code>M109</code> command to set the temperature properly.</p>\n\n<p><a href="https://3dprinting.stackexchange.com/questions/850/no-extrusion-when-trying-to-resume-failed-print-with-manually-edited-gcode/851#851">In his answer</a>, tbm0115 mentions absolute and relative coordinates. Whether absolute or relative coordinates are used is set using the <code>G90</code>/<code>G91</code> commands and will always be the same for all axes (XYZ and E). He also mentions that:</p>\n\n<blockquote>\n  <p>so perhaps the firmware is attempting to move the stepper motor to the absolute position (which is almost 50% thru your print). This may lead to clogging or skipping depending on how hot your extruder is at that point.</p>\n</blockquote>\n\n<p>This shouldn\'t happen, as extremely long extrude moves are ignored by Marlin. When the printer encounters</p>\n\n<pre><code>G1 F3600 X210.390 Y105.771 E4104.65185\n</code></pre>\n\n<p>it performs only the XYZ-part of the move, but doesn\'t move the extruder (assuming the printer was reset and the current extruder position is 0). However, it does update the internal value for the extruder position, so the next move happens normally. Perhaps missing the initial extrude segment isn\'t a big deal, but if you want the print to resume perfectly where you left off, you should add a <code>G92</code> command to the beginning to initialize the extruder position correctly, for example:</p>\n\n<pre><code>G92 E4104.4\n</code></pre>\n\n<p>(but the exact value depends on the last extruder position in the previous layer).</p>\n'}, {'answer_id': 1198, 'author': 'skidoo', 'author_id': 1846, 'author_profile': 'https://3dprinting.stackexchange.com/users/1846', 'pm_score': 2, 'selected': False, 'text': "<p>I know this is an old thread but I have been running into similar issues with my delta machine with Marlin firmware.  </p>\n\n<p>Not all printers running Marlin ignore large <code>E</code> (extruder) moves.  G-code has always (even in CNC machines) run commands from were the motors are now, to the value in the G-code line.  For example, <code>G0 X10</code> will move the X motor 10 units.  The units are set through <code>G20</code> or <code>G21</code>. </p>\n\n<p>When your machine has lost power, you need to re-home all axes in order for the machine to know where it is.  If you don't, it will likely think that it currently is at 0, 0, 0, 0.  Then when you have the line, </p>\n\n<pre><code>G1 F3600 X210.390 Y105.771 E4104.65185 \n</code></pre>\n\n<p>it will try to go from 0,0,0,0 to 210.390, 105.771, 0, 4104.65185 at the feed rate of 3600. Therefore it is always good to home after power loss and add a <code>G92 E4104.4</code> (last line ran before power loss) even if your machine may not need it.  </p>\n\n<p>Good habits make for less mistakes. </p>\n"}]
['https://3dprinting.stackexchange.com/questions/850', 'https://3dprinting.stackexchange.com', 'https://3dprinting.stackexchange.com/users/1104/']