Allow POWER_SUPPLY 0 for no power switch
This commit is contained in:
@ -168,12 +168,12 @@
|
||||
// M401 - Lower z-probe if present
|
||||
// M402 - Raise z-probe if present
|
||||
// M404 - N<dia in mm> Enter the nominal filament width (3mm, 1.75mm ) or will display nominal filament width without parameters
|
||||
// M405 - Turn on Filament Sensor extrusion control. Optional D<delay in cm> to set delay in centimeters between sensor and extruder
|
||||
// M406 - Turn off Filament Sensor extrusion control
|
||||
// M407 - Displays measured filament diameter
|
||||
// M405 - Turn on Filament Sensor extrusion control. Optional D<delay in cm> to set delay in centimeters between sensor and extruder
|
||||
// M406 - Turn off Filament Sensor extrusion control
|
||||
// M407 - Display measured filament diameter
|
||||
// M500 - Store parameters in EEPROM
|
||||
// M501 - Read parameters from EEPROM (if you need reset them after you changed them temporarily).
|
||||
// M502 - Revert to the default "factory settings". You still need to store them in EEPROM afterwards if you want to.
|
||||
// M502 - Revert to the default "factory settings". You still need to store them in EEPROM afterwards if you want to.
|
||||
// M503 - Print the current settings (from memory not from EEPROM). Use S0 to leave off headings.
|
||||
// M540 - Use S[0|1] to enable or disable the stop SD card print on endstop hit (requires ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED)
|
||||
// M600 - Pause for filament change X[pos] Y[pos] Z[relative lift] E[initial retract] L[later retract distance for removal]
|
||||
@ -310,14 +310,14 @@ int fanSpeed = 0;
|
||||
bool cancel_heatup = false;
|
||||
|
||||
#ifdef FILAMENT_SENSOR
|
||||
//Variables for Filament Sensor input
|
||||
float filament_width_nominal=DEFAULT_NOMINAL_FILAMENT_DIA; //Set nominal filament width, can be changed with M404
|
||||
bool filament_sensor=false; //M405 turns on filament_sensor control, M406 turns it off
|
||||
float filament_width_meas=DEFAULT_MEASURED_FILAMENT_DIA; //Stores the measured filament diameter
|
||||
signed char measurement_delay[MAX_MEASUREMENT_DELAY+1]; //ring buffer to delay measurement store extruder factor after subtracting 100
|
||||
int delay_index1=0; //index into ring buffer
|
||||
int delay_index2=-1; //index into ring buffer - set to -1 on startup to indicate ring buffer needs to be initialized
|
||||
float delay_dist=0; //delay distance counter
|
||||
//Variables for Filament Sensor input
|
||||
float filament_width_nominal = DEFAULT_NOMINAL_FILAMENT_DIA; //Set nominal filament width, can be changed with M404
|
||||
bool filament_sensor = false; //M405 turns on filament_sensor control, M406 turns it off
|
||||
float filament_width_meas = DEFAULT_MEASURED_FILAMENT_DIA; //Stores the measured filament diameter
|
||||
signed char measurement_delay[MAX_MEASUREMENT_DELAY+1]; //ring buffer to delay measurement store extruder factor after subtracting 100
|
||||
int delay_index1 = 0; //index into ring buffer
|
||||
int delay_index2 = -1; //index into ring buffer - set to -1 on startup to indicate ring buffer needs to be initialized
|
||||
float delay_dist = 0; //delay distance counter
|
||||
int meas_delay_cm = MEASUREMENT_DELAY_CM; //distance delay setting
|
||||
#endif
|
||||
|
||||
@ -516,7 +516,7 @@ void setup_powerhold()
|
||||
#if defined(SUICIDE_PIN) && SUICIDE_PIN > -1
|
||||
OUT_WRITE(SUICIDE_PIN, HIGH);
|
||||
#endif
|
||||
#if defined(PS_ON_PIN) && PS_ON_PIN > -1
|
||||
#if HAS_POWER_SWITCH
|
||||
#if defined(PS_DEFAULT_OFF)
|
||||
OUT_WRITE(PS_ON_PIN, PS_ON_ASLEEP);
|
||||
#else
|
||||
@ -898,7 +898,7 @@ bool code_seen(char code) {
|
||||
strchr_pointer = strchr(cmdbuffer[bufindr], code);
|
||||
return (strchr_pointer != NULL); //Return True if a character was found
|
||||
}
|
||||
|
||||
|
||||
#define DEFINE_PGM_READ_ANY(type, reader) \
|
||||
static inline type pgm_read_any(const type *p) \
|
||||
{ return pgm_read_##reader##_near(p); }
|
||||
@ -3291,7 +3291,7 @@ inline void gcode_M140() {
|
||||
if (code_seen('S')) setTargetBed(code_value());
|
||||
}
|
||||
|
||||
#if defined(PS_ON_PIN) && PS_ON_PIN > -1
|
||||
#if HAS_POWER_SWITCH
|
||||
|
||||
/**
|
||||
* M80: Turn on Power Supply
|
||||
@ -3313,33 +3313,33 @@ inline void gcode_M140() {
|
||||
#endif
|
||||
}
|
||||
|
||||
#endif // PS_ON_PIN
|
||||
|
||||
/**
|
||||
* M81: Turn off Power Supply
|
||||
*/
|
||||
inline void gcode_M81() {
|
||||
disable_heater();
|
||||
st_synchronize();
|
||||
disable_e0();
|
||||
disable_e1();
|
||||
disable_e2();
|
||||
disable_e3();
|
||||
finishAndDisableSteppers();
|
||||
fanSpeed = 0;
|
||||
delay(1000); // Wait 1 second before switching off
|
||||
#if defined(SUICIDE_PIN) && SUICIDE_PIN > -1
|
||||
/**
|
||||
* M81: Turn off Power Supply
|
||||
*/
|
||||
inline void gcode_M81() {
|
||||
disable_heater();
|
||||
st_synchronize();
|
||||
suicide();
|
||||
#elif defined(PS_ON_PIN) && PS_ON_PIN > -1
|
||||
OUT_WRITE(PS_ON_PIN, PS_ON_ASLEEP);
|
||||
#endif
|
||||
#ifdef ULTIPANEL
|
||||
powersupply = false;
|
||||
LCD_MESSAGEPGM(MACHINE_NAME " " MSG_OFF ".");
|
||||
lcd_update();
|
||||
#endif
|
||||
}
|
||||
disable_e0();
|
||||
disable_e1();
|
||||
disable_e2();
|
||||
disable_e3();
|
||||
finishAndDisableSteppers();
|
||||
fanSpeed = 0;
|
||||
delay(1000); // Wait 1 second before switching off
|
||||
#if defined(SUICIDE_PIN) && SUICIDE_PIN > -1
|
||||
st_synchronize();
|
||||
suicide();
|
||||
#elif HAS_POWER_SWITCH
|
||||
OUT_WRITE(PS_ON_PIN, PS_ON_ASLEEP);
|
||||
#endif
|
||||
#ifdef ULTIPANEL
|
||||
powersupply = false;
|
||||
LCD_MESSAGEPGM(MACHINE_NAME " " MSG_OFF ".");
|
||||
lcd_update();
|
||||
#endif
|
||||
}
|
||||
|
||||
#endif // PS_ON_PIN
|
||||
|
||||
/**
|
||||
* M82: Set E codes absolute (default)
|
||||
|
Reference in New Issue
Block a user