commit
cdcb4263e8
2
eeprom.h
2
eeprom.h
@ -2,7 +2,7 @@
|
|||||||
#define eeprom_h
|
#define eeprom_h
|
||||||
|
|
||||||
char eeprom_get_char(unsigned int addr);
|
char eeprom_get_char(unsigned int addr);
|
||||||
void eeprom_put_char(unsigned int addr, char new_value);
|
void eeprom_put_char( unsigned int addr, unsigned char new_value );
|
||||||
void memcpy_to_eeprom_with_checksum(unsigned int destination, char *source, unsigned int size);
|
void memcpy_to_eeprom_with_checksum(unsigned int destination, char *source, unsigned int size);
|
||||||
int memcpy_from_eeprom_with_checksum(char *destination, unsigned int source, unsigned int size);
|
int memcpy_from_eeprom_with_checksum(char *destination, unsigned int source, unsigned int size);
|
||||||
|
|
||||||
|
16
gcode.c
16
gcode.c
@ -328,17 +328,21 @@ uint8_t gc_execute_line(char *line)
|
|||||||
}
|
}
|
||||||
// Retreive G28/30 go-home position data (in machine coordinates) from EEPROM
|
// Retreive G28/30 go-home position data (in machine coordinates) from EEPROM
|
||||||
float coord_data[N_AXIS];
|
float coord_data[N_AXIS];
|
||||||
uint8_t home_select = SETTING_INDEX_G28;
|
if (non_modal_action == NON_MODAL_GO_HOME_1) {
|
||||||
if (non_modal_action == NON_MODAL_GO_HOME_1) { home_select = SETTING_INDEX_G30; }
|
if (!settings_read_coord_data(SETTING_INDEX_G30 ,coord_data)) { return(STATUS_SETTING_READ_FAIL); }
|
||||||
if (!settings_read_coord_data(home_select,coord_data)) { return(STATUS_SETTING_READ_FAIL); }
|
} else {
|
||||||
|
if (!settings_read_coord_data(SETTING_INDEX_G28 ,coord_data)) { return(STATUS_SETTING_READ_FAIL); }
|
||||||
|
}
|
||||||
mc_line(coord_data[X_AXIS], coord_data[Y_AXIS], coord_data[Z_AXIS], settings.default_seek_rate, false);
|
mc_line(coord_data[X_AXIS], coord_data[Y_AXIS], coord_data[Z_AXIS], settings.default_seek_rate, false);
|
||||||
memcpy(gc.position, coord_data, sizeof(coord_data)); // gc.position[] = coord_data[];
|
memcpy(gc.position, coord_data, sizeof(coord_data)); // gc.position[] = coord_data[];
|
||||||
axis_words = 0; // Axis words used. Lock out from motion modes by clearing flags.
|
axis_words = 0; // Axis words used. Lock out from motion modes by clearing flags.
|
||||||
break;
|
break;
|
||||||
case NON_MODAL_SET_HOME_0: case NON_MODAL_SET_HOME_1:
|
case NON_MODAL_SET_HOME_0: case NON_MODAL_SET_HOME_1:
|
||||||
home_select = SETTING_INDEX_G28;
|
if (non_modal_action == NON_MODAL_SET_HOME_1) {
|
||||||
if (non_modal_action == NON_MODAL_SET_HOME_1) { home_select = SETTING_INDEX_G30; }
|
settings_write_coord_data(SETTING_INDEX_G30,gc.position);
|
||||||
settings_write_coord_data(home_select,gc.position);
|
} else {
|
||||||
|
settings_write_coord_data(SETTING_INDEX_G28,gc.position);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case NON_MODAL_SET_COORDINATE_OFFSET:
|
case NON_MODAL_SET_COORDINATE_OFFSET:
|
||||||
if (!axis_words) { // No axis words
|
if (!axis_words) { // No axis words
|
||||||
|
Loading…
Reference in New Issue
Block a user