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
|
#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"
|
* 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
|
* string to enable synchronization with DLP projector exposure. This change will allow to use
|
||||||
* [[WaitForDoneMessage]] instead of populating your gcode with M400 commands
|
* [[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
|
#endif // CONFIGURATION_ADV_H
|
||||||
|
@ -325,6 +325,15 @@ void GcodeSuite::G28(const bool always_home_all) {
|
|||||||
lcd_refresh();
|
lcd_refresh();
|
||||||
|
|
||||||
report_current_position();
|
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 ENABLED(DEBUG_LEVELING_FEATURE)
|
||||||
if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("<<< G28");
|
if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("<<< G28");
|
||||||
|
@ -78,8 +78,12 @@ void GcodeSuite::G0_G1(
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if ENABLED(NANODLP_Z_SYNC)
|
#if ENABLED(NANODLP_Z_SYNC)
|
||||||
// If G0/G1 command include Z-axis, wait for move and output sync text.
|
#if ENABLED(NANODLP_ALL_AXIS)
|
||||||
if (parser.seenval('Z')) {
|
#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();
|
stepper.synchronize();
|
||||||
SERIAL_ECHOLNPGM(MSG_Z_MOVE_COMP);
|
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
|
if (parser.seenval('S')) dwell_ms = parser.value_millis_from_seconds(); // seconds to wait
|
||||||
|
|
||||||
stepper.synchronize();
|
stepper.synchronize();
|
||||||
|
#if ENABLED(NANODLP_Z_SYNC)
|
||||||
|
SERIAL_ECHOLNPGM(MSG_Z_MOVE_COMP);
|
||||||
|
#endif
|
||||||
|
|
||||||
if (!lcd_hasstatus()) LCD_MESSAGEPGM(MSG_DWELL);
|
if (!lcd_hasstatus()) LCD_MESSAGEPGM(MSG_DWELL);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user