Browse Source

Merge pull request #3481 from thinkyhead/rc_extruder_offset_array

Fix: gcode_T using non-existent Z offset
Scott Lahteine 9 years ago
parent
commit
525d8256d4
1 changed files with 11 additions and 6 deletions
  1. 11
    6
      Marlin/Marlin_main.cpp

+ 11
- 6
Marlin/Marlin_main.cpp View File

322
 // Extruder offsets
322
 // Extruder offsets
323
 #if EXTRUDERS > 1
323
 #if EXTRUDERS > 1
324
   #ifndef EXTRUDER_OFFSET_X
324
   #ifndef EXTRUDER_OFFSET_X
325
-    #define EXTRUDER_OFFSET_X { 0 }
325
+    #define EXTRUDER_OFFSET_X { 0 } // X offsets for each extruder
326
   #endif
326
   #endif
327
   #ifndef EXTRUDER_OFFSET_Y
327
   #ifndef EXTRUDER_OFFSET_Y
328
-    #define EXTRUDER_OFFSET_Y { 0 }
328
+    #define EXTRUDER_OFFSET_Y { 0 } // Y offsets for each extruder
329
   #endif
329
   #endif
330
   float extruder_offset[][EXTRUDERS] = {
330
   float extruder_offset[][EXTRUDERS] = {
331
     EXTRUDER_OFFSET_X,
331
     EXTRUDER_OFFSET_X,
332
     EXTRUDER_OFFSET_Y
332
     EXTRUDER_OFFSET_Y
333
     #if ENABLED(DUAL_X_CARRIAGE)
333
     #if ENABLED(DUAL_X_CARRIAGE)
334
-      , { 0 } // supports offsets in XYZ plane
334
+      , { 0 } // Z offsets for each extruder
335
     #endif
335
     #endif
336
   };
336
   };
337
 #endif
337
 #endif
5150
 #if EXTRUDERS > 1
5150
 #if EXTRUDERS > 1
5151
 
5151
 
5152
   /**
5152
   /**
5153
-   * M218 - set hotend offset (in mm), T<extruder_number> X<offset_on_X> Y<offset_on_Y>
5153
+   * M218 - set hotend offset (in mm)
5154
+   *
5155
+   *   T<tool>
5156
+   *   X<xoffset>
5157
+   *   Y<yoffset>
5158
+   *   Z<zoffset> - Available with DUAL_X_CARRIAGE
5154
    */
5159
    */
5155
   inline void gcode_M218() {
5160
   inline void gcode_M218() {
5156
     if (setTargetedHotend(218)) return;
5161
     if (setTargetedHotend(218)) return;
6184
             // Offset extruder, make sure to apply the bed level rotation matrix
6189
             // Offset extruder, make sure to apply the bed level rotation matrix
6185
             vector_3 tmp_offset_vec = vector_3(extruder_offset[X_AXIS][tmp_extruder],
6190
             vector_3 tmp_offset_vec = vector_3(extruder_offset[X_AXIS][tmp_extruder],
6186
                                                extruder_offset[Y_AXIS][tmp_extruder],
6191
                                                extruder_offset[Y_AXIS][tmp_extruder],
6187
-                                               extruder_offset[Z_AXIS][tmp_extruder]),
6192
+                                               0),
6188
                      act_offset_vec = vector_3(extruder_offset[X_AXIS][active_extruder],
6193
                      act_offset_vec = vector_3(extruder_offset[X_AXIS][active_extruder],
6189
                                                extruder_offset[Y_AXIS][active_extruder],
6194
                                                extruder_offset[Y_AXIS][active_extruder],
6190
-                                               extruder_offset[Z_AXIS][active_extruder]),
6195
+                                               0),
6191
                      offset_vec = tmp_offset_vec - act_offset_vec;
6196
                      offset_vec = tmp_offset_vec - act_offset_vec;
6192
 
6197
 
6193
             #if ENABLED(DEBUG_LEVELING_FEATURE)
6198
             #if ENABLED(DEBUG_LEVELING_FEATURE)

Loading…
Cancel
Save