chiark / gitweb /
Refresh of homeaxis-function
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Fri, 10 Aug 2012 16:34:47 +0000 (17:34 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Fri, 10 Aug 2012 16:34:47 +0000 (17:34 +0100)
Marlin/Marlin.pde

index 63501a87d210e2f08d5ab0f5050a7146d281ffcc..32c6ec893e4644cc8c0515f64d8a588fc059c6c7 100644 (file)
@@ -561,6 +561,7 @@ bool code_seen(char code)
 static const PROGMEM type array##_P[3] = { X_##CONFIG, Y_##CONFIG, Z_##CONFIG };
 
 DEFINE_PGM_READ_ANY(float,       float);
+DEFINE_PGM_READ_ANY(signed char, byte);
 
 XYZ_CONSTS_FROM_CONFIG(float, base_min_pos,    MIN_POS);
 XYZ_CONSTS_FROM_CONFIG(float, base_max_pos,    MAX_POS);
@@ -587,14 +588,14 @@ static void homeaxis(int axis) {
   if (doaxis & (1<<axis)) {
     current_position[axis] = 0;
     plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);
-    destination[axis] = 1.5 * XYZ_CONFIG(float,max_length,axis) * XYZ_CONFIG(byte,home_dir,axis);
+    destination[axis] = 1.5 * XYZ_CONFIG(max_length,axis) * XYZ_CONFIG(home_dir,axis);
     feedrate = homing_feedrate[axis];
     plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder);
     st_synchronize();
    
     current_position[axis] = 0;
     plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);
-    destination[axis] = -XYZ_CONFIG(float,home_retract_mm,axis) * home_dir[axis];
+    destination[axis] = -XYZ_CONFIG(home_retract_mm,axis) * XYZ_CONFIG(home_dir,axis);
     plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder);
     st_synchronize();