--- tag: m0122 title: TMC Debugging brief: Get TMC Debug Info author: mbuc since: 1.1.7 requires: HAS_TRINAMIC_CONFIG group: debug codes: [ M122 ] notes: - '`TMC_DEBUG` is no longer needed in Marlin 2.0.x, but enabling it produces an extended report.' - Responses of all `LOW` (`00:00:00:00`) or all `HIGH` (`FF:FF:FF:FF`) are signs of a communication problem.
See [TMC Troubleshooting](/docs/hardware/tmc_drivers.html) for further information. parameters: - tag: I since: 2.0.6 optional: true description: Flag to re-initialize stepper drivers with current settings. - tag: X optional: true description: Target X driver(s) only. - tag: Y optional: true description: Target Y driver(s) only. - tag: Z optional: true description: Target Z driver(s) only. - tag: E optional: true description: Target E driver(s) only. - tag: V requires: TMC_DEBUG optional: true description: Report raw register data. Refer to the datasheet to decypher. - tag: S requires: TMC_DEBUG, MONITOR_DRIVER_STATUS type: bool optional: true description: Flag to enable/disable continuous debug reporting. - tag: P requires: TMC_DEBUG, MONITOR_DRIVER_STATUS optional: true description: Interval between continuous debug reports, in milliseconds. values: - tag: ms type: int examples: - pre: 'Enable debugging output:' code: M122 S1 - pre: 'Get all (supported) Trinamic driver states:' code: | > M122 X Y Enabled false false Set current 850 850 RMS current 826 826 MAX current 1165 1165 Run current 26/31 26/31 Hold current 13/31 13/31 CS actual 13/31 13/31 PWM scale 41 41 vsense 1=.18 1=.18 stealthChop true true msteps 16 16 tstep 1048575 1048575 pwm threshold 0 0 [mm/s] - - OT prewarn false false OT prewarn has been triggered false false off time 5 5 blank time 24 24 hysterisis -end 2 2 -start 3 3 Stallguard thrs 0 0 DRVSTATUS X Y stallguard sg_result 0 0 fsactive stst olb ola s2gb s2ga otpw ot 'Driver registers:' X = 0x80:0D:00:00 Y = 0x80:0D:00:00 --- Do a communication check for configured TMC drivers. Trinamic drivers that support this feature are TMC2130, TMC2160, TMC2208, TMC2209, TMC2660, TMC5130, and TMC5160. - With no parameters, this command returns the current settings for all installed and supported Trinamic stepper drivers. - Send `M122 I` to re-initialize drivers after a late power-on. Use `S[0|1]` to enable/disable continuous debugging output.