Browse Source

Handle M410 in the main task (#19752)

vanilla_fb_2.0.x
Victor Oliveira 4 years ago
committed by GitHub
parent
commit
e370834c35
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      Marlin/src/feature/e_parser.cpp
  2. 3
      Marlin/src/feature/e_parser.h
  3. 10
      Marlin/src/module/temperature.cpp

1
Marlin/src/feature/e_parser.cpp

@ -32,6 +32,7 @@
// Static data members
bool EmergencyParser::killed_by_M112, // = false
EmergencyParser::quickstop_by_M410,
EmergencyParser::enabled;
#if ENABLED(HOST_PROMPT_SUPPORT)

3
Marlin/src/feature/e_parser.h

@ -63,6 +63,7 @@ public:
};
static bool killed_by_M112;
static bool quickstop_by_M410;
#if ENABLED(HOST_PROMPT_SUPPORT)
static uint8_t M876_reason;
@ -168,7 +169,7 @@ public:
if (enabled) switch (state) {
case EP_M108: wait_for_user = wait_for_heatup = false; break;
case EP_M112: killed_by_M112 = true; break;
case EP_M410: quickstop_stepper(); break;
case EP_M410: quickstop_by_M410 = true; break;
#if ENABLED(HOST_PROMPT_SUPPORT)
case EP_M876SN: host_response_handler(M876_reason); break;
#endif

10
Marlin/src/module/temperature.cpp

@ -1032,8 +1032,14 @@ void Temperature::manage_heater() {
if (!inited) return watchdog_refresh();
#endif
if (TERN0(EMERGENCY_PARSER, emergency_parser.killed_by_M112))
kill(M112_KILL_STR, nullptr, true);
#if ENABLED(EMERGENCY_PARSER)
if (emergency_parser.killed_by_M112) kill(M112_KILL_STR, nullptr, true);
if (emergency_parser.quickstop_by_M410) {
emergency_parser.quickstop_by_M410 = false; // quickstop_stepper may call idle so clear this now!
quickstop_stepper();
}
#endif
if (!raw_temps_ready) return;

Loading…
Cancel
Save