Added restore settings defaults command.
- New restore setting defaults command. Only wipes ‘$$’ setting in EEPROM and reloads them based on the defaults used when Grbl was compiled. Used with a `$RST` command NOTE: `$RST` is intentionally not listed in the Grbl ‘$’ help message.
This commit is contained in:
@ -23,7 +23,7 @@
|
||||
|
||||
// Grbl versioning system
|
||||
#define GRBL_VERSION "0.9i"
|
||||
#define GRBL_VERSION_BUILD "20150529"
|
||||
#define GRBL_VERSION_BUILD "20150618"
|
||||
|
||||
// Define standard libraries used by Grbl.
|
||||
#include <avr/io.h>
|
||||
|
@ -138,6 +138,8 @@ void report_feedback_message(uint8_t message_code)
|
||||
printPgmString(PSTR("Check Door")); break;
|
||||
case MESSAGE_PROGRAM_END:
|
||||
printPgmString(PSTR("Pgm End")); break;
|
||||
case MESSAGE_RESTORE_DEFAULTS:
|
||||
printPgmString(PSTR("Restoring defaults")); break;
|
||||
}
|
||||
printPgmString(PSTR("]\r\n"));
|
||||
}
|
||||
|
@ -69,6 +69,7 @@
|
||||
#define MESSAGE_DISABLED 5
|
||||
#define MESSAGE_SAFETY_DOOR_AJAR 6
|
||||
#define MESSAGE_PROGRAM_END 7
|
||||
#define MESSAGE_RESTORE_DEFAULTS 8
|
||||
|
||||
// Prints system status messages.
|
||||
void report_status_message(uint8_t status_code);
|
||||
|
@ -101,7 +101,7 @@ void settings_init();
|
||||
// Helper functions to clear and restore EEPROM defaults
|
||||
void settings_restore_global_settings();
|
||||
void settings_clear_parameters();
|
||||
void settings_clear_startup_line();
|
||||
void settings_clear_startup_lines();
|
||||
void settings_clear_build_info();
|
||||
|
||||
// A helper method to set new settings from command line
|
||||
|
@ -200,7 +200,14 @@ uint8_t system_execute_line(char *line)
|
||||
} while (line[char_counter++] != 0);
|
||||
settings_store_build_info(line);
|
||||
}
|
||||
break;
|
||||
break;
|
||||
case 'R' : // Restore defaults [IDLE/ALARM]
|
||||
if (line[++char_counter] != 'S') { return(STATUS_INVALID_STATEMENT); }
|
||||
if (line[++char_counter] != 'T') { return(STATUS_INVALID_STATEMENT); }
|
||||
if (line[++char_counter] != 0) { return(STATUS_INVALID_STATEMENT); }
|
||||
report_feedback_message(MESSAGE_RESTORE_DEFAULTS);
|
||||
settings_restore_global_settings();
|
||||
break;
|
||||
case 'N' : // Startup lines. [IDLE/ALARM]
|
||||
if ( line[++char_counter] == 0 ) { // Print startup lines
|
||||
for (helper_var=0; helper_var < N_STARTUP_LINE; helper_var++) {
|
||||
|
Reference in New Issue
Block a user