mirror of
https://github.com/gnea/grbl-Mega.git
synced 2026-09-26 05:13:58 +08:00
Fixed a very rare but critical bug when reducing override rates.
- See main branch commit log for details.
This commit is contained in:
@@ -1,3 +1,13 @@
|
||||
----------------
|
||||
Date: 2017-08-01
|
||||
Author: Sonny Jeon
|
||||
Subject: Fixed RAMPS control pin conflict
|
||||
|
||||
[fix] RAMPS soft-reset control pin interfered with Z-enable. Shifted
|
||||
all control pins by plus one on the analog pins. RAMPS defines these
|
||||
pins as belonging to the AUX 2 port, which is assumed to be unused.
|
||||
|
||||
|
||||
----------------
|
||||
Date: 2017-07-17
|
||||
Author: Sonny Jeon
|
||||
|
||||
+1
-1
@@ -23,7 +23,7 @@
|
||||
|
||||
// Grbl versioning system
|
||||
#define GRBL_VERSION "1.1f"
|
||||
#define GRBL_VERSION_BUILD "20170801"
|
||||
#define GRBL_VERSION_BUILD "20170802"
|
||||
|
||||
// Define standard libraries used by Grbl.
|
||||
#include <avr/io.h>
|
||||
|
||||
+3
-4
@@ -973,15 +973,14 @@ void st_prep_buffer()
|
||||
switch (prep.ramp_type) {
|
||||
case RAMP_DECEL_OVERRIDE:
|
||||
speed_var = pl_block->acceleration*time_var;
|
||||
mm_var = time_var*(prep.current_speed - 0.5*speed_var);
|
||||
mm_remaining -= mm_var;
|
||||
if ((mm_remaining < prep.accelerate_until) || (mm_var <= 0)) {
|
||||
if (prep.current_speed-prep.maximum_speed <= speed_var) {
|
||||
// Cruise or cruise-deceleration types only for deceleration override.
|
||||
mm_remaining = prep.accelerate_until; // NOTE: 0.0 at EOB
|
||||
mm_remaining = prep.accelerate_until;
|
||||
time_var = 2.0*(pl_block->millimeters-mm_remaining)/(prep.current_speed+prep.maximum_speed);
|
||||
prep.ramp_type = RAMP_CRUISE;
|
||||
prep.current_speed = prep.maximum_speed;
|
||||
} else { // Mid-deceleration override ramp.
|
||||
mm_remaining -= time_var*(prep.current_speed - 0.5*speed_var);
|
||||
prep.current_speed -= speed_var;
|
||||
}
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user