-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathConfiguration__adv_8h_source.html
518 lines (516 loc) · 72.5 KB
/
Configuration__adv_8h_source.html
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
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Prusa3d Marlin fork: Configuration_adv.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Prusa3d Marlin fork
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">Configuration_adv.h</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="preprocessor">#ifndef CONFIGURATION_ADV_H</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="preprocessor">#define CONFIGURATION_ADV_H</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>  </div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">//===========================================================================</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">//=============================Thermal Settings ============================</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment">//===========================================================================</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>  </div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="preprocessor">#ifdef BED_LIMIT_SWITCHING</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="preprocessor"> #define BED_HYSTERESIS 2 </span><span class="comment">//only disable heating if T>target+BED_HYSTERESIS and enable heating if T>target-BED_HYSTERESIS</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="preprocessor">#define BED_CHECK_INTERVAL 5000 </span><span class="comment">//ms between checks in bang-bang control</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>  </div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment">//automatic temperature: The hot end target temperature is calculated by all the buffered lines of gcode.</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment">//The maximum buffered steps/sec of the extruder motor are called "se".</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment">//You enter the autotemp mode by a M109 S<mintemp> B<maxtemp> F<factor></span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment">// the target temperature is set to mintemp+factor*se[steps/sec] and limited by mintemp and maxtemp</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment">// you exit the value by any M109 without F*</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="comment">// Also, if the temperature is set to a value <mintemp, it is not changed by autotemp.</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">// on an Ultimaker, some initial testing worked with M109 S215 B260 F1 in the start.gcode</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="comment">//#define AUTOTEMP</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#ifdef AUTOTEMP</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor"> #define AUTOTEMP_OLDWEIGHT 0.98</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>  </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="comment">//Show Temperature ADC value</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="comment">//The M105 command return, besides traditional information, the ADC value read from temperature sensors.</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="comment">//#define SHOW_TEMP_ADC_VALUES</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>  </div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="comment">// extruder run-out prevention.</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="comment">//if the machine is idle, and the temperature over MINTEMP, every couple of SECONDS some filament is extruded</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="comment">//#define EXTRUDER_RUNOUT_PREVENT</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#define EXTRUDER_RUNOUT_MINTEMP 190</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#define EXTRUDER_RUNOUT_SECONDS 30.</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#define EXTRUDER_RUNOUT_ESTEPS 14. </span><span class="comment">//mm filament</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#define EXTRUDER_RUNOUT_SPEED 1500. </span><span class="comment">//extrusion speed</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#define EXTRUDER_RUNOUT_EXTRUDE 100</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>  </div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="comment">//These defines help to calibrate the AD595 sensor in case you get wrong temperature measurements.</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment">//The measured temperature is defined as "actualTemp = (measuredTemp * TEMP_SENSOR_AD595_GAIN) + TEMP_SENSOR_AD595_OFFSET"</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor">#define TEMP_SENSOR_AD595_OFFSET 0.0</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor">#define TEMP_SENSOR_AD595_GAIN 1.0</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  </div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="comment">//This is for controlling a fan to cool down the stepper drivers</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="comment">//it will turn on when any driver is enabled</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="comment">//and turn off after the set amount of seconds from last driver being disabled again</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="preprocessor">#define CONTROLLERFAN_PIN -1 </span><span class="comment">//Pin used for the fan to cool controller (-1 to disable)</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="preprocessor">#define CONTROLLERFAN_SECS 60 </span><span class="comment">//How many seconds, after all motors were disabled, the fan should run</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor">#define CONTROLLERFAN_SPEED 255 </span><span class="comment">// == full speed</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  </div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment">// When first starting the main fan, run it at full speed for the</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="comment">// given number of milliseconds. This gets the fan spinning reliably</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="comment">// before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu)</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="preprocessor">#define FAN_KICKSTART_TIME 800</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  </div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="preprocessor">#define AUTO_REPORT</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  </div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="comment">//===========================================================================</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="comment">//=============================Mechanical Settings===========================</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="comment">//===========================================================================</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  </div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="preprocessor">#define ENDSTOPS_ONLY_FOR_HOMING </span><span class="comment">// If defined the endstops will only be used for homing</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  </div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  </div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="preprocessor">#ifdef MANUAL_HOME_POSITIONS </span><span class="comment">// Use manual limit switch locations</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="preprocessor"> #define X_HOME_POS MANUAL_X_HOME_POS</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="preprocessor"> #define Y_HOME_POS MANUAL_Y_HOME_POS</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="preprocessor"> #define Z_HOME_POS MANUAL_Z_HOME_POS</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="preprocessor">#else </span><span class="comment">//Set min/max homing switch positions based upon homing direction and min/max travel limits</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  <span class="comment">//X axis</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="preprocessor"> #if X_HOME_DIR == -1</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="preprocessor"> #ifdef BED_CENTER_AT_0_0</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="preprocessor"> #define X_HOME_POS X_MAX_LENGTH * -0.5</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="preprocessor"> #else</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="preprocessor"> #define X_HOME_POS X_MIN_POS</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="preprocessor"> #endif </span><span class="comment">//BED_CENTER_AT_0_0</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="preprocessor"> #else</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="preprocessor"> #ifdef BED_CENTER_AT_0_0</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="preprocessor"> #define X_HOME_POS X_MAX_LENGTH * 0.5</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="preprocessor"> #else</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="preprocessor"> #define X_HOME_POS X_MAX_POS</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="preprocessor"> #endif </span><span class="comment">//BED_CENTER_AT_0_0</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="preprocessor"> #endif </span><span class="comment">//X_HOME_DIR == -1</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  </div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  <span class="comment">//Y axis</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="preprocessor"> #if Y_HOME_DIR == -1</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="preprocessor"> #ifdef BED_CENTER_AT_0_0</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="preprocessor"> #define Y_HOME_POS Y_MAX_LENGTH * -0.5</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="preprocessor"> #else</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="preprocessor"> #define Y_HOME_POS Y_MIN_POS</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="preprocessor"> #endif </span><span class="comment">//BED_CENTER_AT_0_0</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="preprocessor"> #else</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="preprocessor"> #ifdef BED_CENTER_AT_0_0</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="preprocessor"> #define Y_HOME_POS Y_MAX_LENGTH * 0.5</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="preprocessor"> #else</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="preprocessor"> #define Y_HOME_POS Y_MAX_POS</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="preprocessor"> #endif </span><span class="comment">//BED_CENTER_AT_0_0</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="preprocessor"> #endif </span><span class="comment">//Y_HOME_DIR == -1</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  </div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  <span class="comment">// Z axis</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="preprocessor"> #if Z_HOME_DIR == -1 </span><span class="comment">//BED_CENTER_AT_0_0 not used</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="preprocessor"> #define Z_HOME_POS Z_MIN_POS</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="preprocessor"> #else</span></div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="preprocessor"> #define Z_HOME_POS Z_MAX_POS</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="preprocessor"> #endif </span><span class="comment">//Z_HOME_DIR == -1</span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="preprocessor">#endif </span><span class="comment">//End auto min/max positions</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="comment">//END AUTOSET LOCATIONS OF LIMIT SWITCHES -ZP</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  </div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  </div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="comment">// A single Z stepper driver is usually used to drive 2 stepper motors.</span></div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="comment">// Uncomment this define to utilize a separate stepper driver for each Z axis motor.</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="comment">// Only a few motherboards support this, like RAMPS, which have dual extruder support (the 2nd, often unused, extruder driver is used</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="comment">// to control the 2nd Z axis stepper motor). The pins are currently only defined for a RAMPS motherboards.</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="comment">// On a RAMPS (or other 5 driver) motherboard, using this feature will limit you to using 1 extruder.</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="comment">//#define Z_DUAL_STEPPER_DRIVERS</span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  </div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="preprocessor">#ifdef Z_DUAL_STEPPER_DRIVERS</span></div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="preprocessor"> #undef EXTRUDERS</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="preprocessor"> #define EXTRUDERS 1</span></div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  </div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="comment">// Same again but for Y Axis.</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="comment">//#define Y_DUAL_STEPPER_DRIVERS</span></div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  </div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="comment">// Define if the two Y drives need to rotate in opposite directions</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="preprocessor">#define INVERT_Y2_VS_Y_DIR 1</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>  </div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="preprocessor">#ifdef Y_DUAL_STEPPER_DRIVERS</span></div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="preprocessor"> #undef EXTRUDERS</span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="preprocessor"> #define EXTRUDERS 1</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  </div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="preprocessor">#if defined (Z_DUAL_STEPPER_DRIVERS) && defined (Y_DUAL_STEPPER_DRIVERS)</span></div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="preprocessor"> #error "You cannot have dual drivers for both Y and Z"</span></div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  </div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="comment">//homing hits the endstop, then retracts by this distance, before it tries to slowly bump again:</span></div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="preprocessor">#define X_HOME_RETRACT_MM 5</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="preprocessor">#define Y_HOME_RETRACT_MM 5</span></div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="preprocessor">#define Z_HOME_RETRACT_MM 2</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="comment">//#define QUICK_HOME //if this is defined, if both x and y are to be homed, a diagonal move will be performed initially.</span></div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  </div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="preprocessor">#define MAX_STEP_FREQUENCY 40000 </span><span class="comment">// Max step frequency for Ultimaker (5000 pps / half step). Toshiba steppers are 4x slower, but Prusa3D does not use those.</span></div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="comment">//By default pololu step drivers require an active high signal. However, some high power drivers require an active low signal as step.</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="preprocessor">#define INVERT_X_STEP_PIN 0</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="preprocessor">#define INVERT_Y_STEP_PIN 0</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="preprocessor">#define INVERT_Z_STEP_PIN 0</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="preprocessor">#define INVERT_E_STEP_PIN 0</span></div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  </div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="comment">//default stepper release if idle</span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="preprocessor">#define DEFAULT_STEPPER_DEACTIVE_TIME 60</span></div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  </div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="preprocessor">#define DEFAULT_MINIMUMFEEDRATE 0.0 </span><span class="comment">// minimum feedrate</span></div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="preprocessor">#define DEFAULT_MINTRAVELFEEDRATE 0.0</span></div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  </div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="comment">// Feedrates for manual moves along X, Y, Z, E from panel</span></div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  </div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  </div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="comment">//Comment to disable setting feedrate multiplier via encoder</span></div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="preprocessor">#define ULTIPANEL_FEEDMULTIPLY</span></div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  </div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="comment">// minimum time in microseconds that a movement needs to take if the buffer is emptied.</span></div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="preprocessor">#define DEFAULT_MINSEGMENTTIME 20000</span></div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>  </div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="comment">// If defined the movements slow down when the look ahead buffer is only half full</span></div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="preprocessor">#define SLOWDOWN</span></div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  </div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="comment">// MS1 MS2 Stepper Driver Microstepping mode table</span></div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="preprocessor">#define MICROSTEP1 LOW,LOW</span></div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="preprocessor">#define MICROSTEP2 HIGH,LOW</span></div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="preprocessor">#define MICROSTEP4 LOW,HIGH</span></div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="preprocessor">#define MICROSTEP8 HIGH,HIGH</span></div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="preprocessor">#define MICROSTEP16 HIGH,HIGH</span></div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  </div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="comment">// Microstep setting (Only functional when stepper driver microstep pins are connected to MCU.</span></div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="preprocessor">#define MICROSTEP_MODES {16,16,16,16,16} </span><span class="comment">// [1,2,4,8,16]</span></div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  </div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  </div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="comment">//===========================================================================</span></div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="comment">//=============================Additional Features===========================</span></div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="comment">//===========================================================================</span></div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>  </div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="comment">//#define CHDK 4 //Pin for triggering CHDK to take a picture see how to use it here http://captain-slow.dk/2014/03/09/3d-printing-timelapses/</span></div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="preprocessor">#define CHDK_DELAY 50 </span><span class="comment">//How long in ms the pin should stay HIGH before going LOW again</span></div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>  </div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="preprocessor">#define SD_FINISHED_STEPPERRELEASE 1 </span><span class="comment">//if sd support and the file is finished: disable steppers?</span></div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="preprocessor">#define SD_FINISHED_RELEASECOMMAND "M84 X Y Z E"</span> <span class="comment">// You might want to keep the z enabled so your bed stays in place.</span></div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  </div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="preprocessor">#define SDCARD_RATHERRECENTFIRST </span><span class="comment">//reverse file order of sd card menu display. Its sorted practically after the file system block order.</span></div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="comment">// if a file is deleted, it frees a block. hence, the order is not purely chronological. To still have auto0.g accessible, there is again the option to do that.</span></div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="comment">// using:</span></div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="comment">//#define MENU_ADDAUTOSTART</span></div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  </div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="preprocessor"> #define SDCARD_SORT_ALPHA </span><span class="comment">//Alphabetical sorting of SD files menu</span></div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  </div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  <span class="comment">// SD Card Sorting options</span></div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="preprocessor"> #ifdef SDCARD_SORT_ALPHA</span></div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="preprocessor"> #define SD_SORT_TIME 0</span></div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <span class="preprocessor"> #define SD_SORT_ALPHA 1</span></div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="preprocessor"> #define SD_SORT_NONE 2</span></div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="preprocessor"> #define INSERTSORT</span></div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  <span class="comment">// #define SORTING_DUMP</span></div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>  <span class="comment">// #define SORTING_SPEEDTEST</span></div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>  </div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="preprocessor"> #define SDSORT_LIMIT 100 </span><span class="comment">// Maximum number of sorted items (10-256).</span></div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="preprocessor"> #define FOLDER_SORTING -1 </span><span class="comment">// -1=above 0=none 1=below</span></div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="preprocessor"> #endif</span></div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>  </div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="preprocessor"> #if defined(SDCARD_SORT_ALPHA)</span></div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="preprocessor"> #define HAS_FOLDER_SORTING (FOLDER_SORTING)</span></div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="preprocessor"> #endif</span></div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  </div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="comment">// Enabe this option to get a pretty message whenever the endstop gets hit (as in the position at which the endstop got triggered)</span></div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="comment">//#define VERBOSE_CHECK_HIT_ENDSTOPS</span></div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>  </div>
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="comment">// Enable the option to stop SD printing when hitting and endstops, needs to be enabled from the LCD menu when this option is enabled.</span></div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="comment">//#define ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED</span></div>
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>  </div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="comment">// Babystepping enables the user to control the axis in tiny amounts, independently from the normal printing process</span></div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="comment">// it can e.g. be used to change z-positions in the print startup phase in real-time</span></div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="comment">// does not respect endstops!</span></div>
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="preprocessor">#define BABYSTEPPING</span></div>
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="preprocessor">#ifdef BABYSTEPPING</span></div>
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="preprocessor"> #define BABYSTEP_XY </span><span class="comment">//not only z, but also XY in the menu. more clutter, more functions</span></div>
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="preprocessor"> #define BABYSTEP_INVERT_Z 0 </span><span class="comment">//1 for inverse movements in Z</span></div>
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="preprocessor"> #define BABYSTEP_Z_MULTIPLICATOR 2 </span><span class="comment">//faster z movements</span></div>
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>  </div>
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <span class="preprocessor"> #ifdef COREXY</span></div>
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="preprocessor"> #error BABYSTEPPING not implemented for COREXY yet.</span></div>
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="preprocessor"> #endif</span></div>
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>  </div>
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="preprocessor">#define LIN_ADVANCE</span></div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>  </div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> <span class="preprocessor">#ifdef LIN_ADVANCE</span></div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="preprocessor"> #define LA_K_DEF 0 </span><span class="comment">// Default K factor (Unit: mm compression per 1mm/s extruder speed)</span></div>
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="preprocessor"> #define LA_K_MAX 10 </span><span class="comment">// Maximum acceptable K factor (exclusive, see notes in planner.cpp:plan_buffer_line)</span></div>
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="preprocessor"> #define LA_LA10_MIN LA_K_MAX </span><span class="comment">// Lin. Advance 1.0 threshold value (inclusive)</span></div>
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>  <span class="comment">//#define LA_FLOWADJ // Adjust LA along with flow/M221 for uniform width</span></div>
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>  <span class="comment">//#define LA_NOCOMPAT // Disable Linear Advance 1.0 compatibility</span></div>
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>  <span class="comment">//#define LA_LIVE_K // Allow adjusting K in the Tune menu</span></div>
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>  <span class="comment">//#define LA_DEBUG // If enabled, this will generate debug information output over USB.</span></div>
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>  <span class="comment">//#define LA_DEBUG_LOGIC // @wavexx: setup logic channels for isr debugging</span></div>
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>  </div>
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> <span class="comment">// Arc interpretation settings : Moved to the variant files.</span></div>
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  </div>
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> dropsegments=5; <span class="comment">//everything with less than this number of steps will be ignored as move and joined with the next movement</span></div>
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  </div>
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="comment">// If you are using a RAMPS board or cheap E-bay purchased boards that do not detect when an SD card is inserted</span></div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="comment">// You can get round this by connecting a push button or single throw switch to the pin defined as SDCARDCARDDETECT</span></div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="comment">// in the pins.h file. When using a push button pulling the pin to ground this will need inverted. This setting should</span></div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="comment">// be commented out otherwise</span></div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="preprocessor">#define SDCARDDETECTINVERTED</span></div>
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="preprocessor">#undef SDCARDDETECTINVERTED</span></div>
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>  </div>
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> <span class="comment">// Power Signal Control Definitions</span></div>
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="comment">// By default use ATX definition</span></div>
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> <span class="preprocessor">#ifndef POWER_SUPPLY</span></div>
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> <span class="preprocessor"> #define POWER_SUPPLY 1</span></div>
<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="comment">// 1 = ATX</span></div>
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="preprocessor">#if (POWER_SUPPLY == 1)</span></div>
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="preprocessor"> #define PS_ON_AWAKE LOW</span></div>
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="preprocessor"> #define PS_ON_ASLEEP HIGH</span></div>
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="comment">// 2 = X-Box 360 203W</span></div>
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="preprocessor">#if (POWER_SUPPLY == 2)</span></div>
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="preprocessor"> #define PS_ON_AWAKE HIGH</span></div>
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="preprocessor"> #define PS_ON_ASLEEP LOW</span></div>
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>  </div>
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="comment">// Control heater 0 and heater 1 in parallel.</span></div>
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> <span class="comment">//#define HEATERS_PARALLEL</span></div>
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>  </div>
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <span class="comment">//LCD status clock interval timer to switch between</span></div>
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="comment">// remaining print time</span></div>
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="comment">// and time to change/pause/interaction</span></div>
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="preprocessor">#define CLOCK_INTERVAL_TIME 5</span></div>
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>  </div>
<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="comment">//===========================================================================</span></div>
<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="comment">//=============================Buffers ============================</span></div>
<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="comment">//===========================================================================</span></div>
<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>  </div>
<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="comment">// The number of linear motions that can be in the plan at any give time.</span></div>
<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="comment">// THE BLOCK_BUFFER_SIZE NEEDS TO BE A POWER OF 2, i.g. 8,16,32 because shifts and ors are used to do the ring-buffering.</span></div>
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="preprocessor">#if defined SDSUPPORT</span></div>
<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="preprocessor"> #define BLOCK_BUFFER_SIZE 16 </span><span class="comment">// SD,LCD,Buttons take more memory, block buffer needs to be smaller</span></div>
<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> <span class="preprocessor">#else</span></div>
<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="preprocessor"> #define BLOCK_BUFFER_SIZE 16 </span><span class="comment">// maximize block buffer</span></div>
<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>  </div>
<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>  </div>
<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="comment">//The ASCII buffer for receiving from the serial:</span></div>
<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> <span class="preprocessor">#define MAX_CMD_SIZE 96</span></div>
<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> <span class="preprocessor">#define BUFSIZE 4</span></div>
<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="comment">// The command header contains the following values:</span></div>
<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <span class="comment">// 1st byte: the command source (CMDBUFFER_CURRENT_TYPE_USB, CMDBUFFER_CURRENT_TYPE_SDCARD, CMDBUFFER_CURRENT_TYPE_UI or CMDBUFFER_CURRENT_TYPE_CHAINED)</span></div>
<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> <span class="comment">// 2nd and 3rd byte (LSB first) contains a 16bit length of a command including its preceding comments.</span></div>
<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="preprocessor">#define CMDHDRSIZE 3</span></div>
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>  </div>
<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <span class="preprocessor">#define PAUSE_PARK_RETRACT_FEEDRATE 60 </span><span class="comment">// (mm/s) Initial retract feedrate.</span></div>
<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> <span class="preprocessor">#define PAUSE_PARK_RETRACT_LENGTH 2 </span><span class="comment">// (mm) Initial retract.</span></div>
<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>  <span class="comment">// This short retract is done immediately, before parking the nozzle.</span></div>
<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="preprocessor">#define FILAMENT_CHANGE_UNLOAD_FEEDRATE 10 </span><span class="comment">// (mm/s) Unload filament feedrate. This can be pretty fast.</span></div>
<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="preprocessor">#define FILAMENT_CHANGE_UNLOAD_ACCEL 25 </span><span class="comment">// (mm/s^2) Lower acceleration may allow a faster feedrate.</span></div>
<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <span class="preprocessor">#define FILAMENT_CHANGE_UNLOAD_LENGTH 100 </span><span class="comment">// (mm) The length of filament for a complete unload.</span></div>
<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>  <span class="comment">// For Bowden, the full length of the tube and nozzle.</span></div>
<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>  <span class="comment">// For direct drive, the full length of the nozzle.</span></div>
<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>  <span class="comment">// Set to 0 for manual unloading.</span></div>
<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="preprocessor">#define FILAMENT_CHANGE_SLOW_LOAD_FEEDRATE 6 </span><span class="comment">// (mm/s) Slow move when starting load.</span></div>
<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> <span class="preprocessor">#define FILAMENT_CHANGE_SLOW_LOAD_LENGTH 0 </span><span class="comment">// (mm) Slow length, to allow time to insert material.</span></div>
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>  <span class="comment">// 0 to disable start loading and skip to fast load only</span></div>
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="preprocessor">#define FILAMENT_CHANGE_FAST_LOAD_FEEDRATE 6 </span><span class="comment">// (mm/s) Load filament feedrate. This can be pretty fast.</span></div>
<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <span class="preprocessor">#define FILAMENT_CHANGE_FAST_LOAD_ACCEL 25 </span><span class="comment">// (mm/s^2) Lower acceleration may allow a faster feedrate.</span></div>
<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <span class="preprocessor">#define FILAMENT_CHANGE_FAST_LOAD_LENGTH 0 </span><span class="comment">// (mm) Load length of filament, from extruder gear to nozzle.</span></div>
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>  <span class="comment">// For Bowden, the full length of the tube and nozzle.</span></div>
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>  <span class="comment">// For direct drive, the full length of the nozzle.</span></div>
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="comment">//#define ADVANCED_PAUSE_CONTINUOUS_PURGE // Purge continuously up to the purge length until interrupted.</span></div>
<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> <span class="preprocessor">#define ADVANCED_PAUSE_PURGE_FEEDRATE 3 </span><span class="comment">// (mm/s) Extrude feedrate (after loading). Should be slower than load feedrate.</span></div>
<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="preprocessor">#define ADVANCED_PAUSE_PURGE_LENGTH 50 </span><span class="comment">// (mm) Length to extrude after loading.</span></div>
<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>  <span class="comment">// Set to 0 for manual extrusion.</span></div>
<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>  <span class="comment">// Filament can be extruded repeatedly from the Filament Change menu</span></div>
<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>  <span class="comment">// until extrusion is consistent, and to purge old filament.</span></div>
<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="preprocessor">#define ADVANCED_PAUSE_RESUME_PRIME 0 </span><span class="comment">// (mm) Extra distance to prime nozzle after returning from park.</span></div>
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="comment">//#define ADVANCED_PAUSE_FANS_PAUSE // Turn off print-cooling fans while the machine is paused.</span></div>
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>  </div>
<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>  <span class="comment">// Filament Unload does a Retract, Delay, and Purge first:</span></div>
<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="preprocessor">#define FILAMENT_UNLOAD_PURGE_RETRACT 13 </span><span class="comment">// (mm) Unload initial retract length.</span></div>
<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> <span class="preprocessor">#define FILAMENT_UNLOAD_PURGE_DELAY 5000 </span><span class="comment">// (ms) Delay for the filament to cool after retract.</span></div>
<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="preprocessor">#define FILAMENT_UNLOAD_PURGE_LENGTH 8 </span><span class="comment">// (mm) An unretract is done, then this length is purged.</span></div>
<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="preprocessor">#define FILAMENT_UNLOAD_PURGE_FEEDRATE 25 </span><span class="comment">// (mm/s) feedrate to purge before unload</span></div>
<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>  </div>
<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="preprocessor">#define PAUSE_PARK_NOZZLE_TIMEOUT 45 </span><span class="comment">// (seconds) Time limit before the nozzle is turned off for safety.</span></div>
<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> <span class="preprocessor">#define FILAMENT_CHANGE_ALERT_BEEPS 10 </span><span class="comment">// Number of alert beeps to play when a response is needed.</span></div>
<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> <span class="preprocessor">#define PAUSE_PARK_NO_STEPPER_TIMEOUT </span><span class="comment">// Enable for XYZ steppers to stay powered on during filament change.</span></div>
<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> <span class="comment">//#define FILAMENT_CHANGE_RESUME_ON_INSERT // Automatically continue / load filament when runout sensor is triggered again.</span></div>
<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <span class="comment">//#define PAUSE_REHEAT_FAST_RESUME // Reduce number of waits by not prompting again post-timeout before continuing.</span></div>
<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>  </div>
<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="comment">//#define PARK_HEAD_ON_PAUSE // Park the nozzle during pause and filament change.</span></div>
<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> <span class="comment">//#define HOME_BEFORE_FILAMENT_CHANGE // If needed, home before parking for filament change</span></div>
<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>  </div>
<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> <span class="comment">//#define FILAMENT_LOAD_UNLOAD_GCODES // Add M701/M702 Load/Unload G-codes, plus Load/Unload in the LCD Prepare menu.</span></div>
<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="comment">//#define FILAMENT_UNLOAD_ALL_EXTRUDERS // Allow M702 to unload all extruders above a minimum target temp (as set by M302)</span></div>
<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>  </div>
<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>  </div>
<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> <span class="comment">// Firmware based and LCD controlled retract</span></div>
<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> <span class="comment">// M207 and M208 can be used to define parameters for the retraction.</span></div>
<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="comment">// The retraction can be called by the slicer using G10 and G11</span></div>
<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> <span class="comment">// until then, intended retractions can be detected by moves that only extrude and the direction.</span></div>
<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> <span class="comment">// the moves are than replaced by the firmware controlled ones.</span></div>
<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>  </div>
<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> <span class="preprocessor">#define FWRETRACT </span><span class="comment">//ONLY PARTIALLY TESTED</span></div>
<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="preprocessor">#ifdef FWRETRACT</span></div>
<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <span class="preprocessor"> #define MIN_RETRACT 0.1 </span><span class="comment">//minimum extruded mm to accept a automatic gcode retraction attempt</span></div>
<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> <span class="preprocessor"> #define RETRACT_LENGTH 3 </span><span class="comment">//default retract length (positive mm)</span></div>
<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="preprocessor"> #define RETRACT_LENGTH_SWAP 13 </span><span class="comment">//default swap retract length (positive mm), for extruder change</span></div>
<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="preprocessor"> #define RETRACT_FEEDRATE 45 </span><span class="comment">//default feedrate for retracting (mm/s)</span></div>
<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="preprocessor"> #define RETRACT_ZLIFT 0 </span><span class="comment">//default retract Z-lift</span></div>
<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <span class="preprocessor"> #define RETRACT_RECOVER_LENGTH 0 </span><span class="comment">//default additional recover length (mm, added to retract length when recovering)</span></div>
<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> <span class="preprocessor"> #define RETRACT_RECOVER_LENGTH_SWAP 0 </span><span class="comment">//default additional swap recover length (mm, added to retract length when recovering from extruder change)</span></div>
<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="preprocessor"> #define RETRACT_RECOVER_FEEDRATE 8 </span><span class="comment">//default feedrate for recovering from retraction (mm/s)</span></div>
<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>  </div>
<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> <span class="comment">//adds support for experimental filament exchange support M600; requires display</span></div>
<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>  </div>
<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>  </div>
<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="preprocessor">#ifdef FILAMENTCHANGEENABLE</span></div>
<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="preprocessor"> #ifdef EXTRUDER_RUNOUT_PREVENT</span></div>
<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="preprocessor"> #error EXTRUDER_RUNOUT_PREVENT currently incompatible with FILAMENTCHANGE</span></div>
<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="preprocessor"> #endif</span></div>
<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>  </div>
<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> <span class="preprocessor">#define EXTENDED_CAPABILITIES_REPORT</span></div>
<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>  </div>
<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> <span class="comment">//#define M120_M121_ENABLED //Be careful enabling and using these G-code commands.</span></div>
<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>  </div>
<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="comment">//===========================================================================</span></div>
<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> <span class="comment">//============================= Define Defines ============================</span></div>
<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="comment">//===========================================================================</span></div>
<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>  </div>
<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="preprocessor">#if EXTRUDERS > 1 && defined HEATERS_PARALLEL</span></div>
<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="preprocessor"> #error "You cannot use HEATERS_PARALLEL if EXTRUDERS > 1"</span></div>
<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>  </div>
<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <span class="preprocessor">#if TEMP_SENSOR_0 > 0</span></div>
<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="preprocessor"> #define THERMISTORHEATER_0 TEMP_SENSOR_0</span></div>
<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> <span class="preprocessor"> #define HEATER_0_USES_THERMISTOR</span></div>
<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> <span class="preprocessor">#if TEMP_SENSOR_1 > 0</span></div>
<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="preprocessor"> #define THERMISTORHEATER_1 TEMP_SENSOR_1</span></div>
<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> <span class="preprocessor"> #define HEATER_1_USES_THERMISTOR</span></div>
<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> <span class="preprocessor">#if TEMP_SENSOR_2 > 0</span></div>
<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="preprocessor"> #define THERMISTORHEATER_2 TEMP_SENSOR_2</span></div>
<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="preprocessor"> #define HEATER_2_USES_THERMISTOR</span></div>
<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="preprocessor">#if TEMP_SENSOR_BED > 0</span></div>
<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> <span class="preprocessor"> #define THERMISTORBED TEMP_SENSOR_BED</span></div>
<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="preprocessor"> #define BED_USES_THERMISTOR</span></div>
<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> <span class="preprocessor">#if TEMP_SENSOR_PINDA > 0</span></div>
<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> <span class="preprocessor"> #define THERMISTORPINDA TEMP_SENSOR_PINDA</span></div>
<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="preprocessor">#if TEMP_SENSOR_AMBIENT > 0</span></div>
<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="preprocessor"> #define THERMISTORAMBIENT TEMP_SENSOR_AMBIENT</span></div>
<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> <span class="preprocessor">#if TEMP_SENSOR_0 == -1</span></div>
<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> <span class="preprocessor"> #define HEATER_0_USES_AD595</span></div>
<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="preprocessor">#if TEMP_SENSOR_1 == -1</span></div>
<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="preprocessor"> #define HEATER_1_USES_AD595</span></div>
<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <span class="preprocessor">#if TEMP_SENSOR_2 == -1</span></div>
<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="preprocessor"> #define HEATER_2_USES_AD595</span></div>
<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <span class="preprocessor">#if TEMP_SENSOR_BED == -1</span></div>
<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="preprocessor"> #define BED_USES_AD595</span></div>
<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> <span class="preprocessor">#if TEMP_SENSOR_0 == -2</span></div>
<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="preprocessor"> #define HEATER_0_USES_MAX6675</span></div>
<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="preprocessor">#if TEMP_SENSOR_0 == 0</span></div>
<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> <span class="preprocessor"> #undef HEATER_0_MINTEMP</span></div>
<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <span class="preprocessor"> #undef HEATER_0_MAXTEMP</span></div>
<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="preprocessor">#if TEMP_SENSOR_1 == 0</span></div>
<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> <span class="preprocessor"> #undef HEATER_1_MINTEMP</span></div>
<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> <span class="preprocessor"> #undef HEATER_1_MAXTEMP</span></div>
<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> <span class="preprocessor">#if TEMP_SENSOR_2 == 0</span></div>
<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="preprocessor"> #undef HEATER_2_MINTEMP</span></div>
<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> <span class="preprocessor"> #undef HEATER_2_MAXTEMP</span></div>
<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> <span class="preprocessor">#if TEMP_SENSOR_BED == 0</span></div>
<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> <span class="preprocessor"> #undef BED_MINTEMP</span></div>
<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="preprocessor"> #undef BED_MAXTEMP</span></div>
<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> <span class="preprocessor">#if TEMP_SENSOR_AMBIENT == 0</span></div>
<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <span class="preprocessor"> #undef AMBIENT_MINTEMP</span></div>
<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> <span class="preprocessor"> #undef AMBIENT_MAXTEMP</span></div>
<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>  </div>
<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>  </div>
<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> <span class="preprocessor">#endif </span><span class="comment">//__CONFIGURATION_ADV_H</span></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>