Merge nightly patches

This commit is contained in:
Scott Lahteine 2020-03-16 17:50:43 -05:00
commit 129b1bb8d4
45 changed files with 224 additions and 52 deletions

View file

@ -1446,6 +1446,7 @@
//#define EEPROM_SETTINGS // Persistent storage with M500 and M501 //#define EEPROM_SETTINGS // Persistent storage with M500 and M501
//#define DISABLE_M503 // Saves ~2700 bytes of PROGMEM. Disable for release! //#define DISABLE_M503 // Saves ~2700 bytes of PROGMEM. Disable for release!
#define EEPROM_CHITCHAT // Give feedback on EEPROM commands. Disable to save PROGMEM. #define EEPROM_CHITCHAT // Give feedback on EEPROM commands. Disable to save PROGMEM.
#define EEPROM_BOOT_SILENT // Keep M503 quiet and only give errors during first load
#if ENABLED(EEPROM_SETTINGS) #if ENABLED(EEPROM_SETTINGS)
//#define EEPROM_AUTO_INIT // Init EEPROM automatically on any errors. //#define EEPROM_AUTO_INIT // Init EEPROM automatically on any errors.
#endif #endif

View file

@ -753,8 +753,12 @@
// Minimum time that a segment needs to take if the buffer is emptied // Minimum time that a segment needs to take if the buffer is emptied
#define DEFAULT_MINSEGMENTTIME 20000 // (ms) #define DEFAULT_MINSEGMENTTIME 20000 // (ms)
// If defined the movements slow down when the look ahead buffer is only half full // Slow down the machine if the look ahead buffer is (by default) half full.
// Increase the slowdown divisor for larger buffer sizes.
#define SLOWDOWN #define SLOWDOWN
#if ENABLED(SLOWDOWN)
#define SLOWDOWN_DIVISOR 2
#endif
// Frequency limit // Frequency limit
// See nophead's blog for more info // See nophead's blog for more info
@ -999,7 +1003,7 @@
#define BOOTSCREEN_TIMEOUT 4000 // (ms) Total Duration to display the boot screen(s) #define BOOTSCREEN_TIMEOUT 4000 // (ms) Total Duration to display the boot screen(s)
#endif #endif
#if HAS_GRAPHICAL_LCD && HAS_PRINT_PROGRESS #if HAS_GRAPHICAL_LCD && EITHER(SDSUPPORT, LCD_SET_PROGRESS_MANUALLY)
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits //#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits
//#define SHOW_REMAINING_TIME // Display estimated time to completion //#define SHOW_REMAINING_TIME // Display estimated time to completion
#if ENABLED(SHOW_REMAINING_TIME) #if ENABLED(SHOW_REMAINING_TIME)
@ -1008,7 +1012,7 @@
#endif #endif
#endif #endif
#if HAS_CHARACTER_LCD && HAS_PRINT_PROGRESS #if HAS_CHARACTER_LCD && EITHER(SDSUPPORT, LCD_SET_PROGRESS_MANUALLY)
//#define LCD_PROGRESS_BAR // Show a progress bar on HD44780 LCDs for SD printing //#define LCD_PROGRESS_BAR // Show a progress bar on HD44780 LCDs for SD printing
#if ENABLED(LCD_PROGRESS_BAR) #if ENABLED(LCD_PROGRESS_BAR)
#define PROGRESS_BAR_BAR_TIME 2000 // (ms) Amount of time to show the bar #define PROGRESS_BAR_BAR_TIME 2000 // (ms) Amount of time to show the bar

View file

@ -24,5 +24,5 @@
#if USE_EMULATED_EEPROM #if USE_EMULATED_EEPROM
#undef SRAM_EEPROM_EMULATION #undef SRAM_EEPROM_EMULATION
#undef SDCARD_EEPROM_EMULATION #undef SDCARD_EEPROM_EMULATION
#define FLASH_EEPROM_EMULATION 1 #define FLASH_EEPROM_EMULATION
#endif #endif

View file

@ -20,3 +20,8 @@
* *
*/ */
#pragma once #pragma once
// If no real EEPROM, Flash emulation, or SRAM emulation is available fall back to SD emulation
#if ENABLED(EEPROM_SETTINGS) && NONE(USE_REAL_EEPROM, FLASH_EEPROM_EMULATION, SRAM_EEPROM_EMULATION)
#define SDCARD_EEPROM_EMULATION
#endif

View file

@ -21,10 +21,6 @@
*/ */
#pragma once #pragma once
#if ENABLED(EEPROM_SETTINGS) #if USE_EMULATED_EEPROM && NONE(SDCARD_EEPROM_EMULATION, SRAM_EEPROM_EMULATION)
#undef USE_REAL_EEPROM #define FLASH_EEPROM_EMULATION
#define USE_EMULATED_EEPROM 1
#if DISABLED(FLASH_EEPROM_EMULATION)
#define SDCARD_EEPROM_EMULATION 1
#endif
#endif #endif

View file

@ -36,12 +36,11 @@
* 16Kb I/O buffers (intended to hold DMA USB and Ethernet data, but currently * 16Kb I/O buffers (intended to hold DMA USB and Ethernet data, but currently
* unused). * unused).
*/ */
#include "../../inc/MarlinConfigPre.h" #include "../../inc/MarlinConfig.h"
#if ENABLED(FLASH_EEPROM_EMULATION) #if ENABLED(FLASH_EEPROM_EMULATION)
#include "persistent_store_api.h" #include "persistent_store_api.h"
#include "../../inc/MarlinConfig.h"
extern "C" { extern "C" {
#include <lpc17xx_iap.h> #include <lpc17xx_iap.h>

View file

@ -24,5 +24,5 @@
#if USE_EMULATED_EEPROM #if USE_EMULATED_EEPROM
#undef SRAM_EEPROM_EMULATION #undef SRAM_EEPROM_EMULATION
#undef SDCARD_EEPROM_EMULATION #undef SDCARD_EEPROM_EMULATION
#define FLASH_EEPROM_EMULATION 1 #define FLASH_EEPROM_EMULATION
#endif #endif

View file

@ -20,3 +20,8 @@
* *
*/ */
#pragma once #pragma once
// If no real EEPROM, Flash emulation, or SRAM emulation is available fall back to SD emulation
#if ENABLED(EEPROM_SETTINGS) && NONE(USE_REAL_EEPROM, FLASH_EEPROM_EMULATION, SRAM_EEPROM_EMULATION)
#define SDCARD_EEPROM_EMULATION
#endif

View file

@ -23,8 +23,7 @@
#if ENABLED(EEPROM_SETTINGS) && defined(STM32F7) #if ENABLED(EEPROM_SETTINGS) && defined(STM32F7)
#undef USE_REAL_EEPROM #undef USE_REAL_EEPROM
#define USE_EMULATED_EEPROM 1
#undef SRAM_EEPROM_EMULATION #undef SRAM_EEPROM_EMULATION
#undef SDCARD_EEPROM_EMULATION #undef SDCARD_EEPROM_EMULATION
#define FLASH_EEPROM_EMULATION 1 #define FLASH_EEPROM_EMULATION
#endif #endif

View file

@ -20,3 +20,8 @@
* *
*/ */
#pragma once #pragma once
// If no real EEPROM, Flash emulation, or SRAM emulation is available fall back to SD emulation
#if ENABLED(EEPROM_SETTINGS) && NONE(USE_REAL_EEPROM, FLASH_EEPROM_EMULATION, SRAM_EEPROM_EMULATION)
#define SDCARD_EEPROM_EMULATION
#endif

View file

@ -202,7 +202,7 @@ const char NUL_STR[] PROGMEM = "",
SP_Z_LBL[] PROGMEM = " Z:", SP_Z_LBL[] PROGMEM = " Z:",
SP_E_LBL[] PROGMEM = " E:"; SP_E_LBL[] PROGMEM = " E:";
bool Running = true; MarlinState marlin_state = MF_INITIALIZING;
// For M109 and M190, this flag may be cleared (by M108) to exit the wait loop // For M109 and M190, this flag may be cleared (by M108) to exit the wait loop
bool wait_for_heatup = true; bool wait_for_heatup = true;
@ -839,7 +839,7 @@ void stop() {
SERIAL_ERROR_MSG(STR_ERR_STOPPED); SERIAL_ERROR_MSG(STR_ERR_STOPPED);
LCD_MESSAGEPGM(MSG_STOPPED); LCD_MESSAGEPGM(MSG_STOPPED);
safe_delay(350); // allow enough time for messages to get out before stopping safe_delay(350); // allow enough time for messages to get out before stopping
Running = false; marlin_state = MF_STOPPED;
} }
} }
@ -991,8 +991,8 @@ void setup() {
SETUP_RUN(ui.show_bootscreen()); SETUP_RUN(ui.show_bootscreen());
#endif #endif
#if ENABLED(SDSUPPORT) #if ENABLED(SDSUPPORT) && defined(SDCARD_CONNECTION) && !SD_CONNECTION_IS(LCD)
SETUP_RUN(card.mount()); // Mount the SD card before settings.first_load SETUP_RUN(card.mount()); // Mount onboard / custom SD card before settings.first_load
#endif #endif
SETUP_RUN(settings.first_load()); // Load data from EEPROM if available (or use defaults) SETUP_RUN(settings.first_load()); // Load data from EEPROM if available (or use defaults)
@ -1183,6 +1183,8 @@ void setup() {
SETUP_RUN(max7219.init()); SETUP_RUN(max7219.init());
#endif #endif
marlin_state = MF_RUNNING;
SETUP_LOG("setup() completed."); SETUP_LOG("setup() completed.");
} }

View file

@ -76,9 +76,19 @@ void minkill(const bool steppers_off=false);
void quickstop_stepper(); void quickstop_stepper();
extern bool Running; // Global State of the firmware
inline bool IsRunning() { return Running; } enum MarlinState : uint8_t {
inline bool IsStopped() { return !Running; } MF_INITIALIZING = 0,
MF_RUNNING = _BV(0),
MF_PAUSED = _BV(1),
MF_WAITING = _BV(2),
MF_STOPPED = _BV(3),
MF_KILLED = _BV(7)
};
extern MarlinState marlin_state;
inline bool IsRunning() { return marlin_state == MF_RUNNING; }
inline bool IsStopped() { return marlin_state != MF_RUNNING; }
bool printingIsActive(); bool printingIsActive();
bool printingIsPaused(); bool printingIsPaused();

View file

@ -67,7 +67,6 @@ void safe_delay(millis_t ms) {
TERN(PROBE_MANUALLY, "PROBE_MANUALLY", "") TERN(PROBE_MANUALLY, "PROBE_MANUALLY", "")
TERN(NOZZLE_AS_PROBE, "NOZZLE_AS_PROBE", "") TERN(NOZZLE_AS_PROBE, "NOZZLE_AS_PROBE", "")
TERN(FIX_MOUNTED_PROBE, "FIX_MOUNTED_PROBE", "") TERN(FIX_MOUNTED_PROBE, "FIX_MOUNTED_PROBE", "")
TERN(BLTOUCH, "BLTOUCH", "")
TERN(HAS_Z_SERVO_PROBE, TERN(BLTOUCH, "BLTOUCH", "SERVO PROBE"), "") TERN(HAS_Z_SERVO_PROBE, TERN(BLTOUCH, "BLTOUCH", "SERVO PROBE"), "")
TERN(TOUCH_MI_PROBE, "TOUCH_MI_PROBE", "") TERN(TOUCH_MI_PROBE, "TOUCH_MI_PROBE", "")
TERN(Z_PROBE_SLED, "Z_PROBE_SLED", "") TERN(Z_PROBE_SLED, "Z_PROBE_SLED", "")

View file

@ -934,7 +934,12 @@ G29_TYPE GcodeSuite::G29() {
// Unapply the offset because it is going to be immediately applied // Unapply the offset because it is going to be immediately applied
// and cause compensation movement in Z // and cause compensation movement in Z
current_position.z -= bilinear_z_offset(current_position); #if ENABLED(ENABLE_LEVELING_FADE_HEIGHT)
const float fade_scaling_factor = planner.fade_scaling_factor_for_z(current_position.z);
#else
constexpr float fade_scaling_factor = 1.0f;
#endif
current_position.z -= fade_scaling_factor * bilinear_z_offset(current_position);
if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPAIR(" corrected Z:", current_position.z); if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPAIR(" corrected Z:", current_position.z);
} }

View file

@ -203,7 +203,7 @@ void GcodeSuite::G34() {
const uint8_t iprobe = (iteration & 1) ? NUM_Z_STEPPER_DRIVERS - 1 - i : i; const uint8_t iprobe = (iteration & 1) ? NUM_Z_STEPPER_DRIVERS - 1 - i : i;
// Safe clearance even on an incline // Safe clearance even on an incline
if (iteration == 0 || i > 0) do_blocking_move_to_z(z_probe); if ((iteration == 0 || i > 0) && z_probe > current_position.z) do_blocking_move_to_z(z_probe);
if (DEBUGGING(LEVELING)) if (DEBUGGING(LEVELING))
DEBUG_ECHOLNPAIR_P(PSTR("Probing X"), z_stepper_align.xy[iprobe].x, SP_Y_STR, z_stepper_align.xy[iprobe].y); DEBUG_ECHOLNPAIR_P(PSTR("Probing X"), z_stepper_align.xy[iprobe].x, SP_Y_STR, z_stepper_align.xy[iprobe].y);

View file

@ -23,7 +23,7 @@
#include "../gcode.h" #include "../gcode.h"
#include "../../lcd/ultralcd.h" // for lcd_reset_alert_level #include "../../lcd/ultralcd.h" // for lcd_reset_alert_level
#include "../../MarlinCore.h" // for Running #include "../../MarlinCore.h" // for marlin_state
#include "../queue.h" // for flush_and_request_resend #include "../queue.h" // for flush_and_request_resend
/** /**
@ -37,7 +37,7 @@
* *
*/ */
void GcodeSuite::M999() { void GcodeSuite::M999() {
Running = true; marlin_state = MF_RUNNING;
ui.reset_alert_level(); ui.reset_alert_level();
if (parser.boolval('S')) return; if (parser.boolval('S')) return;

View file

@ -35,15 +35,13 @@
#define HAS_LINEAR_E_JERK 1 #define HAS_LINEAR_E_JERK 1
#endif #endif
// If no real EEPROM, Flash emulation, or SRAM emulation is available fall back to SD emulation
#if ENABLED(EEPROM_SETTINGS) #if ENABLED(EEPROM_SETTINGS)
#if NONE(FLASH_EEPROM_EMULATION, SRAM_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION) && EITHER(I2C_EEPROM, SPI_EEPROM) #if NONE(FLASH_EEPROM_EMULATION, SRAM_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION) && EITHER(I2C_EEPROM, SPI_EEPROM)
#define USE_REAL_EEPROM 1 #define USE_REAL_EEPROM 1
#else #else
#define USE_EMULATED_EEPROM 1 #define USE_EMULATED_EEPROM 1
#endif #endif
#if NONE(USE_REAL_EEPROM, FLASH_EEPROM_EMULATION, SRAM_EEPROM_EMULATION)
#define SDCARD_EEPROM_EMULATION 1
#endif
#else #else
#undef I2C_EEPROM #undef I2C_EEPROM
#undef SPI_EEPROM #undef SPI_EEPROM

View file

@ -1993,9 +1993,24 @@ static_assert(Y_MAX_LENGTH >= Y_BED_SIZE, "Movement bounds (Y_MIN_POS, Y_MAX_POS
static_assert(PWM_PIN(E2_AUTO_FAN_PIN), "E2" AF_ERR_SUFF); static_assert(PWM_PIN(E2_AUTO_FAN_PIN), "E2" AF_ERR_SUFF);
#elif HAS_AUTO_FAN_3 #elif HAS_AUTO_FAN_3
static_assert(PWM_PIN(E3_AUTO_FAN_PIN), "E3" AF_ERR_SUFF); static_assert(PWM_PIN(E3_AUTO_FAN_PIN), "E3" AF_ERR_SUFF);
#elif HAS_AUTO_FAN_4
static_assert(PWM_PIN(E4_AUTO_FAN_PIN), "E4" AF_ERR_SUFF);
#elif HAS_AUTO_FAN_5
static_assert(PWM_PIN(E5_AUTO_FAN_PIN), "E5" AF_ERR_SUFF);
#elif HAS_AUTO_FAN_6
static_assert(PWM_PIN(E6_AUTO_FAN_PIN), "E6" AF_ERR_SUFF);
#elif HAS_AUTO_FAN_7
static_assert(PWM_PIN(E7_AUTO_FAN_PIN), "E7" AF_ERR_SUFF);
#endif #endif
#endif #endif
/**
* Make sure only one EEPROM type is enabled
*/
#if ENABLED(EEPROM_SETTINGS) && 1 < ENABLED(SDCARD_EEPROM_EMULATION) + ENABLED(FLASH_EEPROM_EMULATION) + ENABLED(SRAM_EEPROM_EMULATION)
#error "Please select only one of SDCARD, FLASH, or SRAM_EEPROM_EMULATION."
#endif
/** /**
* Make sure only one display is enabled * Make sure only one display is enabled
*/ */

View file

@ -42,7 +42,7 @@
* version was tagged. * version was tagged.
*/ */
#ifndef STRING_DISTRIBUTION_DATE #ifndef STRING_DISTRIBUTION_DATE
#define STRING_DISTRIBUTION_DATE "2020-03-14" #define STRING_DISTRIBUTION_DATE "2020-03-16"
#endif #endif
/** /**

View file

@ -448,10 +448,10 @@ void MarlinUI::draw_status_screen() {
#endif #endif
} }
constexpr bool can_show_days = DISABLED(DOGM_SD_PERCENT) || ENABLED(ROTATE_PROGRESS_DISPLAY);
if (ev != lastElapsed) { if (ev != lastElapsed) {
lastElapsed = ev; lastElapsed = ev;
const bool has_days = (elapsed.value >= 60*60*24L); const uint8_t len = elapsed.toDigital(elapsed_string, can_show_days && elapsed.value >= 60*60*24L);
const uint8_t len = elapsed.toDigital(elapsed_string, has_days);
elapsed_x_pos = _SD_INFO_X(len); elapsed_x_pos = _SD_INFO_X(len);
#if ENABLED(SHOW_REMAINING_TIME) #if ENABLED(SHOW_REMAINING_TIME)
@ -468,8 +468,7 @@ void MarlinUI::draw_status_screen() {
} }
else { else {
duration_t estimation = timeval; duration_t estimation = timeval;
const bool has_days = (estimation.value >= 60*60*24L); const uint8_t len = estimation.toDigital(estimation_string, can_show_days && estimation.value >= 60*60*24L);
const uint8_t len = estimation.toDigital(estimation_string, has_days);
estimation_x_pos = _SD_INFO_X(len estimation_x_pos = _SD_INFO_X(len
#if !BOTH(DOGM_SD_PERCENT, ROTATE_PROGRESS_DISPLAY) #if !BOTH(DOGM_SD_PERCENT, ROTATE_PROGRESS_DISPLAY)
+ 1 + 1

View file

@ -138,12 +138,12 @@ void menu_advanced_settings();
START_MENU(); START_MENU();
BACK_ITEM(MSG_CONFIGURATION); BACK_ITEM(MSG_CONFIGURATION);
#if ENABLED(DUAL_X_CARRIAGE) #if ENABLED(DUAL_X_CARRIAGE)
EDIT_ITEM_FAST(float51, MSG_HOTEND_OFFSET_X, &hotend_offset[1].x, float(X2_HOME_POS - 25), float(X2_HOME_POS + 25), _recalc_offsets); EDIT_ITEM_FAST(float52, MSG_HOTEND_OFFSET_X, &hotend_offset[1].x, float(X2_HOME_POS - 25), float(X2_HOME_POS + 25), _recalc_offsets);
#else #else
EDIT_ITEM_FAST(float41sign, MSG_HOTEND_OFFSET_X, &hotend_offset[1].x, -99.0, 99.0, _recalc_offsets); EDIT_ITEM_FAST(float52, MSG_HOTEND_OFFSET_X, &hotend_offset[1].x, -99.0, 99.0, _recalc_offsets);
#endif #endif
EDIT_ITEM_FAST(float41sign, MSG_HOTEND_OFFSET_Y, &hotend_offset[1].y, -99.0, 99.0, _recalc_offsets); EDIT_ITEM_FAST(float52, MSG_HOTEND_OFFSET_Y, &hotend_offset[1].y, -99.0, 99.0, _recalc_offsets);
EDIT_ITEM_FAST(float41sign, MSG_HOTEND_OFFSET_Z, &hotend_offset[1].z, Z_PROBE_LOW_POINT, 10.0, _recalc_offsets); EDIT_ITEM_FAST(float52, MSG_HOTEND_OFFSET_Z, &hotend_offset[1].z, Z_PROBE_LOW_POINT, 10.0, _recalc_offsets);
#if ENABLED(EEPROM_SETTINGS) #if ENABLED(EEPROM_SETTINGS)
ACTION_ITEM(MSG_STORE_EEPROM, lcd_store_settings); ACTION_ITEM(MSG_STORE_EEPROM, lcd_store_settings);
#endif #endif

View file

@ -1531,10 +1531,10 @@ void MarlinSettings::postprocess() {
_FIELD_TEST(planner_leveling_active); _FIELD_TEST(planner_leveling_active);
#if ENABLED(AUTO_BED_LEVELING_UBL) #if ENABLED(AUTO_BED_LEVELING_UBL)
const bool &planner_leveling_active = planner.leveling_active; const bool &planner_leveling_active = planner.leveling_active;
const uint8_t &ubl_storage_slot = ubl.storage_slot; const int8_t &ubl_storage_slot = ubl.storage_slot;
#else #else
bool planner_leveling_active; bool planner_leveling_active;
uint8_t ubl_storage_slot; int8_t ubl_storage_slot;
#endif #endif
EEPROM_READ(planner_leveling_active); EEPROM_READ(planner_leveling_active);
EEPROM_READ(ubl_storage_slot); EEPROM_READ(ubl_storage_slot);
@ -2185,8 +2185,10 @@ void MarlinSettings::postprocess() {
} }
#if ENABLED(EEPROM_CHITCHAT) && DISABLED(DISABLE_M503) #if ENABLED(EEPROM_CHITCHAT) && DISABLED(DISABLE_M503)
if (!validating) report(); // Report the EEPROM settings
if (!validating && (DISABLED(EEPROM_BOOT_SILENT) || IsRunning())) report();
#endif #endif
EEPROM_FINISH(); EEPROM_FINISH();
return !eeprom_error; return !eeprom_error;

View file

@ -2041,7 +2041,10 @@ bool Planner::_populate_block(block_t * const block, bool split_move,
#endif #endif
#if ENABLED(SLOWDOWN) #if ENABLED(SLOWDOWN)
if (WITHIN(moves_queued, 2, (BLOCK_BUFFER_SIZE) / 2 - 1)) { #ifndef SLOWDOWN_DIVISOR
#define SLOWDOWN_DIVISOR 2
#endif
if (WITHIN(moves_queued, 2, (BLOCK_BUFFER_SIZE) / (SLOWDOWN_DIVISOR) - 1)) {
if (segment_time_us < settings.min_segment_time_us) { if (segment_time_us < settings.min_segment_time_us) {
// buffer is draining, add extra time. The amount of time added increases if the buffer is still emptied more. // buffer is draining, add extra time. The amount of time added increases if the buffer is still emptied more.
const uint32_t nst = segment_time_us + LROUND(2 * (settings.min_segment_time_us - segment_time_us) / moves_queued); const uint32_t nst = segment_time_us + LROUND(2 * (settings.min_segment_time_us - segment_time_us) / moves_queued);

View file

@ -765,7 +765,7 @@ int16_t Temperature::getHeaterPower(const heater_ind_t heater_id) {
// //
inline void loud_kill(PGM_P const lcd_msg, const heater_ind_t heater) { inline void loud_kill(PGM_P const lcd_msg, const heater_ind_t heater) {
Running = false; marlin_state = MF_KILLED;
#if USE_BEEPER #if USE_BEEPER
for (uint8_t i = 20; i--;) { for (uint8_t i = 20; i--;) {
WRITE(BEEPER_PIN, HIGH); delay(25); WRITE(BEEPER_PIN, HIGH); delay(25);
@ -2003,7 +2003,7 @@ void Temperature::init() {
/** /**
SERIAL_ECHO_START(); SERIAL_ECHO_START();
SERIAL_ECHOPGM("Thermal Thermal Runaway Running. Heater ID: "); SERIAL_ECHOPGM("Thermal Runaway Running. Heater ID: ");
if (heater_id == H_CHAMBER) SERIAL_ECHOPGM("chamber"); if (heater_id == H_CHAMBER) SERIAL_ECHOPGM("chamber");
if (heater_id < 0) SERIAL_ECHOPGM("bed"); else SERIAL_ECHO(heater_id); if (heater_id < 0) SERIAL_ECHOPGM("bed"); else SERIAL_ECHO(heater_id);
SERIAL_ECHOPAIR(" ; State:", sm.state, " ; Timer:", sm.timer, " ; Temperature:", current, " ; Target Temp:", target); SERIAL_ECHOPAIR(" ; State:", sm.state, " ; Timer:", sm.timer, " ; Temperature:", current, " ; Target Temp:", target);

View file

@ -31,6 +31,12 @@
#define BOARD_INFO_NAME "AZSMZ MINI" #define BOARD_INFO_NAME "AZSMZ MINI"
//
// EEPROM
//
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
// //
// Servos // Servos
// //

View file

@ -38,6 +38,12 @@
#define BOARD_INFO_NAME "BIQU Thunder B300 V1.0" #define BOARD_INFO_NAME "BIQU Thunder B300 V1.0"
#endif #endif
//
// EEPROM
//
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
// //
// Limit Switches // Limit Switches
// //

View file

@ -36,6 +36,12 @@
#define BOARD_INFO_NAME "BIQU BQ111-A4" #define BOARD_INFO_NAME "BIQU BQ111-A4"
//
// EEPROM
//
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
// //
// Limit Switches // Limit Switches
// //

View file

@ -23,6 +23,12 @@
#define BOARD_INFO_NAME "BIGTREE SKR 1.1" #define BOARD_INFO_NAME "BIGTREE SKR 1.1"
//
// EEPROM
//
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
// //
// Limit Switches // Limit Switches
// //

View file

@ -23,6 +23,12 @@
#define BOARD_INFO_NAME "BIGTREE SKR 1.3" #define BOARD_INFO_NAME "BIGTREE SKR 1.3"
//
// EEPROM
//
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
/** /**
* Trinamic Stallguard pins * Trinamic Stallguard pins
*/ */

View file

@ -25,6 +25,14 @@
#define BOARD_INFO_NAME "BIGTREE SKR 1.4" #define BOARD_INFO_NAME "BIGTREE SKR 1.4"
#endif #endif
//
// EEPROM
//
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
#endif
// //
// SD Connection // SD Connection
// //
@ -88,12 +96,8 @@
// Z Probe (when not Z_MIN_PIN) // Z Probe (when not Z_MIN_PIN)
// //
#ifndef Z_MIN_PROBE_PIN #ifndef Z_MIN_PROBE_PIN
#if Z_STOP_PIN != P1_27
#define Z_MIN_PROBE_PIN P1_27
#else
#define Z_MIN_PROBE_PIN P0_10 #define Z_MIN_PROBE_PIN P0_10
#endif #endif
#endif
// //
// Filament Runout Sensor // Filament Runout Sensor

View file

@ -32,6 +32,10 @@
// Ignore temp readings during development. // Ignore temp readings during development.
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 //#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
#if DISABLED(SDCARD_EEPROM_EMULATION)
#define FLASH_EEPROM_EMULATION
#endif
// //
// Steppers // Steppers
// //

View file

@ -30,6 +30,12 @@
// Ignore temp readings during develpment. // Ignore temp readings during develpment.
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000 //#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
//
// EEPROM
//
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
// //
// Enable 12MHz clock output on P1.27 pin to sync TMC2208 chip clocks // Enable 12MHz clock output on P1.27 pin to sync TMC2208 chip clocks
// //

View file

@ -38,6 +38,14 @@
#define BOARD_WEBSITE_URL "github.com/makerbase-mks/MKS-SBASE" #define BOARD_WEBSITE_URL "github.com/makerbase-mks/MKS-SBASE"
#endif #endif
//
// EEPROM
//
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
#endif
#define LED_PIN P1_18 // Used as a status indicator #define LED_PIN P1_18 // Used as a status indicator
#define LED2_PIN P1_19 #define LED2_PIN P1_19
#define LED3_PIN P1_20 #define LED3_PIN P1_20

View file

@ -32,6 +32,12 @@
#define BOARD_INFO_NAME "MKS SGen-L" #define BOARD_INFO_NAME "MKS SGen-L"
#define BOARD_WEBSITE_URL "github.com/makerbase-mks/MKS-SGEN_L" #define BOARD_WEBSITE_URL "github.com/makerbase-mks/MKS-SGEN_L"
//
// EEPROM
//
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
// //
// Servos // Servos
// //

View file

@ -42,6 +42,12 @@
#define BOARD_INFO_NAME "Re-ARM RAMPS 1.4" #define BOARD_INFO_NAME "Re-ARM RAMPS 1.4"
//
// EEPROM
//
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
// //
// Servos // Servos
// //

View file

@ -32,6 +32,12 @@
#define BOARD_INFO_NAME "Selena Compact" #define BOARD_INFO_NAME "Selena Compact"
#define BOARD_WEBSITE_URL "github.com/Ales2-k/Selena" #define BOARD_WEBSITE_URL "github.com/Ales2-k/Selena"
//
// EEPROM
//
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
// //
// Servos // Servos
// //

View file

@ -32,6 +32,12 @@
#define BOARD_INFO_NAME "Azteeg X5 GT" #define BOARD_INFO_NAME "Azteeg X5 GT"
#define BOARD_WEBSITE_URL "tinyurl.com/yx8tdqa3" #define BOARD_WEBSITE_URL "tinyurl.com/yx8tdqa3"
//
// EEPROM
//
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
// //
// Servos // Servos
// //
@ -47,7 +53,6 @@
#define Z_MIN_PIN P1_26 #define Z_MIN_PIN P1_26
#define Z_MAX_PIN P1_29 #define Z_MAX_PIN P1_29
// //
// Steppers // Steppers
// //

View file

@ -187,6 +187,14 @@
#endif // HAS_SPI_LCD #endif // HAS_SPI_LCD
//
// EEPROM
//
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
#endif
// //
// SD Support // SD Support
// //

View file

@ -31,6 +31,12 @@
#define BOARD_INFO_NAME "Azteeg X5 MINI WIFI" #define BOARD_INFO_NAME "Azteeg X5 MINI WIFI"
//
// EEPROM
//
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
// //
// DIGIPOT slave addresses // DIGIPOT slave addresses
// //

View file

@ -24,6 +24,12 @@
#define BOARD_INFO_NAME "BIGTREE SKR 1.4 TURBO" #define BOARD_INFO_NAME "BIGTREE SKR 1.4 TURBO"
#define SKR_HAS_LPC1769 #define SKR_HAS_LPC1769
//
// EEPROM
//
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
// //
// Include SKR 1.4 pins // Include SKR 1.4 pins
// //

View file

@ -31,6 +31,12 @@
#define BOARD_INFO_NAME "Cohesion3D Mini" #define BOARD_INFO_NAME "Cohesion3D Mini"
//
// EEPROM
//
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
// //
// Servos // Servos
// //

View file

@ -31,6 +31,12 @@
#define BOARD_INFO_NAME "Cohesion3D ReMix" #define BOARD_INFO_NAME "Cohesion3D ReMix"
//
// EEPROM
//
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
// //
// Servos // Servos
// //

View file

@ -31,8 +31,14 @@
#define BOARD_INFO_NAME "MKS SGen" #define BOARD_INFO_NAME "MKS SGen"
#define BOARD_WEBSITE_URL "github.com/makerbase-mks/MKS-SGEN" #define BOARD_WEBSITE_URL "github.com/makerbase-mks/MKS-SGEN"
#define MKS_HAS_LPC1769
//
// EEPROM
//
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
#define MKS_HAS_LPC1769
#include "../lpc1768/pins_MKS_SBASE.h" #include "../lpc1768/pins_MKS_SBASE.h"
#undef E1_STEP_PIN #undef E1_STEP_PIN

View file

@ -32,6 +32,12 @@
#define BOARD_INFO_NAME "Smoothieboard" #define BOARD_INFO_NAME "Smoothieboard"
#define BOARD_WEBSITE_URL "smoothieware.org/smoothieboard" #define BOARD_WEBSITE_URL "smoothieware.org/smoothieboard"
//
// EEPROM
//
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
// //
// Servos // Servos
// //

View file

@ -32,6 +32,12 @@
#define BOARD_INFO_NAME "TH3D EZBoard" #define BOARD_INFO_NAME "TH3D EZBoard"
#define BOARD_WEBSITE_URL "th3dstudio.com" #define BOARD_WEBSITE_URL "th3dstudio.com"
//
// EEPROM
//
#define FLASH_EEPROM_EMULATION
//#define SDCARD_EEPROM_EMULATION
// //
// Servos // Servos
// //