Welcome to mirror list, hosted at ThFree Co, Russian Federation.

M917.md « _gcode - github.com/MarlinFirmware/MarlinDocumentation.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 26f607252559130e59f1a2303ccf0580d85aa704 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
---
tag: m0917
title: L6474 Overcurrent Warning Test
brief: Find L6474 minimum current thresholds
author: shitcreek

requires: MONITOR_L6470_DRIVER_STATUS
group: L6474

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

notes:
  - Requires `MONITOR_L6470_DRIVER_STATUS`.
  - All tests assume each axis uses matching driver chips.

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 or E0.
      -
        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. If unspecified, uses the max feedrate.
    values:
      -
        tag: feedrate
        type: int
  -
    tag: I
    optional: true
    description: Starting overcurrent threshold. Report current value from driver if not specified. If there are multiple drivers on the axis then all will be set the same.
    values:
      -
        tag: current
        type: int
  -
    tag: T
    optional: true
    description: Current (mA) setting for TVAL (0 - 4A in 31.25mA increments, rounds down) - L6474 only. Report current value from driver if not specified.
    values:
      -
        tag: current
        type: int
  -
    tag: K
    optional: true
    description: Value for KVAL_HOLD (0 - 255) (ignored for L6474). Report current value from driver if not specified
    values:
      -
        tag: Kvalue
        type: int
---

The `M917` command runs a test procedure to find the minimum stepper current thresholds.
- Decrease OCD current until overcurrent error
- Increase OCD until overcurrent error goes away
- Decrease stall threshold until stall (not done on L6474)
- Increase stall until stall error goes away (not done on L6474)