<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
               xmlns:atom="http://www.w3.org/2005/Atom"
               xmlns:dc="http://purl.org/dc/elements/1.1/"
               xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
               xmlns:admin="http://webns.net/mvcb/"
               xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
               xmlns:content="http://purl.org/rss/1.0/modules/content/">
            <channel>
                <title>
					                		Auto retraction question - Hardware, firmware and software help                                    </title>
                <link>https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/</link>
                <description>Prusa3D Forum Discussion Board</description>
                <language>en-US</language>
                <lastBuildDate>Sat, 06 Jun 2026 01:17:07 +0000</lastBuildDate>
                <generator>wpForo</generator>
                <ttl>60</ttl>
                					                    <item>
                        <title>RE: Auto retraction question</title>
                        <link>https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-767124</link>
                        <pubDate>Thu, 16 Oct 2025 09:58:41 +0000</pubDate>
                        <description><![CDATA[Posted by: @miroslav-h4 The above code is nonsense, it will cause the filament to be ejected from the feed wheels. The correct command sequence is located one item higher in the source code....]]></description>
                        <content:encoded><![CDATA[<p> </p><blockquote data-userid="4270" data-postid="767123" data-mention="miroslav-h4"><div class="wpforo-post-quote-author"><strong> Posted by: @miroslav-h4 </strong></div><p>The above code is nonsense, it will cause the filament to be ejected from the feed wheels. The correct command sequence is located one item higher in the source code. I added the comments. I hope you can handle the conversion to gcode sequences yourself.</p><pre contenteditable="false"> #define FILAMENT_UNLOAD_RAMMING_SEQUENCE \
        { \
            { 8, 995 }, \     Extrudes 8 mm of filament from the nozzle
            { -43, 6000 }, \  These 3 instructions will pulling the filament 55 mm at a decreasing rate
            { -8, 3000 }, \           ""
            { -4, 1800 }, \           ""
            { 20, 600 }, \     These 2 instructions will move the filament 20 mm forward
            { -20, 470 }, \    and backward in the cold part of the nextruder to make the tip come out.
            { 55, 1740 }, \    These 2 instructions will momentarily insert the end 
            { -55, 6000 }, \   of the filament into the hot part of the nozzle. (Tip Tamping.)
            { 20, 340 }, \     This is followed by cooling of the tip again in the cold part of the nextruder.
            { -20, 210 }, \           ""
            { -50, 2000 }, \   Final pulling of the filament to the upper edge of the nextruder tube,
				with the filament still held by the feed wheels. 
        }</pre></blockquote><p>Yes I can convert to gcode buddy....thanks for your assistance. 👍</p>]]></content:encoded>
                        <category domain="https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/">Hardware, firmware and software help</category>                        <dc:creator>gb160</dc:creator>
                        <guid isPermaLink="true">https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-767124</guid>
                    </item>
                                        <item>
                        <title>RE:</title>
                        <link>https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-767115</link>
                        <pubDate>Thu, 16 Oct 2025 07:05:48 +0000</pubDate>
                        <description><![CDATA[Posted by: @hyiger 
 

 Posted by: @gb160 
On these numbers ,  i think the approach is right, but I cant see those numbers being right for what I want.eg, unless im interpreting these nu...]]></description>
                        <content:encoded><![CDATA[<p> </p>
<blockquote data-userid="590790" data-postid="767109" data-mention="hyiger">
<div class="wpforo-post-quote-author"><strong> Posted by: @hyiger </strong></div>
<p> </p>
<blockquote data-userid="512637" data-postid="767046" data-mention="gb160">
<div class="wpforo-post-quote-author"><strong> Posted by: @gb160 </strong></div>
<p>On these numbers ,  i think the approach is right, but I cant see those numbers being right for what I want.<br />eg, unless im interpreting these numbers wrong, thats retracting 105mm of filament being retracted. Surely thats going to back the filament completely out of the extruder? ie, to change the filament.</p>
<p>I'd love to know exactly what speed/lengths Prusa uses for this 'ramming' just at the end of a print... They back it out enough to stop the oozing, but obviously nowhere near the amount thats used for filament change.</p>
<p>This is definitely the right path though. Thanks for your assistance mate ( and @steve-5 )</p>
<p> </p>
</blockquote>
<p>Ah, yep. Makes sense what you are saying. So probably <strong>now I'm thinking just M601 which is "pause print"</strong> and then dissect what it's doing behind the scenes. This is turning into a fun  puzzle. </p>
</blockquote>
<p>My thought entirely, until finding out that pause print doesn't trigger the retraction 😂 ...its part of why I can't just use pause print generally, it's just an oozing mess with PETG.<br />The two occasions I <em>know</em> it's being used are :</p>
<p>1: When loading a new filament, after it purges the user has to confirm the colour is correct, after confirming it definitely does the sequence.</p>
<p>2: When a print ends. The head moves to the park position and the sequence occurs then...I've checked the custom end G code and there's nothing there that stands out....so it must be handled in firmware.</p>
<p>Im close now, really close, I use a fast, long extrusion, about 15-20mm, then a very slow, long retraction, about 30mm....then just before resuming printing I de-retract that 30mm.<br />Oozing is now almost non existent, and printing resumes really cleanly. Nothing to clean up, no initial under extrusion when resuming.<br />I'd still like to know what Prusa is using value wise. the sounds the printer makes aren't quite the same when I use my sequence... It must be in the firmware somewhere.</p>
<p>I tried tracing backwards from the source code, when the sequence is being done by Prusa the message  'Auto-retracting filament' appears on the display...so I searched for that string on Github in the firmware repo, yet it returns no results...wth ?...the plot thickens 😂</p>
<p> </p>]]></content:encoded>
                        <category domain="https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/">Hardware, firmware and software help</category>                        <dc:creator>gb160</dc:creator>
                        <guid isPermaLink="true">https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-767115</guid>
                    </item>
                                        <item>
                        <title>RE: Auto retraction question</title>
                        <link>https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-767109</link>
                        <pubDate>Thu, 16 Oct 2025 04:47:07 +0000</pubDate>
                        <description><![CDATA[Posted by: @gb160 On these numbers ,  i think the approach is right, but I cant see those numbers being right for what I want.eg, unless im interpreting these numbers wrong, thats retracting...]]></description>
                        <content:encoded><![CDATA[<p> </p><blockquote data-userid="512637" data-postid="767046" data-mention="gb160"><div class="wpforo-post-quote-author"><strong> Posted by: @gb160 </strong></div><p>On these numbers ,  i think the approach is right, but I cant see those numbers being right for what I want.<br />eg, unless im interpreting these numbers wrong, thats retracting 105mm of filament being retracted. Surely thats going to back the filament completely out of the extruder? ie, to change the filament.</p><p>I'd love to know exactly what speed/lengths Prusa uses for this 'ramming' just at the end of a print... They back it out enough to stop the oozing, but obviously nowhere near the amount thats used for filament change.</p><p>This is definitely the right path though. Thanks for your assistance mate ( and @steve-5 )</p><p> </p></blockquote><p>Ah, yep. Makes sense what you are saying. So probably now I'm thinking just M601 which is "pause print" and then dissect what it's doing behind the scenes. This is turning into a fun  puzzle. </p>]]></content:encoded>
                        <category domain="https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/">Hardware, firmware and software help</category>                        <dc:creator>hyiger</dc:creator>
                        <guid isPermaLink="true">https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-767109</guid>
                    </item>
                                        <item>
                        <title>RE: Auto retraction question</title>
                        <link>https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-767046</link>
                        <pubDate>Wed, 15 Oct 2025 10:41:03 +0000</pubDate>
                        <description><![CDATA[On these numbers ,  i think the approach is right, but I cant see those numbers being right for what I want.eg, unless im interpreting these numbers wrong, thats retracting 105mm of filament...]]></description>
                        <content:encoded><![CDATA[<p>On these numbers ,  i think the approach is right, but I cant see those numbers being right for what I want.<br />eg, unless im interpreting these numbers wrong, thats retracting 105mm of filament being retracted. Surely thats going to back the filament completely out of the extruder? ie, to change the filament.<br /><br />I'd love to know exactly what speed/lengths Prusa uses for this 'ramming' just at the end of a print... They back it out enough to stop the oozing, but obviously nowhere near the amount thats used for filament change.<br /><br />This is definitely the right path though. Thanks for your assistance mate ( and @steve-5 )<br /><br /><br /></p>]]></content:encoded>
                        <category domain="https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/">Hardware, firmware and software help</category>                        <dc:creator>gb160</dc:creator>
                        <guid isPermaLink="true">https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-767046</guid>
                    </item>
                                        <item>
                        <title>RE: Auto retraction question</title>
                        <link>https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-767031</link>
                        <pubDate>Wed, 15 Oct 2025 07:38:04 +0000</pubDate>
                        <description><![CDATA[Posted by: @hyiger   Posted by: @gb160  Thanks buddy, I&#039;m not 100% sure this is what I&#039;m looking for, but it&#039;s a start.Ideally I need to look at what commands are getting executed when a pri...]]></description>
                        <content:encoded><![CDATA[<p> </p><blockquote data-userid="590790" data-postid="767024" data-mention="hyiger"><div class="wpforo-post-quote-author"><strong> Posted by: @hyiger </strong></div><p> </p><blockquote data-userid="512637" data-postid="766978" data-mention="gb160"><div class="wpforo-post-quote-author"><strong> Posted by: @gb160 </strong></div><p> </p></blockquote><blockquote data-userid="512637" data-postid="766978" data-mention="gb160"><p>Thanks buddy, I'm not 100% sure this is what I'm looking for, but it's a start.<br />Ideally I need to look at what commands are getting executed when a print ends...the printhead moves to park position then the important bit I'm interested in...it purges a tiny bit of filament then a very slow retraction (you hear the retraction going on and the filament gets fed back out of the printer)</p><p>My understanding is this is to relieve any pressure built up in the nozzle, and it is very effective in stopping any filament oozing out of the nozzle. This is the exact behaviour I want to reproduce in Gcode.<br />I need to reproduce this mid-print, (don't ask 😂), but my attempts so far have failed. </p><p>Any idea where I would find that ? </p><p> </p></blockquote><p>OK, I think I know what you are after. I've been poking around in the firmware code and found this: <a href="https://github.com/prusa3d/Prusa-Firmware-Buddy/blob/77255c9c85a25feb22f112724016aba552a1aa3e/include/marlin/Configuration_COREONE_adv.h#L1383-L1389">FILAMENT_RUNOUT_RAMMING_SEQUENCE</a>  So as @Steve pointed out you can send this to the extruder.</p><p>I guess something like this in the "Before Layer Change G-code"</p><pre contenteditable="false">; Ram filament before layer change in middle of print
{if layer_z &gt; max_layer_z / 2}
G1 E7 F1500
G1 E-50 F2700
G1 E-5 F50
G1 E-50 F1500
{endif}</pre></blockquote><p>Man you're a star ! Thanks for this.<br />Im gonna give this a try later.<br /><br />I won't be needing it on layer change, hopefully just need to use it once.<br />Long story short I need to basically stop printing altogether for a short period of time (while other stuff is going on) , and oozing with certain filaments has meant I have to babysit the printer during this process. <br />I've got it very close with a simple extrude then a slow retraction, hopefully this approach will solve the problem once and for all.</p>]]></content:encoded>
                        <category domain="https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/">Hardware, firmware and software help</category>                        <dc:creator>gb160</dc:creator>
                        <guid isPermaLink="true">https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-767031</guid>
                    </item>
                                        <item>
                        <title>RE:</title>
                        <link>https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-767024</link>
                        <pubDate>Wed, 15 Oct 2025 01:29:25 +0000</pubDate>
                        <description><![CDATA[Posted by: @gb160 
 


Thanks buddy, I&#039;m not 100% sure this is what I&#039;m looking for, but it&#039;s a start.Ideally I need to look at what commands are getting executed when a print ends...the...]]></description>
                        <content:encoded><![CDATA[<p> </p>
<blockquote data-userid="512637" data-postid="766978" data-mention="gb160">
<div class="wpforo-post-quote-author"><strong> Posted by: @gb160 </strong></div>
<p> </p>
</blockquote>
<blockquote data-userid="512637" data-postid="766978" data-mention="gb160">
<p>Thanks buddy, I'm not 100% sure this is what I'm looking for, but it's a start.<br />Ideally I need to look at what commands are getting executed when a print ends...the printhead moves to park position then the important bit I'm interested in...it purges a tiny bit of filament then a very slow retraction (you hear the retraction going on and the filament gets fed back out of the printer)</p>
<p>My understanding is this is to relieve any pressure built up in the nozzle, and it is very effective in stopping any filament oozing out of the nozzle. This is the exact behaviour I want to reproduce in Gcode.<br />I need to reproduce this mid-print, (don't ask 😂), but my attempts so far have failed. </p>
<p>Any idea where I would find that ? </p>
<p> </p>
</blockquote>
<p>OK, I think I know what you are after. I've been poking around in the firmware code and found this: <a href="https://github.com/prusa3d/Prusa-Firmware-Buddy/blob/77255c9c85a25feb22f112724016aba552a1aa3e/include/marlin/Configuration_COREONE_adv.h#L1383-L1389">FILAMENT_RUNOUT_RAMMING_SEQUENCE</a>  So as @Steve pointed out you can send this to the extruder.</p>
<p>I guess something like this in the "Before Layer Change G-code"</p>
<pre contenteditable="false">; Ram filament before layer change in middle of print
{if layer_z &gt; max_layer_z / 2}
G1 E7 F1500
G1 E-50 F2700
G1 E-5 F50
G1 E-50 F1500
{endif}</pre>]]></content:encoded>
                        <category domain="https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/">Hardware, firmware and software help</category>                        <dc:creator>hyiger</dc:creator>
                        <guid isPermaLink="true">https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-767024</guid>
                    </item>
                                        <item>
                        <title>RE: Auto retraction question</title>
                        <link>https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-766999</link>
                        <pubDate>Tue, 14 Oct 2025 13:05:40 +0000</pubDate>
                        <description><![CDATA[@gb160,The operations sequence to which you are referring is the &quot;ramming&quot; to form the filament tip followed by a retraction to pull the filament out of the hotend to prevent ooze.  This seq...]]></description>
                        <content:encoded><![CDATA[<p>@gb160,</p><p>The operations sequence to which you are referring is the "ramming" to form the filament tip followed by a retraction to pull the filament out of the hotend to prevent ooze.  This sequence can be replicated in g-code by sending move commands to the extruder motor.  For reference, here is the link to the Buddy firmware g-code which may be helpful in designing the custom code; <a title="buddy-firmware-specific-g-code-commands" href="https://help.prusa3d.com/article/buddy-firmware-specific-g-code-commands_633112" target="_blank" rel="noopener">buddy-firmware-specific-g-code-commands</a></p><p>Regards, </p><p>Steve</p>]]></content:encoded>
                        <category domain="https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/">Hardware, firmware and software help</category>                        <dc:creator>Steve</dc:creator>
                        <guid isPermaLink="true">https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-766999</guid>
                    </item>
                                        <item>
                        <title>RE: Auto retraction question</title>
                        <link>https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-766978</link>
                        <pubDate>Tue, 14 Oct 2025 07:04:22 +0000</pubDate>
                        <description><![CDATA[Posted by: @hyiger For some odd reason, it looks like Prusa doesn&#039;t merge branches back into master. This might be more accurate (i.e. up-to-date):buddy, I&#039;m not 100% sure this is what I&#039;m l...]]></description>
                        <content:encoded><![CDATA[<p> </p><blockquote data-userid="590790" data-postid="766919" data-mention="hyiger"><div class="wpforo-post-quote-author"><strong> Posted by: @hyiger </strong></div><p>For some odd reason, it looks like Prusa doesn't merge branches back into master. This might be more accurate (i.e. up-to-date): https://github.com/prusa3d/Prusa-Firmware-Buddy/blob/v6.4.0-RC/lib/Marlin/Marlin/src/gcode/feature/pause/M600.cpp</p></blockquote><p>Thanks buddy, I'm not 100% sure this is what I'm looking for, but it's a start.<br />Ideally I need to look at what commands are getting executed when a print ends...the printhead moves to park position then the important bit I'm interested in...it purges a tiny bit of filament then a very slow retraction (you hear the retraction going on and the filament gets fed back out of the printer)<br /><br />My understanding is this is to relieve any pressure built up in the nozzle, and it is very effective in stopping any filament oozing out of the nozzle. This is the exact behaviour I want to reproduce in Gcode.<br />I need to reproduce this mid-print, (don't ask 😂), but my attempts so far have failed. <br /><br />Any idea where I would find that ? <br /><br /><br /></p>]]></content:encoded>
                        <category domain="https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/">Hardware, firmware and software help</category>                        <dc:creator>gb160</dc:creator>
                        <guid isPermaLink="true">https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-766978</guid>
                    </item>
                                        <item>
                        <title>RE: Auto retraction question</title>
                        <link>https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-766919</link>
                        <pubDate>Mon, 13 Oct 2025 15:37:02 +0000</pubDate>
                        <description><![CDATA[For some odd reason, it looks like Prusa doesn&#039;t merge branches back into master. This might be more accurate (i.e. up-to-date):]]></description>
                        <content:encoded><![CDATA[<p>For some odd reason, it looks like Prusa doesn't merge branches back into master. This might be more accurate (i.e. up-to-date): https://github.com/prusa3d/Prusa-Firmware-Buddy/blob/v6.4.0-RC/lib/Marlin/Marlin/src/gcode/feature/pause/M600.cpp</p>]]></content:encoded>
                        <category domain="https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/">Hardware, firmware and software help</category>                        <dc:creator>hyiger</dc:creator>
                        <guid isPermaLink="true">https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-766919</guid>
                    </item>
                                        <item>
                        <title>RE:</title>
                        <link>https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-766917</link>
                        <pubDate>Mon, 13 Oct 2025 15:13:49 +0000</pubDate>
                        <description><![CDATA[Posted by: @gb160 
Hi, I&#039;m interested about the auto retraction feature thats implemented on the core one, I think it&#039;s used after filament has been loaded, and also at the end of every pri...]]></description>
                        <content:encoded><![CDATA[<p> </p>
<blockquote data-userid="512637" data-postid="766902" data-mention="gb160">
<div class="wpforo-post-quote-author"><strong> Posted by: @gb160 </strong></div>
<p>Hi, I'm interested about the auto retraction feature thats implemented on the core one, I think it's used after filament has been loaded, and also at the end of every print.</p>
<p>How would I go about figuring out exactly what goes on when this happens? <br />I'm interested in reproducing the exact steps via gcode.<br />I presume I would need to look somewhere in the Core one firmware files to see exactly what goes on, but have no idea where to start looking.<br />If anyone can offer any help or insight it would be greatly appreciated.</p>
<p>Thanks.</p>
<p> </p>
</blockquote>
<p>I believe that is the M600 g-code (filament change) which would be here: <a href="https://github.com/prusa3d/Prusa-Firmware-Buddy/blob/master/lib/Marlin/Marlin/src/gcode/feature/pause/M600.cpp">M600.cpp</a></p>]]></content:encoded>
                        <category domain="https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/">Hardware, firmware and software help</category>                        <dc:creator>hyiger</dc:creator>
                        <guid isPermaLink="true">https://forum.prusa3d.com/forum/prusa-core-one-hardware-firmware-and-software-help/auto-retraction-question/#post-766917</guid>
                    </item>
                                                </channel>
        </rss>
        