aboutsummaryrefslogtreecommitdiffstats
path: root/klippy/mcu.py
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2016-08-25 12:07:08 -0400
committerKevin O'Connor <kevin@koconnor.net>2016-08-25 12:07:08 -0400
commit7276c7085a73494b1f860644e3c567f31d21ba0a (patch)
tree63cfa84baeffdc3cf54c2743937f239bd18757b9 /klippy/mcu.py
parente52113a319d460489ebd26867dbe85446f0a4f15 (diff)
downloadkutter-7276c7085a73494b1f860644e3c567f31d21ba0a.tar.gz
kutter-7276c7085a73494b1f860644e3c567f31d21ba0a.tar.xz
kutter-7276c7085a73494b1f860644e3c567f31d21ba0a.zip
mcu: Internally store _print_start_time instead of _print_start_clock
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy/mcu.py')
-rw-r--r--klippy/mcu.py21
1 files changed, 12 insertions, 9 deletions
diff --git a/klippy/mcu.py b/klippy/mcu.py
index c5e4ee16..d2dee2a3 100644
--- a/klippy/mcu.py
+++ b/klippy/mcu.py
@@ -260,7 +260,7 @@ class MCU:
self._steppers = []
self._steppersync = None
# Print time to clock epoch calculations
- self._print_start_clock = 0
+ self._print_start_time = 0.
self._clock_freq = 0.
# Stats
self._mcu_tick_avg = 0.
@@ -421,12 +421,14 @@ class MCU:
return MCU_adc(self, pin)
# Clock syncing
def set_print_start_time(self, eventtime):
- self._print_start_clock = self.serial.get_clock(eventtime)
- def get_print_buffer_time(self, eventtime, last_move_end):
- clock_diff = self.serial.get_clock(eventtime) - self._print_start_clock
- return last_move_end - (float(clock_diff) / self._clock_freq)
+ est_mcu_time = self.serial.get_clock(eventtime) / self._clock_freq
+ self._print_start_time = est_mcu_time
+ def get_print_buffer_time(self, eventtime, print_time):
+ mcu_time = print_time + self._print_start_time
+ est_mcu_time = self.serial.get_clock(eventtime) / self._clock_freq
+ return mcu_time - est_mcu_time
def print_to_mcu_time(self, print_time):
- return print_time + self._print_start_clock / self._clock_freq
+ return print_time + self._print_start_time
def get_mcu_freq(self):
return self._clock_freq
def get_last_clock(self):
@@ -435,7 +437,8 @@ class MCU:
def send(self, cmd, minclock=0, reqclock=0, cq=None):
self.serial.send(cmd, minclock, reqclock, cq=cq)
def flush_moves(self, print_time):
- clock = int(print_time * self._clock_freq) + self._print_start_clock
+ mcu_time = print_time + self._print_start_time
+ clock = int(mcu_time * self._clock_freq)
self.ffi_lib.steppersync_flush(self._steppersync, clock)
@@ -490,7 +493,7 @@ class DummyMCU:
def __init__(self, outfile):
self.outfile = outfile
self._stepid = -1
- self._print_start_clock = 0
+ self._print_start_time = 0.
self._clock_freq = 16000000.
logging.debug('Translated by klippy')
def connect(self):
@@ -517,7 +520,7 @@ class DummyMCU:
def get_print_buffer_time(self, eventtime, last_move_end):
return 0.250
def print_to_mcu_time(self, print_time):
- return print_time + self._print_start_clock / self._clock_freq
+ return print_time + self._print_start_time
def get_mcu_freq(self):
return self._clock_freq
def flush_moves(self, print_time):