Implement NANODLP_Z_SYNC for 2.0.x

This commit is contained in:
Scott Lahteine 2017-11-24 00:28:06 -06:00
parent 4d517d169a
commit dc82babe8e
36 changed files with 349 additions and 0 deletions

View file

@ -1492,4 +1492,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1492,4 +1492,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1491,4 +1491,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1491,4 +1491,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1491,4 +1491,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1493,4 +1493,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1491,4 +1491,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1488,4 +1488,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1491,4 +1491,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1491,4 +1491,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1494,4 +1494,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1491,4 +1491,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1501,4 +1501,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1491,4 +1491,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1485,4 +1485,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1495,4 +1495,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1513,4 +1513,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1491,4 +1491,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1491,4 +1491,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1480,4 +1480,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1491,4 +1491,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1492,4 +1492,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1499,4 +1499,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1492,4 +1492,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1493,4 +1493,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1493,4 +1493,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1493,4 +1493,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1493,4 +1493,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1498,4 +1498,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1493,4 +1493,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1492,4 +1492,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1491,4 +1491,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1491,4 +1491,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -1492,4 +1492,14 @@
// tweaks made to the configuration are affecting the printer in real-time. // tweaks made to the configuration are affecting the printer in real-time.
#endif #endif
/**
* NanoDLP Synch 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
#endif // CONFIGURATION_ADV_H #endif // CONFIGURATION_ADV_H

View file

@ -145,6 +145,7 @@
#define MSG_BUSY_PROCESSING "busy: processing" #define MSG_BUSY_PROCESSING "busy: processing"
#define MSG_BUSY_PAUSED_FOR_USER "busy: paused for user" #define MSG_BUSY_PAUSED_FOR_USER "busy: paused for user"
#define MSG_BUSY_PAUSED_FOR_INPUT "busy: paused for input" #define MSG_BUSY_PAUSED_FOR_INPUT "busy: paused for input"
#define MSG_Z_MOVE_COMP "Z_move_comp"
#define MSG_RESEND "Resend: " #define MSG_RESEND "Resend: "
#define MSG_UNKNOWN_COMMAND "Unknown command: \"" #define MSG_UNKNOWN_COMMAND "Unknown command: \""
#define MSG_ACTIVE_EXTRUDER "Active Extruder: " #define MSG_ACTIVE_EXTRUDER "Active Extruder: "

View file

@ -72,5 +72,13 @@ void GcodeSuite::G0_G1(
#else #else
prepare_move_to_destination(); prepare_move_to_destination();
#endif #endif
#if ENABLED(NANODLP_Z_SYNC)
// If G0/G1 command include Z-axis, wait for move and output sync text.
if (parser.seenval('Z')) {
stepper.synchronize();
SERIAL_ECHOLNPGM(MSG_Z_MOVE_COMP);
}
#endif
} }
} }