<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel>
        <title>Marlin M109 gcode woes</title>
        <description> After rummaging through very old topics about Marlin and M109 gcode, I am left wondering if anyone else has encountered this problem.

I preheat the extruder to 180C in PronterFace, 
Using a sliced model with Slic3r (V0.92 and V0.93)
Print stops right after homing axes and the extruder heater is turned off.

Seems like Marlin (RC3 on RAMPS 1.2) is shutting down the extruder when an M109 is recieved.
RAMPS 1.2 with heatbed/fan disabled.
Using Max6675

What did you guys do to get around this problem?</description>
        <link>https://reprap.org/forum/read.php?146,159676,159676#msg-159676</link>
        <lastBuildDate>Thu, 12 Mar 2026 04:23:42 -0400</lastBuildDate>
        <generator>Phorum 5.2.23</generator>
        <item>
            <guid>https://reprap.org/forum/read.php?146,159676,160405#msg-160405</guid>
            <title>Re: Marlin M109 gcode woes</title>
            <link>https://reprap.org/forum/read.php?146,159676,160405#msg-160405</link>
            <description><![CDATA[ I know what you mean, however when trying to word it, in such a way, to not get mixed up between the gcode of the sliced model vs the gcode that gets sent via clicking in PronterFace.<br />
There is the buffer in the firmware to consider, and although I don't know how many lines of gcode it can store, there could have been an issue with the buffer, in some way.  Like it could handle 1 or 2 lines just fine, but when there are 20 or more (that may be an exaggerated number as I don't know what that number really is).<br />
<br />
I am getting another problem, which is in another thread, which could be a buffer problem, I just don't know.  However for the M109 issue, that I can verify was actually a conflict with the Cold Extrusion limit, as I mentioned, I need to print at a lower temp than the 170C limit, to get good prints without a fan.<br />
<br />
Thanks for your help.]]></description>
            <dc:creator>Grogyan</dc:creator>
            <category>Firmware - mainstream and related support</category>
            <pubDate>Sat, 13 Oct 2012 03:23:07 -0400</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?146,159676,160219#msg-160219</guid>
            <title>Re: Marlin M109 gcode woes</title>
            <link>https://reprap.org/forum/read.php?146,159676,160219#msg-160219</link>
            <description><![CDATA[ <blockquote class="bbcode"><div><small>Quote<br /></small><strong></strong><br />NOT gcode driven but rather using PronterFace to extrude plastic.</div></blockquote>
<br />
Pronterface doesn't have magic capabilities, it sends G-code. The difference between sending G-code manually and klicking something in Pronterface is, when doing it manually you know what you're doing and can communicate that.<br />
<br />
Please excuse me for insisting on this. It has to become general knowledge for anybody debugging printer operations. The G-code sent to the controller is _the_ central thing to look at.]]></description>
            <dc:creator>Traumflug</dc:creator>
            <category>Firmware - mainstream and related support</category>
            <pubDate>Fri, 12 Oct 2012 07:25:27 -0400</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?146,159676,160186#msg-160186</guid>
            <title>Re: Marlin M109 gcode woes</title>
            <link>https://reprap.org/forum/read.php?146,159676,160186#msg-160186</link>
            <description><![CDATA[ Hey, Thanks Sound/Traumflug,<br />
<br />
I may have inadvertantly fixed that issue, while finding a solution to another.<br />
<br />
The PID I had set for my hot end, which was in the defaults for MakerGear, was found to be not aggresive enough to keep the hot end hot when the filament is pulled through, causing the barrel temp to drop to about 175-180C, NOT gcode driven but rather using PronterFace to extrude plastic. Yesterday, it seemed no matter what I did, the heat just dropped off when running under gcode from a sliced model, manual M109 S180 worked  Today however, it appeared to work out of the blue.<br />
I will be playing with the printer tomorrow, it's late here and i'm quite tired.<br />
<br />
There was also something else, the Cold Extrusion cut off temperature, it was set to 170C, however when I last did printing with my old electronics (Gen3 old), I was getting fairly good results printing at 165C, so I set that to 150C, and tried printing with the M104/M109 gcode in the sliced model by Slic3r, it stopped and waited for the initial temp I had set at 185C (now 170C) to drop to 170, which it did, then stopped printing after layer.  I repeated this a few times, and t did exactly what it should.  Along with very aggresive PID, the problem did not show again.<br />
Weird.<br />
<br />
Now onto the next two problems.<br />
<br />
Cheers :-)]]></description>
            <dc:creator>Grogyan</dc:creator>
            <category>Firmware - mainstream and related support</category>
            <pubDate>Fri, 12 Oct 2012 04:19:46 -0400</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?146,159676,160111#msg-160111</guid>
            <title>Re: Marlin M109 gcode woes</title>
            <link>https://reprap.org/forum/read.php?146,159676,160111#msg-160111</link>
            <description><![CDATA[ There's some confusion here.<br />
<br />
M104 means: set temperature.<br />
M109 means: set temperature and wait before going on with next G-code lines.<br />
<br />
Let's keep the "deprecation" debate aside, which doesn't really affect the issue that Grogyan needs help with. Infact, while we could discuss about their deprecation and about other possible ways to do things, M104 and M109 *are* definitely supported by Marlin and should just work. They do work for thousands of users. So let's stay on topic and help Grogyan with his issue: Grogyan, you said that the print stops. Actually, the print pauses until it reaches the temperature you set in Slic3r.  What temperature did you write in Slic3r?  Also, yes: if you set temperature to "0" Slic3r will just omit any temperature-related command, leaving the task to the manual interface.<br />
<br />
===<br />
<br />
About the deprecation issue. Does Marlin support M116?]]></description>
            <dc:creator>Sound</dc:creator>
            <category>Firmware - mainstream and related support</category>
            <pubDate>Thu, 11 Oct 2012 16:18:10 -0400</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?146,159676,160034#msg-160034</guid>
            <title>Re: Marlin M109 gcode woes</title>
            <link>https://reprap.org/forum/read.php?146,159676,160034#msg-160034</link>
            <description><![CDATA[ I've filed the Github issue for you: [<a href="https://github.com/alexrj/Slic3r/issues/746" target="_blank"  rel="nofollow">github.com</a>]]]></description>
            <dc:creator>Traumflug</dc:creator>
            <category>Firmware - mainstream and related support</category>
            <pubDate>Thu, 11 Oct 2012 07:03:45 -0400</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?146,159676,159890#msg-159890</guid>
            <title>Re: Marlin M109 gcode woes</title>
            <link>https://reprap.org/forum/read.php?146,159676,159890#msg-159890</link>
            <description><![CDATA[ Here is a snippet of the gcode<br />
<br />
<pre class="bbcode">
; generated by Slic3r 0.9.3 on 2012-10-11 at 11:47:48

; layer_height = 0.3
; perimeters = 3
; solid_layers = 3
; fill_density = 0.4
; perimeter_speed = 30
; infill_speed = 60
; travel_speed = 130
; scale = 1
; nozzle_diameter = 0.4
; filament_diameter = 2.9
; extrusion_multiplier = 1
; single wall width = 0.42mm

M104 S170 ; set temperature &lt;- works
G28 ; home all axes                 &lt;- works
M109 S170 ; wait for temperature to be reached &lt;- Extruder heater turns off
G90 ; use absolute coordinates
G21 ; set units to millimeters
G92 E0
M82 ; use absolute distances for extrusion
G1 F1800.000 E-1.00000
G92 E0
G1 Z0.200 F7800.000
G1 X92.900 Y81.028</pre>
<br />
<br />
Marlin V1 RC3<br />
<pre class="bbcode">
case 109: 
    {// M109 - Wait for extruder heater to reach target.
      tmp_extruder = active_extruder;
      if(code_seen('T')) {
        tmp_extruder = code_value();
        if(tmp_extruder &gt;= EXTRUDERS) {
          SERIAL_ECHO_START;
          SERIAL_ECHO(MSG_M109_INVALID_EXTRUDER);
          SERIAL_ECHOLN(tmp_extruder);
          break;
        }
      }</pre>
<pre class="bbcode">
case 104: // M104
      tmp_extruder = active_extruder;
      if(code_seen('T')) {
        tmp_extruder = code_value();
        if(tmp_extruder &gt;= EXTRUDERS) {
          SERIAL_ECHO_START;
          SERIAL_ECHO(MSG_M104_INVALID_EXTRUDER);
          SERIAL_ECHOLN(tmp_extruder);
          break;
        }
      }</pre>
<br />
In Slic3r V0.93 -&gt; Filament Settings tab<br />
Temperature                       170C<br />
Temperature First Layer    170C<br />
<br />
If I set First Layer to 0, then the resulting gcode omits both M104 and M109]]></description>
            <dc:creator>Grogyan</dc:creator>
            <category>Firmware - mainstream and related support</category>
            <pubDate>Wed, 10 Oct 2012 19:02:00 -0400</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?146,159676,159863#msg-159863</guid>
            <title>Re: Marlin M109 gcode woes</title>
            <link>https://reprap.org/forum/read.php?146,159676,159863#msg-159863</link>
            <description><![CDATA[ I know it is deprecated, but obviously not with Slic3r<br />
<br />
I checked last night in the firmware, the M109 code, it appears to work exactly like M104.<br />
 After work I will check out the actual behaviour on the RepRap.]]></description>
            <dc:creator>Grogyan</dc:creator>
            <category>Firmware - mainstream and related support</category>
            <pubDate>Wed, 10 Oct 2012 16:59:56 -0400</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?146,159676,159707#msg-159707</guid>
            <title>Re: Marlin M109 gcode woes</title>
            <link>https://reprap.org/forum/read.php?146,159676,159707#msg-159707</link>
            <description><![CDATA[ AFAIK, M109 is deprecated. Use M104 followed by M116 instead.]]></description>
            <dc:creator>Traumflug</dc:creator>
            <category>Firmware - mainstream and related support</category>
            <pubDate>Wed, 10 Oct 2012 06:08:08 -0400</pubDate>
        </item>
        <item>
            <guid>https://reprap.org/forum/read.php?146,159676,159676#msg-159676</guid>
            <title>Marlin M109 gcode woes</title>
            <link>https://reprap.org/forum/read.php?146,159676,159676#msg-159676</link>
            <description><![CDATA[ After rummaging through very old topics about Marlin and M109 gcode, I am left wondering if anyone else has encountered this problem.<br />
<br />
I preheat the extruder to 180C in PronterFace, <br />
Using a sliced model with Slic3r (V0.92 and V0.93)<br />
Print stops right after homing axes and the extruder heater is turned off.<br />
<br />
Seems like Marlin (RC3 on RAMPS 1.2) is shutting down the extruder when an M109 is recieved.<br />
RAMPS 1.2 with heatbed/fan disabled.<br />
Using Max6675<br />
<br />
What did you guys do to get around this problem?]]></description>
            <dc:creator>Grogyan</dc:creator>
            <category>Firmware - mainstream and related support</category>
            <pubDate>Wed, 10 Oct 2012 03:01:05 -0400</pubDate>
        </item>
    </channel>
</rss>
