From 1d431fe8d27b3b5c16333793c71408fe0156308b Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 22 Feb 2020 19:26:52 -0600 Subject: [PATCH 01/12] Suppress "packed member" warning --- Marlin/src/sd/SdBaseFile.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Marlin/src/sd/SdBaseFile.cpp b/Marlin/src/sd/SdBaseFile.cpp index 22c0cd2f75..cdb1072cbe 100644 --- a/Marlin/src/sd/SdBaseFile.cpp +++ b/Marlin/src/sd/SdBaseFile.cpp @@ -20,6 +20,12 @@ * */ +#if __GNUC__ > 8 + // The NXP platform updated GCC from 7.2.1 to 9.2.1 + // and this new warning apparently can be ignored. + #pragma GCC diagnostic ignored "-Waddress-of-packed-member" +#endif + /** * Arduino SdFat Library * Copyright (c) 2009 by William Greiman From 29ec868c4bc19058f02039c2a90e21fed816c257 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 22 Feb 2020 20:45:59 -0600 Subject: [PATCH 02/12] Commit last SD line before fileHasFinished --- Marlin/src/gcode/queue.cpp | 40 ++++++++++++++++-------------------- Marlin/src/sd/cardreader.cpp | 2 +- Marlin/src/sd/cardreader.h | 2 +- 3 files changed, 20 insertions(+), 24 deletions(-) diff --git a/Marlin/src/gcode/queue.cpp b/Marlin/src/gcode/queue.cpp index 12c3703630..c3c155e4c3 100644 --- a/Marlin/src/gcode/queue.cpp +++ b/Marlin/src/gcode/queue.cpp @@ -526,42 +526,38 @@ void GCodeQueue::get_serial_commands() { while (length < BUFSIZE && !card_eof) { const int16_t n = card.get(); card_eof = card.eof(); + if (n < 0) { SERIAL_ERROR_MSG(MSG_SD_ERR_READ); continue; } const char sd_char = (char)n; - if (card_eof || n < 0 || sd_char == '\n' || sd_char == '\r') { + if (sd_char == '\n' || sd_char == '\r' || card_eof) { + + // Reset stream state, terminate the buffer, and commit a non-empty command + if (!process_line_done(sd_input_state, command_buffer[index_w], sd_count)) { + _commit_command(false); // The file was not terminated with a newline + #if ENABLED(POWER_LOSS_RECOVERY) + recovery.cmd_sdpos = card.getIndex(); // Prime for the next _commit_command + #endif + } + if (card_eof) { - card.printingHasFinished(); + card.fileHasFinished(); // Handle end of file reached - if (IS_SD_PRINTING()) - sd_count = 0; // If a sub-file was printing, continue from call point - else { - SERIAL_ECHOLNPGM(MSG_FILE_PRINTED); + if (!IS_SD_PRINTING()) { // Was it the main job file? + SERIAL_ECHOLNPGM(MSG_FILE_PRINTED); // Tell the host the file is printed. #if ENABLED(PRINTER_EVENT_LEDS) - printerEventLEDs.onPrintCompleted(); + printerEventLEDs.onPrintCompleted(); // Change LED color for Print Completed #if HAS_RESUME_CONTINUE - enqueue_now_P(PSTR("M0 S" + enqueue_now_P(PSTR("M0 S" // Display "Click to Continue..." #if HAS_LCD_MENU - "1800" + "1800" // ...for 30 minutes with LCD #else - "60" + "60" // ...for 1 minute with no LCD #endif )); #endif #endif } } - else if (n < 0) - SERIAL_ERROR_MSG(MSG_SD_ERR_READ); - - // Terminate the buffer, reset the input state, continue for empty line - if (process_line_done(sd_input_state, command_buffer[index_w], sd_count)) - continue; - - _commit_command(false); - - #if ENABLED(POWER_LOSS_RECOVERY) - recovery.cmd_sdpos = card.getIndex(); // Prime for the next _commit_command - #endif } else process_stream_char(sd_char, sd_input_state, command_buffer[index_w], sd_count); diff --git a/Marlin/src/sd/cardreader.cpp b/Marlin/src/sd/cardreader.cpp index 0b3a91f40e..3cc888fd96 100644 --- a/Marlin/src/sd/cardreader.cpp +++ b/Marlin/src/sd/cardreader.cpp @@ -1063,7 +1063,7 @@ uint16_t CardReader::get_num_Files() { // // Return from procedure or close out the Print Job // -void CardReader::printingHasFinished() { +void CardReader::fileHasFinished() { planner.synchronize(); file.close(); if (file_subcall_ctr > 0) { // Resume calling file after closing procedure diff --git a/Marlin/src/sd/cardreader.h b/Marlin/src/sd/cardreader.h index 54d541c38a..8e09f44479 100644 --- a/Marlin/src/sd/cardreader.h +++ b/Marlin/src/sd/cardreader.h @@ -106,7 +106,7 @@ public: // Print job static void openAndPrintFile(const char *name); // (working directory) - static void printingHasFinished(); + static void fileHasFinished(); static void getAbsFilename(char *dst); static void startFileprint(); static void printFilename(); From b2328d089a1c3c375de729c0af623c638d631078 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 22 Feb 2020 21:36:12 -0600 Subject: [PATCH 03/12] Allow LCD_PIXEL_WIDTH/HEIGHT override --- Marlin/src/gcode/queue.cpp | 2 +- Marlin/src/inc/Conditionals_LCD.h | 9 +++++++++ Marlin/src/lcd/dogm/HAL_LCD_com_defines.h | 3 ++- Marlin/src/lcd/dogm/u8g_dev_st7920_128x64_HAL.cpp | 2 -- Marlin/src/lcd/dogm/ultralcd_DOGM.h | 7 ------- Marlin/src/lcd/dogm/ultralcd_st7920_u8glib_rrd_AVR.cpp | 2 +- Marlin/src/lcd/dogm/ultralcd_st7920_u8glib_rrd_AVR.h | 9 +++------ 7 files changed, 16 insertions(+), 18 deletions(-) diff --git a/Marlin/src/gcode/queue.cpp b/Marlin/src/gcode/queue.cpp index c3c155e4c3..5edd2d926b 100644 --- a/Marlin/src/gcode/queue.cpp +++ b/Marlin/src/gcode/queue.cpp @@ -532,7 +532,7 @@ void GCodeQueue::get_serial_commands() { // Reset stream state, terminate the buffer, and commit a non-empty command if (!process_line_done(sd_input_state, command_buffer[index_w], sd_count)) { - _commit_command(false); // The file was not terminated with a newline + _commit_command(false); // Can handle last line missing a newline terminator #if ENABLED(POWER_LOSS_RECOVERY) recovery.cmd_sdpos = card.getIndex(); // Prime for the next _commit_command #endif diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index 67130d21e4..5cbdafd6e0 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -361,6 +361,15 @@ #define HAS_ADC_BUTTONS ENABLED(ADC_KEYPAD) #define HAS_DGUS_LCD ANY(DGUS_LCD_UI_ORIGIN, DGUS_LCD_UI_FYSETC, DGUS_LCD_UI_HIPRECY) +#if HAS_GRAPHICAL_LCD + #ifndef LCD_PIXEL_WIDTH + #define LCD_PIXEL_WIDTH 128 + #endif + #ifndef LCD_PIXEL_HEIGHT + #define LCD_PIXEL_HEIGHT 64 + #endif +#endif + /** * Extruders have some combination of stepper motors and hotends * so we separate these concepts into the defines: diff --git a/Marlin/src/lcd/dogm/HAL_LCD_com_defines.h b/Marlin/src/lcd/dogm/HAL_LCD_com_defines.h index e1478ff98e..25224934c5 100644 --- a/Marlin/src/lcd/dogm/HAL_LCD_com_defines.h +++ b/Marlin/src/lcd/dogm/HAL_LCD_com_defines.h @@ -25,7 +25,7 @@ #include -#ifndef U8G_HAL_LINKS +#ifndef U8G_HAL_LINKS // Defined by LPC1768/9 environments in platform.ini #ifdef __SAM3X8E__ @@ -75,6 +75,7 @@ #define U8G_COM_ST7920_HAL_HW_SPI u8g_com_arduino_st7920_hw_spi_fn #endif + // This can't be invoked from the current platformio.ini #ifdef TARGET_LPC1768 uint8_t u8g_com_HAL_LPC1768_ssd_hw_i2c_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); #endif diff --git a/Marlin/src/lcd/dogm/u8g_dev_st7920_128x64_HAL.cpp b/Marlin/src/lcd/dogm/u8g_dev_st7920_128x64_HAL.cpp index 34712e0706..b6449bd4ae 100644 --- a/Marlin/src/lcd/dogm/u8g_dev_st7920_128x64_HAL.cpp +++ b/Marlin/src/lcd/dogm/u8g_dev_st7920_128x64_HAL.cpp @@ -59,8 +59,6 @@ #include "HAL_LCD_com_defines.h" -#define LCD_PIXEL_WIDTH 128 -#define LCD_PIXEL_HEIGHT 64 #define PAGE_HEIGHT 8 /* init sequence from https://github.com/adafruit/ST7565-LCD/blob/master/ST7565/ST7565.cpp */ diff --git a/Marlin/src/lcd/dogm/ultralcd_DOGM.h b/Marlin/src/lcd/dogm/ultralcd_DOGM.h index 27443d9e71..536b8f0bf9 100644 --- a/Marlin/src/lcd/dogm/ultralcd_DOGM.h +++ b/Marlin/src/lcd/dogm/ultralcd_DOGM.h @@ -196,13 +196,6 @@ #endif #endif -#ifndef LCD_PIXEL_WIDTH - #define LCD_PIXEL_WIDTH 128 -#endif -#ifndef LCD_PIXEL_HEIGHT - #define LCD_PIXEL_HEIGHT 64 -#endif - // LCD_FULL_PIXEL_WIDTH = // LCD_PIXEL_OFFSET_X + (LCD_PIXEL_WIDTH * 2) + LCD_PIXEL_OFFSET_X #if ENABLED(FSMC_GRAPHICAL_TFT) diff --git a/Marlin/src/lcd/dogm/ultralcd_st7920_u8glib_rrd_AVR.cpp b/Marlin/src/lcd/dogm/ultralcd_st7920_u8glib_rrd_AVR.cpp index 41b0c571f0..4e38e554a2 100644 --- a/Marlin/src/lcd/dogm/ultralcd_st7920_u8glib_rrd_AVR.cpp +++ b/Marlin/src/lcd/dogm/ultralcd_st7920_u8glib_rrd_AVR.cpp @@ -154,4 +154,4 @@ u8g_dev_t u8g_dev_st7920_128x64_rrd_sw_spi = { u8g_dev_rrd_st7920_128x64_fn, &u8 #endif #endif // U8GLIB_ST7920 -#endif // __AVR__ && !U8G_HAL_LINKS +#endif // !U8G_HAL_LINKS && (__AVR__ || ARDUINO_ARCH_STM32 || ARDUINO_ARCH_ESP32) diff --git a/Marlin/src/lcd/dogm/ultralcd_st7920_u8glib_rrd_AVR.h b/Marlin/src/lcd/dogm/ultralcd_st7920_u8glib_rrd_AVR.h index 6bcf3a94cf..c6e0b9944b 100644 --- a/Marlin/src/lcd/dogm/ultralcd_st7920_u8glib_rrd_AVR.h +++ b/Marlin/src/lcd/dogm/ultralcd_st7920_u8glib_rrd_AVR.h @@ -31,12 +31,9 @@ #define ST7920_DAT_PIN LCD_PINS_ENABLE #define ST7920_CS_PIN LCD_PINS_RS -//#define PAGE_HEIGHT 8 //128 byte framebuffer -#define PAGE_HEIGHT 16 //256 byte framebuffer -//#define PAGE_HEIGHT 32 //512 byte framebuffer - -#define LCD_PIXEL_WIDTH 128 -#define LCD_PIXEL_HEIGHT 64 +//#define PAGE_HEIGHT 8 // 128 byte framebuffer +#define PAGE_HEIGHT 16 // 256 byte framebuffer +//#define PAGE_HEIGHT 32 // 512 byte framebuffer #include From 0ba18848af83d66aa14ca8f5d387ab9f630d450e Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 10 Feb 2020 16:22:38 -0600 Subject: [PATCH 04/12] Allow USE_GCODE_SUBCODES for debugging --- Marlin/src/gcode/geometry/G92.cpp | 2 +- Marlin/src/gcode/parser.cpp | 22 +++++++++++----------- Marlin/src/gcode/parser.h | 4 ++-- Marlin/src/inc/Conditionals_post.h | 4 +++- 4 files changed, 17 insertions(+), 15 deletions(-) diff --git a/Marlin/src/gcode/geometry/G92.cpp b/Marlin/src/gcode/geometry/G92.cpp index dd87349976..0ed10beb54 100644 --- a/Marlin/src/gcode/geometry/G92.cpp +++ b/Marlin/src/gcode/geometry/G92.cpp @@ -35,7 +35,7 @@ void GcodeSuite::G92() { bool sync_E = false, sync_XYZ = false; - #if USE_GCODE_SUBCODES + #if ENABLED(USE_GCODE_SUBCODES) const uint8_t subcode_G92 = parser.subcode; #else constexpr uint8_t subcode_G92 = 0; diff --git a/Marlin/src/gcode/parser.cpp b/Marlin/src/gcode/parser.cpp index 8218ee53d8..a49b8b216e 100644 --- a/Marlin/src/gcode/parser.cpp +++ b/Marlin/src/gcode/parser.cpp @@ -51,13 +51,13 @@ char *GCodeParser::command_ptr, char GCodeParser::command_letter; int GCodeParser::codenum; -#if USE_GCODE_SUBCODES +#if ENABLED(USE_GCODE_SUBCODES) uint8_t GCodeParser::subcode; #endif #if ENABLED(GCODE_MOTION_MODES) int16_t GCodeParser::motion_mode_codenum = -1; - #if USE_GCODE_SUBCODES + #if ENABLED(USE_GCODE_SUBCODES) uint8_t GCodeParser::motion_mode_subcode; #endif #endif @@ -83,7 +83,7 @@ void GCodeParser::reset() { string_arg = nullptr; // No whole line argument command_letter = '?'; // No command letter codenum = 0; // No command code - #if USE_GCODE_SUBCODES + #if ENABLED(USE_GCODE_SUBCODES) subcode = 0; // No command sub-code #endif #if ENABLED(FASTER_GCODE_PARSER) @@ -187,12 +187,12 @@ void GCodeParser::parse(char *p) { do { codenum *= 10, codenum += *p++ - '0'; } while (NUMERIC(*p)); // Allow for decimal point in command - #if USE_GCODE_SUBCODES - if (*p == '.') { - p++; - while (NUMERIC(*p)) - subcode *= 10, subcode += *p++ - '0'; - } + #if ENABLED(USE_GCODE_SUBCODES) + if (*p == '.') { + p++; + while (NUMERIC(*p)) + subcode *= 10, subcode += *p++ - '0'; + } #endif // Skip all spaces to get to the first argument, or nul @@ -206,7 +206,7 @@ void GCodeParser::parse(char *p) { ) ) { motion_mode_codenum = codenum; - #if USE_GCODE_SUBCODES + #if ENABLED(USE_GCODE_SUBCODES) motion_mode_subcode = subcode; #endif } @@ -225,7 +225,7 @@ void GCodeParser::parse(char *p) { if (motion_mode_codenum < 0) return; command_letter = 'G'; codenum = motion_mode_codenum; - #if USE_GCODE_SUBCODES + #if ENABLED(USE_GCODE_SUBCODES) subcode = motion_mode_subcode; #endif p--; // Back up one character to use the current parameter diff --git a/Marlin/src/gcode/parser.h b/Marlin/src/gcode/parser.h index 08f8613c17..70eb85e31e 100644 --- a/Marlin/src/gcode/parser.h +++ b/Marlin/src/gcode/parser.h @@ -85,13 +85,13 @@ public: *string_arg, // string of command line command_letter; // G, M, or T static int codenum; // 123 - #if USE_GCODE_SUBCODES + #if ENABLED(USE_GCODE_SUBCODES) static uint8_t subcode; // .1 #endif #if ENABLED(GCODE_MOTION_MODES) static int16_t motion_mode_codenum; - #if USE_GCODE_SUBCODES + #if ENABLED(USE_GCODE_SUBCODES) static uint8_t motion_mode_subcode; #endif FORCE_INLINE static void cancel_motion_mode() { motion_mode_codenum = -1; } diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 624de26a0b..6785ea01e8 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -2110,7 +2110,9 @@ #endif // Add commands that need sub-codes to this list -#define USE_GCODE_SUBCODES ANY(G38_PROBE_TARGET, CNC_COORDINATE_SYSTEMS, POWER_LOSS_RECOVERY) +#if ANY(G38_PROBE_TARGET, CNC_COORDINATE_SYSTEMS, POWER_LOSS_RECOVERY) + #define USE_GCODE_SUBCODES +#endif // Parking Extruder #if ENABLED(PARKING_EXTRUDER) From 529d57bddf63ea4598b4c5a3f4ff42f188c995c8 Mon Sep 17 00:00:00 2001 From: Giuliano Zaro <3684609+GMagician@users.noreply.github.com> Date: Sun, 23 Feb 2020 14:47:30 +0100 Subject: [PATCH 05/12] Sync Italian language (#16935) --- Marlin/src/lcd/language/language_it.h | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Marlin/src/lcd/language/language_it.h b/Marlin/src/lcd/language/language_it.h index addd02c7a7..af1f762080 100644 --- a/Marlin/src/lcd/language/language_it.h +++ b/Marlin/src/lcd/language/language_it.h @@ -38,6 +38,7 @@ namespace Language_it { PROGMEM Language_Str LANGUAGE = _UxGT("Italian"); PROGMEM Language_Str WELCOME_MSG = MACHINE_NAME _UxGT(" pronto."); + PROGMEM Language_Str MSG_MARLIN = _UxGT("Marlin"); PROGMEM Language_Str MSG_YES = _UxGT("SI"); PROGMEM Language_Str MSG_NO = _UxGT("NO"); PROGMEM Language_Str MSG_BACK = _UxGT("Indietro"); @@ -255,6 +256,16 @@ namespace Language_it { PROGMEM Language_Str MSG_LCD_OFF = _UxGT("Off"); PROGMEM Language_Str MSG_PID_AUTOTUNE = _UxGT("PID Autotune"); PROGMEM Language_Str MSG_PID_AUTOTUNE_E = _UxGT("PID Autotune *"); + PROGMEM Language_Str MSG_PID_P = _UxGT("PID-P"); + PROGMEM Language_Str MSG_PID_P_E = _UxGT("PID-P *"); + PROGMEM Language_Str MSG_PID_I = _UxGT("PID-I"); + PROGMEM Language_Str MSG_PID_I_E = _UxGT("PID-I *"); + PROGMEM Language_Str MSG_PID_D = _UxGT("PID-D"); + PROGMEM Language_Str MSG_PID_D_E = _UxGT("PID-D *"); + PROGMEM Language_Str MSG_PID_C = _UxGT("PID-C"); + PROGMEM Language_Str MSG_PID_C_E = _UxGT("PID-C *"); + PROGMEM Language_Str MSG_PID_F = _UxGT("PID-F"); + PROGMEM Language_Str MSG_PID_F_E = _UxGT("PID-F *"); PROGMEM Language_Str MSG_SELECT = _UxGT("Seleziona"); PROGMEM Language_Str MSG_SELECT_E = _UxGT("Seleziona *"); PROGMEM Language_Str MSG_ACC = _UxGT("Accel"); From 2bcc2ec7d1125428beb6898a527d1cc49c26ac78 Mon Sep 17 00:00:00 2001 From: Jason Smith Date: Sun, 23 Feb 2020 05:48:56 -0800 Subject: [PATCH 06/12] Reduce default TMC baudrate to 57600 with Software Serial (#16930) --- Marlin/src/module/stepper/trinamic.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/Marlin/src/module/stepper/trinamic.cpp b/Marlin/src/module/stepper/trinamic.cpp index 506383aa35..0b14aaf647 100644 --- a/Marlin/src/module/stepper/trinamic.cpp +++ b/Marlin/src/module/stepper/trinamic.cpp @@ -117,7 +117,16 @@ enum StealthIndex : uint8_t { STEALTH_AXIS_XY, STEALTH_AXIS_Z, STEALTH_AXIS_E }; #endif #ifndef TMC_BAUD_RATE - #define TMC_BAUD_RATE 115200 + #if HAS_TMC_SW_SERIAL + // Reduce baud rate for boards not already overriding TMC_BAUD_RATE for software serial. + // Testing has shown that 115200 is not 100% reliable on AVR platforms, occasionally + // failing to read status properly. 32-bit platforms typically define an even lower + // TMC_BAUD_RATE, due to differences in how SoftwareSerial libraries work on different + // platforms. + #define TMC_BAUD_RATE 57600 + #else + #define TMC_BAUD_RATE 115200 + #endif #endif #if HAS_DRIVER(TMC2130) From 9717b3044f41d47dab2b426823e2de0d466dcf59 Mon Sep 17 00:00:00 2001 From: thinkyhead Date: Mon, 24 Feb 2020 00:03:56 +0000 Subject: [PATCH 07/12] [cron] Bump distribution date (2020-02-24) --- Marlin/src/inc/Version.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 18e6215b57..64f557ab02 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2020-02-23" + #define STRING_DISTRIBUTION_DATE "2020-02-24" #endif /** From ebd2bcc177640ad0a272426675bc1322272e7bc2 Mon Sep 17 00:00:00 2001 From: Jason Smith Date: Sun, 23 Feb 2020 11:55:24 -0800 Subject: [PATCH 08/12] Fix AXIS_HAS_SW_SERIAL --- Marlin/src/core/drivers.h | 2 +- Marlin/src/inc/Conditionals_post.h | 53 ++++++++++++++++++++++++++++++ buildroot/share/tests/esp32-tests | 15 +++++++++ 3 files changed, 69 insertions(+), 1 deletion(-) diff --git a/Marlin/src/core/drivers.h b/Marlin/src/core/drivers.h index ad2c755bae..f1410f1d47 100644 --- a/Marlin/src/core/drivers.h +++ b/Marlin/src/core/drivers.h @@ -131,7 +131,7 @@ #define AXIS_HAS_UART(A) ( AXIS_DRIVER_TYPE(A,TMC2208) \ || AXIS_DRIVER_TYPE(A,TMC2209) ) -#define AXIS_HAS_SW_SERIAL(A) ((AXIS_HAS_UART(A) && !defined(A##_HARDWARE_SERIAL))) +#define AXIS_HAS_SW_SERIAL(A) ((AXIS_HAS_UART(A) && !HAS_##A##_HARDWARE_SERIAL)) #define AXIS_HAS_STALLGUARD(A) ( AXIS_DRIVER_TYPE(A,TMC2130) \ || AXIS_DRIVER_TYPE(A,TMC2160) \ diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 6785ea01e8..55058a4d11 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -1444,6 +1444,59 @@ #define HAS_Z4_MAX (PIN_EXISTS(Z4_MAX)) #define HAS_Z_MIN_PROBE_PIN (HAS_CUSTOM_PROBE_PIN && PIN_EXISTS(Z_MIN_PROBE)) +// Cannot use a macro with a defined() statement inside REPEAT macros. +// [AXIS]_HARDWARE_SERIAL definitions are typically strings which cannot be +// tested directly, as they will evaluate to 0. +#ifdef X_HARDWARE_SERIAL + #define HAS_X_HARDWARE_SERIAL 1 +#endif +#ifdef X2_HARDWARE_SERIAL + #define HAS_X2_HARDWARE_SERIAL 1 +#endif +#ifdef Y_HARDWARE_SERIAL + #define HAS_Y_HARDWARE_SERIAL 1 +#endif +#ifdef Y2_HARDWARE_SERIAL + #define HAS_Y2_HARDWARE_SERIAL 1 +#endif +#ifdef Z_HARDWARE_SERIAL + #define HAS_Z_HARDWARE_SERIAL 1 +#endif +#ifdef Z2_HARDWARE_SERIAL + #define HAS_Z2_HARDWARE_SERIAL 1 +#endif +#ifdef Z3_HARDWARE_SERIAL + #define HAS_Z3_HARDWARE_SERIAL 1 +#endif +#ifdef Z4_HARDWARE_SERIAL + #define HAS_Z4_HARDWARE_SERIAL 1 +#endif +#ifdef E0_HARDWARE_SERIAL + #define HAS_E0_HARDWARE_SERIAL 1 +#endif +#ifdef E1_HARDWARE_SERIAL + #define HAS_E1_HARDWARE_SERIAL 1 +#endif +#ifdef E2_HARDWARE_SERIAL + #define HAS_E2_HARDWARE_SERIAL 1 +#endif +#ifdef E3_HARDWARE_SERIAL + #define HAS_E3_HARDWARE_SERIAL 1 +#endif +#ifdef E4_HARDWARE_SERIAL + #define HAS_E4_HARDWARE_SERIAL 1 +#endif +#ifdef E5_HARDWARE_SERIAL + #define HAS_E5_HARDWARE_SERIAL 1 +#endif +#ifdef E6_HARDWARE_SERIAL + #define HAS_E6_HARDWARE_SERIAL 1 +#endif +#ifdef E7_HARDWARE_SERIAL + #define HAS_E7_HARDWARE_SERIAL 1 +#endif + + // // ADC Temp Sensors (Thermistor or Thermocouple with amplifier ADC interface) // diff --git a/buildroot/share/tests/esp32-tests b/buildroot/share/tests/esp32-tests index 47f5d81761..18abab8b06 100755 --- a/buildroot/share/tests/esp32-tests +++ b/buildroot/share/tests/esp32-tests @@ -18,5 +18,20 @@ opt_set TX_BUFFER_SIZE 64 opt_add WEBSUPPORT exec_test $1 $2 "ESP32 with WIFISUPPORT and WEBSUPPORT" +# +# Build with TMC drivers using hardware serial +# +restore_configs +opt_set MOTHERBOARD BOARD_ESPRESSIF_ESP32 +opt_set X_DRIVER_TYPE TMC2209 +opt_set Y_DRIVER_TYPE TMC2208 +opt_set Z_DRIVER_TYPE TMC2209 +opt_set E0_DRIVER_TYPE TMC2209 +opt_set X_HARDWARE_SERIAL Serial1 +opt_set Y_HARDWARE_SERIAL Serial1 +opt_set Z_HARDWARE_SERIAL Serial1 +opt_set E0_HARDWARE_SERIAL Serial1 +exec_test $1 $2 "ESP32 with TMC Hardware Serial" + # cleanup restore_configs From 9a51f29efad894eb96bc86d6bb9b274700d0a816 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 23 Feb 2020 23:55:05 -0600 Subject: [PATCH 09/12] Simplified E_AXIS_HAS macro --- Marlin/src/core/drivers.h | 4 +-- Marlin/src/inc/Conditionals_post.h | 53 ------------------------------ 2 files changed, 2 insertions(+), 55 deletions(-) diff --git a/Marlin/src/core/drivers.h b/Marlin/src/core/drivers.h index f1410f1d47..306329d6fe 100644 --- a/Marlin/src/core/drivers.h +++ b/Marlin/src/core/drivers.h @@ -131,7 +131,7 @@ #define AXIS_HAS_UART(A) ( AXIS_DRIVER_TYPE(A,TMC2208) \ || AXIS_DRIVER_TYPE(A,TMC2209) ) -#define AXIS_HAS_SW_SERIAL(A) ((AXIS_HAS_UART(A) && !HAS_##A##_HARDWARE_SERIAL)) +#define AXIS_HAS_SW_SERIAL(A) ((AXIS_HAS_UART(A) && !defined(A##_HARDWARE_SERIAL))) #define AXIS_HAS_STALLGUARD(A) ( AXIS_DRIVER_TYPE(A,TMC2130) \ || AXIS_DRIVER_TYPE(A,TMC2160) \ @@ -158,7 +158,7 @@ || AXIS_DRIVER_TYPE(A,TMC5160) ) #define _OR_EAH(N,T) || AXIS_HAS_##T(E##N) -#define E_AXIS_HAS(T) (0 RREPEAT2(E_STEPPERS, _OR_EAH, T)) +#define E_AXIS_HAS(T) (0 _OR_EAH(0,T) _OR_EAH(1,T) _OR_EAH(2,T) _OR_EAH(3,T) _OR_EAH(4,T) _OR_EAH(5,T) _OR_EAH(6,T) _OR_EAH(7,T)) #define ANY_AXIS_HAS(T) ( AXIS_HAS_##T(X) || AXIS_HAS_##T(X2) \ || AXIS_HAS_##T(Y) || AXIS_HAS_##T(Y2) \ diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 55058a4d11..6785ea01e8 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -1444,59 +1444,6 @@ #define HAS_Z4_MAX (PIN_EXISTS(Z4_MAX)) #define HAS_Z_MIN_PROBE_PIN (HAS_CUSTOM_PROBE_PIN && PIN_EXISTS(Z_MIN_PROBE)) -// Cannot use a macro with a defined() statement inside REPEAT macros. -// [AXIS]_HARDWARE_SERIAL definitions are typically strings which cannot be -// tested directly, as they will evaluate to 0. -#ifdef X_HARDWARE_SERIAL - #define HAS_X_HARDWARE_SERIAL 1 -#endif -#ifdef X2_HARDWARE_SERIAL - #define HAS_X2_HARDWARE_SERIAL 1 -#endif -#ifdef Y_HARDWARE_SERIAL - #define HAS_Y_HARDWARE_SERIAL 1 -#endif -#ifdef Y2_HARDWARE_SERIAL - #define HAS_Y2_HARDWARE_SERIAL 1 -#endif -#ifdef Z_HARDWARE_SERIAL - #define HAS_Z_HARDWARE_SERIAL 1 -#endif -#ifdef Z2_HARDWARE_SERIAL - #define HAS_Z2_HARDWARE_SERIAL 1 -#endif -#ifdef Z3_HARDWARE_SERIAL - #define HAS_Z3_HARDWARE_SERIAL 1 -#endif -#ifdef Z4_HARDWARE_SERIAL - #define HAS_Z4_HARDWARE_SERIAL 1 -#endif -#ifdef E0_HARDWARE_SERIAL - #define HAS_E0_HARDWARE_SERIAL 1 -#endif -#ifdef E1_HARDWARE_SERIAL - #define HAS_E1_HARDWARE_SERIAL 1 -#endif -#ifdef E2_HARDWARE_SERIAL - #define HAS_E2_HARDWARE_SERIAL 1 -#endif -#ifdef E3_HARDWARE_SERIAL - #define HAS_E3_HARDWARE_SERIAL 1 -#endif -#ifdef E4_HARDWARE_SERIAL - #define HAS_E4_HARDWARE_SERIAL 1 -#endif -#ifdef E5_HARDWARE_SERIAL - #define HAS_E5_HARDWARE_SERIAL 1 -#endif -#ifdef E6_HARDWARE_SERIAL - #define HAS_E6_HARDWARE_SERIAL 1 -#endif -#ifdef E7_HARDWARE_SERIAL - #define HAS_E7_HARDWARE_SERIAL 1 -#endif - - // // ADC Temp Sensors (Thermistor or Thermocouple with amplifier ADC interface) // From 8ba5ef8cae5f7323688749e699606dcc14182c3e Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 24 Feb 2020 05:33:16 -0600 Subject: [PATCH 10/12] "Init. Media" => "Attach Media" --- Marlin/src/lcd/language/language_an.h | 2 +- Marlin/src/lcd/language/language_bg.h | 2 +- Marlin/src/lcd/language/language_ca.h | 2 +- Marlin/src/lcd/language/language_cz.h | 2 +- Marlin/src/lcd/language/language_de.h | 2 +- Marlin/src/lcd/language/language_el.h | 2 +- Marlin/src/lcd/language/language_el_gr.h | 2 +- Marlin/src/lcd/language/language_en.h | 2 +- Marlin/src/lcd/language/language_es.h | 2 +- Marlin/src/lcd/language/language_eu.h | 2 +- Marlin/src/lcd/language/language_fr.h | 2 +- Marlin/src/lcd/language/language_gl.h | 2 +- Marlin/src/lcd/language/language_hr.h | 2 +- Marlin/src/lcd/language/language_it.h | 2 +- Marlin/src/lcd/language/language_jp_kana.h | 2 +- Marlin/src/lcd/language/language_nl.h | 2 +- Marlin/src/lcd/language/language_pl.h | 2 +- Marlin/src/lcd/language/language_pt.h | 2 +- Marlin/src/lcd/language/language_pt_br.h | 2 +- Marlin/src/lcd/language/language_ru.h | 2 +- Marlin/src/lcd/language/language_sk.h | 2 +- Marlin/src/lcd/language/language_tr.h | 2 +- Marlin/src/lcd/language/language_uk.h | 2 +- Marlin/src/lcd/language/language_vi.h | 2 +- Marlin/src/lcd/language/language_zh_CN.h | 2 +- Marlin/src/lcd/language/language_zh_TW.h | 2 +- Marlin/src/lcd/menu/menu_main.cpp | 4 ++-- 27 files changed, 28 insertions(+), 28 deletions(-) diff --git a/Marlin/src/lcd/language/language_an.h b/Marlin/src/lcd/language/language_an.h index 4c9b2deab4..9498d558e7 100644 --- a/Marlin/src/lcd/language/language_an.h +++ b/Marlin/src/lcd/language/language_an.h @@ -151,7 +151,7 @@ namespace Language_an { PROGMEM Language_Str MSG_AUTORETRACT = _UxGT("Retraccion auto."); PROGMEM Language_Str MSG_FILAMENTCHANGE = _UxGT("Cambear filamento"); PROGMEM Language_Str MSG_FILAMENTCHANGE_E = _UxGT("Cambear filamento *"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Encetan. tarcheta"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Encetan. tarcheta"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Cambiar tarcheta"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Sonda Z fuera"); PROGMEM Language_Str MSG_BLTOUCH_RESET = _UxGT("Reset BLTouch"); diff --git a/Marlin/src/lcd/language/language_bg.h b/Marlin/src/lcd/language/language_bg.h index 094aca8caf..18096b6269 100644 --- a/Marlin/src/lcd/language/language_bg.h +++ b/Marlin/src/lcd/language/language_bg.h @@ -136,7 +136,7 @@ namespace Language_bg { PROGMEM Language_Str MSG_AUTORETRACT = _UxGT("Автоoткат"); PROGMEM Language_Str MSG_FILAMENTCHANGE = _UxGT("Смяна нишка"); PROGMEM Language_Str MSG_FILAMENTCHANGE_E = _UxGT("Смяна нишка *"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Иниц. SD-Карта"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Иниц. SD-Карта"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Смяна SD-Карта"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Z-сондата е извадена"); PROGMEM Language_Str MSG_ZPROBE_ZOFFSET = _UxGT("Z Отстояние"); diff --git a/Marlin/src/lcd/language/language_ca.h b/Marlin/src/lcd/language/language_ca.h index 8d29cd9565..950a73d7f1 100644 --- a/Marlin/src/lcd/language/language_ca.h +++ b/Marlin/src/lcd/language/language_ca.h @@ -146,7 +146,7 @@ namespace Language_ca { PROGMEM Language_Str MSG_AUTORETRACT = _UxGT("Auto retraccio"); PROGMEM Language_Str MSG_FILAMENTCHANGE = _UxGT("Canvia filament"); PROGMEM Language_Str MSG_FILAMENTCHANGE_E = _UxGT("Canvia filament *"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Inicialitza SD"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Inicialitza SD"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Canvia SD"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Sonda Z fora"); PROGMEM Language_Str MSG_BLTOUCH_RESET = _UxGT("Reinicia BLTouch"); diff --git a/Marlin/src/lcd/language/language_cz.h b/Marlin/src/lcd/language/language_cz.h index b185a5e18c..9b983dd94d 100644 --- a/Marlin/src/lcd/language/language_cz.h +++ b/Marlin/src/lcd/language/language_cz.h @@ -369,7 +369,7 @@ namespace Language_cz { PROGMEM Language_Str MSG_FILAMENTUNLOAD_E = _UxGT("Vysunout filament *"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_ALL = _UxGT("Vysunout vše"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Načíst médium"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Načíst médium"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Vyměnit médium"); PROGMEM Language_Str MSG_RELEASE_MEDIA = _UxGT("Vysunout médium"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Sonda Z mimo podl"); diff --git a/Marlin/src/lcd/language/language_de.h b/Marlin/src/lcd/language/language_de.h index 8215cd4a05..cacef7b4d0 100644 --- a/Marlin/src/lcd/language/language_de.h +++ b/Marlin/src/lcd/language/language_de.h @@ -343,7 +343,7 @@ namespace Language_de { PROGMEM Language_Str MSG_FILAMENTUNLOAD = _UxGT("Filament entladen"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_E = _UxGT("Filament entladen *"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_ALL = _UxGT("Alles entladen"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Medium initial."); // Manually initialize the SD-card via user interface + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Medium initial."); // Manually initialize the SD-card via user interface PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Medium getauscht"); // SD-card changed by user. For machines with no autocarddetect. Both send "M21" PROGMEM Language_Str MSG_RELEASE_MEDIA = _UxGT("Medium freigeben"); // if Marlin gets confused - M22 PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Z-Sonde außerhalb"); diff --git a/Marlin/src/lcd/language/language_el.h b/Marlin/src/lcd/language/language_el.h index c40cdb4ec1..2690e0b7f1 100644 --- a/Marlin/src/lcd/language/language_el.h +++ b/Marlin/src/lcd/language/language_el.h @@ -162,7 +162,7 @@ namespace Language_el { PROGMEM Language_Str MSG_AUTORETRACT = _UxGT("Αυτόματη ανάσυρση"); PROGMEM Language_Str MSG_FILAMENTCHANGE = _UxGT("Αλλαγή νήματος"); PROGMEM Language_Str MSG_FILAMENTCHANGE_E = _UxGT("Αλλαγή νήματος *"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Προετοιμασία κάρτας SD"); //SHORTEN + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Προετοιμασία κάρτας SD"); //SHORTEN PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Αλλαγή κάρτας SD"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Διερεύνηση Z εκτός Επ.Εκτύπωσης"); //SHORTEN PROGMEM Language_Str MSG_YX_UNHOMED = _UxGT("Επαναφορά Χ/Υ πριν από Ζ"); //SHORTEN diff --git a/Marlin/src/lcd/language/language_el_gr.h b/Marlin/src/lcd/language/language_el_gr.h index 982e4bba78..859a8fa4fd 100644 --- a/Marlin/src/lcd/language/language_el_gr.h +++ b/Marlin/src/lcd/language/language_el_gr.h @@ -164,7 +164,7 @@ namespace Language_el_gr { PROGMEM Language_Str MSG_AUTORETRACT = _UxGT("Αυτόματη ανάσυρση"); PROGMEM Language_Str MSG_FILAMENTCHANGE = _UxGT("Αλλαγή νήματος"); PROGMEM Language_Str MSG_FILAMENTCHANGE_E = _UxGT("Αλλαγή νήματος *"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Προετοιμασία κάρτας SD"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Προετοιμασία κάρτας SD"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Αλλαγή κάρτας SD"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Διερεύνηση Z εκτός κλίνης"); PROGMEM Language_Str MSG_YX_UNHOMED = _UxGT("Επαναφορά Χ/Υ πριν από Ζ"); diff --git a/Marlin/src/lcd/language/language_en.h b/Marlin/src/lcd/language/language_en.h index 4f4e32bd08..4cbb2cc081 100644 --- a/Marlin/src/lcd/language/language_en.h +++ b/Marlin/src/lcd/language/language_en.h @@ -370,7 +370,7 @@ namespace Language_en { PROGMEM Language_Str MSG_FILAMENTUNLOAD = _UxGT("Unload Filament"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_E = _UxGT("Unload Filament *"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_ALL = _UxGT("Unload All"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Init. Media"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Attach Media"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Change Media"); PROGMEM Language_Str MSG_RELEASE_MEDIA = _UxGT("Release Media"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Z Probe Past Bed"); diff --git a/Marlin/src/lcd/language/language_es.h b/Marlin/src/lcd/language/language_es.h index 22ab93e78e..fdab16a186 100644 --- a/Marlin/src/lcd/language/language_es.h +++ b/Marlin/src/lcd/language/language_es.h @@ -337,7 +337,7 @@ namespace Language_es { PROGMEM Language_Str MSG_FILAMENTUNLOAD = _UxGT("Descargar filamento"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_E = _UxGT("Descargar fil. *"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_ALL = _UxGT("Descargar todo"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Iniciar SD/USB"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Iniciar SD/USB"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Cambiar SD/USB"); PROGMEM Language_Str MSG_RELEASE_MEDIA = _UxGT("Lanzar SD/USB"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Sonda Z fuera cama"); diff --git a/Marlin/src/lcd/language/language_eu.h b/Marlin/src/lcd/language/language_eu.h index ab9b61f13a..210752e255 100644 --- a/Marlin/src/lcd/language/language_eu.h +++ b/Marlin/src/lcd/language/language_eu.h @@ -221,7 +221,7 @@ namespace Language_eu { PROGMEM Language_Str MSG_FILAMENTUNLOAD = _UxGT("Harizpia deskargatu"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_E = _UxGT("Harizpia deskargatu *"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_ALL = _UxGT("Erabat deskargatu"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Hasieratu SD-a"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Hasieratu SD-a"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Aldatu txartela"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Z zunda kanpora"); PROGMEM Language_Str MSG_SKEW_FACTOR = _UxGT("Okertze faktorea"); diff --git a/Marlin/src/lcd/language/language_fr.h b/Marlin/src/lcd/language/language_fr.h index e047a21934..ec057399a4 100644 --- a/Marlin/src/lcd/language/language_fr.h +++ b/Marlin/src/lcd/language/language_fr.h @@ -340,7 +340,7 @@ namespace Language_fr { PROGMEM Language_Str MSG_FILAMENTUNLOAD = _UxGT("Retrait filament"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_E = _UxGT("Retrait filament *"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_ALL = _UxGT("Retirer tout"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Charger le média"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Charger le média"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Actualiser média"); PROGMEM Language_Str MSG_RELEASE_MEDIA = _UxGT("Retirer le média"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Sonde Z hors lit"); diff --git a/Marlin/src/lcd/language/language_gl.h b/Marlin/src/lcd/language/language_gl.h index 77d015bef6..1c78d44557 100644 --- a/Marlin/src/lcd/language/language_gl.h +++ b/Marlin/src/lcd/language/language_gl.h @@ -143,7 +143,7 @@ namespace Language_gl { PROGMEM Language_Str MSG_AUTORETRACT = _UxGT("Retraccion auto."); PROGMEM Language_Str MSG_FILAMENTCHANGE = _UxGT("Cambiar filamen."); PROGMEM Language_Str MSG_FILAMENTCHANGE_E = _UxGT("Cambiar filamen. *"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Iniciando SD"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Iniciando SD"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Cambiar SD"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Sonda-Z sen cama"); PROGMEM Language_Str MSG_BLTOUCH_SELFTEST = _UxGT("Comprobar BLTouch"); diff --git a/Marlin/src/lcd/language/language_hr.h b/Marlin/src/lcd/language/language_hr.h index 184bf20694..e1caeb8efa 100644 --- a/Marlin/src/lcd/language/language_hr.h +++ b/Marlin/src/lcd/language/language_hr.h @@ -112,7 +112,7 @@ namespace Language_hr { PROGMEM Language_Str MSG_STOPPED = _UxGT("ZAUSTAVLJEN. "); PROGMEM Language_Str MSG_FILAMENTCHANGE = _UxGT("Promijeni filament"); PROGMEM Language_Str MSG_FILAMENTCHANGE_E = _UxGT("Promijeni filament *"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Init. SD karticu"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Init. SD karticu"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Promijeni SD karticu"); PROGMEM Language_Str MSG_HEATING_FAILED_LCD = _UxGT("Grijanje neuspješno"); PROGMEM Language_Str MSG_HEATING = _UxGT("Grijanje..."); diff --git a/Marlin/src/lcd/language/language_it.h b/Marlin/src/lcd/language/language_it.h index af1f762080..008f7735dc 100644 --- a/Marlin/src/lcd/language/language_it.h +++ b/Marlin/src/lcd/language/language_it.h @@ -368,7 +368,7 @@ namespace Language_it { PROGMEM Language_Str MSG_FILAMENTUNLOAD = _UxGT("Rimuovi filamento"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_E = _UxGT("Rimuovi filamento *"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_ALL = _UxGT("Rimuovi tutto"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Inizializ. media"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Inizializ. media"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Cambia media"); PROGMEM Language_Str MSG_RELEASE_MEDIA = _UxGT("Rilascia media"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Z probe fuori piatto"); diff --git a/Marlin/src/lcd/language/language_jp_kana.h b/Marlin/src/lcd/language/language_jp_kana.h index d5a5ec33c3..ddff7f5473 100644 --- a/Marlin/src/lcd/language/language_jp_kana.h +++ b/Marlin/src/lcd/language/language_jp_kana.h @@ -166,7 +166,7 @@ namespace Language_jp_kana { PROGMEM Language_Str MSG_CONTROL_RETRACT_RECOVERF = _UxGT("ホショウソクド mm/s"); // "UnRet V" PROGMEM Language_Str MSG_AUTORETRACT = _UxGT("ジドウヒキコミ"); // "AutoRetr." PROGMEM Language_Str MSG_FILAMENTCHANGE = _UxGT("フィラメントコウカン"); // "Change filament" - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("メディアサイヨミコミ"); // "Init. SD card" + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("メディアサイヨミコミ"); // "Init. SD card" PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("メディアコウカン"); // "Change SD card" PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Zプローブ ベッドガイ"); // "Z probe out. bed" PROGMEM Language_Str MSG_BLTOUCH_SELFTEST = _UxGT("BLTouch ジコシンダン"); // "BLTouch Self-Test" diff --git a/Marlin/src/lcd/language/language_nl.h b/Marlin/src/lcd/language/language_nl.h index 7c017c2c96..f657919bb2 100644 --- a/Marlin/src/lcd/language/language_nl.h +++ b/Marlin/src/lcd/language/language_nl.h @@ -149,7 +149,7 @@ namespace Language_nl { PROGMEM Language_Str MSG_AUTORETRACT = _UxGT("AutoRetr."); PROGMEM Language_Str MSG_FILAMENTCHANGE = _UxGT("Verv. Filament"); PROGMEM Language_Str MSG_FILAMENTCHANGE_E = _UxGT("Verv. Filament *"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Init. SD kaart"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Init. SD kaart"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Verv. SD Kaart"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Z probe uit. bed"); PROGMEM Language_Str MSG_BLTOUCH_SELFTEST = _UxGT("BLTouch Zelf-Test"); diff --git a/Marlin/src/lcd/language/language_pl.h b/Marlin/src/lcd/language/language_pl.h index ec7295455f..8a8fe43ee5 100644 --- a/Marlin/src/lcd/language/language_pl.h +++ b/Marlin/src/lcd/language/language_pl.h @@ -350,7 +350,7 @@ namespace Language_pl { PROGMEM Language_Str MSG_FILAMENTUNLOAD = _UxGT("Wyładuj Filament"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_E = _UxGT("Wyładuj Filament *"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_ALL = _UxGT("Wyładuj wszystkie"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Inicjal. karty SD"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Inicjal. karty SD"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Zmiana karty SD"); PROGMEM Language_Str MSG_RELEASE_MEDIA = _UxGT("Zwolnienie karty"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Sonda Z za stołem"); diff --git a/Marlin/src/lcd/language/language_pt.h b/Marlin/src/lcd/language/language_pt.h index 5f2eb04665..8a1e863b78 100644 --- a/Marlin/src/lcd/language/language_pt.h +++ b/Marlin/src/lcd/language/language_pt.h @@ -139,7 +139,7 @@ namespace Language_pt { PROGMEM Language_Str MSG_AUTORETRACT = _UxGT(" AutoRetr."); PROGMEM Language_Str MSG_FILAMENTCHANGE = _UxGT("Trocar filamento"); PROGMEM Language_Str MSG_FILAMENTCHANGE_E = _UxGT("Trocar filamento *"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Inici. cartão SD"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Inici. cartão SD"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Trocar cartão SD"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Sensor fora/base"); PROGMEM Language_Str MSG_ZPROBE_ZOFFSET = _UxGT("Desvio Z"); diff --git a/Marlin/src/lcd/language/language_pt_br.h b/Marlin/src/lcd/language/language_pt_br.h index 0c63f63cb2..ab8e313b3e 100644 --- a/Marlin/src/lcd/language/language_pt_br.h +++ b/Marlin/src/lcd/language/language_pt_br.h @@ -293,7 +293,7 @@ namespace Language_pt_br { PROGMEM Language_Str MSG_FILAMENTLOAD_E = _UxGT("Carregar Filamento *"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_E = _UxGT("Descarreg. Filamento *"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_ALL = _UxGT("Descarregar Todos"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Iniciar SD"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Iniciar SD"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Trocar SD"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Sonda fora da mesa"); PROGMEM Language_Str MSG_SKEW_FACTOR = _UxGT("Fator de Cisalho"); diff --git a/Marlin/src/lcd/language/language_ru.h b/Marlin/src/lcd/language/language_ru.h index efab82fe9b..0cb25e0578 100644 --- a/Marlin/src/lcd/language/language_ru.h +++ b/Marlin/src/lcd/language/language_ru.h @@ -328,7 +328,7 @@ namespace Language_ru { PROGMEM Language_Str MSG_FILAMENTLOAD_E = _UxGT("Загрузка филамента *"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_E = _UxGT("Выгрузка филамента *"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_ALL = _UxGT("Выгрузить всё"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Активировать SD"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Активировать SD"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Сменить SD карту"); PROGMEM Language_Str MSG_RELEASE_MEDIA = _UxGT("Деактивировать SD"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Z-датчик вне стола"); diff --git a/Marlin/src/lcd/language/language_sk.h b/Marlin/src/lcd/language/language_sk.h index fdd1ab8384..d652bb098d 100644 --- a/Marlin/src/lcd/language/language_sk.h +++ b/Marlin/src/lcd/language/language_sk.h @@ -360,7 +360,7 @@ namespace Language_sk { PROGMEM Language_Str MSG_FILAMENTUNLOAD = _UxGT("Vysunúť filament"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_E = _UxGT("Vysunúť filament *"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_ALL = _UxGT("Vysunúť všetko"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Načítať SD kartu"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Načítať SD kartu"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Vymeniť SD kartu"); PROGMEM Language_Str MSG_RELEASE_MEDIA = _UxGT("Odpojiť SD kartu"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Sonda Z mimo podl."); diff --git a/Marlin/src/lcd/language/language_tr.h b/Marlin/src/lcd/language/language_tr.h index 5ddc72df17..b5ed642676 100644 --- a/Marlin/src/lcd/language/language_tr.h +++ b/Marlin/src/lcd/language/language_tr.h @@ -309,7 +309,7 @@ namespace Language_tr { PROGMEM Language_Str MSG_FILAMENTUNLOAD = _UxGT("Filaman Çıkart"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_E = _UxGT("Filaman Çıkart *"); PROGMEM Language_Str MSG_FILAMENTUNLOAD_ALL = _UxGT("Tümünü Çıkart"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("SD Kart Başlatılıyor"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("SD Kart Başlatılıyor"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("SD Kart Değiştir"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Z Prob Açık. Tabla"); PROGMEM Language_Str MSG_SKEW_FACTOR = _UxGT("Çarpıklık Faktörü"); diff --git a/Marlin/src/lcd/language/language_uk.h b/Marlin/src/lcd/language/language_uk.h index 5119b8bc3e..bfc6e16dc1 100644 --- a/Marlin/src/lcd/language/language_uk.h +++ b/Marlin/src/lcd/language/language_uk.h @@ -157,7 +157,7 @@ namespace Language_uk { PROGMEM Language_Str MSG_STOPPED = _UxGT("ЗУПИНЕНО. "); PROGMEM Language_Str MSG_FILAMENTCHANGE = _UxGT("Зміна волокна"); PROGMEM Language_Str MSG_FILAMENTCHANGE_E = _UxGT("Зміна волокна *"); - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Старт SD картки"); + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Старт SD картки"); PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Заміна SD карти"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Z дет. не в межах"); PROGMEM Language_Str MSG_BLTOUCH_SELFTEST = _UxGT("BLTouch Само-Тест"); diff --git a/Marlin/src/lcd/language/language_vi.h b/Marlin/src/lcd/language/language_vi.h index 3dbf922b95..76ce55284f 100644 --- a/Marlin/src/lcd/language/language_vi.h +++ b/Marlin/src/lcd/language/language_vi.h @@ -309,7 +309,7 @@ namespace Language_vi { PROGMEM Language_Str MSG_FILAMENTUNLOAD = _UxGT("Dỡ dây nhựa"); // unload filament PROGMEM Language_Str MSG_FILAMENTUNLOAD_E = _UxGT("Dỡ dây nhựa *"); // unload filament PROGMEM Language_Str MSG_FILAMENTUNLOAD_ALL = _UxGT("Dỡ tất cả"); // Unload All - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("Khởi tạo phương tiện"); // Init. media + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("Khởi tạo phương tiện"); // Init. media PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("Thay phương tiện"); // Change midea PROGMEM Language_Str MSG_RELEASE_MEDIA = _UxGT("Phát hành phương tiện"); PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Đầu Dò Z qua bàn"); // Z Probe past bed diff --git a/Marlin/src/lcd/language/language_zh_CN.h b/Marlin/src/lcd/language/language_zh_CN.h index 3595aabe83..8e760f73b3 100644 --- a/Marlin/src/lcd/language/language_zh_CN.h +++ b/Marlin/src/lcd/language/language_zh_CN.h @@ -274,7 +274,7 @@ namespace Language_zh_CN { PROGMEM Language_Str MSG_FILAMENTUNLOAD = _UxGT("卸载丝料"); // "Unload filament" PROGMEM Language_Str MSG_FILAMENTUNLOAD_E = _UxGT("卸载丝料 *"); // "Unload filament" PROGMEM Language_Str MSG_FILAMENTUNLOAD_ALL = _UxGT("卸载全部"); // "Unload All" - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("初始化存储卡"); //"Init. SD card" + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("初始化存储卡"); //"Init. SD card" PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("更换存储卡"); //"Change SD card" PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Z探针在热床之外"); //"Z probe out. bed" Z probe is not within the physical limits PROGMEM Language_Str MSG_SKEW_FACTOR = _UxGT("偏斜因数"); // "Skew Factor" diff --git a/Marlin/src/lcd/language/language_zh_TW.h b/Marlin/src/lcd/language/language_zh_TW.h index f3cc322a92..77a6c04d9a 100644 --- a/Marlin/src/lcd/language/language_zh_TW.h +++ b/Marlin/src/lcd/language/language_zh_TW.h @@ -274,7 +274,7 @@ namespace Language_zh_TW { PROGMEM Language_Str MSG_FILAMENTUNLOAD = _UxGT("卸載絲料"); // "Unload filament" PROGMEM Language_Str MSG_FILAMENTUNLOAD_E = _UxGT("卸載絲料 *"); // "Unload filament" PROGMEM Language_Str MSG_FILAMENTUNLOAD_ALL = _UxGT("卸載全部"); // "Unload All" - PROGMEM Language_Str MSG_INIT_MEDIA = _UxGT("初始化記憶卡"); //"Init. SD card" + PROGMEM Language_Str MSG_ATTACH_MEDIA = _UxGT("初始化記憶卡"); //"Init. SD card" PROGMEM Language_Str MSG_CHANGE_MEDIA = _UxGT("更換記憶卡"); //"Change SD card" PROGMEM Language_Str MSG_ZPROBE_OUT = _UxGT("Z探針在熱床之外"); //"Z probe out. bed" Z probe is not within the physical limits PROGMEM Language_Str MSG_SKEW_FACTOR = _UxGT("偏斜因數"); // "Skew Factor" diff --git a/Marlin/src/lcd/menu/menu_main.cpp b/Marlin/src/lcd/menu/menu_main.cpp index 5a56770a17..d98670922c 100644 --- a/Marlin/src/lcd/menu/menu_main.cpp +++ b/Marlin/src/lcd/menu/menu_main.cpp @@ -134,7 +134,7 @@ void menu_main() { #if PIN_EXISTS(SD_DETECT) ACTION_ITEM(MSG_NO_MEDIA, nullptr); #else - GCODES_ITEM(MSG_INIT_MEDIA, M21_STR); + GCODES_ITEM(MSG_ATTACH_MEDIA, M21_STR); ACTION_ITEM(MSG_MEDIA_RELEASED, nullptr); #endif } @@ -228,7 +228,7 @@ void menu_main() { #if PIN_EXISTS(SD_DETECT) ACTION_ITEM(MSG_NO_MEDIA, nullptr); #else - GCODES_ITEM(MSG_INIT_MEDIA, M21_STR); + GCODES_ITEM(MSG_ATTACH_MEDIA, M21_STR); ACTION_ITEM(MSG_MEDIA_RELEASED, nullptr); #endif } From 5e197df89af624d556b75c4881aacd1ab57e861d Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 24 Feb 2020 05:29:13 -0600 Subject: [PATCH 11/12] Fix Babystepping loop (again) --- Marlin/src/feature/babystep.cpp | 8 +++---- Marlin/src/feature/babystep.h | 12 ++++++----- Marlin/src/feature/tmc_util.cpp | 2 +- Marlin/src/gcode/motion/M290.cpp | 2 +- Marlin/src/lcd/extensible_ui/ui_api.cpp | 16 +++++++------- Marlin/src/lcd/extensible_ui/ui_api.h | 2 +- Marlin/src/module/stepper.cpp | 28 +++++++++++++++++-------- Marlin/src/pins/mega/pins_PICA.h | 14 ++++++------- 8 files changed, 48 insertions(+), 36 deletions(-) diff --git a/Marlin/src/feature/babystep.cpp b/Marlin/src/feature/babystep.cpp index fd4491bc6f..25552a701c 100644 --- a/Marlin/src/feature/babystep.cpp +++ b/Marlin/src/feature/babystep.cpp @@ -35,17 +35,17 @@ Babystep babystep; -volatile int16_t Babystep::steps[BS_TODO_AXIS(Z_AXIS) + 1]; +volatile int16_t Babystep::steps[BS_AXIS_IND(Z_AXIS) + 1]; #if ENABLED(BABYSTEP_DISPLAY_TOTAL) int16_t Babystep::axis_total[BS_TOTAL_AXIS(Z_AXIS) + 1]; #endif int16_t Babystep::accum; void Babystep::step_axis(const AxisEnum axis) { - const int16_t curTodo = steps[BS_TODO_AXIS(axis)]; // get rid of volatile for performance + const int16_t curTodo = steps[BS_AXIS_IND(axis)]; // get rid of volatile for performance if (curTodo) { stepper.do_babystep((AxisEnum)axis, curTodo > 0); - if (curTodo > 0) steps[BS_TODO_AXIS(axis)]--; else steps[BS_TODO_AXIS(axis)]++; + if (curTodo > 0) steps[BS_AXIS_IND(axis)]--; else steps[BS_AXIS_IND(axis)]++; } } @@ -112,7 +112,7 @@ void Babystep::add_steps(const AxisEnum axis, const int16_t distance) { #else BSA_ENABLE(Z_AXIS); #endif - steps[BS_TODO_AXIS(axis)] += distance; + steps[BS_AXIS_IND(axis)] += distance; #endif #if ENABLED(BABYSTEP_ALWAYS_AVAILABLE) gcode.reset_stepper_timeout(); diff --git a/Marlin/src/feature/babystep.h b/Marlin/src/feature/babystep.h index 192817bc7b..8ce48e397d 100644 --- a/Marlin/src/feature/babystep.h +++ b/Marlin/src/feature/babystep.h @@ -32,9 +32,11 @@ #endif #if IS_CORE || EITHER(BABYSTEP_XY, I2C_POSITION_ENCODERS) - #define BS_TODO_AXIS(A) A + #define BS_AXIS_IND(A) A + #define BS_AXIS(I) AxisEnum(I) #else - #define BS_TODO_AXIS(A) 0 + #define BS_AXIS_IND(A) 0 + #define BS_AXIS(I) Z_AXIS #endif #if ENABLED(BABYSTEP_DISPLAY_TOTAL) @@ -47,7 +49,7 @@ class Babystep { public: - static volatile int16_t steps[BS_TODO_AXIS(Z_AXIS) + 1]; + static volatile int16_t steps[BS_AXIS_IND(Z_AXIS) + 1]; static int16_t accum; // Total babysteps in current edit #if ENABLED(BABYSTEP_DISPLAY_TOTAL) @@ -65,7 +67,7 @@ public: static void add_mm(const AxisEnum axis, const float &mm); static inline bool has_steps() { - return steps[BS_TODO_AXIS(X_AXIS)] || steps[BS_TODO_AXIS(Y_AXIS)] || steps[BS_TODO_AXIS(Z_AXIS)]; + return steps[BS_AXIS_IND(X_AXIS)] || steps[BS_AXIS_IND(Y_AXIS)] || steps[BS_AXIS_IND(Z_AXIS)]; } // @@ -73,7 +75,7 @@ public: // apply accumulated babysteps to the axes. // static inline void task() { - LOOP_LE_N(axis, BS_TODO_AXIS(Z_AXIS)) step_axis((AxisEnum)axis); + LOOP_LE_N(i, BS_AXIS_IND(Z_AXIS)) step_axis(BS_AXIS(i)); } private: diff --git a/Marlin/src/feature/tmc_util.cpp b/Marlin/src/feature/tmc_util.cpp index 9f905021ea..a2723fd393 100644 --- a/Marlin/src/feature/tmc_util.cpp +++ b/Marlin/src/feature/tmc_util.cpp @@ -1097,7 +1097,7 @@ bool tmc_enable_stallguard(TMC2209Stepper &st) { const bool stealthchop_was_enabled = !st.en_spreadCycle(); - + st.TCOOLTHRS(0xFFFFF); st.en_spreadCycle(false); return stealthchop_was_enabled; diff --git a/Marlin/src/gcode/motion/M290.cpp b/Marlin/src/gcode/motion/M290.cpp index 9422307cda..d6535af82f 100644 --- a/Marlin/src/gcode/motion/M290.cpp +++ b/Marlin/src/gcode/motion/M290.cpp @@ -131,7 +131,7 @@ void GcodeSuite::M290() { #else PSTR("Babystep Z") #endif - , babystep.axis_total[BS_TODO_AXIS(Z_AXIS)] + , babystep.axis_total[BS_AXIS_IND(Z_AXIS)] ); } #endif diff --git a/Marlin/src/lcd/extensible_ui/ui_api.cpp b/Marlin/src/lcd/extensible_ui/ui_api.cpp index 31d195c95d..7ef7614b8d 100644 --- a/Marlin/src/lcd/extensible_ui/ui_api.cpp +++ b/Marlin/src/lcd/extensible_ui/ui_api.cpp @@ -785,7 +785,7 @@ namespace ExtUI { #if HAS_BED_PROBE return probe.offset.z; #elif ENABLED(BABYSTEP_DISPLAY_TOTAL) - return (planner.steps_to_mm[Z_AXIS] * babystep.axis_total[BS_TODO_AXIS(Z_AXIS)]); + return (planner.steps_to_mm[Z_AXIS] * babystep.axis_total[BS_AXIS_IND(Z_AXIS)]); #else return 0.0; #endif @@ -898,11 +898,11 @@ namespace ExtUI { float getPIDValues_Kp(const extruder_t tool) { return PID_PARAM(Kp, tool); } - + float getPIDValues_Ki(const extruder_t tool) { return unscalePID_i(PID_PARAM(Ki, tool)); } - + float getPIDValues_Kd(const extruder_t tool) { return unscalePID_d(PID_PARAM(Kd, tool)); } @@ -918,27 +918,27 @@ namespace ExtUI { thermalManager.PID_autotune(temp, (heater_ind_t)tool, 8, true); } #endif - + #if ENABLED(PIDTEMPBED) float getBedPIDValues_Kp() { return thermalManager.temp_bed.pid.Kp; } - + float getBedPIDValues_Ki() { return unscalePID_i(thermalManager.temp_bed.pid.Ki); } - + float getBedPIDValues_Kd() { return unscalePID_d(thermalManager.temp_bed.pid.Kd); } - + void setBedPIDValues(const float p, const float i, const float d) { thermalManager.temp_bed.pid.Kp = p; thermalManager.temp_bed.pid.Ki = scalePID_i(i); thermalManager.temp_bed.pid.Kd = scalePID_d(d); thermalManager.updatePID(); } - + void startBedPIDTune(const float temp) { thermalManager.PID_autotune(temp, H_BED, 4, true); } diff --git a/Marlin/src/lcd/extensible_ui/ui_api.h b/Marlin/src/lcd/extensible_ui/ui_api.h index d99cfcedb4..10df2bc72d 100644 --- a/Marlin/src/lcd/extensible_ui/ui_api.h +++ b/Marlin/src/lcd/extensible_ui/ui_api.h @@ -256,7 +256,7 @@ namespace ExtUI { void setPIDValues(const float, const float, const float, extruder_t); void startPIDTune(const float, extruder_t); #endif - + #if ENABLED(PIDTEMPBED) float getBedPIDValues_Kp(); float getBedPIDValues_Ki(); diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index d21d1fe359..66fc39228d 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -81,6 +81,8 @@ Stepper stepper; // Singleton +#define BABYSTEPPING_EXTRA_DIR_WAIT + #if HAS_MOTOR_CURRENT_PWM bool Stepper::initialized; // = false #endif @@ -1367,8 +1369,8 @@ void Stepper::isr() { #endif #if ENABLED(INTEGRATED_BABYSTEPPING) - const bool do_babystep = (nextBabystepISR == 0); // 0 = Do Babystepping (XY)Z pulses - if (do_babystep) nextBabystepISR = babystepping_isr(); + const bool is_babystep = (nextBabystepISR == 0); // 0 = Do Babystepping (XY)Z pulses + if (is_babystep) nextBabystepISR = babystepping_isr(); #endif // ^== Time critical. NOTHING besides pulse generation should be above here!!! @@ -1376,7 +1378,7 @@ void Stepper::isr() { if (!nextMainISR) nextMainISR = block_phase_isr(); // Manage acc/deceleration, get next block #if ENABLED(INTEGRATED_BABYSTEPPING) - if (do_babystep) // Avoid ANY stepping too soon after baby-stepping + if (is_babystep) // Avoid ANY stepping too soon after baby-stepping NOLESS(nextMainISR, (BABYSTEP_TICKS) / 8); // FULL STOP for 125µs after a baby-step if (nextBabystepISR != BABYSTEP_NEVER) // Avoid baby-stepping too close to axis Stepping @@ -2507,6 +2509,14 @@ void Stepper::report_positions() { #endif #endif + #if ENABLED(BABYSTEPPING_EXTRA_DIR_WAIT) + #define EXTRA_DIR_WAIT_BEFORE DIR_WAIT_BEFORE + #define EXTRA_DIR_WAIT_AFTER DIR_WAIT_AFTER + #else + #define EXTRA_DIR_WAIT_BEFORE() + #define EXTRA_DIR_WAIT_AFTER() + #endif + #if DISABLED(DELTA) #define BABYSTEP_AXIS(AXIS, INV, DIR) do{ \ @@ -2519,9 +2529,9 @@ void Stepper::report_positions() { _APPLY_STEP(AXIS, !_INVERT_STEP_PIN(AXIS), true); \ _PULSE_WAIT(); \ _APPLY_STEP(AXIS, _INVERT_STEP_PIN(AXIS), true); \ - DIR_WAIT_BEFORE(); \ + EXTRA_DIR_WAIT_BEFORE(); \ _APPLY_DIR(AXIS, old_dir); \ - DIR_WAIT_AFTER(); \ + EXTRA_DIR_WAIT_AFTER(); \ }while(0) #elif IS_CORE @@ -2539,9 +2549,9 @@ void Stepper::report_positions() { _PULSE_WAIT(); \ _APPLY_STEP(A, _INVERT_STEP_PIN(A), true); \ _APPLY_STEP(B, _INVERT_STEP_PIN(B), true); \ - DIR_WAIT_BEFORE(); \ + EXTRA_DIR_WAIT_BEFORE(); \ _APPLY_DIR(A, old_dir.a); _APPLY_DIR(B, old_dir.b); \ - DIR_WAIT_AFTER(); \ + EXTRA_DIR_WAIT_AFTER(); \ }while(0) #endif @@ -2620,13 +2630,13 @@ void Stepper::report_positions() { Z_STEP_WRITE(INVERT_Z_STEP_PIN); // Restore direction bits - DIR_WAIT_BEFORE(); + EXTRA_DIR_WAIT_BEFORE(); X_DIR_WRITE(old_dir.x); Y_DIR_WRITE(old_dir.y); Z_DIR_WRITE(old_dir.z); - DIR_WAIT_AFTER(); + EXTRA_DIR_WAIT_AFTER(); #endif diff --git a/Marlin/src/pins/mega/pins_PICA.h b/Marlin/src/pins/mega/pins_PICA.h index 7771d5887f..4c618bda4e 100644 --- a/Marlin/src/pins/mega/pins_PICA.h +++ b/Marlin/src/pins/mega/pins_PICA.h @@ -36,8 +36,8 @@ /* // Note that these are the "pins" that correspond to the analog inputs on the arduino mega. // These are not the same as the physical pin numbers - AD0 = 54; AD1 = 55; AD2 = 56; AD3 = 57; - AD4 = 58; AD5 = 59; AD6 = 60; AD7 = 61; + AD0 = 54; AD1 = 55; AD2 = 56; AD3 = 57; + AD4 = 58; AD5 = 59; AD6 = 60; AD7 = 61; AD8 = 62; AD9 = 63; AD10 = 64; AD11 = 65; AD12 = 66; AD13 = 67; AD14 = 68; AD15 = 69; */ @@ -61,7 +61,7 @@ // #define X_STEP_PIN 55 #define X_DIR_PIN 54 -#define X_ENABLE_PIN 60 +#define X_ENABLE_PIN 60 #define Y_STEP_PIN 57 #define Y_DIR_PIN 56 @@ -71,7 +71,7 @@ #define Z_DIR_PIN 58 #define Z_ENABLE_PIN 62 -#define E0_STEP_PIN 67 +#define E0_STEP_PIN 67 #define E0_DIR_PIN 24 #define E0_ENABLE_PIN 26 @@ -103,10 +103,10 @@ #endif #define SDPOWER_PIN -1 -#define LED_PIN -1 +#define LED_PIN -1 #define PS_ON_PIN -1 #define KILL_PIN -1 - + #define SSR_PIN 6 // SPI for Max6675 or Max31855 Thermocouple @@ -119,7 +119,7 @@ // // SD Support // -#define SD_DETECT_PIN 49 +#define SD_DETECT_PIN 49 #define SDSS 53 // From a254354e687a781d5cb27094374cc5c436cf98ee Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 24 Feb 2020 06:11:31 -0600 Subject: [PATCH 12/12] BS_TOTAL_AXIS => BS_TOTAL_IND --- Marlin/src/feature/babystep.cpp | 4 ++-- Marlin/src/feature/babystep.h | 8 ++++---- Marlin/src/lcd/menu/menu_tune.cpp | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Marlin/src/feature/babystep.cpp b/Marlin/src/feature/babystep.cpp index 25552a701c..bf9e9a78b5 100644 --- a/Marlin/src/feature/babystep.cpp +++ b/Marlin/src/feature/babystep.cpp @@ -37,7 +37,7 @@ Babystep babystep; volatile int16_t Babystep::steps[BS_AXIS_IND(Z_AXIS) + 1]; #if ENABLED(BABYSTEP_DISPLAY_TOTAL) - int16_t Babystep::axis_total[BS_TOTAL_AXIS(Z_AXIS) + 1]; + int16_t Babystep::axis_total[BS_TOTAL_IND(Z_AXIS) + 1]; #endif int16_t Babystep::accum; @@ -66,7 +66,7 @@ void Babystep::add_steps(const AxisEnum axis, const int16_t distance) { accum += distance; // Count up babysteps for the UI #if ENABLED(BABYSTEP_DISPLAY_TOTAL) - axis_total[BS_TOTAL_AXIS(axis)] += distance; + axis_total[BS_TOTAL_IND(axis)] += distance; #endif #if ENABLED(BABYSTEP_ALWAYS_AVAILABLE) diff --git a/Marlin/src/feature/babystep.h b/Marlin/src/feature/babystep.h index 8ce48e397d..287664502c 100644 --- a/Marlin/src/feature/babystep.h +++ b/Marlin/src/feature/babystep.h @@ -41,9 +41,9 @@ #if ENABLED(BABYSTEP_DISPLAY_TOTAL) #if ENABLED(BABYSTEP_XY) - #define BS_TOTAL_AXIS(A) A + #define BS_TOTAL_IND(A) A #else - #define BS_TOTAL_AXIS(A) 0 + #define BS_TOTAL_IND(A) 0 #endif #endif @@ -53,13 +53,13 @@ public: static int16_t accum; // Total babysteps in current edit #if ENABLED(BABYSTEP_DISPLAY_TOTAL) - static int16_t axis_total[BS_TOTAL_AXIS(Z_AXIS) + 1]; // Total babysteps since G28 + static int16_t axis_total[BS_TOTAL_IND(Z_AXIS) + 1]; // Total babysteps since G28 static inline void reset_total(const AxisEnum axis) { if (true #if ENABLED(BABYSTEP_XY) && axis == Z_AXIS #endif - ) axis_total[BS_TOTAL_AXIS(axis)] = 0; + ) axis_total[BS_TOTAL_IND(axis)] = 0; } #endif diff --git a/Marlin/src/lcd/menu/menu_tune.cpp b/Marlin/src/lcd/menu/menu_tune.cpp index 549e41c9c6..9221d77005 100644 --- a/Marlin/src/lcd/menu/menu_tune.cpp +++ b/Marlin/src/lcd/menu/menu_tune.cpp @@ -81,7 +81,7 @@ #endif lcd_put_u8str_P(GET_TEXT(MSG_BABYSTEP_TOTAL)); lcd_put_wchar(':'); - lcd_put_u8str(LCD_Z_OFFSET_FUNC(spm * babystep.axis_total[BS_TOTAL_AXIS(axis)])); + lcd_put_u8str(LCD_Z_OFFSET_FUNC(spm * babystep.axis_total[BS_TOTAL_IND(axis)])); } #endif }