mirror of
https://github.com/grblHAL/core.git
synced 2026-09-25 00:19:08 +08:00
Fix for crash when multiple G95 mode motions are commanded.
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
## grblHAL ##
|
||||
|
||||
Latest build date is 20250926, see the [changelog](changelog.md) for details.
|
||||
Latest build date is 20250928, see the [changelog](changelog.md) for details.
|
||||
|
||||
> [!NOTE]
|
||||
> A settings reset will be performed on an update of builds prior to 20241208. Backup and restore of settings is recommended.
|
||||
@@ -89,4 +89,4 @@ G/M-codes not supported by [legacy Grbl](https://github.com/gnea/grbl/wiki) are
|
||||
Some [plugins](https://github.com/grblHAL/plugins) implements additional M-codes.
|
||||
|
||||
---
|
||||
20250926
|
||||
20250928
|
||||
|
||||
@@ -1,5 +1,18 @@
|
||||
## grblHAL changelog
|
||||
|
||||
<a name="20250928">Build 20250928
|
||||
|
||||
Core:
|
||||
|
||||
* Fix for crash when multiple G95 mode motions are commanded.
|
||||
Ref. iMXRT1062 discussion [#100](https://github.com/grblHAL/iMXRT1062/discussions/100).
|
||||
|
||||
Drivers:
|
||||
|
||||
* ESP32: fix for MPG mode switch handling causing compilation error. Ref. Web Builder [discussion comment](https://github.com/grblHAL/core/discussions/645#discussioncomment-14529145).
|
||||
|
||||
---
|
||||
|
||||
<a name="20250927">Build 20250927
|
||||
|
||||
Core:
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
#else
|
||||
#define GRBL_VERSION "1.1f"
|
||||
#endif
|
||||
#define GRBL_BUILD 20250927
|
||||
#define GRBL_BUILD 20250928
|
||||
|
||||
#define GRBL_URL "https://github.com/grblHAL"
|
||||
|
||||
|
||||
@@ -414,7 +414,7 @@ ISR_CODE void ISR_FUNC(stepper_driver_interrupt_handler)(void)
|
||||
if(st.exec_block) {
|
||||
|
||||
#if SPINDLE_SYNC_ENABLE
|
||||
if(st.new_block && st.exec_segment->spindle_sync) {
|
||||
if(st.new_block && st.exec_segment->spindle_sync && hal.stepper.pulse_start != st_spindle_sync_out) {
|
||||
spindle_tracker.stepper_pulse_start = hal.stepper.pulse_start;
|
||||
hal.stepper.pulse_start = st_spindle_sync_out;
|
||||
}
|
||||
@@ -1225,7 +1225,7 @@ void st_prep_buffer (void)
|
||||
uint32_t cycles = (uint32_t)ceilf(cycles_per_min * inv_rate); // (cycles/step)
|
||||
|
||||
// Record end position of segment relative to block if spindle synchronized motion
|
||||
if((prep_segment->spindle_sync = pl_block->spindle.state.synchronized)) {
|
||||
if((prep_segment->spindle_sync = pl_block->spindle.state.synchronized && !pl_block->condition.units_per_rev)) {
|
||||
prep.target_position += dt * prep.target_feed;
|
||||
prep_segment->cruising = prep.ramp_type == Ramp_Cruise;
|
||||
prep_segment->target_position = prep.target_position; //st_prep_block->millimeters - pl_block->millimeters;
|
||||
|
||||
Reference in New Issue
Block a user