MENUITEM( lcdprintPGM(MSG_DISABLE_STEPPERS) , BLOCK;enquecommand("M84");beepshort(); ) ;
break;
case ItemP_home:
- MENUITEM( lcdprintPGM(MSG_AUTO_HOME) , BLOCK;enquecommand("G28 X-105 Y-105 Z0");beepshort(); ) ;
+ MENUITEM( lcdprintPGM(MSG_AUTO_HOME) , BLOCK;enquecommand("G28 X0 Y0 Z0");beepshort(); ) ;
break;
case ItemP_origin:
MENUITEM( lcdprintPGM(MSG_SET_ORIGIN) , BLOCK;enquecommand("G92 X0 Y0 Z0");beepshort(); ) ;
if(force_lcd_update)
{
lcd.setCursor(0,line);lcdprintPGM(" X:");
- lcd.setCursor(13,line);lcd.print(ftostr32(current_position[X_AXIS]));
+ lcd.setCursor(11,line);lcd.print(ftostr52(current_position[X_AXIS]));
}
if((activeline!=line) )
oldencoderpos=encoderpos;
encoderpos=0;
}
- lcd.setCursor(13,line);lcd.print(ftostr32(current_position[X_AXIS]));
+ lcd.setCursor(11,line);lcd.print(ftostr52(current_position[X_AXIS]));
}
}
break;
if(force_lcd_update)
{
lcd.setCursor(0,line);lcdprintPGM(" Y:");
- lcd.setCursor(13,line);lcd.print(ftostr32(current_position[Y_AXIS]));
+ lcd.setCursor(11,line);lcd.print(ftostr52(current_position[Y_AXIS]));
}
if((activeline!=line) )
oldencoderpos=encoderpos;
encoderpos=0;
}
- lcd.setCursor(13,line);lcd.print(ftostr32(current_position[Y_AXIS]));
+ lcd.setCursor(11,line);lcd.print(ftostr52(current_position[Y_AXIS]));
}
}
break;
if(force_lcd_update)
{
lcd.setCursor(0,line);lcdprintPGM(" Z:");
- lcd.setCursor(13,line);lcd.print(ftostr32(current_position[Z_AXIS]));
+ lcd.setCursor(11,line);lcd.print(ftostr52(current_position[Z_AXIS]));
}
if((activeline!=line) )
oldencoderpos=encoderpos;
encoderpos=0;
}
- lcd.setCursor(13,line);lcd.print(ftostr32(current_position[Z_AXIS]));
+ lcd.setCursor(11,line);lcd.print(ftostr52(current_position[Z_AXIS]));
}
}
break;
if(force_lcd_update)
{
lcd.setCursor(0,line);lcdprintPGM(" X steps/mm:");
- lcd.setCursor(13,line);lcd.print(itostr4(axis_steps_per_unit[0]));
+ lcd.setCursor(11,line);lcd.print(ftostr52(axis_steps_per_unit[0]));
}
if((activeline!=line) )
}
else
{
- float factor=float(encoderpos)/float(axis_steps_per_unit[0]);
+ float factor=float(encoderpos)/100/float(axis_steps_per_unit[0]);
position[X_AXIS]=lround(position[X_AXIS]*factor);
//current_position[3]*=factor;
- axis_steps_per_unit[X_AXIS]= encoderpos;
+ axis_steps_per_unit[X_AXIS]= encoderpos/100.0;
encoderpos=activeline*lcdslow;
-
}
BLOCK;
beepshort();
if(linechanging)
{
if(encoderpos<5) encoderpos=5;
- if(encoderpos>9999) encoderpos=9999;
- lcd.setCursor(13,line);lcd.print(itostr4(encoderpos));
+ if(encoderpos>99999) encoderpos=99999;
+ lcd.setCursor(11,line);lcd.print(ftostr52(encoderpos/100.0));
}
}break;
return conv;
}
+// convert float to string with +123.45 format
+char *ftostr52(const float &x)
+{
+ int xx=x*100;
+ conv[0]=(xx>=0)?'+':'-';
+ xx=abs(xx);
+ conv[1]=(xx/10000)%10+'0';
+ conv[2]=(xx/1000)%10+'0';
+ conv[3]=(xx/100)%10+'0';
+ conv[4]='.';
+ conv[5]=(xx/10)%10+'0';
+ conv[6]=(xx)%10+'0';
+ conv[7]=0;
+ return conv;
+}
#endif //ULTRA_LCD