Add option to control Solenoids under PARKING_EXTRUDER (#12028)

This commit is contained in:
Sam Lane
2018-10-07 23:07:12 +01:00
committed by Scott Lahteine
parent 74cd6cb4fc
commit f2ecf8d510
82 changed files with 95 additions and 8 deletions

View File

@ -22,19 +22,28 @@
#include "../../inc/MarlinConfig.h"
#if ENABLED(EXT_SOLENOID)
#if ENABLED(EXT_SOLENOID) || ENABLED(MANUAL_SOLENOID_CONTROL)
#include "../gcode.h"
#include "../../feature/solenoid.h"
#include "../../module/motion.h"
/**
* M380: Enable solenoid on the active extruder
*
* S<index> to specify a solenoid (Requires MANUAL_SOLENOID_CONTROL)
*/
void GcodeSuite::M380() { enable_solenoid_on_active_extruder(); }
void GcodeSuite::M380() {
#if ENABLED(MANUAL_SOLENOID_CONTROL)
enable_solenoid(parser.seenval('S') ? parser.value_int() : active_extruder);
#else
enable_solenoid_on_active_extruder();
#endif
}
/**
* M381: Disable all solenoids
*/
void GcodeSuite::M381() { disable_all_solenoids(); }
#endif // EXT_SOLENOID
#endif // EXT_SOLENOID || MANUAL_SOLENOID_CONTROL

View File

@ -549,8 +549,8 @@ void GcodeSuite::process_parsed_command(
case 364: if (M364()) return; break; // M364: SCARA Psi pos3 (90 deg to Theta)
#endif
#if ENABLED(EXT_SOLENOID)
case 380: M380(); break; // M380: Activate solenoid on active extruder
#if ENABLED(EXT_SOLENOID) || ENABLED(MANUAL_SOLENOID_CONTROL)
case 380: M380(); break; // M380: Activate solenoid on active (or specified) extruder
case 381: M381(); break; // M381: Disable all solenoids
#endif

View File

@ -687,7 +687,7 @@ private:
static bool M364();
#endif
#if ENABLED(EXT_SOLENOID)
#if ENABLED(EXT_SOLENOID) || ENABLED(MANUAL_SOLENOID_CONTROL)
static void M380();
static void M381();
#endif