diff --git a/grbl/gcode.c b/grbl/gcode.c index a10886b..578b083 100644 --- a/grbl/gcode.c +++ b/grbl/gcode.c @@ -911,7 +911,7 @@ uint8_t gc_execute_line(char *line) } } #else - if (gc_state.modal.spindle != SPINDLE_DISABLE) { spindle_sync(gc_state.modal.spindle); } + if (gc_state.modal.spindle != SPINDLE_DISABLE) { spindle_sync(gc_state.modal.spindle, 0.0); } #endif gc_state.spindle_speed = gc_block.values.s; } @@ -925,11 +925,7 @@ uint8_t gc_execute_line(char *line) // [7. Spindle control ]: if (gc_state.modal.spindle != gc_block.modal.spindle) { // Update spindle control and apply spindle speed when enabling it in this block. - #ifdef VARIABLE_SPINDLE - spindle_sync(gc_block.modal.spindle, gc_state.spindle_speed); - #else - spindle_sync(gc_block.modal.spindle); - #endif + spindle_sync(gc_block.modal.spindle, gc_state.spindle_speed); gc_state.modal.spindle = gc_block.modal.spindle; } pl_data->condition |= gc_state.modal.spindle; // Set condition flag for planner use. diff --git a/grbl/protocol.c b/grbl/protocol.c index a14798a..69f0168 100644 --- a/grbl/protocol.c +++ b/grbl/protocol.c @@ -650,11 +650,7 @@ static void protocol_exec_rt_suspend() // When in laser mode, ignore spindle spin-up delay. Set to turn on laser when cycle starts. bit_true(sys.step_control, STEP_CONTROL_UPDATE_SPINDLE_PWM); } else { - #ifdef VARIABLE_SPINDLE - spindle_set_state((restore_condition & (PL_COND_FLAG_SPINDLE_CW | PL_COND_FLAG_SPINDLE_CCW)), restore_spindle_speed); - #else - spindle_set_state((restore_condition & (PL_COND_FLAG_SPINDLE_CW | PL_COND_FLAG_SPINDLE_CCW))); - #endif + spindle_set_state((restore_condition & (PL_COND_FLAG_SPINDLE_CW | PL_COND_FLAG_SPINDLE_CCW)), restore_spindle_speed); delay_sec(SAFETY_DOOR_SPINDLE_DELAY, DELAY_MODE_SYS_SUSPEND); } } @@ -712,11 +708,7 @@ static void protocol_exec_rt_suspend() // When in laser mode, ignore spindle spin-up delay. Set to turn on laser when cycle starts. bit_true(sys.step_control, STEP_CONTROL_UPDATE_SPINDLE_PWM); } else { - #ifdef VARIABLE_SPINDLE - spindle_set_state((restore_condition & (PL_COND_FLAG_SPINDLE_CW | PL_COND_FLAG_SPINDLE_CCW)), restore_spindle_speed); - #else - spindle_set_state((restore_condition & (PL_COND_FLAG_SPINDLE_CW | PL_COND_FLAG_SPINDLE_CCW))); - #endif + spindle_set_state((restore_condition & (PL_COND_FLAG_SPINDLE_CW | PL_COND_FLAG_SPINDLE_CCW)), restore_spindle_speed); delay_sec(SAFETY_DOOR_SPINDLE_DELAY, DELAY_MODE_SYS_SUSPEND); } } diff --git a/grbl/spindle_control.c b/grbl/spindle_control.c index 2c99ce0..7b939d8 100644 --- a/grbl/spindle_control.c +++ b/grbl/spindle_control.c @@ -170,7 +170,7 @@ void spindle_stop() #ifdef VARIABLE_SPINDLE void spindle_set_state(uint8_t state, float rpm) #else - void spindle_set_state(uint8_t state) + void _spindle_set_state(uint8_t state) #endif { if (sys.abort) { return; } // Block during abort. @@ -219,10 +219,10 @@ void spindle_stop() spindle_set_state(state,rpm); } #else - void spindle_sync(uint8_t state) + void _spindle_sync(uint8_t state) { if (sys.state == STATE_CHECK_MODE) { return; } protocol_buffer_synchronize(); // Empty planner buffer to ensure spindle is set when programmed. - spindle_set_state(state); + _spindle_set_state(state); } -#endif \ No newline at end of file +#endif diff --git a/grbl/spindle_control.h b/grbl/spindle_control.h index 565f08e..aaa6eeb 100644 --- a/grbl/spindle_control.h +++ b/grbl/spindle_control.h @@ -57,10 +57,12 @@ uint8_t spindle_get_state(); #else // Called by g-code parser when setting spindle state and requires a buffer sync. - void spindle_sync(uint8_t state); + #define spindle_sync(state, rpm) _spindle_sync(state) + void _spindle_sync(uint8_t state); // Sets spindle running state with direction and enable. - void spindle_set_state(uint8_t state); + #define spindle_set_state(state, rpm) _spindle_set_state(state) + void _spindle_set_state(uint8_t state); #endif