From 38373b8877d7b21fa3bee0e2ca4311b2bf2fc2d1 Mon Sep 17 00:00:00 2001 From: sanjayk03-dev Date: Fri, 5 Jul 2024 11:59:47 +0530 Subject: [PATCH] storing mach position to config --- src/py/bbctrl/Mach.py | 8 ++++++++ src/resources/config-template.json | 33 ++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) diff --git a/src/py/bbctrl/Mach.py b/src/py/bbctrl/Mach.py index 2aee1ef..a522a00 100644 --- a/src/py/bbctrl/Mach.py +++ b/src/py/bbctrl/Mach.py @@ -358,6 +358,7 @@ class Mach(Comm): def set_position(self, axis, position): axis = axis.lower() state = self.ctrl.state + config = self.ctrl.config if state.is_axis_homed(axis): # If homed, change the offset rather than the absolute position @@ -370,6 +371,13 @@ class Mach(Comm): # Set the absolute position both locally and via the AVR target = position + state.get('offset_' + axis) + json_data = config.copy() + axes = json_data.get('axes') + if axes: + json_data['axes'][axis] = { "abs": target, "off": state.get('offset_' + axis) } + else: + json_data['axes'] = { axis: { "abs": target, "off": state.get('offset_' + axis) } } + config.save(json_data) state.set(axis + 'p', target) super().queue_command(Cmd.set_axis(axis, target)) diff --git a/src/resources/config-template.json b/src/resources/config-template.json index 9d56bc5..5e027da 100644 --- a/src/resources/config-template.json +++ b/src/resources/config-template.json @@ -653,6 +653,39 @@ } }, + "axes": { + "x": { + "abs": { + "type": "string", + "default": "0" + }, + "off": { + "type": "string", + "default": "0" + } + }, + "y": { + "abs": { + "type": "string", + "default": "0" + }, + "off": { + "type": "string", + "default": "0" + } + }, + "z": { + "abs": { + "type": "string", + "default": "0" + }, + "off": { + "type": "string", + "default": "0" + } + } + }, + "admin": { "auto-check-upgrade": { "type": "bool",