Hard limits, homing direction, pull-off limits after homing, status reports in mm or inches, system alarm, and more.
- Thank you statement added for Alden Hart of Synthetos. - Hard limits option added, which also works with homing by pulling off the switches to help prevent unintended triggering. Hard limits use a interrupt to sense a falling edge pin change and immediately go into alarm mode, which stops everything and forces the user to issue a reset (Ctrl-x) or reboot. - Auto cycle start now a configuration option. - Alarm mode: A new method to kill all Grbl processes in the event of something catastrophic or potentially catastropic. Just works with hard limits for now, but will be expanded to include g-code errors (most likely) and other events. - Updated status reports to be configurable in inches or mm mode. Much more to do here, but this is the first step. - New settings: auto cycle start, hard limit enable, homing direction mask (which works the same as the stepper mask), homing pulloff distance (or distance traveled from homed machine zero to prevent accidental limit trip). - Minor memory liberation and calculation speed ups.
This commit is contained in:
11
settings.h
11
settings.h
@ -29,12 +29,13 @@
|
||||
|
||||
// Version of the EEPROM data. Will be used to migrate existing data from older versions of Grbl
|
||||
// when firmware is upgraded. Always stored in byte 0 of eeprom
|
||||
#define SETTINGS_VERSION 53
|
||||
#define SETTINGS_VERSION 55
|
||||
|
||||
// Define bit flag masks in settings.flag.
|
||||
#define FLAG_BIT_HOMING_ENABLE bit(0)
|
||||
//#define FLAG_BIT_AUTO_START bit(1)
|
||||
//#define FLAG_BIT_INCHES_MODE bit(2)
|
||||
#define BITFLAG_REPORT_INCHES bit(0)
|
||||
#define BITFLAG_AUTO_START bit(1)
|
||||
#define BITFLAG_HARD_LIMIT_ENABLE bit(2)
|
||||
#define BITFLAG_HOMING_ENABLE bit(3)
|
||||
|
||||
// Current global settings (persisted in EEPROM from byte 1 onwards)
|
||||
typedef struct {
|
||||
@ -48,9 +49,11 @@ typedef struct {
|
||||
float acceleration;
|
||||
float junction_deviation;
|
||||
uint8_t flags; // Contains default toggles
|
||||
uint8_t homing_dir_mask;
|
||||
float homing_feed_rate;
|
||||
float homing_seek_rate;
|
||||
uint16_t homing_debounce_delay;
|
||||
float homing_pulloff;
|
||||
uint8_t stepper_idle_lock_time;
|
||||
uint8_t decimal_places;
|
||||
} settings_t;
|
||||
|
Reference in New Issue
Block a user