aboutsummaryrefslogtreecommitdiffstats
path: root/klippy/extras/tmc2208.py
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2019-05-29 09:14:21 -0400
committerKevin O'Connor <kevin@koconnor.net>2019-05-29 09:33:51 -0400
commit6903ab87cab09142b206a02a4a22cc1bc76eab5c (patch)
tree9e15f5566841fb9a18b1660814da6df5b0ade614 /klippy/extras/tmc2208.py
parent2cff3291c0faac6bb2685fba260a3c50424b9636 (diff)
downloadkutter-6903ab87cab09142b206a02a4a22cc1bc76eab5c.tar.gz
kutter-6903ab87cab09142b206a02a4a22cc1bc76eab5c.tar.xz
kutter-6903ab87cab09142b206a02a4a22cc1bc76eab5c.zip
tmc2130: Add support for two's complement signed fields to FieldHelper
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy/extras/tmc2208.py')
-rw-r--r--klippy/extras/tmc2208.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/klippy/extras/tmc2208.py b/klippy/extras/tmc2208.py
index 4cb67e3e..4134f026 100644
--- a/klippy/extras/tmc2208.py
+++ b/klippy/extras/tmc2208.py
@@ -168,12 +168,13 @@ Fields["PWM_AUTO"] = {
"PWM_GRAD_AUTO": 0xff << 16
}
+SignedFields = ["CUR_A", "CUR_B", "PWM_SCALE_AUTO"]
+
FieldFormatters = dict(tmc2130.FieldFormatters)
FieldFormatters.update({
"SEL_A": (lambda v: "%d(%s)" % (v, ["TMC222x", "TMC220x"][v])),
"s2vsa": (lambda v: "1(LowSideShort_A!)" if v else ""),
"s2vsb": (lambda v: "1(LowSideShort_B!)" if v else ""),
- "PWM_SCALE_AUTO": (lambda v: tmc2130.decode_signed_int(v, 9))
})
@@ -284,7 +285,8 @@ class TMC2208:
# Setup basic register values
self.ifcnt = None
self.regs = collections.OrderedDict()
- self.fields = tmc2130.FieldHelper(Fields, FieldFormatters, self.regs)
+ self.fields = tmc2130.FieldHelper(Fields, SignedFields, FieldFormatters,
+ self.regs)
self.fields.set_field("pdn_disable", True)
self.fields.set_field("mstep_reg_select", True)
self.fields.set_field("multistep_filt", True)