From cfdb60ca23a3aedfcc7a2e8b75bbc13af01a69df Mon Sep 17 00:00:00 2001 From: Kevin O'Connor Date: Tue, 18 Jun 2019 15:19:05 -0400 Subject: [PATCH] tmc2660: Set SDOFF=0 before accessing DRVCTRL Make sure to configure DRVCONF with SDOFF=0 prior to writing DRVCTRL as that field controls access to that register. Signed-off-by: Kevin O'Connor --- klippy/extras/tmc2660.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/klippy/extras/tmc2660.py b/klippy/extras/tmc2660.py index 1ff1b501..c894ed36 100644 --- a/klippy/extras/tmc2660.py +++ b/klippy/extras/tmc2660.py @@ -232,6 +232,7 @@ class TMC2660: def __init__(self, config): # Setup mcu communication self.fields = tmc.FieldHelper(Fields, SignedFields, FieldFormatters) + self.fields.set_field("SDOFF", 0) # Access DRVCTRL in step/dir mode self.mcu_tmc = MCU_TMC2660_SPI(config, Registers, self.fields) # Register commands cmdhelper = tmc.TMCCommandHelper(config, self.mcu_tmc) @@ -272,8 +273,6 @@ class TMC2660: set_config_field(config, "SLPL", 0) set_config_field(config, "DISS2G", 0) set_config_field(config, "TS2G", 3) - self.fields.set_field("RDSEL", 0) # needed for phase calculations - self.fields.set_field("SDOFF", 0) # only step/dir mode supported def query_registers(self, print_time=0.): return [(reg_name, self.mcu_tmc.get_register(reg_name))