Add New G34 mode for current adjustable drivers
TODO : Sanity checks, Finish DAC mode, Test on Rambo
This commit is contained in:
+32
-72
@@ -29,13 +29,15 @@
|
||||
* Some of these settings can damage your printer if improperly set!
|
||||
*
|
||||
* Basic settings can be found in Configuration.h
|
||||
*
|
||||
*/
|
||||
#define CONFIGURATION_ADV_H_VERSION 020007
|
||||
#define CONFIGURATION_ADV_H_VERSION 020006
|
||||
|
||||
// @section temperature
|
||||
|
||||
//===========================================================================
|
||||
//============================= Thermal Settings ============================
|
||||
//===========================================================================
|
||||
// @section temperature
|
||||
|
||||
/**
|
||||
* Thermocouple sensors are quite sensitive to noise. Any noise induced in
|
||||
@@ -124,19 +126,9 @@
|
||||
#define HEATER_BED_INVERTING true
|
||||
#endif
|
||||
|
||||
//
|
||||
// Heated Bed Bang-Bang options
|
||||
//
|
||||
#if DISABLED(PIDTEMPBED)
|
||||
#define BED_CHECK_INTERVAL 5000 // (ms) Interval between checks in bang-bang control
|
||||
#if ENABLED(BED_LIMIT_SWITCHING)
|
||||
#define BED_HYSTERESIS 2 // (°C) Only set the relevant heater state when ABS(T-target) > BED_HYSTERESIS
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// Heated Chamber options
|
||||
//
|
||||
/**
|
||||
* Heated Chamber settings
|
||||
*/
|
||||
#if TEMP_SENSOR_CHAMBER
|
||||
#define CHAMBER_MINTEMP 5
|
||||
#define CHAMBER_MAXTEMP 60
|
||||
@@ -144,28 +136,12 @@
|
||||
//#define CHAMBER_LIMIT_SWITCHING
|
||||
//#define HEATER_CHAMBER_PIN 44 // Chamber heater on/off pin
|
||||
//#define HEATER_CHAMBER_INVERTING false
|
||||
#endif
|
||||
|
||||
//#define CHAMBER_FAN // Enable a fan on the chamber
|
||||
#if ENABLED(CHAMBER_FAN)
|
||||
#define CHAMBER_FAN_MODE 2 // Fan control mode: 0=Static; 1=Linear increase when temp is higher than target; 2=V-shaped curve.
|
||||
#if CHAMBER_FAN_MODE == 0
|
||||
#define CHAMBER_FAN_BASE 255 // Chamber fan PWM (0-255)
|
||||
#elif CHAMBER_FAN_MODE == 1
|
||||
#define CHAMBER_FAN_BASE 128 // Base chamber fan PWM (0-255); turns on when chamber temperature is above the target
|
||||
#define CHAMBER_FAN_FACTOR 25 // PWM increase per °C above target
|
||||
#elif CHAMBER_FAN_MODE == 2
|
||||
#define CHAMBER_FAN_BASE 128 // Minimum chamber fan PWM (0-255)
|
||||
#define CHAMBER_FAN_FACTOR 25 // PWM increase per °C difference from target
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//#define CHAMBER_VENT // Enable a servo-controlled vent on the chamber
|
||||
#if ENABLED(CHAMBER_VENT)
|
||||
#define CHAMBER_VENT_SERVO_NR 1 // Index of the vent servo
|
||||
#define HIGH_EXCESS_HEAT_LIMIT 5 // How much above target temp to consider there is excess heat in the chamber
|
||||
#define LOW_EXCESS_HEAT_LIMIT 3
|
||||
#define MIN_COOLING_SLOPE_TIME_CHAMBER_VENT 20
|
||||
#define MIN_COOLING_SLOPE_DEG_CHAMBER_VENT 1.5
|
||||
#if DISABLED(PIDTEMPBED)
|
||||
#define BED_CHECK_INTERVAL 5000 // ms between checks in bang-bang control
|
||||
#if ENABLED(BED_LIMIT_SWITCHING)
|
||||
#define BED_HYSTERESIS 2 // Only disable heating if T>target+BED_HYSTERESIS and enable heating if T>target-BED_HYSTERESIS
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@@ -762,6 +738,7 @@
|
||||
* | 4 3 | 1 4 | 2 1 | 3 2 |
|
||||
* | | | | |
|
||||
* | 1 2 | 2 3 | 3 4 | 4 1 |
|
||||
*
|
||||
*/
|
||||
#ifndef Z_STEPPER_ALIGN_XY
|
||||
//#define Z_STEPPERS_ORIENTATION 0
|
||||
@@ -796,7 +773,6 @@
|
||||
//
|
||||
//#define ASSISTED_TRAMMING
|
||||
#if ENABLED(ASSISTED_TRAMMING)
|
||||
|
||||
// Define positions for probing points, use the hotend as reference not the sensor.
|
||||
#define TRAMMING_POINT_XY { { 20, 20 }, { 200, 20 }, { 200, 200 }, { 20, 200 } }
|
||||
|
||||
@@ -819,7 +795,6 @@
|
||||
* M5: 50 = Clockwise, 51 = Counter-Clockwise
|
||||
*/
|
||||
#define TRAMMING_SCREW_THREAD 30
|
||||
|
||||
#endif
|
||||
|
||||
// @section motion
|
||||
@@ -1075,14 +1050,6 @@
|
||||
|
||||
#if HAS_LCD_MENU
|
||||
|
||||
// Add Probe Z Offset calibration to the Z Probe Offsets menu
|
||||
#if HAS_BED_PROBE
|
||||
//#define PROBE_OFFSET_WIZARD
|
||||
#if ENABLED(PROBE_OFFSET_WIZARD)
|
||||
#define PROBE_OFFSET_START -4.0 // Estimated nozzle-to-probe Z offset, plus a little extra
|
||||
#endif
|
||||
#endif
|
||||
|
||||
// Include a page of printer information in the LCD Main Menu
|
||||
//#define LCD_INFO_MENU
|
||||
#if ENABLED(LCD_INFO_MENU)
|
||||
@@ -1139,18 +1106,18 @@
|
||||
#define BOOTSCREEN_TIMEOUT 4000 // (ms) Total Duration to display the boot screen(s)
|
||||
#endif
|
||||
|
||||
#if EITHER(SDSUPPORT, LCD_SET_PROGRESS_MANUALLY) && ANY(HAS_MARLINUI_U8GLIB, HAS_MARLINUI_HD44780, IS_TFTGLCD_PANEL)
|
||||
#if EITHER(SDSUPPORT, LCD_SET_PROGRESS_MANUALLY) && (HAS_GRAPHICAL_LCD || HAS_CHARACTER_LCD)
|
||||
//#define SHOW_REMAINING_TIME // Display estimated time to completion
|
||||
#if ENABLED(SHOW_REMAINING_TIME)
|
||||
//#define USE_M73_REMAINING_TIME // Use remaining time from M73 command instead of estimation
|
||||
//#define ROTATE_PROGRESS_DISPLAY // Display (P)rogress, (E)lapsed, and (R)emaining time
|
||||
#endif
|
||||
|
||||
#if HAS_MARLINUI_U8GLIB
|
||||
#if HAS_GRAPHICAL_LCD
|
||||
//#define PRINT_PROGRESS_SHOW_DECIMALS // Show progress with decimal digits
|
||||
#endif
|
||||
|
||||
#if EITHER(HAS_MARLINUI_HD44780, IS_TFTGLCD_PANEL)
|
||||
#if HAS_CHARACTER_LCD
|
||||
//#define LCD_PROGRESS_BAR // Show a progress bar on HD44780 LCDs for SD printing
|
||||
#if ENABLED(LCD_PROGRESS_BAR)
|
||||
#define PROGRESS_BAR_BAR_TIME 2000 // (ms) Amount of time to show the bar
|
||||
@@ -1201,7 +1168,6 @@
|
||||
#if ENABLED(POWER_LOSS_RECOVERY)
|
||||
#define PLR_ENABLED_DEFAULT false // Power Loss Recovery enabled by default. (Set with 'M413 Sn' & M500)
|
||||
//#define BACKUP_POWER_SUPPLY // Backup power / UPS to move the steppers on power loss
|
||||
//#define POWER_LOSS_RECOVER_ZHOME // Z homing is needed for proper recovery. 99.9% of the time this should be disabled!
|
||||
//#define POWER_LOSS_ZRAISE 2 // (mm) Z axis raise on resume (on power loss with UPS)
|
||||
//#define POWER_LOSS_PIN 44 // Pin to detect power loss. Set to -1 to disable default pin on boards without module.
|
||||
//#define POWER_LOSS_STATE HIGH // State of pin indicating power loss
|
||||
@@ -1362,7 +1328,7 @@
|
||||
* controller events, as there is a trade-off between reliable
|
||||
* printing performance versus fast display updates.
|
||||
*/
|
||||
#if HAS_MARLINUI_U8GLIB
|
||||
#if HAS_GRAPHICAL_LCD
|
||||
// Show SD percentage next to the progress bar
|
||||
//#define DOGM_SD_PERCENT
|
||||
|
||||
@@ -1377,7 +1343,7 @@
|
||||
// Western only. Not available for Cyrillic, Kana, Turkish, Greek, or Chinese.
|
||||
//#define USE_BIG_EDIT_FONT
|
||||
|
||||
// A smaller font may be used on the Info Screen. Costs 2434 bytes of PROGMEM.
|
||||
// A smaller font may be used on the Info Screen. Costs 2300 bytes of PROGMEM.
|
||||
// Western only. Not available for Cyrillic, Kana, Turkish, Greek, or Chinese.
|
||||
//#define USE_SMALL_INFOFONT
|
||||
|
||||
@@ -1432,18 +1398,18 @@
|
||||
//#define MARLIN_SNAKE
|
||||
//#define GAMES_EASTER_EGG // Add extra blank lines above the "Games" sub-menu
|
||||
|
||||
#endif // HAS_MARLINUI_U8GLIB
|
||||
#endif // HAS_GRAPHICAL_LCD
|
||||
|
||||
//
|
||||
// Additional options for DGUS / DWIN displays
|
||||
//
|
||||
#if HAS_DGUS_LCD
|
||||
#define LCD_SERIAL_PORT 3
|
||||
#define LCD_BAUDRATE 115200
|
||||
#define DGUS_SERIAL_PORT 3
|
||||
#define DGUS_BAUDRATE 115200
|
||||
|
||||
#define DGUS_RX_BUFFER_SIZE 128
|
||||
#define DGUS_TX_BUFFER_SIZE 48
|
||||
//#define SERIAL_STATS_RX_BUFFER_OVERRUNS // Fix Rx overrun situation (Currently only for AVR)
|
||||
//#define DGUS_SERIAL_STATS_RX_BUFFER_OVERRUNS // Fix Rx overrun situation (Currently only for AVR)
|
||||
|
||||
#define DGUS_UPDATE_INTERVAL_MS 500 // (ms) Interval between automatic screen updates
|
||||
|
||||
@@ -1803,7 +1769,6 @@
|
||||
#define N_ARC_CORRECTION 25 // Number of interpolated segments between corrections
|
||||
//#define ARC_P_CIRCLES // Enable the 'P' parameter to specify complete circles
|
||||
//#define CNC_WORKSPACE_PLANES // Allow G2/G3 to operate in XY, ZX, or YZ planes
|
||||
//#define SF_ARC_FIX // Enable only if using SkeinForge with "Arc Point" fillet procedure
|
||||
#endif
|
||||
|
||||
// Support for G5 with XYZE destination and IJPQ offsets. Requires ~2666 bytes.
|
||||
@@ -1989,6 +1954,7 @@
|
||||
* Be sure to turn off auto-retract during filament change.
|
||||
*
|
||||
* Note that M207 / M208 / M209 settings are saved to EEPROM.
|
||||
*
|
||||
*/
|
||||
//#define FWRETRACT
|
||||
#if ENABLED(FWRETRACT)
|
||||
@@ -3379,11 +3345,11 @@
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Mechanical Gantry Calibration
|
||||
* Modern replacement for the Prusa TMC_Z_CALIBRATION.
|
||||
* Adds capability to work with any adjustable current drivers.
|
||||
* Implemented as G34 because M915 is deprecated.
|
||||
* Modern replacement for the Prusa TMC_Z_CALIBRATION
|
||||
* Adds capability to work with any adjustable current drivers
|
||||
* Implements as G34 as M915 is deprecated
|
||||
*/
|
||||
|
||||
//#define MECHANICAL_GANTRY_CALIBRATION
|
||||
#if ENABLED(MECHANICAL_GANTRY_CALIBRATION)
|
||||
#define GANTRY_CALIBRATION_CURRENT 600 // Default calibration current in ma
|
||||
@@ -3394,10 +3360,9 @@
|
||||
//#define GANTRY_CALIBRATION_SAFE_POSITION {X_CENTER, Y_CENTER} // Safe position for nozzle
|
||||
//#define GANTRY_CALIBRATION_XY_PARK_FEEDRATE 3000 // XY Park Feedrate - MMM
|
||||
//#define GANTRY_CALIBRATION_COMMANDS_PRE ""
|
||||
#define GANTRY_CALIBRATION_COMMANDS_POST "G28" // G28 highly recommended to ensure an accurate position
|
||||
//#define GANTRY_CALIBRATION_COMMANDS_POST "G28"
|
||||
#endif
|
||||
|
||||
|
||||
/**
|
||||
* MAX7219 Debug Matrix
|
||||
*
|
||||
@@ -3473,10 +3438,10 @@
|
||||
#if ENABLED(PRUSA_MMU2)
|
||||
|
||||
// Serial port used for communication with MMU2.
|
||||
// For AVR enable the UART port used for the MMU. (e.g., mmuSerial)
|
||||
// For AVR enable the UART port used for the MMU. (e.g., internalSerial)
|
||||
// For 32-bit boards check your HAL for available serial ports. (e.g., Serial2)
|
||||
#define MMU2_SERIAL_PORT 2
|
||||
#define MMU2_SERIAL mmuSerial
|
||||
#define INTERNAL_SERIAL_PORT 2
|
||||
#define MMU2_SERIAL internalSerial
|
||||
|
||||
// Use hardware reset for MMU if a pin is defined for it
|
||||
//#define MMU2_RST_PIN 23
|
||||
@@ -3527,7 +3492,7 @@
|
||||
*/
|
||||
//#define MMU_EXTRUDER_SENSOR
|
||||
#if ENABLED(MMU_EXTRUDER_SENSOR)
|
||||
#define MMU_LOADING_ATTEMPTS_NR 5 // max. number of attempts to load filament if first load fail
|
||||
#define MMU_LOADING_ATTEMPTS_NR 5 //max. number of attempts to load filament if first load fail
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -3579,11 +3544,6 @@
|
||||
//
|
||||
//#define M100_FREE_MEMORY_WATCHER
|
||||
|
||||
//
|
||||
// M42 - Set pin states
|
||||
//
|
||||
//#define DIRECT_PIN_CONTROL
|
||||
|
||||
//
|
||||
// M43 - display pin status, toggle pins, watch pins, watch endstops & toggle LED, test servo probe
|
||||
//
|
||||
|
||||
Reference in New Issue
Block a user