V2 Extended NanoDLP_Z_Move_Sync to G4 & G28,Added all axis option.
This commit is contained in:
parent
2b7db90340
commit
5595098063
@ -1541,13 +1541,16 @@
|
||||
#endif
|
||||
|
||||
/**
|
||||
* NanoDLP Synch support
|
||||
* NanoDLP Sync support
|
||||
*
|
||||
* Add support for Synchronized Z moves when using with NanoDLP. G0/G1 axis moves will output "Z_move_comp"
|
||||
* string to enable synchronization with DLP projector exposure. This change will allow to use
|
||||
* [[WaitForDoneMessage]] instead of populating your gcode with M400 commands
|
||||
*
|
||||
*/
|
||||
//#define NANODLP_Z_SYNC
|
||||
//#define NANODLP_Z_SYNC
|
||||
#if ENABLED(NANODLP_Z_SYNC)
|
||||
//#define NANODLP_ALL_AXIS // Enables "Z_move_comp" output on any axis move.
|
||||
// Default behaviour is limited to Z axis only.
|
||||
#endif
|
||||
|
||||
#endif // CONFIGURATION_ADV_H
|
||||
|
@ -325,6 +325,15 @@ void GcodeSuite::G28(const bool always_home_all) {
|
||||
lcd_refresh();
|
||||
|
||||
report_current_position();
|
||||
#if ENABLED(NANODLP_Z_SYNC)
|
||||
#if ENABLED(NANODLP_ALL_AXIS)
|
||||
#define _HOME_SYNC true // For any axis, output sync text.
|
||||
#else
|
||||
#define _HOME_SYNC (home_all || homeZ) // Only for Z-axis
|
||||
#endif
|
||||
if (_HOME_SYNC)
|
||||
SERIAL_ECHOLNPGM(MSG_Z_MOVE_COMP);
|
||||
#endif
|
||||
|
||||
#if ENABLED(DEBUG_LEVELING_FEATURE)
|
||||
if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("<<< G28");
|
||||
|
@ -78,8 +78,12 @@ void GcodeSuite::G0_G1(
|
||||
#endif
|
||||
|
||||
#if ENABLED(NANODLP_Z_SYNC)
|
||||
// If G0/G1 command include Z-axis, wait for move and output sync text.
|
||||
if (parser.seenval('Z')) {
|
||||
#if ENABLED(NANODLP_ALL_AXIS)
|
||||
#define _MOVE_SYNC true // For any move wait and output sync message
|
||||
#else
|
||||
#define _MOVE_SYNC parser.seenval('Z') // Only for Z move
|
||||
#endif
|
||||
if (_MOVE_SYNC) {
|
||||
stepper.synchronize();
|
||||
SERIAL_ECHOLNPGM(MSG_Z_MOVE_COMP);
|
||||
}
|
||||
|
@ -34,6 +34,9 @@ void GcodeSuite::G4() {
|
||||
if (parser.seenval('S')) dwell_ms = parser.value_millis_from_seconds(); // seconds to wait
|
||||
|
||||
stepper.synchronize();
|
||||
#if ENABLED(NANODLP_Z_SYNC)
|
||||
SERIAL_ECHOLNPGM(MSG_Z_MOVE_COMP);
|
||||
#endif
|
||||
|
||||
if (!lcd_hasstatus()) LCD_MESSAGEPGM(MSG_DWELL);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user