Duet Maestro Driver Sense Resistor Configuration

  • I noticed the maestro is using external sense resistors, for their stepper motor drivers.

    Going back through the TMC2204 datasheet, the driver has an optional internal sense resistor. The datasheet requires a setting --- otp_internalRsense = 0 --- in order to run external sense resistors.


    (snippet from the TMC2204 datasheet)

    I'm looking back through 2.02 source code, and find that it might not be set to use external sense resistor


    Pic above in TMC22xx.cpp (.../src/Movement/StepperDrivers). Release: 2.03beta2

    Am I misinterpreting something or is the source code setting the driver to using the internal sense resistor?

  • This is just selecting the bit in the bitfield and assigning it to a flag called GCONF_INT_RSENSE. It's not setting the value to 1.

    Do you see somewhere in the code this flag is used and setting the value to internal?

  • Oh. I see.

    The settings of the GCONF register is set right after assigning bit flags.


    So, GCONF_INT_RSENSE is set to zero (since it wasn't called at the DefaultGConfReg = ...). Got it.

Log in to reply