| 114 | |
| 115 | // Process M425 |
| 116 | GCodeResult Move::ConfigureBacklashCompensation(GCodeBuffer& gb, const StringRef& reply) THROWS(GCodeException) |
| 117 | { |
| 118 | bool seen = false; |
| 119 | size_t totalAxes = reprap.GetGCodes().GetTotalAxes(); |
| 120 | for (size_t i = 0; i < totalAxes; ++i) |
| 121 | { |
| 122 | if (gb.Seen(reprap.GetGCodes().GetAxisLetters()[i])) |
| 123 | { |
| 124 | seen = true; |
| 125 | backlashMm[i] = gb.GetNonNegativeFValue(); |
| 126 | } |
| 127 | } |
| 128 | |
| 129 | if (gb.Seen('S')) |
| 130 | { |
| 131 | seen = true; |
| 132 | backlashCorrectionDistanceFactor = gb.GetLimitedUIValue('S', 1, 101); |
| 133 | } |
| 134 | |
| 135 | if (seen) |
| 136 | { |
| 137 | UpdateBacklashSteps(); |
| 138 | reprap.MoveUpdated(); |
| 139 | } |
| 140 | else |
| 141 | { |
| 142 | reply.copy("Backlash correction (mm)"); |
| 143 | for (size_t i = 0; i < totalAxes; ++i) |
| 144 | { |
| 145 | reply.catf(" %c: %.3f", reprap.GetGCodes().GetAxisLetters()[i], (double)backlashMm[i]); |
| 146 | } |
| 147 | reply.catf(", correction distance multiplier %" PRIu32, backlashCorrectionDistanceFactor); |
| 148 | } |
| 149 | return GCodeResult::ok; |
| 150 | } |
| 151 | |
| 152 | // Process M595 |
| 153 | GCodeResult Move::ConfigureMovementQueue(GCodeBuffer& gb, const StringRef& reply) THROWS(GCodeException) |
nothing calls this directly
no test coverage detected