2.0.x
Scott Lahteine 8 years ago
parent 3d043976f7
commit 062131554f

@ -280,9 +280,9 @@
#ifndef MSG_UBL_OUTPUT_MAP_CSV #ifndef MSG_UBL_OUTPUT_MAP_CSV
#define MSG_UBL_OUTPUT_MAP_CSV _UxGT("Output for CSV") #define MSG_UBL_OUTPUT_MAP_CSV _UxGT("Output for CSV")
#endif #endif
#ifndef MSG_UBL_OUTPUT_MAP_BACKUP #ifndef MSG_UBL_OUTPUT_MAP_BACKUP
#define MSG_UBL_OUTPUT_MAP_BACKUP _UxGT("Off Printer Backup") #define MSG_UBL_OUTPUT_MAP_BACKUP _UxGT("Off Printer Backup")
#endif #endif
#ifndef MSG_UBL_INFO_UBL #ifndef MSG_UBL_INFO_UBL
#define MSG_UBL_INFO_UBL _UxGT("Output UBL Info") #define MSG_UBL_INFO_UBL _UxGT("Output UBL Info")
#endif #endif

@ -115,8 +115,9 @@
void unified_bed_leveling::display_map(const int map_type) { void unified_bed_leveling::display_map(const int map_type) {
constexpr uint8_t spaces = 8 * (GRID_MAX_POINTS_X - 2); constexpr uint8_t spaces = 8 * (GRID_MAX_POINTS_X - 2);
SERIAL_PROTOCOLPGM("\nBed Topography Report");
if (map_type == 0) { if (map_type == 0) {
SERIAL_PROTOCOLLNPGM("\nBed Topography Report:\n"); SERIAL_PROTOCOLPGM(":\n\n");
serial_echo_xy(0, GRID_MAX_POINTS_Y - 1); serial_echo_xy(0, GRID_MAX_POINTS_Y - 1);
SERIAL_ECHO_SP(spaces + 3); SERIAL_ECHO_SP(spaces + 3);
serial_echo_xy(GRID_MAX_POINTS_X - 1, GRID_MAX_POINTS_Y - 1); serial_echo_xy(GRID_MAX_POINTS_X - 1, GRID_MAX_POINTS_Y - 1);
@ -126,9 +127,10 @@
serial_echo_xy(UBL_MESH_MAX_X, UBL_MESH_MAX_Y); serial_echo_xy(UBL_MESH_MAX_X, UBL_MESH_MAX_Y);
SERIAL_EOL(); SERIAL_EOL();
} }
else {
if (map_type == 1) { SERIAL_PROTOCOLLNPGM("\nBed Topography Report for CSV:"); SERIAL_EOL(); } SERIAL_PROTOCOLPGM(" for ");
if (map_type == 2) { SERIAL_PROTOCOLLNPGM("\nBed Topography Report for LCD:"); SERIAL_EOL(); } serialprintPGM(map_type == 1 ? PSTR("CSV:\n\n") : PSTR("LCD:\n\n"));
}
const float current_xi = get_cell_index_x(current_position[X_AXIS] + (MESH_X_DIST) / 2.0), const float current_xi = get_cell_index_x(current_position[X_AXIS] + (MESH_X_DIST) / 2.0),
current_yi = get_cell_index_y(current_position[Y_AXIS] + (MESH_Y_DIST) / 2.0); current_yi = get_cell_index_y(current_position[Y_AXIS] + (MESH_Y_DIST) / 2.0);
@ -142,14 +144,14 @@
const float f = z_values[i][j]; const float f = z_values[i][j];
if (isnan(f)) { if (isnan(f)) {
serialprintPGM((map_type == 0) ? PSTR(" . ") : PSTR("NAN")); serialprintPGM(map_type == 0 ? PSTR(" . ") : PSTR("NAN"));
} }
else { else if (map_type <= 1) {
// if we don't do this, the columns won't line up nicely // if we don't do this, the columns won't line up nicely
if ((map_type == 0) && f >= 0.0) SERIAL_CHAR(' '); if (map_type == 0 && f >= 0.0) SERIAL_CHAR(' ');
if (map_type <= 1) SERIAL_PROTOCOL_F(f, 3); SERIAL_PROTOCOL_F(f, 3);
idle();
} }
idle();
if (map_type == 1 && i < GRID_MAX_POINTS_X - 1) SERIAL_CHAR(','); if (map_type == 1 && i < GRID_MAX_POINTS_X - 1) SERIAL_CHAR(',');
#if TX_BUFFER_SIZE > 0 #if TX_BUFFER_SIZE > 0
@ -162,7 +164,7 @@
} }
} }
SERIAL_EOL(); SERIAL_EOL();
if (j && (map_type == 0)) { // we want the (0,0) up tight against the block of numbers if (j && map_type == 0) { // we want the (0,0) up tight against the block of numbers
SERIAL_CHAR(' '); SERIAL_CHAR(' ');
SERIAL_EOL(); SERIAL_EOL();
} }
@ -183,8 +185,7 @@
bool unified_bed_leveling::sanity_check() { bool unified_bed_leveling::sanity_check() {
uint8_t error_flag = 0; uint8_t error_flag = 0;
const int a = settings.calc_num_meshes(); if (settings.calc_num_meshes() < 1) {
if (a < 1) {
SERIAL_PROTOCOLLNPGM("?Insufficient EEPROM storage for a mesh of this size."); SERIAL_PROTOCOLLNPGM("?Insufficient EEPROM storage for a mesh of this size.");
error_flag++; error_flag++;
} }

@ -1576,7 +1576,7 @@
if (ubl_lcd_map_control) { if (ubl_lcd_map_control) {
#if ENABLED(DOGLCD) #if ENABLED(DOGLCD)
lcd_goto_screen(_lcd_ubl_output_map_lcd); lcd_goto_screen(_lcd_ubl_output_map_lcd);
#endif #endif
} }
else lcd_return_to_status(); else lcd_return_to_status();

@ -2094,11 +2094,11 @@ void kill_screen(const char* lcd_msg) {
/*********************************************************/ /*********************************************************/
/************ Scale the box pixels appropriately *********/ /************ Scale the box pixels appropriately *********/
/*********************************************************/ /*********************************************************/
x_map_pixels = ((MAP_MAX_PIXELS_X - 4) / GRID_MAX_POINTS_X) * GRID_MAX_POINTS_X; x_map_pixels = ((MAP_MAX_PIXELS_X - 4) / (GRID_MAX_POINTS_X)) * (GRID_MAX_POINTS_X);
y_map_pixels = ((MAP_MAX_PIXELS_Y - 4) / GRID_MAX_POINTS_Y) * GRID_MAX_POINTS_Y; y_map_pixels = ((MAP_MAX_PIXELS_Y - 4) / (GRID_MAX_POINTS_Y)) * (GRID_MAX_POINTS_Y);
pixels_per_X_mesh_pnt = x_map_pixels / GRID_MAX_POINTS_X; pixels_per_X_mesh_pnt = x_map_pixels / (GRID_MAX_POINTS_X);
pixels_per_Y_mesh_pnt = y_map_pixels / GRID_MAX_POINTS_Y; pixels_per_Y_mesh_pnt = y_map_pixels / (GRID_MAX_POINTS_Y);
x_offset = MAP_UPPER_LEFT_CORNER_X + 1 + (MAP_MAX_PIXELS_X - x_map_pixels - 2) / 2; x_offset = MAP_UPPER_LEFT_CORNER_X + 1 + (MAP_MAX_PIXELS_X - x_map_pixels - 2) / 2;
y_offset = MAP_UPPER_LEFT_CORNER_Y + 1 + (MAP_MAX_PIXELS_Y - y_map_pixels - 2) / 2; y_offset = MAP_UPPER_LEFT_CORNER_Y + 1 + (MAP_MAX_PIXELS_Y - y_map_pixels - 2) / 2;
@ -2184,7 +2184,7 @@ void kill_screen(const char* lcd_msg) {
void sync_plan_position(); void sync_plan_position();
void _lcd_ubl_output_map_lcd() { void _lcd_ubl_output_map_lcd() {
static int step_scaler=0; static int16_t step_scaler = 0;
int32_t signed_enc_pos; int32_t signed_enc_pos;
defer_return_to_status = true; defer_return_to_status = true;
@ -2194,11 +2194,10 @@ void kill_screen(const char* lcd_msg) {
if (lcd_clicked) { return _lcd_ubl_map_lcd_edit_cmd(); } if (lcd_clicked) { return _lcd_ubl_map_lcd_edit_cmd(); }
ENCODER_DIRECTION_NORMAL(); ENCODER_DIRECTION_NORMAL();
if (encoderPosition != 0) { if (encoderPosition) {
signed_enc_pos = (int32_t)encoderPosition; signed_enc_pos = (int32_t)encoderPosition;
step_scaler += signed_enc_pos; step_scaler += signed_enc_pos;
x_plot = (x_plot + step_scaler / ENCODER_STEPS_PER_MENU_ITEM); x_plot += step_scaler / (ENCODER_STEPS_PER_MENU_ITEM);
if (abs(step_scaler) >= ENCODER_STEPS_PER_MENU_ITEM) if (abs(step_scaler) >= ENCODER_STEPS_PER_MENU_ITEM)
step_scaler = 0; step_scaler = 0;
refresh_cmd_timeout(); refresh_cmd_timeout();
@ -2240,7 +2239,7 @@ void kill_screen(const char* lcd_msg) {
ubl_map_move_to_xy(); // Move to current location ubl_map_move_to_xy(); // Move to current location
if (planner.movesplanned()>1) { // if the nozzle is moving, cancel the move. There is a new location if (planner.movesplanned() > 1) { // if the nozzle is moving, cancel the move. There is a new location
#define ENABLE_STEPPER_DRIVER_INTERRUPT() SBI(TIMSK1, OCIE1A) #define ENABLE_STEPPER_DRIVER_INTERRUPT() SBI(TIMSK1, OCIE1A)
#define DISABLE_STEPPER_DRIVER_INTERRUPT() CBI(TIMSK1, OCIE1A) #define DISABLE_STEPPER_DRIVER_INTERRUPT() CBI(TIMSK1, OCIE1A)
DISABLE_STEPPER_DRIVER_INTERRUPT(); DISABLE_STEPPER_DRIVER_INTERRUPT();

Loading…
Cancel
Save