Mandate all probe cycles ignore feed overrides.
- For repeatability reasons, all G38.x probe cycles ignore feed rate overrides and move at their programmed speed. - The mandate can be removed with a new config.h option. - Updated the documentation to reflect the change.
This commit is contained in:
		| @@ -7,6 +7,7 @@ | ||||
| "Z","Homing force origin","Enabled" | ||||
| "H","Homing single axis commands","Enabled" | ||||
| "L","Two limit switches on axis","Enabled" | ||||
| "A","Allow feed rate overrides in probe cycles","Enabled" | ||||
| "R","Classic compatibility mode","Enabled" | ||||
| "*","Restore all EEPROM command","Disabled" | ||||
| "$","Restore EEPROM `$` settings command","Disabled" | ||||
|   | ||||
| 
 | 
| @@ -1,3 +1,14 @@ | ||||
| ---------------- | ||||
| Date: 2016-10-25 | ||||
| Author: chamnit | ||||
| Subject: Resolved parking accessory handling issue. | ||||
|  | ||||
| - Yikes. Totally borked the last parking “fix”. Testing shows that all | ||||
| accessories are now properly handled when retracting and restoring. It | ||||
| was caused by not accounting for the planner re-factoring correctly in | ||||
| the parking code. | ||||
|  | ||||
|  | ||||
| ---------------- | ||||
| Date: 2016-10-24 | ||||
| Author: Sonny Jeon | ||||
|   | ||||
| @@ -311,6 +311,7 @@ Feedback messages provide non-critical information on what Grbl is doing, what i | ||||
| | **`Z`** | Homing force origin enabled | | ||||
| | **`H`** | Homing single axis enabled | | ||||
| | **`L`** | Two limit switches on axis enabled | | ||||
| | **`A`** | Allow feed rate overrides in probe cycles | | ||||
| | **`R`** | Classic compatiblity mode enabled | | ||||
| | **`*`** | Restore all EEPROM disabled | | ||||
| | **`$`** | Restore EEPROM `$` settings disabled | | ||||
|   | ||||
| @@ -540,6 +540,13 @@ | ||||
| // that any of these commands are used need continuous motions through them. | ||||
| #define FORCE_BUFFER_SYNC_DURING_WCO_CHANGE // Default enabled. Comment to disable. | ||||
|  | ||||
| // By default, Grbl disables feed rate overrides for all G38.x probe cycle commands. Although this | ||||
| // may be different than some pro-class machine control, it's arguable that it should be this way.  | ||||
| // Most probe sensors produce different levels of error that is dependent on rate of speed. By  | ||||
| // keeping probing cycles to their programmed feed rates, the probe sensor should be a lot more | ||||
| // repeatable. If needed, you can disable this behavior by uncommenting the define below. | ||||
| // #define ALLOW_FEED_OVERRIDE_DURING_PROBE_CYCLES // Default disabled. Uncomment to enable. | ||||
|  | ||||
| // Enables and configures parking motion methods upon a safety door state. Primarily for OEMs | ||||
| // that desire this feature for their integrated machines. At the moment, Grbl assumes that | ||||
| // the parking motion only involves one axis, although the parking implementation was written | ||||
|   | ||||
| @@ -1040,6 +1040,9 @@ uint8_t gc_execute_line(char *line) | ||||
|       } else { | ||||
|         // NOTE: gc_block.values.xyz is returned from mc_probe_cycle with the updated position value. So | ||||
|         // upon a successful probing cycle, the machine position and the returned value should be the same. | ||||
|         #ifndef ALLOW_FEED_OVERRIDE_DURING_PROBE_CYCLES | ||||
|           pl_data->condition |= PL_COND_FLAG_NO_FEED_OVERRIDE; | ||||
|         #endif | ||||
|         uint8_t is_probe_away = false; | ||||
|         uint8_t is_no_error = false; | ||||
|         if ((gc_state.modal.motion == MOTION_MODE_PROBE_AWAY) || (gc_state.modal.motion == MOTION_MODE_PROBE_AWAY_NO_ERROR)) { is_probe_away = true; } | ||||
|   | ||||
| @@ -569,6 +569,9 @@ void report_build_info(char *line) | ||||
|     #ifdef LIMITS_TWO_SWITCHES_ON_AXES | ||||
|       serial_write('L'); | ||||
|     #endif | ||||
|     #ifdef ALLOW_FEED_OVERRIDE_DURING_PROBE_CYCLES | ||||
|       serial_write('A'); | ||||
|     #endif | ||||
|     #ifdef USE_CLASSIC_GRBL_INTERFACE | ||||
|       serial_write('R'); | ||||
|     #endif | ||||
|   | ||||
		Reference in New Issue
	
	Block a user