From f0c4579b612bfe63ca998aecffc79076f804a56e Mon Sep 17 00:00:00 2001 From: saifullah-N Date: Sun, 12 Feb 2023 14:01:05 +0530 Subject: [PATCH 01/14] This patch adds support for pwncnc --- .gitignore | 2 +- Makefile | 2 +- scripts/gplan-build.sh | 1 + src/avr/src/spindle.h | 1 + src/avr/src/vfd_spindle.c | 23 ++++++++-- src/js/modbus-reg.js | 2 +- src/js/tool-view.js | 9 ++++ src/pug/templates/tool-view.pug | 70 +++++++++++++++++++++++++++--- src/resources/config-template.json | 4 +- 9 files changed, 102 insertions(+), 12 deletions(-) diff --git a/.gitignore b/.gitignore index 8f3cf82..352b1cf 100644 --- a/.gitignore +++ b/.gitignore @@ -23,6 +23,6 @@ __pycache__ /package-lock.json /src/bbserial/linux-rpi-raspberrypi-kernel* /src/bbserial/raspberrypi-kernel* - +*.rej *.elf *.hex diff --git a/Makefile b/Makefile index d214630..406ad63 100644 --- a/Makefile +++ b/Makefile @@ -26,7 +26,7 @@ PKG_NAME := bbctrl-$(VERSION) SUBPROJECTS := avr boot pwr jig ifndef HOST -HOST=onefinity +HOST=onefinity.local endif ifndef PASSWORD diff --git a/scripts/gplan-build.sh b/scripts/gplan-build.sh index 2d858c4..ef330fa 100755 --- a/scripts/gplan-build.sh +++ b/scripts/gplan-build.sh @@ -3,6 +3,7 @@ cd /mnt/host scons -j 8 -C cbang disable_local="re2 libevent" export CBANG_HOME="/mnt/host/cbang" +export LC_ALL=C CAMOTICS_ROOT="/mnt/host/camotics" CAMOTICS_PLAN="${CAMOTICS_ROOT}/src/gcode/plan" diff --git a/src/avr/src/spindle.h b/src/avr/src/spindle.h index 5635fd2..77183b0 100644 --- a/src/avr/src/spindle.h +++ b/src/avr/src/spindle.h @@ -58,6 +58,7 @@ typedef enum SPINDLE_TYPE_SUNFAR_E300, SPINDLE_TYPE_OMRON_MX2, SPINDLE_TYPE_V70, + SPINDLE_TYPE_PWNCNC, } spindle_type_t; typedef void (*deinit_cb_t)(); diff --git a/src/avr/src/vfd_spindle.c b/src/avr/src/vfd_spindle.c index 143364e..1673e39 100644 --- a/src/avr/src/vfd_spindle.c +++ b/src/avr/src/vfd_spindle.c @@ -29,7 +29,6 @@ #include "modbus.h" #include "rtc.h" #include "config.h" -#include "estop.h" #include "pgmspace.h" #include @@ -170,6 +169,18 @@ const vfd_reg_t v70_regs[] PROGMEM = { {REG_DISABLED}, }; +const vfd_reg_t pwncnc_regs[] PROGMEM = { + {REG_MAX_FREQ_READ, 0x0007, 0}, // Read max frequency + +{REG_FREQ_SCALED_SET, 0xa001, 10000}, // Set scaled frequency + +{REG_FREQ_READ, 0x9000, 0}, // Read frequency + +{REG_FWD_WRITE, 0xa000, 1}, // Run forward + +{REG_REV_WRITE, 0xa000, 2}, // Run reverse + +{REG_STOP_WRITE, 0xa000, 5}, // Stop + +{REG_DISCONNECT_WRITE, 0xa000, 5}, // Stop + +{REG_STATUS_READ, 0xb000, 0}, // Read status + {REG_DISABLED}, +}; + static vfd_reg_t regs[VFDREG]; static vfd_reg_t custom_regs[VFDREG]; @@ -226,7 +237,8 @@ static bool _next_state() break; case REG_STATUS_READ: - if (vfd.shutdown || estop_triggered()) + // if (vfd.shutdown || estop_triggered()) vfd.state = REG_DISCONNECT_WRITE; + if (vfd.shutdown) vfd.state = REG_DISCONNECT_WRITE; else if (vfd.changed) @@ -289,7 +301,8 @@ static void _modbus_cb(bool ok, uint16_t addr, uint16_t value) { if (regs[vfd.reg].fails < 255) regs[vfd.reg].fails++; - if (vfd.shutdown || estop_triggered()) + // if (vfd.shutdown || estop_triggered()) _disconnected(); + if (vfd.shutdown) _disconnected(); else _connect(); @@ -452,6 +465,10 @@ void vfd_spindle_init() case SPINDLE_TYPE_V70: _load(v70_regs); break; + case SPINDLE_TYPE_PWNCNC: + _load(pwncnc_regs); + break; + default: break; } diff --git a/src/js/modbus-reg.js b/src/js/modbus-reg.js index e6ba7a8..e9e5d84 100644 --- a/src/js/modbus-reg.js +++ b/src/js/modbus-reg.js @@ -8,7 +8,7 @@ module.exports = { computed: { has_user_value: function () { var type = this.model["reg-type"]; - return type.indexOf("write") != -1 || type.indexOf("fixed") != -1; + return type.includes("write") || type.includes("fixed") || type.includes("scaled"); }, }, diff --git a/src/js/tool-view.js b/src/js/tool-view.js index 2e1add5..801db54 100644 --- a/src/js/tool-view.js +++ b/src/js/tool-view.js @@ -27,6 +27,10 @@ module.exports = { type: "PWM Spindle", name: "Laser (J Tech, etc)", }, + { + id: "pwncnc-vfd", + name: "PwnCNC VFD", + }, { id: "pwm", name: "PWM Spindle", @@ -82,6 +86,11 @@ module.exports = { name: "OMRON MX2", unsupported: true, }, + { + id: "v70-vfd", + name: "V70", + unsupported: true + } ], }; }, diff --git a/src/pug/templates/tool-view.pug b/src/pug/templates/tool-view.pug index 0745058..75ec03f 100644 --- a/src/pug/templates/tool-view.pug +++ b/src/pug/templates/tool-view.pug @@ -43,7 +43,7 @@ script#tool-view-template(type="text/x-template") label.units RPM fieldset.modbus-program( - v-if="is_modbus && this.tool_type != 'HUANYANG VFD'") + v-if="is_modbus && tool_type != 'HUANYANG VFD' && tool_type != 'PWNCNC VFD'") h2 Active Modbus Program p(v-if="$root.modified") | (Click #[tt(class="save") Save] to activate the selected @@ -81,9 +81,7 @@ script#tool-view-template(type="text/x-template") tr(v-for="(index, reg) in config['modbus-spindle'].regs", is="modbus-reg", :index="index", :model.sync="reg", :template="template['modbus-spindle'].regs.template", - v-if="!index || reg['reg-type'] != 'disabled' || " + - "config['modbus-spindle'].regs[index - 1]['reg-type'] != " + - "'disabled'") + v-if="!index || reg['reg-type'] != 'disabled' || config['modbus-spindle'].regs[index - 1]['reg-type'] != 'disabled'") .notes(v-if="tool_type == 'HUANYANG VFD'") h2 Notes @@ -379,4 +377,66 @@ script#tool-view-template(type="text/x-template") target="_blank") OMRON MX2 VFD manual | | and spindle type. The VFD must be rebooted after changing - | the above settings. \ No newline at end of file + | the above settings. + + + .notes(v-if="tool_type.startsWith('V70')") + h2 Notes + p Set the following using the VFD's front panel. + table.modbus-regs.fixed-regs + tr + th Address + th Value + th Meaning + th Description + tr + td.reg-addr F001 + td.reg-value 2 + td Communication port + td Control mode + tr + td.reg-addr P0.0.04 + td.reg-value 9 + td Modbus + td Frequency source A + tr + td.reg-addr P0.1.00 + td.reg-value 0 + td Source A + td Frequency source + tr + td.reg-addr P4.1.00 + td.reg-value 3 + td 9600 BAUD + td Must match #[tt baud] above + tr + td.reg-addr F002 + td.reg-value 2 + td Communication port + td Frequency setting selection + tr + td.reg-addr F163 + td.reg-value 1 + td Slave address + td Must match #[tt bus-id] above + tr + td.reg-addr F164 + td.reg-value 1 + td 9600 BAUD + td Must match #[tt baud] above + tr + td.reg-addr F165 + td.reg-value 3 + td 8 data, no parity, 1 stop, RTU + td Must match #[tt parity] above + p + | Other settings according to the + | + a(href="https://buildbotics.com/upload/vfd/stepperonline-v70.pdf", + target="_blank") Stepper Online V70 VFD manual + + .notes(v-if="tool_type.startsWith('PWNCNC')") + h2 Notes + p For support and more information about the PwnCNC Spindle Kit, please visit #{''} + a(href="https://pwncnc.com/onefinity-controller", target="_blank") + | https://pwncnc.com/onefinity-controller \ No newline at end of file diff --git a/src/resources/config-template.json b/src/resources/config-template.json index 907ce2b..beffeed 100644 --- a/src/resources/config-template.json +++ b/src/resources/config-template.json @@ -270,7 +270,9 @@ "YL600, YL620, YL620-A VFD (Beta)", "FR-D700 (Beta)", "Sunfar E300 (Beta)", - "OMRON MX2" + "OMRON MX2", + "V70", + "PwnCNC VFD" ], "default": "Disabled", "code": "st" From d79c269b66fe364657a938390f47f382968bf88f Mon Sep 17 00:00:00 2001 From: saifullah-N Date: Sun, 12 Feb 2023 14:49:17 +0530 Subject: [PATCH 02/14] fixed sytax error in vfd_spindle.c --- src/avr/src/vfd_spindle.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/avr/src/vfd_spindle.c b/src/avr/src/vfd_spindle.c index 1673e39..9dca005 100644 --- a/src/avr/src/vfd_spindle.c +++ b/src/avr/src/vfd_spindle.c @@ -171,14 +171,14 @@ const vfd_reg_t v70_regs[] PROGMEM = { const vfd_reg_t pwncnc_regs[] PROGMEM = { {REG_MAX_FREQ_READ, 0x0007, 0}, // Read max frequency - +{REG_FREQ_SCALED_SET, 0xa001, 10000}, // Set scaled frequency - +{REG_FREQ_READ, 0x9000, 0}, // Read frequency - +{REG_FWD_WRITE, 0xa000, 1}, // Run forward - +{REG_REV_WRITE, 0xa000, 2}, // Run reverse - +{REG_STOP_WRITE, 0xa000, 5}, // Stop - +{REG_DISCONNECT_WRITE, 0xa000, 5}, // Stop - +{REG_STATUS_READ, 0xb000, 0}, // Read status - {REG_DISABLED}, + {REG_FREQ_SCALED_SET, 0xa001, 10000}, // Set scaled frequency + {REG_FREQ_READ, 0x9000, 0}, // Read frequency + {REG_FWD_WRITE, 0xa000, 1}, // Run forward + {REG_REV_WRITE, 0xa000, 2}, // Run reverse + {REG_STOP_WRITE, 0xa000, 5}, // Stop + {REG_DISCONNECT_WRITE, 0xa000, 5}, // Stop + {REG_STATUS_READ, 0xb000, 0}, // Read status + {REG_DISABLED}, }; static vfd_reg_t regs[VFDREG]; From 710cefa0503f717538550ead90b423a5d920e8ff Mon Sep 17 00:00:00 2001 From: saifullah-N Date: Sun, 12 Feb 2023 19:32:23 +0530 Subject: [PATCH 03/14] Fixed REG_FREQ_SCALED_SET not defined error in vfd_spindle.c --- src/avr/src/vfd_spindle.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/avr/src/vfd_spindle.c b/src/avr/src/vfd_spindle.c index 9dca005..0d43e36 100644 --- a/src/avr/src/vfd_spindle.c +++ b/src/avr/src/vfd_spindle.c @@ -48,6 +48,7 @@ typedef enum REG_FREQ_SET, REG_FREQ_SIGN_SET, + REG_FREQ_SCALED_SET, REG_STOP_WRITE, REG_FWD_WRITE, @@ -220,6 +221,14 @@ static bool _next_state() else vfd.state = REG_FREQ_SET; break; + case REG_FREQ_SCALED_SET: + if (vfd.power < 0) + vfd.state = REG_REV_WRITE; + else if (0 < vfd.power) + vfd.state = REG_FWD_WRITE; + else + vfd.state = REG_STOP_WRITE; + break; case REG_FREQ_SIGN_SET: if (vfd.power < 0) @@ -385,6 +394,11 @@ static bool _exec_command() write = true; reg.value = vfd.power * vfd.max_freq; break; + + case REG_FREQ_SCALED_SET: + write = true; + reg.value = fabs(vfd.power) * reg.value; + break; case REG_CONNECT_WRITE: case REG_STOP_WRITE: From 83094182f07bf5d00592cb47a0519aaa8ae3abc9 Mon Sep 17 00:00:00 2001 From: saifullah-N Date: Wed, 15 Feb 2023 15:42:16 +0530 Subject: [PATCH 04/14] added freq-scaled-set to config-template.json --- src/resources/config-template.json | 1 + 1 file changed, 1 insertion(+) diff --git a/src/resources/config-template.json b/src/resources/config-template.json index beffeed..dc3ee61 100644 --- a/src/resources/config-template.json +++ b/src/resources/config-template.json @@ -366,6 +366,7 @@ "max-freq-fixed", "freq-set", "freq-signed-set", + "freq-scaled-set", "stop-write", "forward-write", "reverse-write", From 998262c26ba5710c1b8bd8154a47be68b8d4bf30 Mon Sep 17 00:00:00 2001 From: saifullah-N Date: Wed, 15 Mar 2023 15:39:59 +0530 Subject: [PATCH 05/14] Commented out case block for REG_FREQ_SIGN_SET in _next_state() function in vfd_spindle.c --- src/avr/src/vfd_spindle.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/avr/src/vfd_spindle.c b/src/avr/src/vfd_spindle.c index 0d43e36..d89c0ce 100644 --- a/src/avr/src/vfd_spindle.c +++ b/src/avr/src/vfd_spindle.c @@ -230,14 +230,14 @@ static bool _next_state() vfd.state = REG_STOP_WRITE; break; - case REG_FREQ_SIGN_SET: - if (vfd.power < 0) - vfd.state = REG_REV_WRITE; - else if (0 < vfd.power) - vfd.state = REG_FWD_WRITE; - else - vfd.state = REG_STOP_WRITE; - break; + // case REG_FREQ_SIGN_SET: + // if (vfd.power < 0) + // vfd.state = REG_REV_WRITE; + // else if (0 < vfd.power) + // vfd.state = REG_FWD_WRITE; + // else + // vfd.state = REG_STOP_WRITE; + // break; case REG_STOP_WRITE: case REG_FWD_WRITE: From 143a7170a50e39b42edcb3155d98430dad4f71c5 Mon Sep 17 00:00:00 2001 From: saifullah-N Date: Sun, 19 Mar 2023 22:20:54 +0530 Subject: [PATCH 06/14] added "Fixed not selecting the file just uploaded" - 9ee6171 --- src/js/gcode-viewer.js | 2 +- src/py/bbctrl/FileHandler.py | 8 ++++++-- src/py/bbctrl/State.py | 12 +++++------- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/src/js/gcode-viewer.js b/src/js/gcode-viewer.js index 2f6e6cf..3b9d7e7 100644 --- a/src/js/gcode-viewer.js +++ b/src/js/gcode-viewer.js @@ -54,7 +54,7 @@ module.exports = { methods: { load: async function(file) { - if (file == this.file) { + if (file != this.file) { return; } diff --git a/src/py/bbctrl/FileHandler.py b/src/py/bbctrl/FileHandler.py index 9b4b20c..b8de974 100644 --- a/src/py/bbctrl/FileHandler.py +++ b/src/py/bbctrl/FileHandler.py @@ -23,7 +23,10 @@ class FileHandler(bbctrl.APIHandler): filename = self.request.path.split('/')[-1] self.uploadFilename = url_unescape(filename) \ - .replace('\\', '/') \ + .encode("ascii", errors="replace") \ + .decode() \ + .replace('\\', '_') \ + .replace('/', '_') \ .replace('#', '-') \ .replace('?', '-') @@ -71,7 +74,8 @@ class FileHandler(bbctrl.APIHandler): def get(self, filename): if not filename: raise HTTPError(400, 'Missing filename') - filename = os.path.basename(filename) + + filename = os.path.basename(url_unescape(filename)) try: with open(self.get_upload(filename).encode('utf8'), 'r') as f: diff --git a/src/py/bbctrl/State.py b/src/py/bbctrl/State.py index e4c4212..e4e3b94 100644 --- a/src/py/bbctrl/State.py +++ b/src/py/bbctrl/State.py @@ -32,7 +32,7 @@ import os import bbctrl from watchdog.observers import Observer from watchdog.events import FileSystemEventHandler - +import glob class UploadChangeHandler(FileSystemEventHandler): def __init__(self, state): self.state = state @@ -123,14 +123,12 @@ class State(object): if not os.path.exists(upload): os.mkdir(upload) - from shutil import copy - copy(bbctrl.get_resource('http/buildbotics.nc'), upload) - for path in os.listdir(upload): - if os.path.isfile(upload + '/' + path): - files.append(path) + files = filter(os.path.isfile, glob.glob(upload + '/*')) + # Sort list of files based on last modification time in ascending order + files = sorted(files, key=os.path.getmtime, reverse=True) + files = list(map(lambda f: f.replace("./upload/", ""), files)) - files.sort() self.set('files', files) if len(files): self.select_file(files[0]) From 4e75427eee8c396bbc25b94c1bf535fc10053157 Mon Sep 17 00:00:00 2001 From: saifullah-N Date: Sun, 19 Mar 2023 22:23:36 +0530 Subject: [PATCH 07/14] bumped version to 1.3.0-alpha1 --- package.json | 52 +++++++++++++-------------- src/py/bbctrl/Config.py | 2 +- src/resources/onefinity_defaults.json | 2 +- 3 files changed, 28 insertions(+), 28 deletions(-) diff --git a/package.json b/package.json index cb9565d..8c6ae86 100644 --- a/package.json +++ b/package.json @@ -1,28 +1,28 @@ { - "name": "bbctrl", - "version": "1.2.1", - "homepage": "https://onefinitycnc.com/", - "repository": "https://github.com/OneFinityCNC/onefinity", - "license": "GPL-3.0+", - "scripts": { - "postinstall": "cd src/svelte-components && npm i" - }, - "devDependencies": { - "@typescript-eslint/eslint-plugin": "^5.36.1", - "@typescript-eslint/parser": "^5.36.1", - "browserify": "^17.0.0", - "eslint": "^8.23.0", - "eslint-config-standard-with-typescript": "^22.0.0", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-n": "^15.2.5", - "eslint-plugin-promise": "^6.0.1", - "glob": "^8.0.3", - "inquirer": "^8.2.4", - "jshint": "^2.13.4", - "jstransformer-escape-html": "^1.1.0", - "jstransformer-scss": "^2.0.0", - "jstransformer-stylus": "^1.5.0", - "lodash.merge": "4.6.2", - "pug-cli": "^1.0.0-alpha6" - } + "name": "bbctrl", + "version": "1.3.0-alpha1", + "homepage": "https://onefinitycnc.com/", + "repository": "https://github.com/OneFinityCNC/onefinity", + "license": "GPL-3.0+", + "scripts": { + "postinstall": "cd src/svelte-components && npm i" + }, + "devDependencies": { + "@typescript-eslint/eslint-plugin": "^5.36.1", + "@typescript-eslint/parser": "^5.36.1", + "browserify": "^17.0.0", + "eslint": "^8.23.0", + "eslint-config-standard-with-typescript": "^22.0.0", + "eslint-plugin-import": "^2.26.0", + "eslint-plugin-n": "^15.2.5", + "eslint-plugin-promise": "^6.0.1", + "glob": "^8.0.3", + "inquirer": "^8.2.4", + "jshint": "^2.13.4", + "jstransformer-escape-html": "^1.1.0", + "jstransformer-scss": "^2.0.0", + "jstransformer-stylus": "^1.5.0", + "lodash.merge": "4.6.2", + "pug-cli": "^1.0.0-alpha6" + } } \ No newline at end of file diff --git a/src/py/bbctrl/Config.py b/src/py/bbctrl/Config.py index ab0546c..a6bd2e5 100644 --- a/src/py/bbctrl/Config.py +++ b/src/py/bbctrl/Config.py @@ -43,7 +43,7 @@ class Config(object): self.values = {} try: - self.version = "1.2.1" + self.version = "1.3.0-alpha1" # Load config template with open(get_resource('http/config-template.json'), 'r', diff --git a/src/resources/onefinity_defaults.json b/src/resources/onefinity_defaults.json index a8670ce..573f5e7 100644 --- a/src/resources/onefinity_defaults.json +++ b/src/resources/onefinity_defaults.json @@ -1,5 +1,5 @@ { - "version": "1.2.1", + "version": "1.3.0-alpha1", "settings": { "junction-accel": 200000, "max-deviation": 0.05, From 0517ff33a57327ca51368ddee678aafc7b02aca0 Mon Sep 17 00:00:00 2001 From: saifullah-N Date: Sun, 19 Mar 2023 23:35:13 +0530 Subject: [PATCH 08/14] fixed error in parsing version --- src/py/bbctrl/Config.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/py/bbctrl/Config.py b/src/py/bbctrl/Config.py index a6bd2e5..9282135 100644 --- a/src/py/bbctrl/Config.py +++ b/src/py/bbctrl/Config.py @@ -156,6 +156,7 @@ class Config(object): def _upgrade(self, config): version = config['version'] version = version.split('b')[0] # Strip off any "beta" suffix + version = version.split('-')[0] version = tuple(map(int, version.split('.'))) # Break it into a tuple of integers if version < (1, 0, 7): From c0d34a25eff5960bf4a8de73c3cf3786ea698da6 Mon Sep 17 00:00:00 2001 From: saifullah-N Date: Tue, 21 Mar 2023 16:06:27 +0530 Subject: [PATCH 09/14] Downgraded gcode-Viewer to version-1.1.1. --- src/js/gcode-viewer.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/js/gcode-viewer.js b/src/js/gcode-viewer.js index 3b9d7e7..66c1f73 100644 --- a/src/js/gcode-viewer.js +++ b/src/js/gcode-viewer.js @@ -54,7 +54,7 @@ module.exports = { methods: { load: async function(file) { - if (file != this.file) { + if (file == this.file) { return; } @@ -90,7 +90,7 @@ module.exports = { }, reload: function(file) { - if (file == this.file) { + if (file != this.file) { return; } this.clear(); From 8698cf77fd7d83c662ec74f9449c1c4b11280c25 Mon Sep 17 00:00:00 2001 From: saifullah-N Date: Fri, 16 Jun 2023 22:28:14 +0530 Subject: [PATCH 10/14] updated waitForChange storeHelper in svelte --- src/svelte-components/src/lib/StoreHelpers.ts | 29 ++++++++++--------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/src/svelte-components/src/lib/StoreHelpers.ts b/src/svelte-components/src/lib/StoreHelpers.ts index 78604a5..f0e8bb2 100644 --- a/src/svelte-components/src/lib/StoreHelpers.ts +++ b/src/svelte-components/src/lib/StoreHelpers.ts @@ -1,18 +1,19 @@ import { get, type Writable } from "svelte/store"; -export function listenForChange(writable: Writable, cb: (value: T) => void) { - const priorValue = get(writable); - - const unsubscribe = writable.subscribe((value) => { - if (value !== priorValue) { - unsubscribe(); - cb(value); - } - }); -} - export function waitForChange(writable: Writable): Promise { - return new Promise((resolve) => { - listenForChange(writable, (value) => resolve(value)); + let unsubscribe:()=>{}; + const promise = new Promise(resolve => { + let receivedInitial = false; + let previousValue : any; + unsubscribe = writable.subscribe(value => { + if (!receivedInitial) { + receivedInitial = true; + previousValue = value; + } else if (value !== previousValue) { + resolve(value); + } }); -} + }); + promise.then(unsubscribe); + return promise; +} \ No newline at end of file From adf2a90096e0d725821ff999dfeca8e19195cdea Mon Sep 17 00:00:00 2001 From: saifullah-N Date: Fri, 16 Jun 2023 22:29:27 +0530 Subject: [PATCH 11/14] bumped version to 1.3.0-alpha4 --- package.json | 2 +- src/py/bbctrl/Config.py | 2 +- src/resources/onefinity_defaults.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 8c6ae86..84bf600 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "bbctrl", - "version": "1.3.0-alpha1", + "version": "1.3.0-alpha4", "homepage": "https://onefinitycnc.com/", "repository": "https://github.com/OneFinityCNC/onefinity", "license": "GPL-3.0+", diff --git a/src/py/bbctrl/Config.py b/src/py/bbctrl/Config.py index 9282135..a10e5d1 100644 --- a/src/py/bbctrl/Config.py +++ b/src/py/bbctrl/Config.py @@ -43,7 +43,7 @@ class Config(object): self.values = {} try: - self.version = "1.3.0-alpha1" + self.version = "1.3.0-alpha4" # Load config template with open(get_resource('http/config-template.json'), 'r', diff --git a/src/resources/onefinity_defaults.json b/src/resources/onefinity_defaults.json index 573f5e7..4adbfc9 100644 --- a/src/resources/onefinity_defaults.json +++ b/src/resources/onefinity_defaults.json @@ -1,5 +1,5 @@ { - "version": "1.3.0-alpha1", + "version": "1.3.0-alpha4", "settings": { "junction-accel": 200000, "max-deviation": 0.05, From 59005b4c3a582017bf2408eb20c80a8703385290 Mon Sep 17 00:00:00 2001 From: saifullah-N Date: Thu, 22 Jun 2023 18:26:10 +0530 Subject: [PATCH 12/14] Synchronize units on control and settings pages. --- src/js/app.js | 3 ++- src/js/control-view.js | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/js/app.js b/src/js/app.js index 8205651..cb2412b 100644 --- a/src/js/app.js +++ b/src/js/app.js @@ -417,7 +417,8 @@ module.exports = new Vue({ delete settings.tool["tool-type"]; this.config["selected-tool-settings"][selected_tool] = settings; - + this.display_units = this.config.settings["units"]; + try { await api.put("config/save", this.config); this.modified = false; diff --git a/src/js/control-view.js b/src/js/control-view.js index 57bb471..bd1257d 100644 --- a/src/js/control-view.js +++ b/src/js/control-view.js @@ -91,7 +91,9 @@ module.exports = { return this.$root.display_units; }, set: function(value) { + this.config.settings.units = value; this.$root.display_units = value; + this.$dispatch("config-changed"); } }, From fd65bdd11d8f09f44813b0ab5f5ab89b2e3de508 Mon Sep 17 00:00:00 2001 From: Khishore-KM <79529664+Khishore-KM@users.noreply.github.com> Date: Wed, 30 Aug 2023 04:03:36 +0530 Subject: [PATCH 13/14] Additional Condition to Mitigate Probe Failures --- src/py/bbctrl/Mach.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/py/bbctrl/Mach.py b/src/py/bbctrl/Mach.py index 677c160..2aee1ef 100644 --- a/src/py/bbctrl/Mach.py +++ b/src/py/bbctrl/Mach.py @@ -139,6 +139,12 @@ class Mach(Comm): if log['msg'] == 'Switch not found': self.estop() + def _end_cycle(self): + if (self._get_cycle() != 'idle' and self._is_ready() + and not self.planner.is_busy() and not super().is_active()): + self.planner.position_change() + self._set_cycle('idle') + def _update(self, update): # Detect motor faults From cf72ad1c40ce246ebbbbbb954af629826ec8b683 Mon Sep 17 00:00:00 2001 From: Khishore-KM <79529664+Khishore-KM@users.noreply.github.com> Date: Wed, 30 Aug 2023 04:08:12 +0530 Subject: [PATCH 14/14] Bumped Version to 1.3.0 --- package.json | 2 +- src/py/bbctrl/Config.py | 2 +- src/resources/onefinity_defaults.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 84bf600..3aca790 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "bbctrl", - "version": "1.3.0-alpha4", + "version": "1.3.0", "homepage": "https://onefinitycnc.com/", "repository": "https://github.com/OneFinityCNC/onefinity", "license": "GPL-3.0+", diff --git a/src/py/bbctrl/Config.py b/src/py/bbctrl/Config.py index a10e5d1..cd05b00 100644 --- a/src/py/bbctrl/Config.py +++ b/src/py/bbctrl/Config.py @@ -43,7 +43,7 @@ class Config(object): self.values = {} try: - self.version = "1.3.0-alpha4" + self.version = "1.3.0" # Load config template with open(get_resource('http/config-template.json'), 'r', diff --git a/src/resources/onefinity_defaults.json b/src/resources/onefinity_defaults.json index 4adbfc9..6507b71 100644 --- a/src/resources/onefinity_defaults.json +++ b/src/resources/onefinity_defaults.json @@ -1,5 +1,5 @@ { - "version": "1.3.0-alpha4", + "version": "1.3.0", "settings": { "junction-accel": 200000, "max-deviation": 0.05,