<p>I am using cura with M3D entry level printer.</p>

<p>When I print things more than 6-7cm/2.5-3inches, at the end of the print, the hot end sink back into the print then gets stuck as it tries to return to idle position.</p>

<p>Please see the attached photo.  Has anyone had this problem?  Thank you<a href="https://i.stack.imgur.com/2xpD4.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/2xpD4.jpg" alt="enter image description here"></a></p>

<p>The last 20 lines of gcode is:</p>

<pre><code>G0 X50.83 Y49.982
G1 F600 X50.541 Y49.975 E4399.62304
G1 X50.268 Y49.985 E4399.62637
G1 X49.999 Y49.999 E4399.63024
G1 X49.73 Y50.012 E4399.6341
G1 X49.457 Y50.023 E4399.63742
G1 X49.168 Y50.016 E4399.63941
G0 F7200 X49.28 Y49.87
;TIME_ELAPSED:6301.614981
G1 F1500 E4393.13941
M107
M104 S0
M140 S0
;Retract the filament
G92 E1
G1 E-1 F300
G28 X0 Y0
M84
M82 ;absolute extrusion mode
M104 S0
;End of Gcode
</code></pre>

[{'answer_id': 6864, 'author': 'Carl Witthoft', 'author_id': 2191, 'author_profile': 'https://3dprinting.stackexchange.com/users/2191', 'pm_score': 2, 'selected': True, 'text': "<p>As Oscar commented, check the tail end of your gcode files.  Most slicing software includes commands to move the head to x=0,y=0 at the very least.  I am a bit surprised that your files don't appear to have this, since Cura does apply said code. </p>\n\n<p>Possiblly there's something lacking in your printer's firmware and it doesn't recognize some of the gcode commands.</p>\n"}, {'answer_id': 6868, 'author': '0scar', 'author_id': 5740, 'author_profile': 'https://3dprinting.stackexchange.com/users/5740', 'pm_score': 2, 'selected': False, 'text': '<p>As can be seen from the G-code file, the head is instructed to travel to x=0, y=0 (<code>G28 X0 Y0</code> is actually a homing instruction to home the head and label the position with zero X and zero Y). After that it powers off the motors (<code>M84</code>). </p>\n\n<p>From your picture, it looks like the head digs in the print without moving to the home position, so <code>G28 X0 Y0</code>  is <strong>not working</strong> (although you mention it tries to move while digging in?!?). That is strange as there is no instruction to lower the head. Please alter <code>G28</code> to <code>G0</code> so that it reads:</p>\n\n<pre><code>G0 X0 Y0\n</code></pre>\n\n<p>(or <code>G1 X0 Y0</code> which does work and will instruct the head to move). </p>\n\n<p>The digging into the print could be explained by the weight of the head/carriage that cannot be held when the steppers are not powered anymore (as instructed by <code>M84</code>). When the nozzle is hot, the nozzle will then dig into your print.</p>\n\n<hr>\n\n<p><strong>Edit</strong>:</p>\n\n<p>Now that I see your comment on another answer, your proprietary software may produce different G-code than Cura does, this could imply that your printer does not use a "standard" G-code interpreter or does not implement all G-codes.</p>\n'}, {'answer_id': 6876, 'author': 'Sean Houlihane', 'author_id': 4927, 'author_profile': 'https://3dprinting.stackexchange.com/users/4927', 'pm_score': 2, 'selected': False, 'text': "<p>For some reason the <code>G28</code> command to home X and Y is not having an effect. I wonder if there is something 'special' in the firmware that affects how it homes.</p>\n\n<p>You can try to replace the G28 with a move (and maybe a different location would be better to place the extruder in the best position for removing your print).</p>\n\n<pre><code>G1 X0 Y0 ;Move to home position\n</code></pre>\n\n<p>Best would be to look at one of the included 'pre sliced' models that are usually included with a printer to check the manufacturer's default end sequence.</p>\n\n<p>You might also be able to configure Cura to move up at the end of the print (so long as the print is not at maximum height).</p>\n"}, {'answer_id': 6888, 'author': 'Mark', 'author_id': 48, 'author_profile': 'https://3dprinting.stackexchange.com/users/48', 'pm_score': 2, 'selected': False, 'text': '<p>From the provided G-code:</p>\n\n<pre><code>G28 X0 Y0\n</code></pre>\n\n<p>The meaning of the <code>G28</code> code is <a href="https://reprap.org/wiki/G-code#G28:_Move_to_Origin_.28Home.29" rel="nofollow noreferrer">move printhead to home</a>.  In theory, the presence or absence of <code>X</code>, <code>Y</code>, and <code>Z</code> values are used to indicate which axes the printhead should move on, but as the RepRap wiki notes, some printers ignore this, typically interpreting any <code>G28</code> code as "move to 0,0,0".  In particular:</p>\n\n<blockquote>\n  <p>Because the behavior of G28 is unspecified, it is recommended not to automatically include G28 in your ending GCode. On a Cartesian this will result in damaging the printed object. If you need to move the carriage at the completion of a print, use G0 or G1.</p>\n</blockquote>\n\n<p>You should probably replace the code with <code>G1 X0 Y0 Z[value near the top of your printer]</code>.  You could simply replace <code>G28 X0 Y0</code> with <code>G1 X0 Y0</code>, but that risks dragging the tip of the nozzle across the upper surface of the finished print.</p>\n'}]
['https://3dprinting.stackexchange.com/questions/6860', 'https://3dprinting.stackexchange.com', 'https://3dprinting.stackexchange.com/users/12878/']