diff --git a/src/octoprint/util/comm.py b/src/octoprint/util/comm.py index 6b7b7a66..87f2765e 100644 --- a/src/octoprint/util/comm.py +++ b/src/octoprint/util/comm.py @@ -1704,9 +1704,14 @@ class MachineCom(object): if gcode is not None: use_up_clear = True - # if we need to use up a clear, do that now if use_up_clear: + # if we need to use up a clear, do that now self._clear_to_send.clear() + else: + # Otherwise we need to tickle the read queue - there might not be a reply + # to this command, so our _monitor loop will stay waiting until timeout. We + # definitely do not want that, so we tickle the queue manually here + self._continue_sending() finally: # no matter _how_ we exit this block, we signal that we