In Marlin one can enable continuous debug reporting of Trinamic drivers with the command

M122 S1

This sends lines similar to the following over the serial connection:

X:93/28/0||    Y:35/14/-|IF|   Z:54/28/0||    E:176/25/0||

Each driver appears to report three integer values and some flags. I understand the F flag indicates an error state, for example the overtemperature pre-warn condition (OTPW).

What do the other values mean? How can this information be interpreted to debug printing problems or improve performance?


In the Marlin source code I found the function responsible for the report logs: report_polled_driver_data in Marlin/src/feature/tmc_util.cpp.

The values indicated appear to be:

<Axis>:<PWM scale>/<Current scale>/<StallGuard>|<Flags>|<OTPW count>

Where possible flags are as follows (where “debug” indicates that they only appear if TMC_DEBUG is enabled):

  • E: Error
  • O: Over-temperature
  • W: over-temperature pre-Warning
  • G: stallGuard (debug)
  • T: stealthChop (debug)
  • I: standstIll (debug)
  • F: otpw Flag

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.