diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 8016da4f795f..88af584477d0 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -35,7 +35,7 @@ * * Advanced settings can be found in Configuration_adv.h */ -#define CONFIGURATION_H_VERSION 02010202 +#define CONFIGURATION_H_VERSION 02010204 //=========================================================================== //============================= Getting Started ============================= diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 4d40736404bc..ed653b8539f6 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -30,7 +30,7 @@ * * Basic settings can be found in Configuration.h */ -#define CONFIGURATION_ADV_H_VERSION 02010202 +#define CONFIGURATION_ADV_H_VERSION 02010204 // @section develop @@ -3187,8 +3187,8 @@ //#define U_STALL_SENSITIVITY 8 //#define V_STALL_SENSITIVITY 8 //#define W_STALL_SENSITIVITY 8 - //#define SPI_ENDSTOPS // TMC2130 only - #define IMPROVE_HOMING_RELIABILITY + //#define SPI_ENDSTOPS // TMC2130/TMC5160 only + //#define IMPROVE_HOMING_RELIABILITY #endif // @section tmc/config @@ -4085,7 +4085,7 @@ * Extras for an ESP32-based motherboard with WIFISUPPORT * These options don't apply to add-on WiFi modules based on ESP32 WiFi101. */ -#if ENABLED(WIFISUPPORT) +#if ANY(WIFISUPPORT, ESP3D_WIFISUPPORT) //#define WEBSUPPORT // Start a webserver (which may include auto-discovery) using SPIFFS //#define OTASUPPORT // Support over-the-air firmware updates //#define WIFI_CUSTOM_COMMAND // Accept feature config commands (e.g., WiFi ESP3D) from the host diff --git a/Marlin/Version.h b/Marlin/Version.h index ac1fcce3af12..ff8504bc7346 100644 --- a/Marlin/Version.h +++ b/Marlin/Version.h @@ -28,7 +28,7 @@ /** * Marlin release version identifier */ -//#define SHORT_BUILD_VERSION "2.1.2.2" +//#define SHORT_BUILD_VERSION "2.1.2.4" /** * Verbose version identifier which should contain a reference to the location @@ -41,7 +41,7 @@ * here we define this default string as the date where the latest release * version was tagged. */ -//#define STRING_DISTRIBUTION_DATE "2024-02-08" +//#define STRING_DISTRIBUTION_DATE "2024-05-29" /** * Defines a generic printer name to be output to the LCD after booting Marlin. diff --git a/Marlin/src/HAL/AVR/fast_pwm.cpp b/Marlin/src/HAL/AVR/fast_pwm.cpp index 6da68e6245d3..936f9e56889b 100644 --- a/Marlin/src/HAL/AVR/fast_pwm.cpp +++ b/Marlin/src/HAL/AVR/fast_pwm.cpp @@ -150,7 +150,7 @@ void MarlinHAL::set_pwm_frequency(const pin_t pin, const uint16_t f_desired) { else { if (p == 32 || p == 128) continue; // Skip TIMER2 specific prescalers when not TIMER2 const uint16_t rft = (F_CPU) / (p * f_desired); - DEBUG_ECHOLNPGM("(Not Timer 2) F_CPU=" STRINGIFY(F_CPU), " prescaler=", p, " f_desired=", f_desired); + DEBUG_ECHOLNPGM("(Not Timer 2) F_CPU=", STRINGIFY(F_CPU), " prescaler=", p, " f_desired=", f_desired); res_fast_temp = rft - 1; res_pc_temp = rft / 2; } diff --git a/Marlin/src/HAL/AVR/fastio/fastio_1280.h b/Marlin/src/HAL/AVR/fastio/fastio_1280.h index 633774dda916..57d6181d2e98 100644 --- a/Marlin/src/HAL/AVR/fastio/fastio_1280.h +++ b/Marlin/src/HAL/AVR/fastio/fastio_1280.h @@ -28,9 +28,6 @@ * Port : E0 E1 E4 E5 G5 E3 H3 H4 H5 H6 B4 B5 B6 B7 J1 J0 H1 H0 D3 D2 D1 D0 A0 A1 A2 A3 A4 A5 A6 A7 C7 C6 C5 C4 C3 C2 C1 C0 D7 G2 G1 G0 L7 L6 L5 L4 L3 L2 L1 L0 B3 B2 B1 B0 F0 F1 F2 F3 F4 F5 F6 F7 K0 K1 K2 K3 K4 K5 K6 K7 | E2 E6 E7 xx xx H2 H7 G3 G4 xx xx xx xx xx D4 D5 D6 xx xx J2 J3 J4 J5 J6 J7 xx xx xx xx xx * Logical Pin : 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | 78 79 80 xx xx 84 85 71 70 xx xx xx xx xx 81 82 83 xx xx 72 73 75 76 77 74 xx xx xx xx xx * Analog Input : 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 - * - * Arduino Pin Layout video: https://youtu.be/rIqeVCX09FA - * AVR alternate pin function overview video: https://youtu.be/1yd8wuI5Plg */ #include "../fastio.h" diff --git a/Marlin/src/HAL/AVR/fastio/fastio_1281.h b/Marlin/src/HAL/AVR/fastio/fastio_1281.h index 6067248978ae..fdff219ec3d7 100644 --- a/Marlin/src/HAL/AVR/fastio/fastio_1281.h +++ b/Marlin/src/HAL/AVR/fastio/fastio_1281.h @@ -26,9 +26,6 @@ * * Logical Pin: 38 39 40 41 42 43 44 45 16 10 11 12 06 07 08 09 30 31 32 33 34 35 36 37 17 18 19 20 21 22 23 24 00 01 13 05 02 03 14 15 46 47 48 49 50 51 52 53 25 26 27 28 29 04 * Port: A0 A1 A2 A3 A4 A5 A6 A7 B0 B1 B2 B3 B4 B5 B6 B7 C0 C1 C2 C3 C4 C5 C6 C7 D0 D1 D2 D3 D4 D5 D6 D7 E0 E1 E2 E3 E4 E5 E6 E7 F0 F1 F2 F3 F4 F5 F6 F7 G0 G1 G2 G3 G4 G5 - * - * Arduino Pin Layout video: https://youtu.be/rIqeVCX09FA - * AVR alternate pin function overview video: https://youtu.be/1yd8wuI5Plg */ #include "../fastio.h" diff --git a/Marlin/src/HAL/AVR/fastio/fastio_168.h b/Marlin/src/HAL/AVR/fastio/fastio_168.h index cc559797408b..36dc55238527 100644 --- a/Marlin/src/HAL/AVR/fastio/fastio_168.h +++ b/Marlin/src/HAL/AVR/fastio/fastio_168.h @@ -26,9 +26,6 @@ * * Logical Pin: 08 09 10 11 12 13 14 15 16 17 18 19 20 21 00 01 02 03 04 05 06 07 * Port: B0 B1 B2 B3 B4 B5 C0 C1 C2 C3 C4 C5 C6 C7 D0 D1 D2 D3 D4 D5 D6 D7 - * - * Arduino Pin Layout video: https://youtu.be/rIqeVCX09FA - * AVR alternate pin function overview video: https://youtu.be/1yd8wuI5Plg */ #include "../fastio.h" diff --git a/Marlin/src/HAL/AVR/fastio/fastio_644.h b/Marlin/src/HAL/AVR/fastio/fastio_644.h index 94b322a8190d..e20a3d345e37 100644 --- a/Marlin/src/HAL/AVR/fastio/fastio_644.h +++ b/Marlin/src/HAL/AVR/fastio/fastio_644.h @@ -26,9 +26,6 @@ * * Logical Pin: 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 * Port: B0 B1 B2 B3 B4 B5 B6 B7 D0 D1 D2 D3 D4 D5 D6 D7 C0 C1 C2 C3 C4 C5 C6 C7 A7 A6 A5 A4 A3 A2 A1 A0 - * - * Arduino Pin Layout video: https://youtu.be/rIqeVCX09FA - * AVR alternate pin function overview video: https://youtu.be/1yd8wuI5Plg */ /** ATMega644 diff --git a/Marlin/src/HAL/AVR/fastio/fastio_AT90USB.h b/Marlin/src/HAL/AVR/fastio/fastio_AT90USB.h index 51c5e096586e..ee250b1786e7 100644 --- a/Marlin/src/HAL/AVR/fastio/fastio_AT90USB.h +++ b/Marlin/src/HAL/AVR/fastio/fastio_AT90USB.h @@ -27,9 +27,6 @@ * Logical Pin: 28 29 30 31 32 33 34 35 20 21 22 23 24 25 26 27 10 11 12 13 14 15 16 17 00 01 02 03 04 05 06 07 08 09(46*47)36 37 18 19 38 39 40 41 42 43 44 45 * Port: A0 A1 A2 A3 A4 A5 A6 A7 B0 B1 B2 B3 B4 B5 B6 B7 C0 C1 C2 C3 C4 C5 C6 C7 D0 D1 D2 D3 D4 D5 D6 D7 E0 E1 E2 E3 E4 E5 E6 E7 F0 F1 F2 F3 F4 F5 F6 F7 * The logical pins 46 and 47 are not supported by Teensyduino, but are supported below as E2 and E3 - * - * Arduino Pin Layout video: https://youtu.be/rIqeVCX09FA - * AVR alternate pin function overview video: https://youtu.be/1yd8wuI5Plg */ #include "../fastio.h" diff --git a/Marlin/src/HAL/DUE/inc/SanityCheck.h b/Marlin/src/HAL/DUE/inc/SanityCheck.h index a8f5de8298d1..4d0a3f4aab2b 100644 --- a/Marlin/src/HAL/DUE/inc/SanityCheck.h +++ b/Marlin/src/HAL/DUE/inc/SanityCheck.h @@ -68,16 +68,15 @@ * Usually the hardware SPI pins are only available to the LCD. This makes the DUE hard SPI used at the same time * as the TMC2130 soft SPI the most common setup. */ -#define _IS_HW_SPI(P) (defined(TMC_SPI_##P) && (TMC_SPI_##P == SD_MOSI_PIN || TMC_SPI_##P == SD_MISO_PIN || TMC_SPI_##P == SD_SCK_PIN)) - #if HAS_MEDIA && HAS_DRIVER(TMC2130) - #if ENABLED(TMC_USE_SW_SPI) - #if DISABLED(DUE_SOFTWARE_SPI) && (_IS_HW_SPI(MOSI) || _IS_HW_SPI(MISO) || _IS_HW_SPI(SCK)) - #error "DUE hardware SPI is required but is incompatible with TMC2130 software SPI. Either disable TMC_USE_SW_SPI or use separate pins for the two SPIs." - #endif - #elif ENABLED(DUE_SOFTWARE_SPI) + #define _IS_HW_SPI(P) (defined(TMC_SPI_##P) && (TMC_SPI_##P == SD_MOSI_PIN || TMC_SPI_##P == SD_MISO_PIN || TMC_SPI_##P == SD_SCK_PIN)) + #if DISABLED(DUE_SOFTWARE_SPI) && ENABLED(TMC_USE_SW_SPI) && (_IS_HW_SPI(MOSI) || _IS_HW_SPI(MISO) || _IS_HW_SPI(SCK)) + #error "DUE hardware SPI is required but is incompatible with TMC2130 software SPI. Either disable TMC_USE_SW_SPI or use separate pins for the two SPIs." + #endif + #if ENABLED(DUE_SOFTWARE_SPI) && DISABLED(TMC_USE_SW_SPI) #error "DUE software SPI is required but is incompatible with TMC2130 hardware SPI. Enable TMC_USE_SW_SPI to fix." #endif + #undef _IS_HW_SPI #endif #if ENABLED(FAST_PWM_FAN) || SPINDLE_LASER_FREQUENCY diff --git a/Marlin/src/HAL/DUE/spi_pins.h b/Marlin/src/HAL/DUE/spi_pins.h index cec22c2c374a..efb93bc6aef3 100644 --- a/Marlin/src/HAL/DUE/spi_pins.h +++ b/Marlin/src/HAL/DUE/spi_pins.h @@ -24,7 +24,7 @@ /** * Define SPI Pins: SCK, MISO, MOSI, SS * - * Available chip select pins for HW SPI are 4 10 52 77 + * Available chip select pins for HW SPI are 4 10 52 77 87 */ #if SDSS == 4 || SDSS == 10 || SDSS == 52 || SDSS == 77 || SDSS == 87 #if SDSS == 4 diff --git a/Marlin/src/HAL/LINUX/spi_pins.h b/Marlin/src/HAL/LINUX/spi_pins.h index 7bd2498be748..37e47a5992ae 100644 --- a/Marlin/src/HAL/LINUX/spi_pins.h +++ b/Marlin/src/HAL/LINUX/spi_pins.h @@ -31,12 +31,6 @@ // spiBeginTransaction. #endif -// Onboard SD -//#define SD_SCK_PIN P0_07 -//#define SD_MISO_PIN P0_08 -//#define SD_MOSI_PIN P0_09 -//#define SD_SS_PIN P0_06 - // External SD #ifndef SD_SCK_PIN #define SD_SCK_PIN 50 diff --git a/Marlin/src/HAL/LPC1768/fastio.h b/Marlin/src/HAL/LPC1768/fastio.h index c553ffb1820d..48583340809e 100644 --- a/Marlin/src/HAL/LPC1768/fastio.h +++ b/Marlin/src/HAL/LPC1768/fastio.h @@ -66,7 +66,7 @@ #define _WRITE(IO,V) WRITE_PIN(IO,V) /// toggle a pin -#define _TOGGLE(IO) _WRITE(IO, !READ(IO)) +#define _TOGGLE(IO) LPC176x::gpio_toggle(IO) /// set pin as input #define _SET_INPUT(IO) SET_DIR_INPUT(IO) diff --git a/Marlin/src/HAL/LPC1768/spi_pins.h b/Marlin/src/HAL/LPC1768/spi_pins.h index 5551948286a5..ec638d86010a 100644 --- a/Marlin/src/HAL/LPC1768/spi_pins.h +++ b/Marlin/src/HAL/LPC1768/spi_pins.h @@ -30,12 +30,13 @@ // spiBeginTransaction. #endif -/** onboard SD card */ -//#define SD_SCK_PIN P0_07 -//#define SD_MISO_PIN P0_08 -//#define SD_MOSI_PIN P0_09 -//#define SD_SS_PIN P0_06 -/** external */ +// Onboard SD +//#define SD_SCK_PIN P0_07 +//#define SD_MISO_PIN P0_08 +//#define SD_MOSI_PIN P0_09 +//#define SD_SS_PIN P0_06 + +// External SD #ifndef SD_SCK_PIN #define SD_SCK_PIN P0_15 #endif diff --git a/Marlin/src/MarlinCore.cpp b/Marlin/src/MarlinCore.cpp index e21c89be2111..8fddd125fbcb 100644 --- a/Marlin/src/MarlinCore.cpp +++ b/Marlin/src/MarlinCore.cpp @@ -1329,7 +1329,7 @@ void setup() { #endif #endif - #if ALL(HAS_MEDIA, SDCARD_EEPROM_EMULATION) + #if HAS_MEDIA && ANY(SDCARD_EEPROM_EMULATION, POWER_LOSS_RECOVERY) SETUP_RUN(card.mount()); // Mount media with settings before first_load #endif diff --git a/Marlin/src/core/macros.h b/Marlin/src/core/macros.h index 47ba840d2b2c..e91187584dc7 100644 --- a/Marlin/src/core/macros.h +++ b/Marlin/src/core/macros.h @@ -679,7 +679,7 @@ #define DEFER4(M) M EMPTY EMPTY EMPTY EMPTY()()()() // Force define expansion -#define EVAL EVAL16 +#define EVAL(V...) EVAL16(V) #define EVAL4096(V...) EVAL2048(EVAL2048(V)) #define EVAL2048(V...) EVAL1024(EVAL1024(V)) #define EVAL1024(V...) EVAL512(EVAL512(V)) diff --git a/Marlin/src/core/types.h b/Marlin/src/core/types.h index 6ec0771d8484..75dcce4e3cbd 100644 --- a/Marlin/src/core/types.h +++ b/Marlin/src/core/types.h @@ -451,7 +451,7 @@ struct XYval { // Length reduced to one dimension FI constexpr T magnitude() const { return (T)sqrtf(x*x + y*y); } // Pointer to the data as a simple array - FI operator T* () { return pos; } + explicit FI operator T* () { return pos; } // If any element is true then it's true FI constexpr operator bool() const { return x || y; } // Smallest element @@ -601,7 +601,7 @@ struct XYZval { // Length reduced to one dimension FI constexpr T magnitude() const { return (T)TERN(HAS_X_AXIS, sqrtf(NUM_AXIS_GANG(x*x, + y*y, + z*z, + i*i, + j*j, + k*k, + u*u, + v*v, + w*w)), 0); } // Pointer to the data as a simple array - FI operator T* () { return pos; } + explicit FI operator T* () { return pos; } // If any element is true then it's true FI constexpr operator bool() const { return 0 NUM_AXIS_GANG(|| x, || y, || z, || i, || j, || k, || u, || v, || w); } // Smallest element @@ -749,7 +749,7 @@ struct XYZEval { // Length reduced to one dimension FI constexpr T magnitude() const { return (T)sqrtf(LOGICAL_AXIS_GANG(+ e*e, + x*x, + y*y, + z*z, + i*i, + j*j, + k*k, + u*u, + v*v, + w*w)); } // Pointer to the data as a simple array - FI operator T* () { return pos; } + explicit FI operator T* () { return pos; } // If any element is true then it's true FI constexpr operator bool() const { return 0 LOGICAL_AXIS_GANG(|| e, || x, || y, || z, || i, || j, || k, || u, || v, || w); } // Smallest element diff --git a/Marlin/src/feature/powerloss.cpp b/Marlin/src/feature/powerloss.cpp index 86e6b780bddc..69e23f4a3230 100644 --- a/Marlin/src/feature/powerloss.cpp +++ b/Marlin/src/feature/powerloss.cpp @@ -31,6 +31,10 @@ #include "powerloss.h" #include "../core/macros.h" +#if ENABLED(EXTENSIBLE_UI) + #include "../lcd/extui/ui_api.h" +#endif + bool PrintJobRecovery::enabled; // Initialized by settings.load() MediaFile PrintJobRecovery::file; diff --git a/Marlin/src/gcode/control/M80_M81.cpp b/Marlin/src/gcode/control/M80_M81.cpp index 94dd5e3dd93f..d85463c2303f 100644 --- a/Marlin/src/gcode/control/M80_M81.cpp +++ b/Marlin/src/gcode/control/M80_M81.cpp @@ -112,9 +112,9 @@ void GcodeSuite::M81() { return; } - #if HAS_SUICIDE - suicide(); - #elif ENABLED(PSU_CONTROL) + #if ENABLED(PSU_CONTROL) powerManager.power_off_soon(); + #elif HAS_SUICIDE + suicide(); #endif } diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index 5b9a8503db31..885ecd94a49e 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -456,6 +456,7 @@ #endif #ifdef Y2_DRIVER_TYPE #define HAS_Y2_STEPPER 1 + #define HAS_DUAL_Y_STEPPERS 1 #endif /** diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index 6794087ca42e..4e18fd393823 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -2852,7 +2852,7 @@ #ifndef PROBE_OFFSET_YMAX #define PROBE_OFFSET_YMAX 50 #endif - #if ALL(ENDSTOPPULLUPS, USE_Z_MIN_PROBE) + #if ALL(ENDSTOPPULLUPS, HAS_Z_MIN_PROBE_PIN) #define ENDSTOPPULLUP_ZMIN_PROBE #endif #ifndef XY_PROBE_FEEDRATE diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 7a9c8aef6251..b833eeea59cc 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -3679,11 +3679,11 @@ static_assert(_PLUS_TEST(3), "DEFAULT_MAX_ACCELERATION values must be positive." #if !(defined(WIFI_SSID) && defined(WIFI_PWD)) #error "ESP32 motherboard with WIFISUPPORT requires WIFI_SSID and WIFI_PWD." #endif -#elif ENABLED(WIFI_CUSTOM_COMMAND) +#elif ENABLED(WIFI_CUSTOM_COMMAND) && NONE(ESP3D_WIFISUPPORT, WIFISUPPORT) #error "WIFI_CUSTOM_COMMAND requires an ESP32 motherboard and WIFISUPPORT." -#elif ENABLED(OTASUPPORT) +#elif ENABLED(OTASUPPORT) && NONE(ESP3D_WIFISUPPORT, WIFISUPPORT) #error "OTASUPPORT requires an ESP32 motherboard and WIFISUPPORT." -#elif defined(WIFI_SSID) || defined(WIFI_PWD) +#elif (defined(WIFI_SSID) || defined(WIFI_PWD)) && NONE(ESP3D_WIFISUPPORT, WIFISUPPORT) #error "WIFI_SSID and WIFI_PWD only apply to ESP32 motherboard with WIFISUPPORT." #endif diff --git a/Marlin/src/inc/Version.h b/Marlin/src/inc/Version.h index 8a249c4d2ea8..6accbe2a2530 100644 --- a/Marlin/src/inc/Version.h +++ b/Marlin/src/inc/Version.h @@ -25,7 +25,7 @@ * Release version. Leave the Marlin version or apply a custom scheme. */ #ifndef SHORT_BUILD_VERSION - #define SHORT_BUILD_VERSION "2.1.2.2" + #define SHORT_BUILD_VERSION "2.1.2.4" #endif /** @@ -42,7 +42,7 @@ * version was tagged. */ #ifndef STRING_DISTRIBUTION_DATE - #define STRING_DISTRIBUTION_DATE "2024-02-08" + #define STRING_DISTRIBUTION_DATE "2024-06-16" #endif /** @@ -52,7 +52,7 @@ * to alert users to major changes. */ -#define MARLIN_HEX_VERSION 02010202 +#define MARLIN_HEX_VERSION 02010204 #ifndef REQUIRED_CONFIGURATION_H_VERSION #define REQUIRED_CONFIGURATION_H_VERSION MARLIN_HEX_VERSION #endif diff --git a/Marlin/src/lcd/language/language_en.h b/Marlin/src/lcd/language/language_en.h index ba90de5a5eba..c494c6e73832 100644 --- a/Marlin/src/lcd/language/language_en.h +++ b/Marlin/src/lcd/language/language_en.h @@ -567,6 +567,7 @@ namespace Language_en { #else LSTR MSG_ATTACH_MEDIA = _UxGT("Attach ") MEDIA_TYPE_EN; #endif + LSTR MSG_ATTACH_SD_MEDIA = _UxGT("Attach SD Card"); LSTR MSG_CHANGE_MEDIA = _UxGT("Change ") MEDIA_TYPE_EN; LSTR MSG_RELEASE_MEDIA = _UxGT("Release ") MEDIA_TYPE_EN; LSTR MSG_ZPROBE_OUT = _UxGT("Z Probe Past Bed"); diff --git a/Marlin/src/module/stepper.cpp b/Marlin/src/module/stepper.cpp index 171fb7e2eedf..7decdf987326 100644 --- a/Marlin/src/module/stepper.cpp +++ b/Marlin/src/module/stepper.cpp @@ -274,7 +274,7 @@ xyze_int8_t Stepper::count_direction{0}; #define MINDIR(A) (count_direction[_AXIS(A)] < 0) #define MAXDIR(A) (count_direction[_AXIS(A)] > 0) -#define STEPTEST(A,M,I) TERN0(HAS_ ##A## ##I## _ ##M, !(TEST(endstops.state(), A## ##I## _ ##M) && M## DIR(A)) && !locked_ ##A## ##I## _motor) +#define STEPTEST(A,M,I) TERN0(USE_##A##I##_##M, !(TEST(endstops.state(), A##I##_##M) && M## DIR(A)) && !locked_ ##A##I##_motor) #define DUAL_ENDSTOP_APPLY_STEP(A,V) \ if (separate_multi_axis) { \ @@ -1610,7 +1610,7 @@ void Stepper::isr() { #if MINIMUM_STEPPER_PULSE || MAXIMUM_STEPPER_RATE #define ISR_PULSE_CONTROL 1 #endif -#if ISR_PULSE_CONTROL && DISABLED(I2S_STEPPER_STREAM) +#if ISR_PULSE_CONTROL && MULTISTEPPING_LIMIT > 1 && DISABLED(I2S_STEPPER_STREAM) #define ISR_MULTI_STEPS 1 #endif @@ -1655,10 +1655,11 @@ void Stepper::pulse_phase_isr() { // Just update the value we will get at the end of the loop step_events_completed += events_to_do; - // Take multiple steps per interrupt (For high speed moves) - #if ISR_MULTI_STEPS + TERN_(ISR_PULSE_CONTROL, USING_TIMED_PULSE()); + + // Take multiple steps per interrupt. For high speed moves. + #if ENABLED(ISR_MULTI_STEPS) bool firstStep = true; - USING_TIMED_PULSE(); #endif xyze_bool_t step_needed{0}; @@ -1944,7 +1945,7 @@ void Stepper::pulse_phase_isr() { TERN_(I2S_STEPPER_STREAM, i2s_push_sample()); // TODO: need to deal with MINIMUM_STEPPER_PULSE over i2s - #if ISR_MULTI_STEPS + #if ISR_PULSE_CONTROL START_TIMED_PULSE(); AWAIT_HIGH_PULSE(); #endif diff --git a/Marlin/src/module/temperature.cpp b/Marlin/src/module/temperature.cpp index cfcfed5dcdf0..e88b27b76614 100644 --- a/Marlin/src/module/temperature.cpp +++ b/Marlin/src/module/temperature.cpp @@ -595,7 +595,7 @@ volatile bool Temperature::raw_temps_ready = false; #endif #if MILLISECONDS_PREHEAT_TIME > 0 - millis_t Temperature::preheat_end_ms_hotend[HOTENDS]; // = { 0 }; + millis_t Temperature::preheat_end_ms_hotend[HOTENDS]; // = { 0 } #endif #if HAS_HEATED_BED && PREHEAT_TIME_BED_MS > 0 millis_t Temperature::preheat_end_ms_bed = 0; @@ -1814,7 +1814,7 @@ void Temperature::mintemp_error(const heater_id_t heater_id) { // Make sure temperature is decreasing if (watch_cooler.elapsed(ms)) { // Time to check the cooler? if (degCooler() > watch_cooler.target) // Failed to decrease enough? - _temp_error(H_COOLER, GET_TEXT_F(MSG_COOLING_FAILED), GET_TEXT_F(MSG_COOLING_FAILED)); + _temp_error(H_COOLER, GET_EN_TEXT_F(MSG_COOLING_FAILED), GET_TEXT_F(MSG_COOLING_FAILED)); else start_watching_cooler(); // Start again if the target is still far off } @@ -2442,7 +2442,7 @@ void Temperature::updateTemperaturesFromRawValues() { /** // DEBUG PREHEATING TIME SERIAL_ECHOLNPGM("\nExtruder = ", e, " Preheat On/Off = ", is_preheating(e)); - const float test_is_preheating = (preheat_end_time[HOTEND_INDEX] - millis()) * 0.001f; + const float test_is_preheating = (preheat_end_ms_hotend[HOTEND_INDEX] - millis()) * 0.001f; if (test_is_preheating < 31) SERIAL_ECHOLNPGM("Extruder = ", e, " Preheat remaining time = ", test_is_preheating, "s", "\n"); //*/ diff --git a/Marlin/src/module/temperature.h b/Marlin/src/module/temperature.h index 10bb12f8b54c..bdb13177b815 100644 --- a/Marlin/src/module/temperature.h +++ b/Marlin/src/module/temperature.h @@ -747,7 +747,7 @@ class Temperature { #endif #if MILLISECONDS_PREHEAT_TIME > 0 - static millis_t preheat_end_time[HOTENDS]; + static millis_t preheat_end_ms_hotend[HOTENDS]; #endif #if HAS_FAN_LOGIC @@ -909,13 +909,13 @@ class Temperature { */ #if MILLISECONDS_PREHEAT_TIME > 0 static bool is_preheating(const uint8_t E_NAME) { - return preheat_end_time[HOTEND_INDEX] && PENDING(millis(), preheat_end_time[HOTEND_INDEX]); + return preheat_end_ms_hotend[HOTEND_INDEX] && PENDING(millis(), preheat_end_ms_hotend[HOTEND_INDEX]); } static void start_preheat_time(const uint8_t E_NAME) { - preheat_end_time[HOTEND_INDEX] = millis() + MILLISECONDS_PREHEAT_TIME; + preheat_end_ms_hotend[HOTEND_INDEX] = millis() + MILLISECONDS_PREHEAT_TIME; } static void reset_preheat_time(const uint8_t E_NAME) { - preheat_end_time[HOTEND_INDEX] = 0; + preheat_end_ms_hotend[HOTEND_INDEX] = 0; } #else #define is_preheating(n) (false) diff --git a/Marlin/src/pins/ramps/pins_RAMPS_CREALITY.h b/Marlin/src/pins/ramps/pins_RAMPS_CREALITY.h index 49a8c196d0a6..09a1608aa19f 100644 --- a/Marlin/src/pins/ramps/pins_RAMPS_CREALITY.h +++ b/Marlin/src/pins/ramps/pins_RAMPS_CREALITY.h @@ -29,48 +29,74 @@ #define BOARD_INFO_NAME "Creality3D RAMPS" +//#define CR2020_INDUSTRIAL_SERIES // Use layout specific to CR2020 + +// +// 4-pin expansion header +// +#define EXP1_PIN 65 // A11 - Used by CR2020 Industrial series for case +#define EXP2_PIN 66 // A12 +#define EXP3_PIN 11 // RAMPS: SERVO0_PIN +#define EXP4_PIN 12 // RAMPS: PS_ON_PIN + +// +// Servos +// +#define SERVO1_PIN 12 + // // Heaters / Fans // #define MOSFET_B_PIN 7 #define FAN0_PIN 9 +// +// Filament Runout Sensor +// #define FIL_RUNOUT_PIN 2 #if NUM_RUNOUT_SENSORS >= 2 #define FIL_RUNOUT2_PIN 15 // Creality CR-X can use dual runout sensors #endif -#ifndef SD_DETECT_PIN - #if SD_CONNECTION_IS(ONBOARD) - //#define HAS_ONBOARD_SD_DETECT // If the SD_DETECT_PIN is wired up +// +// Misc. Functions +// +#ifdef CR2020_INDUSTRIAL_SERIES + #if ENABLED(PSU_CONTROL) && !defined(PS_ON_PIN) + #define PS_ON_PIN 40 // Used by CR2020 Industrial series #endif - #if ENABLED(HAS_ONBOARD_SD_DETECT) || !SD_CONNECTION_IS(ONBOARD) - #define SD_DETECT_PIN 49 + #ifndef SUICIDE_PIN + #define SUICIDE_PIN 12 // Used by CR2020 Industrial series + #endif + #ifndef SUICIDE_PIN_STATE + #define SUICIDE_PIN_STATE HIGH #endif -#endif - -#ifndef PS_ON_PIN - #define PS_ON_PIN 40 // Used by CR2020 Industrial series #endif #if ENABLED(CASE_LIGHT_ENABLE) && !defined(CASE_LIGHT_PIN) #define CASE_LIGHT_PIN 65 #endif -#define SERVO1_PIN 12 +// +// SD Card +// +#ifndef SD_DETECT_PIN + #if SD_CONNECTION_IS(ONBOARD) + //#define HAS_ONBOARD_SD_DETECT // If the SD_DETECT_PIN is wired up + #endif + #if ENABLED(HAS_ONBOARD_SD_DETECT) || !SD_CONNECTION_IS(ONBOARD) + #define SD_DETECT_PIN 49 + #endif +#endif +// +// Based on RAMPS 1.4 +// #include "pins_RAMPS.h" +// +// LCD / Controller +// #ifndef BEEPER_PIN #define BEEPER_PIN 37 // Always define beeper pin so Play Tone works with ExtUI #endif - -#define EXP1_PIN 65 // A11 - Used by CR2020 Industrial series for case -#define EXP2_PIN 66 // A12 -#define EXP3_PIN 11 // SERVO0_PIN -#define EXP4_PIN 12 // PS_ON_PIN - -#define SUICIDE_PIN 12 // Used by CR2020 Industrial series -#ifndef SUICIDE_PIN_STATE - #define SUICIDE_PIN_STATE HIGH -#endif diff --git a/Marlin/src/pins/sam/pins_ARCHIM1.h b/Marlin/src/pins/sam/pins_ARCHIM1.h index e7530f981ba6..1d8a77ba3641 100644 --- a/Marlin/src/pins/sam/pins_ARCHIM1.h +++ b/Marlin/src/pins/sam/pins_ARCHIM1.h @@ -26,10 +26,10 @@ * * The Archim 1.0 board requires Arduino Archim addons installed. * - * - Add the following URL to Arduino IDE's Additional Board Manager URLs: + * - Add the following URL to Arduino IDE's Additional Boards Manager URLs: * https://raw.githubusercontent.com/ultimachine/ArduinoAddons/master/package_ultimachine_index.json * - * - In the Arduino IDE Board Manager search for Archim and install the package. + * - In the Arduino IDE Boards Manager search for Archim and install the package. * * - Change your target board to "Archim". * diff --git a/Marlin/src/pins/sam/pins_ARCHIM2.h b/Marlin/src/pins/sam/pins_ARCHIM2.h index 31ed50194cc2..cd8527c727d7 100644 --- a/Marlin/src/pins/sam/pins_ARCHIM2.h +++ b/Marlin/src/pins/sam/pins_ARCHIM2.h @@ -26,10 +26,10 @@ * * The Archim 2.0 board requires Arduino Archim addons installed. * - * - Add the following URL to Arduino IDE's Additional Board Manager URLs: + * - Add the following URL to Arduino IDE's Additional Boards Manager URLs: * https://raw.githubusercontent.com/ultimachine/ArduinoAddons/master/package_ultimachine_index.json * - * - In the Arduino IDE Board Manager search for Archim and install the package. + * - In the Arduino IDE Boards Manager search for Archim and install the package. * * - Change your target board to "Archim". * diff --git a/Marlin/src/pins/sanguino/pins_ANET_10.h b/Marlin/src/pins/sanguino/pins_ANET_10.h index b0780d59288b..86a3432373c8 100644 --- a/Marlin/src/pins/sanguino/pins_ANET_10.h +++ b/Marlin/src/pins/sanguino/pins_ANET_10.h @@ -35,7 +35,7 @@ */ /** - * The standard Arduino IDE extension (board manager) for this board + * The standard Arduino IDE extension (Boards Manager) for this board * is located at https://github.com/SkyNet3D/anet-board. * * Installation instructions are on that page. @@ -52,7 +52,7 @@ */ /** - * Another usable Arduino IDE extension (board manager) can be found at + * Another usable Arduino IDE extension (Boards Manager) can be found at * https://github.com/Lauszus/Sanguino * * This extension has been tested on Arduino 1.6.12 & 1.8.0 diff --git a/Marlin/src/pins/sanguino/pins_GEN3_MONOLITHIC.h b/Marlin/src/pins/sanguino/pins_GEN3_MONOLITHIC.h index a5afc30187ed..2fa407d07e89 100644 --- a/Marlin/src/pins/sanguino/pins_GEN3_MONOLITHIC.h +++ b/Marlin/src/pins/sanguino/pins_GEN3_MONOLITHIC.h @@ -33,7 +33,7 @@ */ /** - * A useable Arduino IDE extension (board manager) can be found at + * A useable Arduino IDE extension (Boards Manager) can be found at * https://github.com/Lauszus/Sanguino * * This extension has been tested on Arduino 1.6.12 & 1.8.0 diff --git a/Marlin/src/pins/sanguino/pins_GEN3_PLUS.h b/Marlin/src/pins/sanguino/pins_GEN3_PLUS.h index 7cab1bd762c5..2340bb504036 100644 --- a/Marlin/src/pins/sanguino/pins_GEN3_PLUS.h +++ b/Marlin/src/pins/sanguino/pins_GEN3_PLUS.h @@ -32,7 +32,7 @@ */ /** - * A useable Arduino IDE extension (board manager) can be found at + * A useable Arduino IDE extension (Boards Manager) can be found at * https://github.com/Lauszus/Sanguino * * This extension has been tested on Arduino 1.6.12 & 1.8.0 diff --git a/Marlin/src/pins/sanguino/pins_GEN6.h b/Marlin/src/pins/sanguino/pins_GEN6.h index 4a6136e0810a..70d47a8f8603 100644 --- a/Marlin/src/pins/sanguino/pins_GEN6.h +++ b/Marlin/src/pins/sanguino/pins_GEN6.h @@ -36,7 +36,7 @@ */ /** - * A useable Arduino IDE extension (board manager) can be found at + * A useable Arduino IDE extension (Boards Manager) can be found at * https://github.com/Lauszus/Sanguino * * This extension has been tested on Arduino 1.6.12 & 1.8.0 diff --git a/Marlin/src/pins/sanguino/pins_GEN6_DELUXE.h b/Marlin/src/pins/sanguino/pins_GEN6_DELUXE.h index 476375203c6b..caf395fd9467 100644 --- a/Marlin/src/pins/sanguino/pins_GEN6_DELUXE.h +++ b/Marlin/src/pins/sanguino/pins_GEN6_DELUXE.h @@ -32,7 +32,7 @@ */ /** - * A useable Arduino IDE extension (board manager) can be found at + * A useable Arduino IDE extension (Boards Manager) can be found at * https://github.com/Lauszus/Sanguino * * This extension has been tested on Arduino 1.6.12 & 1.8.0 diff --git a/Marlin/src/pins/sanguino/pins_GEN7_12.h b/Marlin/src/pins/sanguino/pins_GEN7_12.h index 0bf65c37cd38..caa9cde5c686 100644 --- a/Marlin/src/pins/sanguino/pins_GEN7_12.h +++ b/Marlin/src/pins/sanguino/pins_GEN7_12.h @@ -42,7 +42,7 @@ */ /** - * A useable Arduino IDE extension (board manager) can be found at + * A useable Arduino IDE extension (Boards Manager) can be found at * https://github.com/Lauszus/Sanguino * * This extension has been tested on Arduino 1.6.12 & 1.8.0 diff --git a/Marlin/src/pins/sanguino/pins_GEN7_13.h b/Marlin/src/pins/sanguino/pins_GEN7_13.h index 55881aaff58e..a7c513cbcd82 100644 --- a/Marlin/src/pins/sanguino/pins_GEN7_13.h +++ b/Marlin/src/pins/sanguino/pins_GEN7_13.h @@ -32,7 +32,7 @@ */ /** - * A useable Arduino IDE extension (board manager) can be found at + * A useable Arduino IDE extension (Boards Manager) can be found at * https://github.com/Lauszus/Sanguino * * This extension has been tested on Arduino 1.6.12 & 1.8.0 diff --git a/Marlin/src/pins/sanguino/pins_GEN7_14.h b/Marlin/src/pins/sanguino/pins_GEN7_14.h index db80c45eeefe..2adb16add7ec 100644 --- a/Marlin/src/pins/sanguino/pins_GEN7_14.h +++ b/Marlin/src/pins/sanguino/pins_GEN7_14.h @@ -38,7 +38,7 @@ */ /** - * A useable Arduino IDE extension (board manager) can be found at + * A useable Arduino IDE extension (Boards Manager) can be found at * https://github.com/Lauszus/Sanguino * * This extension has been tested on Arduino 1.6.12 & 1.8.0 diff --git a/Marlin/src/pins/sanguino/pins_GEN7_CUSTOM.h b/Marlin/src/pins/sanguino/pins_GEN7_CUSTOM.h index 154e26725f20..6b4f2b823107 100644 --- a/Marlin/src/pins/sanguino/pins_GEN7_CUSTOM.h +++ b/Marlin/src/pins/sanguino/pins_GEN7_CUSTOM.h @@ -37,7 +37,7 @@ */ /** - * A useable Arduino IDE extension (board manager) can be found at + * A useable Arduino IDE extension (Boards Manager) can be found at * https://github.com/Lauszus/Sanguino * * This extension has been tested on Arduino 1.6.12 & 1.8.0 diff --git a/Marlin/src/pins/sanguino/pins_OMCA.h b/Marlin/src/pins/sanguino/pins_OMCA.h index 65f9006adbf5..223002a6cfa4 100644 --- a/Marlin/src/pins/sanguino/pins_OMCA.h +++ b/Marlin/src/pins/sanguino/pins_OMCA.h @@ -59,7 +59,7 @@ */ /** - * A useable Arduino IDE extension (board manager) can be found at + * A useable Arduino IDE extension (Boards Manager) can be found at * https://github.com/Lauszus/Sanguino * * This extension has been tested on Arduino 1.6.12 & 1.8.0 diff --git a/Marlin/src/pins/sanguino/pins_OMCA_A.h b/Marlin/src/pins/sanguino/pins_OMCA_A.h index aa7f79d602d7..73a678bff620 100644 --- a/Marlin/src/pins/sanguino/pins_OMCA_A.h +++ b/Marlin/src/pins/sanguino/pins_OMCA_A.h @@ -57,7 +57,7 @@ */ /** - * A useable Arduino IDE extension (board manager) can be found at + * A useable Arduino IDE extension (Boards Manager) can be found at * https://github.com/Lauszus/Sanguino * * This extension has been tested on Arduino 1.6.12 & 1.8.0 diff --git a/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h b/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h index bee2a30e44ab..24dc048514a0 100644 --- a/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h +++ b/Marlin/src/pins/sanguino/pins_SANGUINOLOLU_11.h @@ -44,7 +44,7 @@ */ /** - * A useable Arduino IDE extension (board manager) can be found at + * A useable Arduino IDE extension (Boards Manager) can be found at * https://github.com/Lauszus/Sanguino * * This extension has been tested on Arduino 1.6.12 & 1.8.0 diff --git a/Marlin/src/pins/sanguino/pins_SETHI.h b/Marlin/src/pins/sanguino/pins_SETHI.h index 31d5585cc8cf..9a21e2d23631 100644 --- a/Marlin/src/pins/sanguino/pins_SETHI.h +++ b/Marlin/src/pins/sanguino/pins_SETHI.h @@ -33,7 +33,7 @@ */ /** - * A useable Arduino IDE extension (board manager) can be found at + * A useable Arduino IDE extension (Boards Manager) can be found at * https://github.com/Lauszus/Sanguino * * This extension has been tested on Arduino 1.6.12 & 1.8.0 diff --git a/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h b/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h index b913532fbbdd..c2177a4fbf89 100644 --- a/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h +++ b/Marlin/src/pins/stm32f1/pins_LONGER3D_LK.h @@ -160,7 +160,8 @@ #define LCD_BRIGHTNESS_DEFAULT TFT_BACKLIGHT_PWM #endif -#if ENABLED(ONBOARD_SDIO) +#if SD_CONNECTION_IS(ONBOARD) + #define ONBOARD_SDIO #define SD_SS_PIN -1 // else SDSS set to PA4 in M43 (spi_pins.h) #endif diff --git a/Marlin/src/sd/Sd2Card.h b/Marlin/src/sd/Sd2Card.h index dd021364e033..ad015f1f96e7 100644 --- a/Marlin/src/sd/Sd2Card.h +++ b/Marlin/src/sd/Sd2Card.h @@ -78,7 +78,7 @@ uint8_t const SD_CARD_TYPE_SD1 = 1, // Standard capacity V1 SD card /** * Define SOFTWARE_SPI to use bit-bang SPI */ -#if ANY(MEGA_SOFT_SPI, USE_SOFTWARE_SPI) +#if ANY(MEGA_SOFT_SPI, SDFAT_USE_SOFTWARE_SPI) #define SOFTWARE_SPI #endif diff --git a/Marlin/src/sd/SdFatConfig.h b/Marlin/src/sd/SdFatConfig.h index 0979a592a3bc..674737c102cd 100644 --- a/Marlin/src/sd/SdFatConfig.h +++ b/Marlin/src/sd/SdFatConfig.h @@ -88,8 +88,8 @@ */ #define MEGA_SOFT_SPI 0 -// Set USE_SOFTWARE_SPI nonzero to ALWAYS use Software SPI. -#define USE_SOFTWARE_SPI 0 +// Set SDFAT_USE_SOFTWARE_SPI nonzero to ALWAYS use Software SPI. +#define SDFAT_USE_SOFTWARE_SPI 0 /** * The __cxa_pure_virtual function is an error handler that is invoked when diff --git a/Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.h b/Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.h index f722c873ae0a..3c7e7b4a56cc 100644 --- a/Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.h +++ b/Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.h @@ -33,7 +33,7 @@ /** * Define SOFTWARE_SPI to use bit-bang SPI */ - #if ANY(MEGA_SOFT_SPI, USE_SOFTWARE_SPI) + #if ANY(MEGA_SOFT_SPI, SDFAT_USE_SOFTWARE_SPI) #define SOFTWARE_SPI #endif diff --git a/README.md b/README.md index ac28e343cdac..604d5dd93421 100644 --- a/README.md +++ b/README.md @@ -94,52 +94,19 @@ The Issue Queue is reserved for Bug Reports and Feature Requests. To get help wi Marlin is constantly improving thanks to a huge number of contributors from all over the world bringing their specialties and talents. Huge thanks are due to [all the contributors](https://github.com/MarlinFirmware/Marlin/graphs/contributors) who regularly patch up bugs, help direct traffic, and basically keep Marlin from falling apart. Marlin's continued existence would not be possible without them. -## Administration - -Regular users can open and close their own issues, but only the administrators can do project-related things like add labels, merge changes, set milestones, and kick trolls. The current Marlin admin team consists of: - - - - -
Project Maintainer
- - πŸ‡ΊπŸ‡Έβ€…β€…**Scott Lahteine** - β€…β€…β€…β€…β€…β€…[@thinkyhead](https://github.com/thinkyhead) - β€…β€…β€…β€…β€…β€…[β€…β€…Donate πŸ’Έβ€…β€…](https://www.thinkyhead.com/donate-to-marlin) - - - - πŸ‡ΊπŸ‡Έβ€…β€…**Roxanne Neufeld** - β€…β€…β€…β€…β€…β€…[@Roxy-3D](https://github.com/Roxy-3D) - - πŸ‡ΊπŸ‡Έβ€…β€…**Keith Bennett** - β€…β€…β€…β€…β€…β€…[@thisiskeithb](https://github.com/thisiskeithb) - β€…β€…β€…β€…β€…β€…[β€…β€…Donate πŸ’Έβ€…β€…](https://github.com/sponsors/thisiskeithb) - - πŸ‡ΊπŸ‡Έβ€…β€…**Jason Smith** - β€…β€…β€…β€…β€…β€…[@sjasonsmith](https://github.com/sjasonsmith) - - - - πŸ‡§πŸ‡·β€…β€…**Victor Oliveira** - β€…β€…β€…β€…β€…β€…[@rhapsodyv](https://github.com/rhapsodyv) - - πŸ‡¬πŸ‡§β€…β€…**Chris Pepper** - β€…β€…β€…β€…β€…β€…[@p3p](https://github.com/p3p) - -πŸ‡³πŸ‡Ώβ€…β€…**Peter Ellens** - β€…β€…β€…β€…β€…β€…[@ellensp](https://github.com/ellensp) - β€…β€…β€…β€…β€…β€…[β€…β€…Donate πŸ’Έβ€…β€…](https://ko-fi.com/ellensp) - - - - πŸ‡ΊπŸ‡Έβ€…β€…**Bob Kuhn** - β€…β€…β€…β€…β€…β€…[@Bob-the-Kuhn](https://github.com/Bob-the-Kuhn) - - πŸ‡³πŸ‡±β€…β€…**Erik van der Zalm** - β€…β€…β€…β€…β€…β€…[@ErikZalm](https://github.com/ErikZalm) - -
+## Project Leadership + +Name|Role|Link|Donate +----|----|----|---- +πŸ‡ΊπŸ‡Έ Scott Lahteine|Project Lead|[[@thinkyhead](https://github.com/thinkyhead)]|[πŸ’Έ Donate](https://marlinfw.org/docs/development/contributing.html#donate) +πŸ‡ΊπŸ‡Έ Roxanne Neufeld|Admin|[[@Roxy-3D](https://github.com/Roxy-3D)]| +πŸ‡ΊπŸ‡Έ Keith Bennett|Admin|[[@thisiskeithb](https://github.com/thisiskeithb)]|[πŸ’Έ Donate](https://github.com/sponsors/thisiskeithb) +πŸ‡ΊπŸ‡Έ Jason Smith|Admin|[[@sjasonsmith](https://github.com/sjasonsmith)]| +πŸ‡§πŸ‡· Victor Oliveira|Admin|[[@rhapsodyv](https://github.com/rhapsodyv)]| +πŸ‡¬πŸ‡§ Chris Pepper|Admin|[[@p3p](https://github.com/p3p)]| +πŸ‡³πŸ‡Ώ Peter Ellens|Admin|[[@ellensp](https://github.com/ellensp)]|[πŸ’Έ Donate](https://ko-fi.com/ellensp) +πŸ‡ΊπŸ‡Έ Bob Kuhn|Admin|[[@Bob-the-Kuhn](https://github.com/Bob-the-Kuhn)]| +πŸ‡³πŸ‡± Erik van der Zalm|Founder|[[@ErikZalm](https://github.com/ErikZalm)]| ## License diff --git a/config/README.md b/config/README.md index c9c8408f4b76..9f8e98204143 100644 --- a/config/README.md +++ b/config/README.md @@ -1,3 +1,3 @@ # Where have all the configurations gone? -## https://github.com/MarlinFirmware/Configurations/archive/release-2.1.2.2.zip +## https://github.com/MarlinFirmware/Configurations/archive/release-2.1.2.4.zip diff --git a/ini/samd51.ini b/ini/samd51.ini index 70bda9ca52d0..cf1f9ed8c0b5 100644 --- a/ini/samd51.ini +++ b/ini/samd51.ini @@ -15,11 +15,12 @@ [env:SAMD51_grandcentral_m4] platform = atmelsam board = adafruit_grandcentral_m4 -build_flags = ${common.build_flags} -std=gnu++17 +build_flags = ${common.build_flags} -std=gnu++17 -DUSE_TINYUSB build_unflags = -std=gnu++11 build_src_filter = ${common.default_src_filter} + lib_deps = ${common.lib_deps} SoftwareSerialM + Adafruit TinyUSB Library extra_scripts = ${common.extra_scripts} pre:buildroot/share/PlatformIO/scripts/SAMD51_grandcentral_m4.py custom_marlin.HAS_MEDIA = SdFat - Adafruit Fork, Adafruit SPIFlash