aboutsummaryrefslogtreecommitdiffstats
path: root/klippy/console.py
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2017-06-21 15:50:41 -0400
committerKevin O'Connor <kevin@koconnor.net>2017-06-22 10:51:49 -0400
commite92ce565ddd1bc5941491f8003ea996661bf6ae5 (patch)
tree93f8016e7554afc2122ff59ec4ae266ee78c9e39 /klippy/console.py
parentda4f2c5ea0a3b7f23e5f8fc097586f1b12bc1f9d (diff)
downloadkutter-e92ce565ddd1bc5941491f8003ea996661bf6ae5.tar.gz
kutter-e92ce565ddd1bc5941491f8003ea996661bf6ae5.tar.xz
kutter-e92ce565ddd1bc5941491f8003ea996661bf6ae5.zip
console: Support new artificial DELAY command
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy/console.py')
-rwxr-xr-xklippy/console.py16
1 files changed, 15 insertions, 1 deletions
diff --git a/klippy/console.py b/klippy/console.py
index 1645a0be..a7547458 100755
--- a/klippy/console.py
+++ b/klippy/console.py
@@ -21,7 +21,9 @@ class KeyboardReader:
self.data = ""
reactor.register_fd(self.fd, self.process_kbd)
self.connect_timer = reactor.register_timer(self.connect, reactor.NOW)
- self.local_commands = { "PINS": self.set_pin_map, "SET": self.set_var }
+ self.local_commands = {
+ "PINS": self.set_pin_map, "SET": self.set_var, "DELAY": self.delay
+ }
self.eval_globals = {}
def connect(self, eventtime):
self.ser.connect()
@@ -49,6 +51,18 @@ class KeyboardReader:
except ValueError:
pass
self.eval_globals[parts[1]] = val
+ def delay(self, parts):
+ try:
+ val = int(parts[1])
+ except ValueError as e:
+ self.output("Error: %s" % (str(e),))
+ return
+ try:
+ msg = self.ser.msgparser.create_command(' '.join(parts[2:]))
+ except msgproto.error as e:
+ self.output("Error: %s" % (str(e),))
+ return
+ self.ser.send(msg, minclock=val)
def translate(self, line, eventtime):
evalparts = re_eval.split(line)
if len(evalparts) > 1: