|  |  |  | @ -229,18 +229,17 @@ bool axis_known_position[3] = { false }; | 
			
		
	
		
			
				
					|  |  |  |  | // Extruder offset
 | 
			
		
	
		
			
				
					|  |  |  |  | #if EXTRUDERS > 1 | 
			
		
	
		
			
				
					|  |  |  |  |   #ifndef EXTRUDER_OFFSET_X | 
			
		
	
		
			
				
					|  |  |  |  |     #define EXTRUDER_OFFSET_X 0 | 
			
		
	
		
			
				
					|  |  |  |  |     #define EXTRUDER_OFFSET_X { 0 } | 
			
		
	
		
			
				
					|  |  |  |  |   #endif | 
			
		
	
		
			
				
					|  |  |  |  |   #ifndef EXTRUDER_OFFSET_Y | 
			
		
	
		
			
				
					|  |  |  |  |     #define EXTRUDER_OFFSET_Y 0 | 
			
		
	
		
			
				
					|  |  |  |  |     #define EXTRUDER_OFFSET_Y { 0 } | 
			
		
	
		
			
				
					|  |  |  |  |   #endif | 
			
		
	
		
			
				
					|  |  |  |  |   #ifndef DUAL_X_CARRIAGE | 
			
		
	
		
			
				
					|  |  |  |  |     #define NUM_EXTRUDER_OFFSETS 2 // only in XY plane
 | 
			
		
	
		
			
				
					|  |  |  |  |   #else | 
			
		
	
		
			
				
					|  |  |  |  |     #define NUM_EXTRUDER_OFFSETS 3 // supports offsets in XYZ plane
 | 
			
		
	
		
			
				
					|  |  |  |  |   #endif | 
			
		
	
		
			
				
					|  |  |  |  |   #define _EXY { EXTRUDER_OFFSET_X, EXTRUDER_OFFSET_Y } | 
			
		
	
		
			
				
					|  |  |  |  |   float extruder_offset[EXTRUDERS][NUM_EXTRUDER_OFFSETS] = ARRAY_BY_EXTRUDERS(_EXY, _EXY, _EXY, _EXY); | 
			
		
	
		
			
				
					|  |  |  |  |   float extruder_offset[EXTRUDERS][NUM_EXTRUDER_OFFSETS]; | 
			
		
	
		
			
				
					|  |  |  |  | #endif | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | uint8_t active_extruder = 0; | 
			
		
	
	
		
			
				
					|  |  |  | @ -569,6 +568,13 @@ void servo_init() | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | void setup() | 
			
		
	
		
			
				
					|  |  |  |  | { | 
			
		
	
		
			
				
					|  |  |  |  |   #if EXTRUDERS > 1 | 
			
		
	
		
			
				
					|  |  |  |  |     float offset[3][EXTRUDERS] = { EXTRUDER_OFFSET_X, EXTRUDER_OFFSET_Y, ARRAY_BY_EXTRUDERS(0,0,0,0) }; | 
			
		
	
		
			
				
					|  |  |  |  |     for (int e=0; e<EXTRUDERS; e++) | 
			
		
	
		
			
				
					|  |  |  |  |       for (int i=0; i<NUM_EXTRUDER_OFFSETS; i++) | 
			
		
	
		
			
				
					|  |  |  |  |         extruder_offset[e][i] = offset[i,e]; | 
			
		
	
		
			
				
					|  |  |  |  |   #endif | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |   setup_killpin(); | 
			
		
	
		
			
				
					|  |  |  |  |   setup_filrunoutpin(); | 
			
		
	
		
			
				
					|  |  |  |  |   setup_powerhold(); | 
			
		
	
	
		
			
				
					|  |  |  | 
 |