|
@@ -73,214 +73,211 @@ enum {
|
73
|
73
|
|
74
|
74
|
static void disp_key_value() {
|
75
|
75
|
char *temp;
|
76
|
|
- char str_1[16];
|
77
|
|
- #if HAS_TRINAMIC_CONFIG
|
78
|
|
- float milliamps;
|
79
|
|
- #endif
|
|
76
|
+ TERN_(HAS_TRINAMIC_CONFIG, float milliamps);
|
80
|
77
|
|
81
|
78
|
switch (value) {
|
82
|
79
|
case PrintAcceleration:
|
83
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(planner.settings.acceleration, 1, 1, str_1));
|
|
80
|
+ dtostrf(planner.settings.acceleration, 1, 1, public_buf_m);
|
84
|
81
|
break;
|
85
|
82
|
case RetractAcceleration:
|
86
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(planner.settings.retract_acceleration, 1, 1, str_1));
|
|
83
|
+ dtostrf(planner.settings.retract_acceleration, 1, 1, public_buf_m);
|
87
|
84
|
break;
|
88
|
85
|
case TravelAcceleration:
|
89
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(planner.settings.travel_acceleration, 1, 1, str_1));
|
|
86
|
+ dtostrf(planner.settings.travel_acceleration, 1, 1, public_buf_m);
|
90
|
87
|
break;
|
91
|
88
|
case XAcceleration:
|
92
|
|
- sprintf_P(public_buf_m, PSTR("%d"), (int)planner.settings.max_acceleration_mm_per_s2[X_AXIS]);
|
|
89
|
+ itoa(planner.settings.max_acceleration_mm_per_s2[X_AXIS], public_buf_m, 10);
|
93
|
90
|
break;
|
94
|
91
|
case YAcceleration:
|
95
|
|
- sprintf_P(public_buf_m, PSTR("%d"), (int)planner.settings.max_acceleration_mm_per_s2[Y_AXIS]);
|
|
92
|
+ itoa(planner.settings.max_acceleration_mm_per_s2[Y_AXIS], public_buf_m, 10);
|
96
|
93
|
break;
|
97
|
94
|
case ZAcceleration:
|
98
|
|
- sprintf_P(public_buf_m, PSTR("%d"), (int)planner.settings.max_acceleration_mm_per_s2[Z_AXIS]);
|
|
95
|
+ itoa(planner.settings.max_acceleration_mm_per_s2[Z_AXIS], public_buf_m, 10);
|
99
|
96
|
break;
|
100
|
97
|
case E0Acceleration:
|
101
|
|
- sprintf_P(public_buf_m, PSTR("%d"), (int)planner.settings.max_acceleration_mm_per_s2[E_AXIS]);
|
|
98
|
+ itoa(planner.settings.max_acceleration_mm_per_s2[E_AXIS], public_buf_m, 10);
|
102
|
99
|
break;
|
103
|
100
|
case E1Acceleration:
|
104
|
|
- sprintf_P(public_buf_m, PSTR("%d"), (int)planner.settings.max_acceleration_mm_per_s2[E_AXIS_N(1)]);
|
|
101
|
+ itoa(planner.settings.max_acceleration_mm_per_s2[E_AXIS_N(1)], public_buf_m, 10);
|
105
|
102
|
break;
|
106
|
103
|
case XMaxFeedRate:
|
107
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(planner.settings.max_feedrate_mm_s[X_AXIS], 1, 1, str_1));
|
|
104
|
+ dtostrf(planner.settings.max_feedrate_mm_s[X_AXIS], 1, 1, public_buf_m);
|
108
|
105
|
break;
|
109
|
106
|
case YMaxFeedRate:
|
110
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(planner.settings.max_feedrate_mm_s[Y_AXIS], 1, 1, str_1));
|
|
107
|
+ dtostrf(planner.settings.max_feedrate_mm_s[Y_AXIS], 1, 1, public_buf_m);
|
111
|
108
|
break;
|
112
|
109
|
case ZMaxFeedRate:
|
113
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(planner.settings.max_feedrate_mm_s[Z_AXIS], 1, 1, str_1));
|
|
110
|
+ dtostrf(planner.settings.max_feedrate_mm_s[Z_AXIS], 1, 1, public_buf_m);
|
114
|
111
|
break;
|
115
|
112
|
case E0MaxFeedRate:
|
116
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(planner.settings.max_feedrate_mm_s[E_AXIS], 1, 1, str_1));
|
|
113
|
+ dtostrf(planner.settings.max_feedrate_mm_s[E_AXIS], 1, 1, public_buf_m);
|
117
|
114
|
break;
|
118
|
115
|
case E1MaxFeedRate:
|
119
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(planner.settings.max_feedrate_mm_s[E_AXIS_N(1)], 1, 1, str_1));
|
|
116
|
+ dtostrf(planner.settings.max_feedrate_mm_s[E_AXIS_N(1)], 1, 1, public_buf_m);
|
120
|
117
|
break;
|
121
|
118
|
|
122
|
119
|
case XJerk:
|
123
|
120
|
#if HAS_CLASSIC_JERK
|
124
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(planner.max_jerk[X_AXIS], 1, 1, str_1));
|
|
121
|
+ dtostrf(planner.max_jerk[X_AXIS], 1, 1, public_buf_m);
|
125
|
122
|
#endif
|
126
|
123
|
break;
|
127
|
124
|
case YJerk:
|
128
|
125
|
#if HAS_CLASSIC_JERK
|
129
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(planner.max_jerk[Y_AXIS], 1, 1, str_1));
|
|
126
|
+ dtostrf(planner.max_jerk[Y_AXIS], 1, 1, public_buf_m);
|
130
|
127
|
#endif
|
131
|
128
|
break;
|
132
|
129
|
case ZJerk:
|
133
|
130
|
#if HAS_CLASSIC_JERK
|
134
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(planner.max_jerk[Z_AXIS], 1, 1, str_1));
|
|
131
|
+ dtostrf(planner.max_jerk[Z_AXIS], 1, 1, public_buf_m);
|
135
|
132
|
#endif
|
136
|
133
|
break;
|
137
|
134
|
case EJerk:
|
138
|
135
|
#if HAS_CLASSIC_JERK
|
139
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(planner.max_jerk[E_AXIS], 1, 1, str_1));
|
|
136
|
+ dtostrf(planner.max_jerk[E_AXIS], 1, 1, public_buf_m);
|
140
|
137
|
#endif
|
141
|
138
|
break;
|
142
|
139
|
|
143
|
140
|
case Xstep:
|
144
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(planner.settings.axis_steps_per_mm[X_AXIS], 1, 1, str_1));
|
|
141
|
+ dtostrf(planner.settings.axis_steps_per_mm[X_AXIS], 1, 1, public_buf_m);
|
145
|
142
|
break;
|
146
|
143
|
case Ystep:
|
147
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(planner.settings.axis_steps_per_mm[Y_AXIS], 1, 1, str_1));
|
|
144
|
+ dtostrf(planner.settings.axis_steps_per_mm[Y_AXIS], 1, 1, public_buf_m);
|
148
|
145
|
|
149
|
146
|
break;
|
150
|
147
|
case Zstep:
|
151
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(planner.settings.axis_steps_per_mm[Z_AXIS], 1, 1, str_1));
|
|
148
|
+ dtostrf(planner.settings.axis_steps_per_mm[Z_AXIS], 1, 1, public_buf_m);
|
152
|
149
|
|
153
|
150
|
break;
|
154
|
151
|
case E0step:
|
155
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(planner.settings.axis_steps_per_mm[E_AXIS], 1, 1, str_1));
|
|
152
|
+ dtostrf(planner.settings.axis_steps_per_mm[E_AXIS], 1, 1, public_buf_m);
|
156
|
153
|
|
157
|
154
|
break;
|
158
|
155
|
case E1step:
|
159
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(planner.settings.axis_steps_per_mm[E_AXIS_N(1)], 1, 1, str_1));
|
|
156
|
+ dtostrf(planner.settings.axis_steps_per_mm[E_AXIS_N(1)], 1, 1, public_buf_m);
|
160
|
157
|
break;
|
161
|
158
|
|
162
|
159
|
case Xcurrent:
|
163
|
160
|
#if AXIS_IS_TMC(X)
|
164
|
161
|
milliamps = stepperX.getMilliamps();
|
165
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(milliamps, 1, 1, str_1));
|
|
162
|
+ dtostrf(milliamps, 1, 1, public_buf_m);
|
166
|
163
|
#endif
|
167
|
164
|
break;
|
168
|
165
|
|
169
|
166
|
case Ycurrent:
|
170
|
167
|
#if AXIS_IS_TMC(Y)
|
171
|
168
|
milliamps = stepperY.getMilliamps();
|
172
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(milliamps, 1, 1, str_1));
|
|
169
|
+ dtostrf(milliamps, 1, 1, public_buf_m);
|
173
|
170
|
#endif
|
174
|
171
|
break;
|
175
|
172
|
|
176
|
173
|
case Zcurrent:
|
177
|
174
|
#if AXIS_IS_TMC(Z)
|
178
|
175
|
milliamps = stepperZ.getMilliamps();
|
179
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(milliamps, 1, 1, str_1));
|
|
176
|
+ dtostrf(milliamps, 1, 1, public_buf_m);
|
180
|
177
|
#endif
|
181
|
178
|
break;
|
182
|
179
|
|
183
|
180
|
case E0current:
|
184
|
181
|
#if AXIS_IS_TMC(E0)
|
185
|
182
|
milliamps = stepperE0.getMilliamps();
|
186
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(milliamps, 1, 1, str_1));
|
|
183
|
+ dtostrf(milliamps, 1, 1, public_buf_m);
|
187
|
184
|
#endif
|
188
|
185
|
break;
|
189
|
186
|
|
190
|
187
|
case E1current:
|
191
|
188
|
#if AXIS_IS_TMC(E1)
|
192
|
189
|
milliamps = stepperE1.getMilliamps();
|
193
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(milliamps, 1, 1, str_1));
|
|
190
|
+ dtostrf(milliamps, 1, 1, public_buf_m);
|
194
|
191
|
#endif
|
195
|
192
|
break;
|
196
|
193
|
|
197
|
194
|
case pause_pos_x:
|
198
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(gCfgItems.pausePosX, 1, 1, str_1));
|
|
195
|
+ dtostrf(gCfgItems.pausePosX, 1, 1, public_buf_m);
|
199
|
196
|
break;
|
200
|
197
|
case pause_pos_y:
|
201
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(gCfgItems.pausePosY, 1, 1, str_1));
|
|
198
|
+ dtostrf(gCfgItems.pausePosY, 1, 1, public_buf_m);
|
202
|
199
|
break;
|
203
|
200
|
case pause_pos_z:
|
204
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(gCfgItems.pausePosZ, 1, 1, str_1));
|
|
201
|
+ dtostrf(gCfgItems.pausePosZ, 1, 1, public_buf_m);
|
205
|
202
|
break;
|
206
|
203
|
case level_pos_x1:
|
207
|
|
- sprintf_P(public_buf_m, PSTR("%d"), (int)gCfgItems.trammingPos[0][X_AXIS]);
|
|
204
|
+ itoa(gCfgItems.trammingPos[0].x, public_buf_m, 10);
|
208
|
205
|
break;
|
209
|
206
|
case level_pos_y1:
|
210
|
|
- sprintf_P(public_buf_m, PSTR("%d"), (int)gCfgItems.trammingPos[0][Y_AXIS]);
|
|
207
|
+ itoa(gCfgItems.trammingPos[0].y, public_buf_m, 10);
|
211
|
208
|
break;
|
212
|
209
|
case level_pos_x2:
|
213
|
|
- sprintf_P(public_buf_m, PSTR("%d"), (int)gCfgItems.trammingPos[1][X_AXIS]);
|
|
210
|
+ itoa(gCfgItems.trammingPos[1].x, public_buf_m, 10);
|
214
|
211
|
break;
|
215
|
212
|
case level_pos_y2:
|
216
|
|
- sprintf_P(public_buf_m, PSTR("%d"), (int)gCfgItems.trammingPos[1][Y_AXIS]);
|
|
213
|
+ itoa(gCfgItems.trammingPos[1].y, public_buf_m, 10);
|
217
|
214
|
break;
|
218
|
215
|
case level_pos_x3:
|
219
|
|
- sprintf_P(public_buf_m, PSTR("%d"), (int)gCfgItems.trammingPos[2][X_AXIS]);
|
|
216
|
+ itoa(gCfgItems.trammingPos[2].x, public_buf_m, 10);
|
220
|
217
|
break;
|
221
|
218
|
case level_pos_y3:
|
222
|
|
- sprintf_P(public_buf_m, PSTR("%d"), (int)gCfgItems.trammingPos[2][Y_AXIS]);
|
|
219
|
+ itoa(gCfgItems.trammingPos[2].y, public_buf_m, 10);
|
223
|
220
|
break;
|
224
|
221
|
case level_pos_x4:
|
225
|
|
- sprintf_P(public_buf_m, PSTR("%d"), (int)gCfgItems.trammingPos[3][X_AXIS]);
|
|
222
|
+ itoa(gCfgItems.trammingPos[3].x, public_buf_m, 10);
|
226
|
223
|
break;
|
227
|
224
|
case level_pos_y4:
|
228
|
|
- sprintf_P(public_buf_m, PSTR("%d"), (int)gCfgItems.trammingPos[3][Y_AXIS]);
|
|
225
|
+ itoa(gCfgItems.trammingPos[3].y, public_buf_m, 10);
|
229
|
226
|
break;
|
230
|
227
|
case level_pos_x5:
|
231
|
|
- sprintf_P(public_buf_m, PSTR("%d"), (int)gCfgItems.trammingPos[4][X_AXIS]);
|
|
228
|
+ itoa(gCfgItems.trammingPos[4].x, public_buf_m, 10);
|
232
|
229
|
break;
|
233
|
230
|
case level_pos_y5:
|
234
|
|
- sprintf_P(public_buf_m, PSTR("%d"), (int)gCfgItems.trammingPos[4][Y_AXIS]);
|
|
231
|
+ itoa(gCfgItems.trammingPos[4].y, public_buf_m, 10);
|
235
|
232
|
break;
|
236
|
233
|
#if HAS_BED_PROBE
|
237
|
234
|
case x_offset:
|
238
|
235
|
#if HAS_PROBE_XY_OFFSET
|
239
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(probe.offset.x, 1, 3, str_1));
|
|
236
|
+ dtostrf(probe.offset.x, 1, 3, public_buf_m);
|
240
|
237
|
#endif
|
241
|
238
|
break;
|
242
|
239
|
case y_offset:
|
243
|
240
|
#if HAS_PROBE_XY_OFFSET
|
244
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(probe.offset.y, 1, 3, str_1));
|
|
241
|
+ dtostrf(probe.offset.y, 1, 3, public_buf_m);
|
245
|
242
|
#endif
|
246
|
243
|
break;
|
247
|
244
|
case z_offset:
|
248
|
|
- sprintf_P(public_buf_m, PSTR("%s"), dtostrf(probe.offset.z, 1, 3, str_1));
|
|
245
|
+ dtostrf(probe.offset.z, 1, 3, public_buf_m);
|
249
|
246
|
break;
|
250
|
247
|
#endif
|
251
|
248
|
case load_length:
|
252
|
|
- sprintf_P(public_buf_m, PSTR("%d"), gCfgItems.filamentchange_load_length);
|
|
249
|
+ itoa(gCfgItems.filamentchange_load_length, public_buf_m, 10);
|
253
|
250
|
break;
|
254
|
251
|
case load_speed:
|
255
|
|
- sprintf_P(public_buf_m, PSTR("%d"), gCfgItems.filamentchange_load_speed);
|
|
252
|
+ itoa(gCfgItems.filamentchange_load_speed, public_buf_m, 10);
|
256
|
253
|
break;
|
257
|
254
|
case unload_length:
|
258
|
|
- sprintf_P(public_buf_m, PSTR("%d"), gCfgItems.filamentchange_unload_length);
|
|
255
|
+ itoa(gCfgItems.filamentchange_unload_length, public_buf_m, 10);
|
259
|
256
|
break;
|
260
|
257
|
case unload_speed:
|
261
|
|
- sprintf_P(public_buf_m, PSTR("%d"), gCfgItems.filamentchange_unload_speed);
|
|
258
|
+ itoa(gCfgItems.filamentchange_unload_speed, public_buf_m, 10);
|
262
|
259
|
break;
|
263
|
260
|
case filament_temp:
|
264
|
|
- sprintf_P(public_buf_m, PSTR("%d"), gCfgItems.filament_limit_temp);
|
|
261
|
+ itoa(gCfgItems.filament_limit_temp, public_buf_m, 10);
|
265
|
262
|
break;
|
266
|
263
|
case x_sensitivity:
|
267
|
264
|
#if X_SENSORLESS
|
268
|
|
- sprintf_P(public_buf_m, PSTR("%d"), TERN(X_SENSORLESS, stepperX.homing_threshold(), 0));
|
|
265
|
+ itoa(TERN(X_SENSORLESS, stepperX.homing_threshold(), 0), public_buf_m, 10);
|
269
|
266
|
#endif
|
270
|
267
|
break;
|
271
|
268
|
case y_sensitivity:
|
272
|
269
|
#if Y_SENSORLESS
|
273
|
|
- sprintf_P(public_buf_m, PSTR("%d"), TERN(Y_SENSORLESS, stepperY.homing_threshold(), 0));
|
|
270
|
+ itoa(TERN(Y_SENSORLESS, stepperY.homing_threshold(), 0), public_buf_m, 10);
|
274
|
271
|
#endif
|
275
|
272
|
break;
|
276
|
273
|
case z_sensitivity:
|
277
|
274
|
#if Z_SENSORLESS
|
278
|
|
- sprintf_P(public_buf_m, PSTR("%d"), TERN(Z_SENSORLESS, stepperZ.homing_threshold(), 0));
|
|
275
|
+ itoa(TERN(Z_SENSORLESS, stepperZ.homing_threshold(), 0), public_buf_m, 10);
|
279
|
276
|
#endif
|
280
|
277
|
break;
|
281
|
278
|
case z2_sensitivity:
|
282
|
279
|
#if Z2_SENSORLESS
|
283
|
|
- sprintf_P(public_buf_m, PSTR("%d"), TERN(Z2_SENSORLESS, stepperZ2.homing_threshold(), 0));
|
|
280
|
+ itoa(TERN(Z2_SENSORLESS, stepperZ2.homing_threshold(), 0), public_buf_m, 10);
|
284
|
281
|
#endif
|
285
|
282
|
break;
|
286
|
283
|
}
|
|
@@ -346,16 +343,16 @@ static void set_value_confirm() {
|
346
|
343
|
case pause_pos_x: gCfgItems.pausePosX = atof(key_value); update_spi_flash(); break;
|
347
|
344
|
case pause_pos_y: gCfgItems.pausePosY = atof(key_value); update_spi_flash(); break;
|
348
|
345
|
case pause_pos_z: gCfgItems.pausePosZ = atof(key_value); update_spi_flash(); break;
|
349
|
|
- case level_pos_x1: gCfgItems.trammingPos[0][X_AXIS] = atoi(key_value); update_spi_flash(); break;
|
350
|
|
- case level_pos_y1: gCfgItems.trammingPos[0][Y_AXIS] = atoi(key_value); update_spi_flash(); break;
|
351
|
|
- case level_pos_x2: gCfgItems.trammingPos[1][X_AXIS] = atoi(key_value); update_spi_flash(); break;
|
352
|
|
- case level_pos_y2: gCfgItems.trammingPos[1][Y_AXIS] = atoi(key_value); update_spi_flash(); break;
|
353
|
|
- case level_pos_x3: gCfgItems.trammingPos[2][X_AXIS] = atoi(key_value); update_spi_flash(); break;
|
354
|
|
- case level_pos_y3: gCfgItems.trammingPos[2][Y_AXIS] = atoi(key_value); update_spi_flash(); break;
|
355
|
|
- case level_pos_x4: gCfgItems.trammingPos[3][X_AXIS] = atoi(key_value); update_spi_flash(); break;
|
356
|
|
- case level_pos_y4: gCfgItems.trammingPos[3][Y_AXIS] = atoi(key_value); update_spi_flash(); break;
|
357
|
|
- case level_pos_x5: gCfgItems.trammingPos[4][X_AXIS] = atoi(key_value); update_spi_flash(); break;
|
358
|
|
- case level_pos_y5: gCfgItems.trammingPos[4][Y_AXIS] = atoi(key_value); update_spi_flash(); break;
|
|
346
|
+ case level_pos_x1: gCfgItems.trammingPos[0].x = atoi(key_value); update_spi_flash(); break;
|
|
347
|
+ case level_pos_y1: gCfgItems.trammingPos[0].y = atoi(key_value); update_spi_flash(); break;
|
|
348
|
+ case level_pos_x2: gCfgItems.trammingPos[1].x = atoi(key_value); update_spi_flash(); break;
|
|
349
|
+ case level_pos_y2: gCfgItems.trammingPos[1].y = atoi(key_value); update_spi_flash(); break;
|
|
350
|
+ case level_pos_x3: gCfgItems.trammingPos[2].x = atoi(key_value); update_spi_flash(); break;
|
|
351
|
+ case level_pos_y3: gCfgItems.trammingPos[2].y = atoi(key_value); update_spi_flash(); break;
|
|
352
|
+ case level_pos_x4: gCfgItems.trammingPos[3].x = atoi(key_value); update_spi_flash(); break;
|
|
353
|
+ case level_pos_y4: gCfgItems.trammingPos[3].y = atoi(key_value); update_spi_flash(); break;
|
|
354
|
+ case level_pos_x5: gCfgItems.trammingPos[4].x = atoi(key_value); update_spi_flash(); break;
|
|
355
|
+ case level_pos_y5: gCfgItems.trammingPos[4].y = atoi(key_value); update_spi_flash(); break;
|
359
|
356
|
#if HAS_BED_PROBE
|
360
|
357
|
case x_offset: {
|
361
|
358
|
#if HAS_PROBE_XY_OFFSET
|