aboutsummaryrefslogtreecommitdiffstats
path: root/klippy/mcu.py
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2017-07-12 22:16:16 -0400
committerKevin O'Connor <kevin@koconnor.net>2017-07-17 15:02:43 -0400
commit118fd21cb815d1c27e7e5bd6b394369bdf095919 (patch)
tree78ceda354491dfb66419f0a7e892017a05319a73 /klippy/mcu.py
parent969485c754731183f357e6fef23c6180f59d4cb6 (diff)
downloadkutter-118fd21cb815d1c27e7e5bd6b394369bdf095919.tar.gz
kutter-118fd21cb815d1c27e7e5bd6b394369bdf095919.tar.xz
kutter-118fd21cb815d1c27e7e5bd6b394369bdf095919.zip
irq: Support sleeping when mcu is idle
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy/mcu.py')
-rw-r--r--klippy/mcu.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/klippy/mcu.py b/klippy/mcu.py
index cf85b740..f4e3e861 100644
--- a/klippy/mcu.py
+++ b/klippy/mcu.py
@@ -420,6 +420,7 @@ class MCU:
self._stats_sumsq_base = 0.
self._mcu_tick_avg = 0.
self._mcu_tick_stddev = 0.
+ self._mcu_tick_awake = 0.
def handle_mcu_stats(self, params):
count = params['count']
tick_sum = params['sum']
@@ -427,6 +428,7 @@ class MCU:
self._mcu_tick_avg = tick_sum * c
tick_sumsq = params['sumsq'] * self._stats_sumsq_base
self._mcu_tick_stddev = c * math.sqrt(count*tick_sumsq - tick_sum**2)
+ self._mcu_tick_awake = tick_sum / self._mcu_freq
def handle_shutdown(self, params):
if self.is_shutdown:
return
@@ -493,9 +495,9 @@ class MCU:
self._ffi_lib.steppersync_free(self._steppersync)
self._steppersync = None
def stats(self, eventtime):
- return "%s mcu_task_avg=%.06f mcu_task_stddev=%.06f" % (
+ return "%s mcu_awake=%.03f mcu_task_avg=%.06f mcu_task_stddev=%.06f" % (
self.serial.stats(eventtime),
- self._mcu_tick_avg, self._mcu_tick_stddev)
+ self._mcu_tick_awake, self._mcu_tick_avg, self._mcu_tick_stddev)
def force_shutdown(self):
self.send(self._emergency_stop_cmd.encode())
def microcontroller_restart(self):