Skip to content

Commit

Permalink
Restrict coincident target updates to M3 constant laser only.
Browse files Browse the repository at this point in the history
- Restrict M3 forced updates when there is a motion block with a
coincident target. Force syncing of the spindle state can lead to some
pauses during a job that has coincident targets. That’s not
particularly desirable. This ensures M4 dynamic mode is not effected by
this force-sync.
  • Loading branch information
chamnit committed Feb 23, 2017
1 parent bdc853e commit e54444e
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 2 deletions.
11 changes: 11 additions & 0 deletions doc/log/commit_log_v1.1.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,14 @@
----------------
Date: 2017-02-23
Author: Sonny Jeon
Subject: Fixed issue with M3 laser state changes and coincident targets.

[fix] When in M3 constant laser power mode, a change from G0 to G1
would not set the laser on, if G1 was passed with a coincident target.
Motion controller now checks for a coincident target situation and will
force a spindle sync when detected.


----------------
Date: 2017-01-31
Author: Sonny Jeon
Expand Down
7 changes: 5 additions & 2 deletions grbl/motion_control.c
Original file line number Diff line number Diff line change
Expand Up @@ -67,8 +67,11 @@ void mc_line(float *target, plan_line_data_t *pl_data)
// Plan and queue motion into planner buffer
if (plan_buffer_line(target, pl_data) == PLAN_EMPTY_BLOCK) {
if (bit_istrue(settings.flags,BITFLAG_LASER_MODE)) {
// Correctly set laser state, if there is a coincident position passed. Forces a buffer sync.
spindle_sync((pl_data->condition & (PL_COND_FLAG_SPINDLE_CW|PL_COND_FLAG_SPINDLE_CCW)), pl_data->spindle_speed);
// Correctly set spindle state, if there is a coincident position passed. Forces a buffer
// sync while in M3 laser mode only.
if (pl_data->condition & PL_COND_FLAG_SPINDLE_CW) {
spindle_sync(PL_COND_FLAG_SPINDLE_CW, pl_data->spindle_speed);
}
}
}
}
Expand Down

0 comments on commit e54444e

Please sign in to comment.