---
tag: m0916
title: L6474 Thermal Warning Test
brief: Find L6474 drive level (KVAL_HOLD) threshold
author: shitcreek

group: L6474
requires: MONITOR_L6470_DRIVER_STATUS

codes: [ M916 ]
related: [ M917, M918 ]

notes:
- Requires `MONITOR_L6470_DRIVER_STATUS`.
- All tests assume each axis uses matching driver chips.
- On the L6474 the TVAL is used instead of KVAL.

parameters:

- tag: J
  optional: true
  description: Select which driver(s) to monitor on multi-driver axis
  values:
  - tag: 0
    description: (default) Monitor all drivers on the axis
  - tag: 1
    description: Monitor only X, Y, Z, E1
  - tag: 2
    description: Monitor only X2, Y2, Z2, E2
  - tag: 3
    description: Monitor only Z3, E3
  - tag: 4
    description: Monitor only Z4, E4
  - tag: 5
    description: Monitor only Z5, E5
  - tag: 6
    description: Monitor only Z6, E6
  - tag: 7
    description: Monitor only Z7, E7

- tag: X
  optional: true
  description: Monitor X with the given displacement (1 - 255mm) on either side of the current position.
  values:
  - type: mm

- tag: Y
  optional: true
  description: Monitor Y with the given displacement (1 - 255mm) on either side of the current position.
  values:
  - type: mm

- tag: Z
  optional: true
  description: Monitor Z with the given displacement (1 - 255mm) on either side of the current position.
  values:
  - type: mm

- tag: E
  optional: true
  description: Monitor E with the given displacement (1 - 255mm) on either side of the current position.
  values:
  - type: mm

- tag: F
  optional: true
  description: Feedrate for the moves. (Default max feedrate if unspecified.)
  values:
  - tag: feedrate
    type: int

- tag: T
  optional: true
  description: Current (mA) setting for TVAL (0 - 4A in 31.25mA increments, rounds down) - L6474 only. If unspecified, report current value from driver.
  values:
  - tag: current
    type: int

- tag: K
  optional: true
  description: Value for KVAL_HOLD (0 - 255) (ignored for L6474). If unspecified, report current value from driver.
  values:
  - tag: Kvalue
    type: int

- tag: D
  optional: true
  description: Time (in seconds) to run each setting of KVAL_HOLD/TVAL. (Default zero, to run each setting once.)
  values:
  - tag: second
    type: int

---

Increase KVAL_HOLD until thermal warning.
This routine is also useful for determining the approximate KVAL_HOLD where the stepper stops losing steps. The sound will get noticeably quieter as it stops losing steps.
