Plan timer and progress fixes
authorJoseph Coffland <joseph@cauldrondevelopment.com>
Tue, 9 Oct 2018 20:24:14 +0000 (13:24 -0700)
committerJoseph Coffland <joseph@cauldrondevelopment.com>
Tue, 9 Oct 2018 20:24:14 +0000 (13:24 -0700)
CHANGELOG.md
src/js/control-view.js
src/pug/templates/control-view.pug
src/py/bbctrl/PlanTimer.py
src/stylus/style.styl

index 1c8da4acbf920bb285dbdc83479fde63296dbe9a..1bb79d463391d6cf08210c152cdc2da9b9662580 100644 (file)
@@ -12,6 +12,10 @@ Buildbotics CNC Controller Firmware Changelog
  - Click to switch through three video sizes.
  - Automount/unmount USB drives.
  - Automatically install ``buildbotics.gc`` when no other GCode exists.
+ - Preplan GCode and check for errors.
+ - Display 3D view of program tool paths in browser.
+ - Display accurate time remaining, ETA and progress during run.
+ - Automatically collapase moves in planner which are too short in time.
 
 ## v0.3.28
  - Show step rate on motor configuration page.
index 1e38a2117080b07718f853041f0000538d778e2b..ea3daba8acd6e92979822be4c68fdea7ee7736aa 100644 (file)
@@ -53,7 +53,7 @@ module.exports = {
       files: [],
       last_file: undefined,
       toolpath: {},
-      progress: 0,
+      toolpath_progress: 0,
       axes: 'xyzabc',
       history: [],
       speed_override: 1,
@@ -248,7 +248,7 @@ module.exports = {
 
       if (typeof file != 'undefined') this.$broadcast('gcode-load', file);
       this.$broadcast('gcode-line', this.state.line);
-      this.progress = 0;
+      this.toolpath_progress = 0;
       this.load_toolpath(file);
     },
 
@@ -263,7 +263,7 @@ module.exports = {
 
         if (typeof toolpath.progress == 'undefined') this.toolpath = toolpath;
         else {
-          this.progress = toolpath.progress;
+          this.toolpath_progress = toolpath.progress;
           this.load_toolpath(file); // Try again
         }
       }.bind(this));
index e965f554d8bf8765acfc83647ec98de55449ce54..47db80ccc9ba3c44ad81cc8453b9304990f708a5 100644 (file)
@@ -161,7 +161,7 @@ script#control-view-template(type="text/x-template")
           | {{toolpath.time | time}}
       tr
         th ETA
-        td {{eta}}
+        td.eta {{eta}}
       tr
         th Line
         td
@@ -250,7 +250,7 @@ script#control-view-template(type="text/x-template")
             v-model="state.selected", @change="load", :disabled="!is_ready")
             option(v-for="file in files", :value="file") {{file}}
 
-        path-viewer(:toolpath="toolpath", :progress="progress",
+        path-viewer(:toolpath="toolpath", :progress="toolpath_progress",
           :x="get_position('x')", :y="get_position('y')",
           :z="get_position('z')")
         gcode-viewer
index 997fb6da98c0e4c469b8104acb6e5190b5dfd49f..4968fc4b021c0ed48286f20476c6a30a96989a56 100644 (file)
@@ -79,7 +79,8 @@ class PlanTimer(object):
                 self.reset()
 
             elif state == 'HOLDING': self.hold_start = time.time()
-            elif state == 'RUNNING' and self.hold_start is not None:
+            elif (state == 'RUNNING' and self.hold_start is not None and
+                  self.move_start is not None):
                 self.move_start += time.time() - self.hold_start
                 self.hold_start = None
 
index 56d5a658d6c45563325123e83075aaac809c1870..913a7bef1d9f493827a1d9c0f70e715361b999a3 100644 (file)
@@ -313,7 +313,8 @@ span.unit
       height 1.75em
       padding 3px
       text-align right
-      white-space normal
+      overflow hidden
+      text-overflow ellipsis
 
     th
       min-width 5.25em
@@ -334,6 +335,9 @@ span.unit
         padding 3px
         text-align right
 
+    .eta
+      font-size 90%
+
     .progress
       height 1.75em