Adding M118 command to send text to serial

Allows the user to send text to the serial console in order to
communicate with a host - sending debuging information or action
commands, for example.  Text must begin with '//' and this is added if
it is not already present at the beginning of the string.
This commit is contained in:
Ben Lye 2017-06-27 20:49:21 +01:00 committed by Scott Lahteine
parent ada836db29
commit 98d362c2da
2 changed files with 13 additions and 1 deletions

View file

@ -130,6 +130,7 @@
* M114 - Report current position.
* M115 - Report capabilities. (Extended capabilities requires EXTENDED_CAPABILITIES_REPORT)
* M117 - Display a message on the controller screen. (Requires an LCD)
* M118 - Display a message in the host console.
* M119 - Report endstops status.
* M120 - Enable endstops detection.
* M121 - Disable endstops detection.
@ -7991,6 +7992,14 @@ inline void gcode_M115() {
*/
inline void gcode_M117() { lcd_setstatus(parser.string_arg); }
/**
* M118: Display a message in the host console.
*/
inline void gcode_M118() {
SERIAL_ECHO_START();
SERIAL_ECHOLN(parser.string_arg);
}
/**
* M119: Output endstop states to serial output
*/
@ -10758,6 +10767,9 @@ void process_next_command() {
case 117: // M117: Set LCD message text, if possible
gcode_M117();
break;
case 118: // M118: Display a message in the host console
gcode_M118();
break;
case 119: // M119: Report endstop states
gcode_M119();
break;

View file

@ -150,7 +150,7 @@ void GCodeParser::parse(char *p) {
#endif
// Only use string_arg for these M codes
if (letter == 'M') switch (codenum) { case 23: case 28: case 30: case 117: case 928: string_arg = p; return; default: break; }
if (letter == 'M') switch (codenum) { case 23: case 28: case 30: case 117: case 118: case 928: string_arg = p; return; default: break; }
#if ENABLED(DEBUG_GCODE_PARSER)
const bool debug = codenum == 800;