Merge pull request #36 from 3d-gussner/MK2-FRS

Mk2 frs
This commit is contained in:
3d-gussner 2017-11-06 17:01:01 +01:00 committed by GitHub
commit f3da4a06b4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
15 changed files with 274 additions and 34 deletions

View File

@ -5,7 +5,7 @@
#include "Configuration_prusa.h"
// Firmware version
#define FW_version "3.1.0-RC2"
#define FW_version "3.1.0-RC2 F "
#define FW_PRUSA3D_MAGIC "PRUSA3DFW"
#define FW_PRUSA3D_MAGIC_LEN 10
@ -51,6 +51,17 @@
#define EEPROM_XYZ_CAL_SKEW (EEPROM_SD_SORT - 4)
#define EEPROM_WIZARD_ACTIVE (EEPROM_XYZ_CAL_SKEW - 1)
// addition for hyperfine tuning
/*
#define EEPROM_BED_CORRECTION_FRONT_LEFT (EEPROM_WIZARD_ACTIVE - 1)
#define EEPROM_BED_CORRECTION_FRONT_RIGHT (EEPROM_BED_CORRECTION_FRONT_LEFT - 1)
#define EEPROM_BED_CORRECTION_REAR_RIGHT (EEPROM_BED_CORRECTION_FRONT_RIGHT - 1)
#define EEPROM_BED_CORRECTION_REAR_LEFT (EEPROM_BED_CORRECTION_REAR_RIGHT - 1)
*/
// FILAMENT_RUNOUT_SENSOR
#define EEPROM_FIL_RUNOUT_STATUS (EEPROM_WIZARD_ACTIVE - 1) //0 - filament runout sensor disabled; 1 - FRS type Signal to VCC; FRS type Signal to GND
// Currently running firmware, each digit stored as uint16_t.
// The flavor differentiates a dev, alpha, beta, release candidate or a release version.
#define EEPROM_FIRMWARE_VERSION_END (FW_PRUSA3D_MAGIC_LEN+8)
@ -73,7 +84,7 @@
//#define STRING_VERSION "1.0.2"
#define STRING_VERSION_CONFIG_H __DATE__ " " __TIME__ // build date and time
#define STRING_CONFIG_H_AUTHOR "(none, default config)" // Who made the changes.
#define STRING_CONFIG_H_AUTHOR "(3d-gussner,1106V1)" // Who made the changes.
// SERIAL_PORT selects which serial port should be used for communication with the host.
// This allows the connection of wireless adapters (for instance) to non-default port pins.
@ -698,7 +709,7 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of
* Note may require analog pins to be defined for different motherboards
**********************************************************************/
// Uncomment below to enable
//#define FILAMENT_SENSOR
#define FILAMENT_SENSOR
#define FILAMENT_SENSOR_EXTRUDER_NUM 0 //The number of the extruder that has the filament sensor (0,1,2)
#define MEASUREMENT_DELAY_CM 14 //measurement delay in cm. This is the distance from filament sensor to middle of barrel

View File

@ -262,9 +262,18 @@ void Config_PrintSettings()
#endif
#endif
} else {
SERIAL_ECHOLNPGM("Filament settings: Disabled");
SERIAL_ECHOLNPGM("Filament volumetric settings: Disabled");
}
#endif
#ifdef FIL_RUNOUT_SENSOR
if (fil_runout_status == 1) {
SERIAL_ECHOLNPGM(MSG_FIL_RUNOUT_STATUS_VCC);
} else
if (if_runout_status == 2) {
SERIAL_ECHOLNPGM(MSG_FIL_RUNOUT_STATUS_GND);
} else
SERIAL_ECHOLNPGM(MSG_FIL_RUNOUT_STATUS_OFF);
#endif
}
#endif

View File

@ -294,6 +294,11 @@ extern int bowden_length[4];
extern bool is_usb_printing;
extern bool homing_flag;
extern bool temp_cal_active;
// FILAMENT_RUNOUT_SENSOR
extern uint8_t fil_runout_status;
extern bool FIL_RUNOUT_INVERTING;
extern bool ENDSTOPPULLUP_FIL_RUNOUT;
// end FILAMENT_RUNOUT_SENSOR
extern bool loading_flag;
extern unsigned int usb_printing_counter;

View File

@ -257,6 +257,13 @@ bool homing_flag = false;
bool temp_cal_active = false;
// FILAMENT_RUNOUT_SENSOR
bool FIL_RUNOUT_INVERTING = false;
uint8_t fil_runout_status = 0;
bool fil_funout_inv = false;
bool ENDSTOPPULLUP_FIL_RUNOUT = false;
// end FILAMENT_RUNOUT_SENSOR
unsigned long kicktime = millis()+100000;
unsigned int usb_printing_counter;
@ -1270,6 +1277,13 @@ void setup()
}
#endif //DEBUG_DISABLE_STARTMSGS
// FILAMENT_RUNOUT_SENSOR
#ifdef FILAMENT_RUNOUT_SENSOR
fil_runout_status = eeprom_read_byte((uint8_t*)EEPROM_FIL_RUNOUT_STATUS);
#endif
// end FILAMENT_RUNOUT_SENSOR
lcd_update_enable(true);
// Store the currently running firmware into an eeprom,
@ -2307,8 +2321,13 @@ bool gcode_M45(bool onlyZ) {
void process_commands()
{
#ifdef FILAMENT_RUNOUT_SUPPORT
SET_INPUT(FR_SENS);
#ifdef FILAMENT_RUNOUT_SENSOR
SET_INPUT(FIL_RUNOUT_PIN);
if (ENDSTOPPULLUP_FIL_RUNOUT) {
pinMode(FIL_RUNOUT_PIN, INPUT_PULLUP);
} else {
pinMode(FIL_RUNOUT_PIN, INPUT);
}
#endif
#ifdef CMDBUFFER_DEBUG
@ -2458,11 +2477,10 @@ void process_commands()
case 1: // G1
if(Stopped == false) {
#ifdef FILAMENT_RUNOUT_SUPPORT
if(READ(FR_SENS)){
#ifdef FILAMENT_RUNOUT_SENSOR
if(((READ(FIL_RUNOUT_PIN) ^ FIL_RUNOUT_INVERTING) == 0) && fil_runout_status) {
//enqueue_and_echo_commands_P(PSTR(FILAMENT_RUNOUT_SCRIPT));
enquecommand_front_P((PSTR(FILAMENT_RUNOUT_SCRIPT)));
/* feedmultiplyBckp=feedmultiply;
float target[4];
float lastpos[4];
@ -4748,7 +4766,27 @@ Sigma_Exit:
}
SERIAL_PROTOCOLLN("");
#endif
break;
// FILAMENT_RUNOUT_SENSOR
// #if fil_runout_status && defined(FIL_RUNOUT_PIN) && FIL_RUNOUT_PIN > -1
#if defined(FIL_RUNOUT_PIN) && FIL_RUNOUT_PIN > -1
if (fil_runout_status == 1) {
SERIAL_PROTOCOLRPGM(MSG_FIL_RUNOUT_STATUS_VCC);
}
else if (fil_runout_status == 2) {
SERIAL_PROTOCOLRPGM(MSG_FIL_RUNOUT_STATUS_GND);
}
if (fil_runout_status > 0) {
if(READ(FIL_RUNOUT_PIN)^FIL_RUNOUT_INVERTING){
SERIAL_PROTOCOLRPGM(MSG_ENDSTOP_HIT);
}else{
SERIAL_PROTOCOLRPGM(MSG_ENDSTOP_OPEN);
}
SERIAL_PROTOCOLLN("");
}
#endif
// end FILAMENT_RUNOUT_SENSOR
break;
//TODO: update for all axis, use for loop
#ifdef BLINKM
case 150: // M150

View File

@ -1183,6 +1183,21 @@ const char * const MSG_FIL_ADJUSTING_LANG_TABLE[LANG_NUM] PROGMEM = {
MSG_FIL_ADJUSTING_DE
};
const char MSG_FIL_RUNOUT_STATUS_GND_EN[] PROGMEM = "Fil.RS [S to GND]";
const char * const MSG_FIL_RUNOUT_STATUS_GND_LANG_TABLE[1] PROGMEM = {
MSG_FIL_RUNOUT_STATUS_GND_EN
};
const char MSG_FIL_RUNOUT_STATUS_OFF_EN[] PROGMEM = "Fil.RS [OFF]";
const char * const MSG_FIL_RUNOUT_STATUS_OFF_LANG_TABLE[1] PROGMEM = {
MSG_FIL_RUNOUT_STATUS_OFF_EN
};
const char MSG_FIL_RUNOUT_STATUS_VCC_EN[] PROGMEM = "Fil.RS [S to VCC]";
const char * const MSG_FIL_RUNOUT_STATUS_VCC_LANG_TABLE[1] PROGMEM = {
MSG_FIL_RUNOUT_STATUS_VCC_EN
};
const char MSG_FIND_BED_OFFSET_AND_SKEW_ITERATION_EN[] PROGMEM = "Iteration ";
const char MSG_FIND_BED_OFFSET_AND_SKEW_ITERATION_CZ[] PROGMEM = "Iterace ";
const char MSG_FIND_BED_OFFSET_AND_SKEW_ITERATION_IT[] PROGMEM = "Reiterazione ";

View File

@ -230,6 +230,12 @@ extern const char* const MSG_FILE_SAVED_LANG_TABLE[1];
#define MSG_FILE_SAVED LANG_TABLE_SELECT_EXPLICIT(MSG_FILE_SAVED_LANG_TABLE, 0)
extern const char* const MSG_FIL_ADJUSTING_LANG_TABLE[LANG_NUM];
#define MSG_FIL_ADJUSTING LANG_TABLE_SELECT(MSG_FIL_ADJUSTING_LANG_TABLE)
extern const char* const MSG_FIL_RUNOUT_STATUS_GND_LANG_TABLE[1];
#define MSG_FIL_RUNOUT_STATUS_GND LANG_TABLE_SELECT_EXPLICIT(MSG_FIL_RUNOUT_STATUS_GND_LANG_TABLE, 0)
extern const char* const MSG_FIL_RUNOUT_STATUS_OFF_LANG_TABLE[1];
#define MSG_FIL_RUNOUT_STATUS_OFF LANG_TABLE_SELECT_EXPLICIT(MSG_FIL_RUNOUT_STATUS_OFF_LANG_TABLE, 0)
extern const char* const MSG_FIL_RUNOUT_STATUS_VCC_LANG_TABLE[1];
#define MSG_FIL_RUNOUT_STATUS_VCC LANG_TABLE_SELECT_EXPLICIT(MSG_FIL_RUNOUT_STATUS_VCC_LANG_TABLE, 0)
extern const char* const MSG_FIND_BED_OFFSET_AND_SKEW_ITERATION_LANG_TABLE[LANG_NUM];
#define MSG_FIND_BED_OFFSET_AND_SKEW_ITERATION LANG_TABLE_SELECT(MSG_FIND_BED_OFFSET_AND_SKEW_ITERATION_LANG_TABLE)
extern const char* const MSG_FIND_BED_OFFSET_AND_SKEW_LINE1_LANG_TABLE[LANG_NUM];

View File

@ -234,7 +234,7 @@
#define(length=20,lines=8) MSG_BED_SKEW_OFFSET_DETECTION_WARNING_FRONT_RIGHT_FAR "XYZ calibration compromised. Right front calibration point not reachable."
#define(length=20,lines=8) MSG_BED_SKEW_OFFSET_DETECTION_WARNING_FRONT_BOTH_FAR "XYZ calibration compromised. Front calibration points not reachable."
#define(length=20,lines=4) MSG_BED_LEVELING_FAILED_POINT_LOW "Bed leveling failed. Sensor didnt trigger. Debris on nozzle? Waiting for reset."
#define(length=20,lines=5) MSG_BED_LEVELING_FAILED_POINT_LOW "Bed leveling failed. Sensor didnt trigger. Debris on nozzle? Waiting for reset."
#define(length=20,lines=4) MSG_BED_LEVELING_FAILED_POINT_HIGH "Bed leveling failed. Sensor triggered too high. Waiting for reset."
#define(length=20,lines=4) MSG_BED_LEVELING_FAILED_PROBE_DISCONNECTED "Bed leveling failed. Sensor disconnected or cable broken. Waiting for reset."
@ -263,7 +263,7 @@
#define(length=20, lines=3) MSG_WAITING_TEMP "Waiting for nozzle and bed cooling"
#define(length=20, lines=2) MSG_FILAMENT_CLEAN "Is color clear?"
#define(lenght=18, lines=1) MSG_UNLOADING_FILAMENT "Unloading filament"
#define(length=20, lines=8) MSG_PAPER "Place a sheet of paper under the nozzle during the calibration of first 4 points. If the nozzle catches the paper, power off the printer immediately."
#define(length=20, lines=10) MSG_PAPER "Place a sheet of paper under the nozzle during the calibration of first 4 points. If the nozzle catches the paper, power off the printer immediately."
#define MSG_BED_CORRECTION_MENU "Bed level correct"
#define(length=14,lines=1) MSG_BED_CORRECTION_LEFT "Left side [um]"
@ -329,7 +329,7 @@
#define(length=20, lines=4) MSG_WIZARD_WILL_PREHEAT "Now I will preheat nozzle for PLA."
#define(length=20, lines=3) MSG_WIZARD_HEATING "Preheating nozzle. Please wait."
#define(lenght=20, lines=8) MSG_WIZARD_V2_CAL "Now I will calibrate distance between tip of the nozzle and heatbed surface."
#define(lenght=20, lines=12) MSG_WIZARD_V2_CAL_2 "I will start to print line and you will gradually lower the nozzle by rotating the knob, until you reach optimal height. Check the pictures in our handbook in chapter Calibration."
#define(lenght=20, lines=13) MSG_WIZARD_V2_CAL_2 "I will start to print line and you will gradually lower the nozzle by rotating the knob, until you reach optimal height. Check the pictures in our handbook in chapter Calibration."
#define(lenght=17, lines=1) MSG_V2_CALIBRATION "First layer cal."
#define(lenght=20, lines=8) MSG_WIZARD_DONE "All is done. Happy printing!"
#define(lenght=20, lines=8) MSG_WIZARD_LOAD_FILAMENT "Please insert PLA filament to the extruder, then press knob to load it."
@ -341,3 +341,6 @@
#define(lenght=20, lines=2) MSG_PLA_FILAMENT_LOADED "Is PLA filament loaded?"
#define(lenght=20, lines=4) MSG_PLEASE_LOAD_PLA "Please load PLA filament first."
#define(length=20, lines=8) MSG_FILE_CNT "Some files will not be sorted. Max. No. of files in 1 folder for sorting is 100."
#define(length=20) MSG_FIL_RUNOUT_STATUS_OFF "Fil.RS [OFF]"
#define(length=20) MSG_FIL_RUNOUT_STATUS_VCC "Fil.RS [S to VCC]"
#define(length=20) MSG_FIL_RUNOUT_STATUS_GND "Fil.RS [S to GND]"

View File

@ -18,9 +18,11 @@
#error Oops! Make sure you have 'Arduino Mega 2560' selected from the 'Tools -> Boards' menu.
#endif
#define FR_SENS 21
// FILAMENT_RUNOUT_SUPPORT
#ifdef FILAMENT_RUNOUT_SUPPORT
#define FIL_RUNOUT_PIN 24
#endif
// end FILAMENT_RUNOUT_SUPPORT
#define X_STEP_PIN 37
#define X_DIR_PIN 48
@ -223,7 +225,11 @@
#error Oops! Make sure you have 'Arduino Mega 2560' selected from the 'Tools -> Boards' menu.
#endif
#define FR_SENS 21
// FILAMENT_RUNOUT_SUPPORT
#ifdef FILAMENT_RUNOUT_SUPPORT
#define FIL_RUNOUT_PIN 24
#endif
// end FILAMENT_RUNOUT_SUPPORT
#ifdef SNMM

View File

@ -96,6 +96,11 @@ int8_t SDscrool = 0;
int8_t SilentModeMenu = 0;
// FILAMENT_RUNOUT_SENSOR
/*#ifdef FILAMENT_RUNOUT_SENSOR
static void lcd_fil_runout_status_set();
#endif*/
// end FILAMENT_RUNOUT_SENSOR
#ifdef SNMM
uint8_t snmm_extruder = 0;
#endif
@ -1479,6 +1484,8 @@ static void lcd_support_menu()
MENU_ITEM(back, PSTR("------------"), lcd_main_menu);
MENU_ITEM(back, MSG_DATE, lcd_main_menu);
MENU_ITEM(back, PSTR(__DATE__), lcd_main_menu);
MENU_ITEM(back, PSTR(__TIME__), lcd_main_menu);
MENU_ITEM(back, PSTR(STRING_CONFIG_H_AUTHOR), lcd_main_menu);
// Show the FlashAir IP address, if the card is available.
if (menuData.supportMenu.is_flash_air) {
@ -2645,13 +2652,19 @@ void lcd_bed_calibration_show_result(BedSkewOffsetDetectionResultType result, ui
static void lcd_show_end_stops() {
lcd.setCursor(0, 0);
lcd_printPGM((PSTR("End stops diag")));
lcd_printPGM((PSTR("End stops/sens diag")));
lcd.setCursor(0, 1);
lcd_printPGM(((READ(X_MIN_PIN) ^ X_MIN_ENDSTOP_INVERTING) == 1) ? (PSTR("X1")) : (PSTR("X0")));
lcd_printPGM(((READ(X_MIN_PIN) ^ X_MIN_ENDSTOP_INVERTING) == 1) ? (PSTR("X:1")) : (PSTR("X:0")));
lcd.setCursor(0, 2);
lcd_printPGM(((READ(Y_MIN_PIN) ^ Y_MIN_ENDSTOP_INVERTING) == 1) ? (PSTR("Y1")) : (PSTR("Y0")));
lcd_printPGM(((READ(Y_MIN_PIN) ^ Y_MIN_ENDSTOP_INVERTING) == 1) ? (PSTR("Y:1")) : (PSTR("Y:0")));
lcd.setCursor(0, 3);
lcd_printPGM(((READ(Z_MIN_PIN) ^ Z_MIN_ENDSTOP_INVERTING) == 1) ? (PSTR("Z1")) : (PSTR("Z0")));
lcd_printPGM(((READ(Z_MIN_PIN) ^ Z_MIN_ENDSTOP_INVERTING) == 1) ? (PSTR("Z:1")) : (PSTR("Z:0")));
// FILAMENT_RUNOUT_SENSOR
if (fil_runout_status > 0) {
lcd.setCursor(4, 1);
lcd_printPGM(((READ(FIL_RUNOUT_PIN) ^ FIL_RUNOUT_INVERTING) == 1) ? (PSTR("FRS:1")) : (PSTR("FRS:0")));
}
// end FILAMENT_RUNOUT_SENSOR
}
static void menu_show_end_stops() {
@ -3460,6 +3473,113 @@ void lcd_wizard(int state) {
lcd_return_to_status();
lcd_update(2);
}
// FILAMENT_RUNOUT_SENSOR
/*void lcd_fil_runout_settings_menu()
{
START_MENU();
MENU_ITEM(back, MSG_SETTINGS, lcd_settings_menu);
if (fil_runout_active == false) {
MENU_ITEM(submenu, MSG_FIL_RUNOUT_ACTIVE_OFF, lcd_fil_runout_active_set);
} else {
MENU_ITEM(submenu, MSG_FIL_RUNOUT_ACTIVE_ON, lcd_fil_runout_active_set);
if (FIL_RUNOUT_INVERTING == false) {
MENU_ITEM(function, MSG_FIL_RUNOUT_INVERTING_OFF, lcd_fil_runout_inverting_set);
} else {
MENU_ITEM(function, MSG_FIL_RUNOUT_INVERTING_ON, lcd_fil_runout_inverting_set);
}
if (ENDSTOPPULLUP_FIL_RUNOUT == false ) {
MENU_ITEM(function, MSG_ENDSTOPPULLUP_FIL_RUNOUT_OFF, lcd_endstoppullup_fil_runout_set);
} else {
MENU_ITEM(function, MSG_ENDSTOPPULLUP_FIL_RUNOUT_ON, lcd_endstoppullup_fil_runout_set);
}
}
END_MENU();
}*/
static void lcd_fil_runout_status_set() {
int8_t fil_runout_status = 0;
switch (fil_runout_status) {
case 0:
fil_runout_status = 1;
FIL_RUNOUT_INVERTING = 1;
ENDSTOPPULLUP_FIL_RUNOUT = 1;
break;
case 1:
fil_runout_status = 2;
FIL_RUNOUT_INVERTING = 0;
ENDSTOPPULLUP_FIL_RUNOUT = 0;
break;
case 2:
fil_runout_status = 0;
FIL_RUNOUT_INVERTING = 1;
ENDSTOPPULLUP_FIL_RUNOUT = 1;
break;
default: fil_runout_status = 0; break;
}
eeprom_update_byte((unsigned char *)EEPROM_FIL_RUNOUT_STATUS, fil_runout_status);
/* if (fil_runout_status == 1) {
FIL_RUNOUT_INVERTING = 0;
ENDSTOPPULLUP_FIL_RUNOUT = 1;
else
FIL_RUNOUT_INVERTING = 1;
ENDSTOPPULLUP_FIL_RUNOUT = 0;
}*/
digipot_init();
lcd_goto_menu(lcd_settings_menu, 9);
}
/*fil_runout_active = !fil_runout_active;
eeprom_update_byte((unsigned char *)EEPROM_FIL_RUNOUT_STATUS, fil_runout_status);
digipot_init();
lcd_goto_menu(lcd_fil_runout_settings_menu, 1);
}*/
static void lcd_fil_runout_status_tune() {
switch (fil_runout_status) {
case 0:
fil_runout_status = 1;
FIL_RUNOUT_INVERTING = 1;
ENDSTOPPULLUP_FIL_RUNOUT = 1;
break;
case 1:
fil_runout_status = 2;
FIL_RUNOUT_INVERTING = 0;
ENDSTOPPULLUP_FIL_RUNOUT = 0;
break;
case 2:
fil_runout_status = 0;
FIL_RUNOUT_INVERTING = 1;
ENDSTOPPULLUP_FIL_RUNOUT = 1;
break;
default: fil_runout_status = 0; break;
}
eeprom_update_byte((unsigned char *)EEPROM_FIL_RUNOUT_STATUS, fil_runout_status);
digipot_init();
lcd_goto_menu(lcd_tune_menu, 9);
}
//void lcd_fil_runout_status_tune() {
//fil_runout_status = !fil_runout_status;
//eeprom_update_byte((unsigned char *)EEPROM_FIL_RUNOUT_STATUS, fil_runout_status);
//digipot_init();
//lcd_goto_menu(lcd_tune_menu, 9);
//}
//void lcd_fil_runout_inverting_set() {
//FIL_RUNOUT_INVERTING = !FIL_RUNOUT_INVERTING;
//eeprom_update_byte((unsigned char *)EEPROM_FIL_RUNOUT_INVERTING, FIL_RUNOUT_INVERTING);
//digipot_init();
//lcd_goto_menu(lcd_fil_runout_settings_menu, 2);
//}
//void lcd_endstoppullup_fil_runout_set() {
//ENDSTOPPULLUP_FIL_RUNOUT = !ENDSTOPPULLUP_FIL_RUNOUT;
//eeprom_update_byte((unsigned char *)EEPROM_ENDSTOPPULLUP_FIL_RUNOUT, ENDSTOPPULLUP_FIL_RUNOUT);
//digipot_init();
//lcd_goto_menu(lcd_fil_runout_settings_menu, 3);
//}
// end FILAMENT_RUNOUT_SENSOR
static void lcd_settings_menu()
{
@ -3515,8 +3635,17 @@ static void lcd_settings_menu()
MENU_ITEM(submenu, PSTR("Farm number"), lcd_farm_no);
MENU_ITEM(function, PSTR("Disable farm mode"), lcd_disable_farm_mode);
}
END_MENU();
// FILAMENT_RUNOUT_SENSOR
#ifdef FIL_RUNOUT_PIN
switch (fil_runout_status) {
case 0: MENU_ITEM(function, MSG_FIL_RUNOUT_STATUS_OFF, lcd_fil_runout_status_set); break;
case 1: MENU_ITEM(function, MSG_FIL_RUNOUT_STATUS_VCC, lcd_fil_runout_status_set); break;
case 2: MENU_ITEM(function, MSG_FIL_RUNOUT_STATUS_GND, lcd_fil_runout_status_set); break;
default: MENU_ITEM(function, MSG_FIL_RUNOUT_STATUS_OFF, lcd_fil_runout_status_set); break;
}
#endif
// end FILAMENT_RUNOUT_SENSOR
END_MENU();
}
static void lcd_calibration_menu()
@ -4807,6 +4936,20 @@ static void lcd_tune_menu()
default: MENU_ITEM(function, MSG_SILENT_MODE_OFF, lcd_silent_mode_set_tune); break;
}
}
// FILAMENT_RUNOUT_SENSOR
#ifdef FILAMENT_RUNOUT_SUPPORT //9
if (fil_runout_status > 0) {
switch (fil_runout_status) {
case 0: MENU_ITEM(function, MSG_FIL_RUNOUT_STATUS_OFF, lcd_fil_runout_status_tune); break;
case 1: MENU_ITEM(function, MSG_FIL_RUNOUT_STATUS_VCC, lcd_fil_runout_status_tune); break;
case 2: MENU_ITEM(function, MSG_FIL_RUNOUT_STATUS_GND, lcd_fil_runout_status_tune); break;
default: MENU_ITEM(function, MSG_FIL_RUNOUT_STATUS_OFF, lcd_fil_runout_status_tune); break;
}
}
#endif
// end FILAMENT_RUNOUT_SENSOR
END_MENU();
}

View File

@ -173,12 +173,12 @@ ADDITIONAL FEATURES SETTINGS
*------------------------------------*/
// Define Prusa filament runout sensor
//#define FILAMENT_RUNOUT_SUPPORT
#define FILAMENT_RUNOUT_SUPPORT
#ifdef FILAMENT_RUNOUT_SUPPORT
#define FILAMENT_RUNOUT_SENSOR 1
#define FILAMENT_RUNOUT_SCRIPT "M600"
#endif
// end Define Prusa filament runout sensor
// temperature runaway
#define TEMP_RUNAWAY_BED_HYSTERESIS 5

View File

@ -173,7 +173,9 @@ ADDITIONAL FEATURES SETTINGS
*------------------------------------*/
// Define Prusa filament runout sensor
//#define FILAMENT_RUNOUT_SUPPORT
#define FILAMENT_RUNOUT_SUPPORT
// end Define Prusa filament runout sensor
#ifdef FILAMENT_RUNOUT_SUPPORT
#define FILAMENT_RUNOUT_SENSOR 1

View File

@ -168,7 +168,9 @@ ADDITIONAL FEATURES SETTINGS
*------------------------------------*/
// Define Prusa filament runout sensor
//#define FILAMENT_RUNOUT_SUPPORT
#define FILAMENT_RUNOUT_SUPPORT
// end Define Prusa filament runout sensor
#ifdef FILAMENT_RUNOUT_SUPPORT
#define FILAMENT_RUNOUT_SENSOR 1

View File

@ -170,12 +170,12 @@ ADDITIONAL FEATURES SETTINGS
*------------------------------------*/
// Define Prusa filament runout sensor
//#define FILAMENT_RUNOUT_SUPPORT
#define FILAMENT_RUNOUT_SUPPORT
#ifdef FILAMENT_RUNOUT_SUPPORT
#define FILAMENT_RUNOUT_SENSOR 1
#define FILAMENT_RUNOUT_SCRIPT "M600"
#endif
// end Define Prusa filament runout sensor
// temperature runaway
#define TEMP_RUNAWAY_BED_HYSTERESIS 5

View File

@ -168,12 +168,12 @@ ADDITIONAL FEATURES SETTINGS
*------------------------------------*/
// Define Prusa filament runout sensor
//#define FILAMENT_RUNOUT_SUPPORT
#define FILAMENT_RUNOUT_SUPPORT
#ifdef FILAMENT_RUNOUT_SUPPORT
#define FILAMENT_RUNOUT_SENSOR 1
#define FILAMENT_RUNOUT_SCRIPT "M600"
#endif
// end Define Prusa filament runout sensor
// temperature runaway
#define TEMP_RUNAWAY_BED_HYSTERESIS 5

View File

@ -170,12 +170,12 @@ ADDITIONAL FEATURES SETTINGS
*------------------------------------*/
// Define Prusa filament runout sensor
//#define FILAMENT_RUNOUT_SUPPORT
#define FILAMENT_RUNOUT_SUPPORT
#ifdef FILAMENT_RUNOUT_SUPPORT
#define FILAMENT_RUNOUT_SENSOR 1
#define FILAMENT_RUNOUT_SCRIPT "M600"
#endif
// end Define Prusa filament runout sensor
// temperature runaway
#define TEMP_RUNAWAY_BED_HYSTERESIS 5