My extruder servo is overheating and skips steps.

This page summarizes the projects mentioned and recommended in the original post on /r/ender3

WorkOS - The modern identity platform for B2B SaaS
The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
workos.com
featured
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
  • Polar-Bear-Cnc-Machine

    A multipurpose, 2 linear, 1 rotary axis cnc machine concept

  • 23,24d22 < #error "Don't build with import-2.1.x configurations!" < #error "Use the 'bugfix...' or 'release...' configurations matching your Marlin version." 25a24,25 > #define CONFIG_EXAMPLES_DIR "Creality/Ender-3 Pro/CrealityV422" > 40c40 < #define CONFIGURATION_H_VERSION 02010300 --- > #define CONFIGURATION_H_VERSION 02010000 61a62,70 > //=========================================================================== > //========================== DELTA / SCARA / TPARA ========================== > //=========================================================================== > // > // Download configurations from the link above and customize for your machine. > // Examples are located in config/examples/delta, .../SCARA, and .../TPARA. > // > //=========================================================================== > 65c74 < #define STRING_CONFIG_H_AUTHOR "(none, default config)" // Who made the changes. --- > #define STRING_CONFIG_H_AUTHOR "(Hidasi Máté)" // Who made the changes. 83c92 < //#define SHOW_CUSTOM_BOOTSCREEN --- > #define SHOW_CUSTOM_BOOTSCREEN 86c95 < //#define CUSTOM_STATUS_SCREEN_IMAGE --- > #define CUSTOM_STATUS_SCREEN_IMAGE 92c101 < #define MOTHERBOARD BOARD_RAMPS_14_EFB --- > #define MOTHERBOARD BOARD_CREALITY_V4 103c112 < #define SERIAL_PORT 0 --- > #define SERIAL_PORT 1 116,117c125 < #define BAUDRATE 250000 < --- > #define BAUDRATE 115200 125,126c133,134 < //#define SERIAL_PORT_2 -1 < //#define BAUDRATE_2 250000 // :[2400, 9600, 19200, 38400, 57600, 115200, 250000, 500000, 1000000] Enable to override BAUDRATE --- > #define SERIAL_PORT_2 3 > //#define BAUDRATE_2 250000 // Enable to override BAUDRATE 134c142 < //#define BAUDRATE_3 250000 // :[2400, 9600, 19200, 38400, 57600, 115200, 250000, 500000, 1000000] Enable to override BAUDRATE --- > //#define BAUDRATE_3 250000 // Enable to override BAUDRATE 140c148 < //#define CUSTOM_MACHINE_NAME "3D Printer" --- > #define CUSTOM_MACHINE_NAME "Máté's Ender 3 Pro" 146,147d153 < // @section stepper drivers < 156c162,163 < * Options: A4988, A5984, DRV8825, LV8729, TB6560, TB6600, TMC2100, --- > * Options: A4988, A5984, DRV8825, LV8729, L6470, L6474, POWERSTEP01, > * TB6560, TB6600, TMC2100, 161c168 < * :['A4988', 'A5984', 'DRV8825', 'LV8729', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2160', 'TMC2160_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC2209', 'TMC2209_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE', 'TMC5160', 'TMC5160_STANDALONE'] --- > * :['A4988', 'A5984', 'DRV8825', 'LV8729', 'L6470', 'L6474', 'POWERSTEP01', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2160', 'TMC2160_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC2209', 'TMC2209_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE', 'TMC5160', 'TMC5160_STANDALONE'] 163,165c170,172 < #define X_DRIVER_TYPE A4988 < #define Y_DRIVER_TYPE A4988 < #define Z_DRIVER_TYPE A4988 --- > #define X_DRIVER_TYPE A4988 > #define Y_DRIVER_TYPE A4988 > #define Z_DRIVER_TYPE A4988 247,248d253 < // @section multi-material < 261d265 < * :["PRUSA_MMU1", "PRUSA_MMU2", "PRUSA_MMU2S", "EXTENDABLE_EMU_MMU2", "EXTENDABLE_EMU_MMU2S"] 281d284 < #define SWITCHING_NOZZLE_SERVO_DWELL 2500 // Dwell time to wait for servo to make physical move 398c401 < // @section psu control --- > // @section machine 501c504 < * 66 : 4.7MΩ Dyze Design / Trianglelab T-D500 500°C High Temperature Thermistor --- > * 66 : 4.7MΩ Dyze Design High Temperature Thermistor 523d525 < * 1022 : Pt1000 with 2.2kΩ pullup 549c551 < #define TEMP_SENSOR_BED 0 --- > #define TEMP_SENSOR_BED 1 561,572c563,566 < #if TEMP_SENSOR_IS_MAX_TC(0) < #define MAX31865_SENSOR_OHMS_0 100 // (Ω) Typically 100 or 1000 (PT100 or PT1000) < #define MAX31865_CALIBRATION_OHMS_0 430 // (Ω) Typically 430 for Adafruit PT100; 4300 for Adafruit PT1000 < #endif < #if TEMP_SENSOR_IS_MAX_TC(1) < #define MAX31865_SENSOR_OHMS_1 100 < #define MAX31865_CALIBRATION_OHMS_1 430 < #endif < #if TEMP_SENSOR_IS_MAX_TC(2) < #define MAX31865_SENSOR_OHMS_2 100 < #define MAX31865_CALIBRATION_OHMS_2 430 < #endif --- > //#define MAX31865_SENSOR_OHMS_0 100 // (Ω) Typically 100 or 1000 (PT100 or PT1000) > //#define MAX31865_CALIBRATION_OHMS_0 430 // (Ω) Typically 430 for Adafruit PT100; 4300 for Adafruit PT1000 > //#define MAX31865_SENSOR_OHMS_1 100 > //#define MAX31865_CALIBRATION_OHMS_1 430 574,578c568,570 < #if HAS_E_TEMP_SENSOR < #define TEMP_RESIDENCY_TIME 10 // (seconds) Time to wait for hotend to "settle" in M109 < #define TEMP_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer < #define TEMP_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target < #endif --- > #define TEMP_RESIDENCY_TIME 10 // (seconds) Time to wait for hotend to "settle" in M109 > #define TEMP_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer > #define TEMP_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target 580,584c572,574 < #if TEMP_SENSOR_BED < #define TEMP_BED_RESIDENCY_TIME 10 // (seconds) Time to wait for bed to "settle" in M190 < #define TEMP_BED_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer < #define TEMP_BED_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target < #endif --- > #define TEMP_BED_RESIDENCY_TIME 10 // (seconds) Time to wait for bed to "settle" in M190 > #define TEMP_BED_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer > #define TEMP_BED_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target 586,590c576,578 < #if TEMP_SENSOR_CHAMBER < #define TEMP_CHAMBER_RESIDENCY_TIME 10 // (seconds) Time to wait for chamber to "settle" in M191 < #define TEMP_CHAMBER_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer < #define TEMP_CHAMBER_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target < #endif --- > #define TEMP_CHAMBER_RESIDENCY_TIME 10 // (seconds) Time to wait for chamber to "settle" in M191 > #define TEMP_CHAMBER_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer > #define TEMP_CHAMBER_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target 610c598 < #define HEATER_0_MINTEMP 5 --- > #define HEATER_0_MINTEMP 0 618c606 < #define BED_MINTEMP 5 --- > #define BED_MINTEMP 0 632c620 < #define BED_MAXTEMP 150 --- > #define BED_MAXTEMP 120 649,650d636 < // @section hotend temp < 661,662c647 < //#define PID_DEBUG // Print PID debug data to the serial port. Use 'M303 D' to toggle activation. < //#define PID_PARAMS_PER_HOTEND // Use separate PID parameters for each extruder (useful for mismatched extruders) --- > //#define PID_PARAMS_PER_HOTEND // Uses separate PID parameters for each extruder (useful for mismatched extruders) 664a650 > // Ender 3 v2 668,670c654,656 < #define DEFAULT_Kp_LIST { 22.20, 22.20 } < #define DEFAULT_Ki_LIST { 1.08, 1.08 } < #define DEFAULT_Kd_LIST { 114.00, 114.00 } --- > #define DEFAULT_Kp_LIST { 28.72, 28.72 } > #define DEFAULT_Ki_LIST { 2.62, 2.62 } > #define DEFAULT_Kd_LIST { 78.81, 78.81 } 672,674c658,660 < #define DEFAULT_Kp 22.20 < #define DEFAULT_Ki 1.08 < #define DEFAULT_Kd 114.00 --- > #define DEFAULT_Kp 28.72 > #define DEFAULT_Ki 2.62 > #define DEFAULT_Kd 78.81 683,684c669 < * for PID_EXTRUSION_SCALING and PID_FAN_SCALING. Use M306 T to autotune the model. < * @section mpctemp --- > * for PID_EXTRUSION_SCALING and PID_FAN_SCALING. Use M306 to autotune the model. 737d721 < * @section bed temp 739c723 < //#define PIDTEMPBED --- > #define PIDTEMPBED 753c737 < //#define PID_BED_DEBUG // Print Bed PID debug data to the serial port. --- > //#define PID_BED_DEBUG // Sends debug data to the serial port. 757,759c741,743 < #define DEFAULT_bedKp 10.00 < #define DEFAULT_bedKi .023 < #define DEFAULT_bedKd 305.4 --- > #define DEFAULT_bedKp 462.10 > #define DEFAULT_bedKi 85.47 > #define DEFAULT_bedKd 624.59 781d764 < * @section chamber temp 796c779 < //#define PID_CHAMBER_DEBUG // Print Chamber PID debug data to the serial port. --- > //#define PID_CHAMBER_DEBUG // Sends debug data to the serial port. 809a793 > //#define PID_DEBUG // Sends debug data to the serial port. Use 'M303 D' to toggle activation. 819c803 < // @section safety --- > // @section extruder 829c813 < #define EXTRUDE_MINTEMP 170 --- > #define EXTRUDE_MINTEMP 180 836c820 < #define EXTRUDE_MAXLENGTH 200 --- > #define EXTRUDE_MAXLENGTH 1000 857c841 < #define THERMAL_PROTECTION_CHAMBER // Enable thermal protection for the heated chamber --- > //#define THERMAL_PROTECTION_CHAMBER // Enable thermal protection for the heated chamber 883,885c867,868 < #define POLARGRAPH_MAX_BELT_LEN 1035.0 // (mm) Belt length at full extension. Override with M665 H. < #define DEFAULT_SEGMENTS_PER_SECOND 5 // Move segmentation based on duration < #define PEN_UP_DOWN_MENU // Add "Pen Up" and "Pen Down" to the MarlinUI menu --- > #define POLARGRAPH_MAX_BELT_LEN 1035.0 > #define POLAR_SEGMENTS_PER_SECOND 5 888,1081d870 < // @section delta < < // Enable for DELTA kinematics and configure below < //#define DELTA < #if ENABLED(DELTA) < < // Make delta curves from many straight lines (linear interpolation). < // This is a trade-off between visible corners (not enough segments) < // and processor overload (too many expensive sqrt calls). < #define DEFAULT_SEGMENTS_PER_SECOND 200 < < // After homing move down to a height where XY movement is unconstrained < //#define DELTA_HOME_TO_SAFE_ZONE < < // Delta calibration menu < // Add three-point calibration to the MarlinUI menu. < // See http://minow.blogspot.com/index.html#4918805519571907051 < //#define DELTA_CALIBRATION_MENU < < // G33 Delta Auto-Calibration. Enable EEPROM_SETTINGS to store results. < //#define DELTA_AUTO_CALIBRATION < < #if ENABLED(DELTA_AUTO_CALIBRATION) < // Default number of probe points : n*n (1 -> 7) < #define DELTA_CALIBRATION_DEFAULT_POINTS 4 < #endif < < #if EITHER(DELTA_AUTO_CALIBRATION, DELTA_CALIBRATION_MENU) < // Step size for paper-test probing < #define PROBE_MANUALLY_STEP 0.05 // (mm) < #endif < < // Print surface diameter/2 minus unreachable space (avoid collisions with vertical towers). < #define PRINTABLE_RADIUS 140.0 // (mm) < < // Maximum reachable area < #define DELTA_MAX_RADIUS 140.0 // (mm) < < // Center-to-center distance of the holes in the diagonal push rods. < #define DELTA_DIAGONAL_ROD 250.0 // (mm) < < // Distance between bed and nozzle Z home position < #define DELTA_HEIGHT 250.00 // (mm) Get this value from G33 auto calibrate < < #define DELTA_ENDSTOP_ADJ { 0.0, 0.0, 0.0 } // Get these values from G33 auto calibrate < < // Horizontal distance bridged by diagonal push rods when effector is centered. < #define DELTA_RADIUS 124.0 // (mm) Get this value from G33 auto calibrate < < // Trim adjustments for individual towers < // tower angle corrections for X and Y tower / rotate XYZ so Z tower angle = 0 < // measured in degrees anticlockwise looking from above the printer < #define DELTA_TOWER_ANGLE_TRIM { 0.0, 0.0, 0.0 } // Get these values from G33 auto calibrate < < // Delta radius and diagonal rod adjustments (mm) < //#define DELTA_RADIUS_TRIM_TOWER { 0.0, 0.0, 0.0 } < //#define DELTA_DIAGONAL_ROD_TRIM_TOWER { 0.0, 0.0, 0.0 } < #endif < < // @section scara < < /** < * MORGAN_SCARA was developed by QHARLEY in South Africa in 2012-2013. < * Implemented and slightly reworked by JCERNY in June, 2014. < * < * Mostly Printed SCARA is an open source design by Tyler Williams. See: < * https://www.thingiverse.com/thing:2487048 < * https://www.thingiverse.com/thing:1241491 < */ < //#define MORGAN_SCARA < //#define MP_SCARA < #if EITHER(MORGAN_SCARA, MP_SCARA) < // If movement is choppy try lowering this value < #define DEFAULT_SEGMENTS_PER_SECOND 200 < < // Length of inner and outer support arms. Measure arm lengths precisely. < #define SCARA_LINKAGE_1 150 // (mm) < #define SCARA_LINKAGE_2 150 // (mm) < < // SCARA tower offset (position of Tower relative to bed zero position) < // This needs to be reasonably accurate as it defines the printbed position in the SCARA space. < #define SCARA_OFFSET_X 100 // (mm) < #define SCARA_OFFSET_Y -56 // (mm) < < #if ENABLED(MORGAN_SCARA) < < //#define DEBUG_SCARA_KINEMATICS < #define FEEDRATE_SCALING // Convert XY feedrate from mm/s to degrees/s on the fly < < // Radius around the center where the arm cannot reach < #define MIDDLE_DEAD_ZONE_R 0 // (mm) < < #define THETA_HOMING_OFFSET 0 // Calculated from Calibration Guide and M360 / M114. See http://reprap.harleystudio.co.za/?page_id=1073 < #define PSI_HOMING_OFFSET 0 // Calculated from Calibration Guide and M364 / M114. See http://reprap.harleystudio.co.za/?page_id=1073 < < #elif ENABLED(MP_SCARA) < < #define SCARA_OFFSET_THETA1 12 // degrees < #define SCARA_OFFSET_THETA2 131 // degrees < < #endif < < #endif < < // @section tpara < < // Enable for TPARA kinematics and configure below < //#define AXEL_TPARA < #if ENABLED(AXEL_TPARA) < #define DEBUG_TPARA_KINEMATICS < #define DEFAULT_SEGMENTS_PER_SECOND 200 < < // Length of inner and outer support arms. Measure arm lengths precisely. < #define TPARA_LINKAGE_1 120 // (mm) < #define TPARA_LINKAGE_2 120 // (mm) < < // SCARA tower offset (position of Tower relative to bed zero position) < // This needs to be reasonably accurate as it defines the printbed position in the SCARA space. < #define TPARA_OFFSET_X 0 // (mm) < #define TPARA_OFFSET_Y 0 // (mm) < #define TPARA_OFFSET_Z 0 // (mm) < < #define FEEDRATE_SCALING // Convert XY feedrate from mm/s to degrees/s on the fly < < // Radius around the center where the arm cannot reach < #define MIDDLE_DEAD_ZONE_R 0 // (mm) < < // Calculated from Calibration Guide and M360 / M114. See http://reprap.harleystudio.co.za/?page_id=1073 < #define THETA_HOMING_OFFSET 0 < #define PSI_HOMING_OFFSET 0 < #endif < < // @section polar < < /** < * POLAR Kinematics < * developed by Kadir ilkimen for PolarBear CNC and babyBear < * https://github.com/kadirilkimen/Polar-Bear-Cnc-Machine < * https://github.com/kadirilkimen/babyBear-3D-printer < * < * A polar machine can have different configurations. < * This kinematics is only compatible with the following configuration: < * X : Independent linear < * Y or B : Polar < * Z : Independent linear < * < * For example, PolarBear has CoreXZ plus Polar Y or B. < * < * Motion problem for Polar axis near center / origin: < * < * 3D printing: < * Movements very close to the center of the polar axis take more time than others. < * This brief delay results in more material deposition due to the pressure in the nozzle. < * < * Current Kinematics and feedrate scaling deals with this by making the movement as fast < * as possible. It works for slow movements but doesn't work well with fast ones. A more < * complicated extrusion compensation must be implemented. < * < * Ideally, it should estimate that a long rotation near the center is ahead and will cause < * unwanted deposition. Therefore it can compensate the extrusion beforehand. < * < * Laser cutting: < * Same thing would be a problem for laser engraving too. As it spends time rotating at the < * center point, more likely it will burn more material than it should. Therefore similar < * compensation would be implemented for laser-cutting operations. < * < * Milling: < * This shouldn't be a problem for cutting/milling operations. < */ < //#define POLAR < #if ENABLED(POLAR) < #define DEFAULT_SEGMENTS_PER_SECOND 180 // If movement is choppy try lowering this value < #define PRINTABLE_RADIUS 82.0f // (mm) Maximum travel of X axis < < // Movements fall inside POLAR_FAST_RADIUS are assigned the highest possible feedrate < // to compensate unwanted deposition related to the near-origin motion problem. < #define POLAR_FAST_RADIUS 3.0f // (mm) < < // Radius which is unreachable by the tool. < // Needed if the tool is not perfectly aligned to the center of the polar axis. < #define POLAR_CENTER_OFFSET 0.0f // (mm) < < #define FEEDRATE_SCALING // Convert XY feedrate from mm/s to degrees/s on the fly < #endif < < // @section machine < < // Articulated robot (arm). Joints are directly mapped to axes with no kinematics. < //#define ARTICULATED_ROBOT_ARM < < // For a hot wire cutter with parallel horizontal axes (X, I) where the heights of the two wire < // ends are controlled by parallel axes (Y, J). Joints are directly mapped to axes (no kinematics). < //#define FOAMCUTTER_XYUV < 1086c875 < // @section endstops --- > // @section homing 1183c972 < //#define ENDSTOP_INTERRUPTS_FEATURE --- > #define ENDSTOP_INTERRUPTS_FEATURE 1227c1016 < #define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 500 } --- > #define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 93 } 1234c1023 < #define DEFAULT_MAX_FEEDRATE { 300, 300, 5, 25 } --- > #define DEFAULT_MAX_FEEDRATE { 500, 500, 5, 25 } 1247c1036 < #define DEFAULT_MAX_ACCELERATION { 3000, 3000, 100, 10000 } --- > #define DEFAULT_MAX_ACCELERATION { 500, 500, 100, 1000 } 1261,1262d1049 < * M204 I Angular Acceleration < * M204 J Angular Travel Acceleration 1264,1270c1051,1053 < #define DEFAULT_ACCELERATION 3000 // X, Y, Z ... and E acceleration for printing moves < #define DEFAULT_RETRACT_ACCELERATION 3000 // E acceleration for retracts < #define DEFAULT_TRAVEL_ACCELERATION 3000 // X, Y, Z ... acceleration for travel (non printing) moves < #if ENABLED(AXIS4_ROTATES) < #define DEFAULT_ANGULAR_ACCELERATION 3000 // I, J, K acceleration for rotational-only printing moves < #define DEFAULT_ANGULAR_TRAVEL_ACCELERATION 3000 // I, J, K acceleration for rotational-only travel (non printing) moves < #endif --- > #define DEFAULT_ACCELERATION 500 // X, Y, Z and E acceleration for printing moves > #define DEFAULT_RETRACT_ACCELERATION 500 // E acceleration for retracts > #define DEFAULT_TRAVEL_ACCELERATION 1000 // X, Y, Z acceleration for travel (non printing) moves 1280c1063 < //#define CLASSIC_JERK --- > #define CLASSIC_JERK 1323c1106 < //#define S_CURVE_ACCELERATION --- > #define S_CURVE_ACCELERATION 1440,1460d1222 < /** < * Magnetically Mounted Probe < * For probes such as Euclid, Klicky, Klackender, etc. < */ < //#define MAG_MOUNTED_PROBE < #if ENABLED(MAG_MOUNTED_PROBE) < #define PROBE_DEPLOY_FEEDRATE (133*60) // (mm/min) Probe deploy speed < #define PROBE_STOW_FEEDRATE (133*60) // (mm/min) Probe stow speed < < #define MAG_MOUNTED_DEPLOY_1 { PROBE_DEPLOY_FEEDRATE, { 245, 114, 30 } } // Move to side Dock & Attach probe < #define MAG_MOUNTED_DEPLOY_2 { PROBE_DEPLOY_FEEDRATE, { 210, 114, 30 } } // Move probe off dock < #define MAG_MOUNTED_DEPLOY_3 { PROBE_DEPLOY_FEEDRATE, { 0, 0, 0 } } // Extra move if needed < #define MAG_MOUNTED_DEPLOY_4 { PROBE_DEPLOY_FEEDRATE, { 0, 0, 0 } } // Extra move if needed < #define MAG_MOUNTED_DEPLOY_5 { PROBE_DEPLOY_FEEDRATE, { 0, 0, 0 } } // Extra move if needed < #define MAG_MOUNTED_STOW_1 { PROBE_STOW_FEEDRATE, { 245, 114, 20 } } // Move to dock < #define MAG_MOUNTED_STOW_2 { PROBE_STOW_FEEDRATE, { 245, 114, 0 } } // Place probe beside remover < #define MAG_MOUNTED_STOW_3 { PROBE_STOW_FEEDRATE, { 230, 114, 0 } } // Side move to remove probe < #define MAG_MOUNTED_STOW_4 { PROBE_STOW_FEEDRATE, { 210, 114, 20 } } // Side move to remove probe < #define MAG_MOUNTED_STOW_5 { PROBE_STOW_FEEDRATE, { 0, 0, 0 } } // Extra move if needed < #endif < 1476,1483c1238,1240 < /** < * Allen key retractable z-probe as seen on many Kossel delta printers - https://reprap.org/wiki/Kossel#Automatic_bed_leveling_probe < * Deploys by touching z-axis belt. Retracts by pushing the probe down. < */ < //#define Z_PROBE_ALLEN_KEY < #if ENABLED(Z_PROBE_ALLEN_KEY) < // 2 or 3 sets of coordinates for deploying and retracting the spring loaded touch probe on G29, < // if servo actuated touch probe is not defined. Uncomment as appropriate for your printer/probe. --- > // > // For Z_PROBE_ALLEN_KEY see the Delta example configurations. > // 1485,1507d1241 < #define Z_PROBE_ALLEN_KEY_DEPLOY_1 { 30.0, PRINTABLE_RADIUS, 100.0 } < #define Z_PROBE_ALLEN_KEY_DEPLOY_1_FEEDRATE XY_PROBE_FEEDRATE < < #define Z_PROBE_ALLEN_KEY_DEPLOY_2 { 0.0, PRINTABLE_RADIUS, 100.0 } < #define Z_PROBE_ALLEN_KEY_DEPLOY_2_FEEDRATE (XY_PROBE_FEEDRATE)/10 < < #define Z_PROBE_ALLEN_KEY_DEPLOY_3 { 0.0, (PRINTABLE_RADIUS) * 0.75, 100.0 } < #define Z_PROBE_ALLEN_KEY_DEPLOY_3_FEEDRATE XY_PROBE_FEEDRATE < < #define Z_PROBE_ALLEN_KEY_STOW_1 { -64.0, 56.0, 23.0 } // Move the probe into position < #define Z_PROBE_ALLEN_KEY_STOW_1_FEEDRATE XY_PROBE_FEEDRATE < < #define Z_PROBE_ALLEN_KEY_STOW_2 { -64.0, 56.0, 3.0 } // Push it down < #define Z_PROBE_ALLEN_KEY_STOW_2_FEEDRATE (XY_PROBE_FEEDRATE)/10 < < #define Z_PROBE_ALLEN_KEY_STOW_3 { -64.0, 56.0, 50.0 } // Move it up to clear < #define Z_PROBE_ALLEN_KEY_STOW_3_FEEDRATE XY_PROBE_FEEDRATE < < #define Z_PROBE_ALLEN_KEY_STOW_4 { 0.0, 0.0, 50.0 } < #define Z_PROBE_ALLEN_KEY_STOW_4_FEEDRATE XY_PROBE_FEEDRATE < < #endif // Z_PROBE_ALLEN_KEY < 1555c1289 < #define XY_PROBE_FEEDRATE (133*60) --- > #define XY_PROBE_FEEDRATE (50*60) 1633,1634c1367,1368 < #define Z_PROBE_OFFSET_RANGE_MIN -20 < #define Z_PROBE_OFFSET_RANGE_MAX 20 --- > #define Z_PROBE_OFFSET_RANGE_MIN -10 > #define Z_PROBE_OFFSET_RANGE_MAX 10 1702c1436 < // @section motion --- > // @section machine 1706,1707c1440,1441 < #define INVERT_Y_DIR true < #define INVERT_Z_DIR false --- > #define INVERT_Y_DIR false > #define INVERT_Z_DIR true 1756c1490 < // @section geometry --- > // @section machine 1759,1760c1493,1494 < #define X_BED_SIZE 200 < #define Y_BED_SIZE 200 --- > #define X_BED_SIZE 235 > #define Y_BED_SIZE 235 1768c1502 < #define Z_MAX_POS 200 --- > #define Z_MAX_POS 250 1960,1968d1693 < * Bed Distance Sensor < * < * Measures the distance from bed to nozzle with accuracy of 0.01mm. < * For information about this sensor https://github.com/markniu/Bed_Distance_sensor < * Uses I2C port, so it requires I2C library markyue/Panda_SoftMasterI2C. < */ < //#define BD_SENSOR < < /** 1981,1985c1706,1708 < /** < * Gradually reduce leveling correction until a set height is reached, < * at which point movement will be level to the machine's XY plane. < * The height can be set with M420 Z < */ --- > // Gradually reduce leveling correction until a set height is reached, > // at which point movement will be level to the machine's XY plane. > // The height can be set with M420 Z 1991,2001c1714,1716 < /** < * Add Z offset (M424 Z) that applies to all moves at the planner level. < * This Z offset will be automatically set to the middle value with G29. < */ < //#define GLOBAL_MESH_Z_OFFSET < < /** < * For Cartesian machines, instead of dividing moves on mesh boundaries, < * split up moves into short segments like a Delta. This follows the < * contours of the bed more closely than edge-to-edge straight moves. < */ --- > // For Cartesian machines, instead of dividing moves on mesh boundaries, > // split up moves into short segments like a Delta. This follows the > // contours of the bed more closely than edge-to-edge straight moves. 2034c1749 < //#define EXTRAPOLATE_BEYOND_GRID --- > #define EXTRAPOLATE_BEYOND_GRID 2037c1752 < // Subdivision of the grid by Catmull-Rom method. --- > // Experimental Subdivision of the grid by Catmull-Rom method. 2070,2088d1784 < /** < * Probing not allowed within the position of an obstacle. < */ < //#define AVOID_OBSTACLES < #if ENABLED(AVOID_OBSTACLES) < #define CLIP_W 23 // Bed clip width, should be padded a few mm over its physical size < #define CLIP_H 14 // Bed clip height, should be padded a few mm over its physical size < < // Obstacle Rectangles defined as { X1, Y1, X2, Y2 } < #define OBSTACLE1 { (X_BED_SIZE) / 4 - (CLIP_W) / 2, 0, (X_BED_SIZE) / 4 + (CLIP_W) / 2, CLIP_H } < #define OBSTACLE2 { (X_BED_SIZE) * 3 / 4 - (CLIP_W) / 2, 0, (X_BED_SIZE) * 3 / 4 + (CLIP_W) / 2, CLIP_H } < #define OBSTACLE3 { (X_BED_SIZE) / 4 - (CLIP_W) / 2, ((Y_BED_SIZE) - (CLIP_H)), (X_BED_SIZE) / 4 + (CLIP_W) / 2, Y_BED_SIZE } < #define OBSTACLE4 { (X_BED_SIZE) * 3 / 4 - (CLIP_W) / 2, ((Y_BED_SIZE) - (CLIP_H)), (X_BED_SIZE) * 3 / 4 + (CLIP_W) / 2, Y_BED_SIZE } < < // The probed grid must be inset for G29 J. This is okay, since it is < // only used to compute a linear transformation for the mesh itself. < #define G29J_MESH_TILT_MARGIN ((CLIP_H) + 1) < #endif < 2183,2184c1879,1880 < #define Z_SAFE_HOMING_X_POINT X_CENTER // X point for Z homing < #define Z_SAFE_HOMING_Y_POINT Y_CENTER // Y point for Z homing --- > #define Z_SAFE_HOMING_X_POINT ((X_BED_SIZE - 10) / 2) // X point for Z homing > #define Z_SAFE_HOMING_Y_POINT ((Y_BED_SIZE - 10) / 2) // Y point for Z homing 2231,2232c1927,1929 < // Or, set the XY skew factor directly: < //#define XY_SKEW_FACTOR 0.0 --- > // Or, set the default skew factors directly here > // to override the above measurements: > #define XY_SKEW_FACTOR 0.0 2241,2244c1938,1939 < < // Or, set the Z skew factors directly: < //#define XZ_SKEW_FACTOR 0.0 < //#define YZ_SKEW_FACTOR 0.0 --- > #define XZ_SKEW_FACTOR 0.0 > #define YZ_SKEW_FACTOR 0.0 2255c1950 < // @section eeprom --- > // @section extras 2266c1961 < //#define EEPROM_SETTINGS // Persistent storage with M500 and M501 --- > #define EEPROM_SETTINGS // Persistent storage with M500 and M501 2268c1963 < #define EEPROM_CHITCHAT // Give feedback on EEPROM commands. Disable to save PROGMEM. --- > //#define EEPROM_CHITCHAT // Give feedback on EEPROM commands. Disable to save PROGMEM. 2271c1966 < //#define EEPROM_AUTO_INIT // Init EEPROM automatically on any errors. --- > #define EEPROM_AUTO_INIT // Init EEPROM automatically on any errors. 2275,2276d1969 < // @section host < 2287,2288d1979 < // @section units < 2302c1993 < // Preheat Constants - Up to 10 are supported without changes --- > // Preheat Constants - Up to 6 are supported without changes 2305,2306c1996,1997 < #define PREHEAT_1_TEMP_HOTEND 180 < #define PREHEAT_1_TEMP_BED 70 --- > #define PREHEAT_1_TEMP_HOTEND 185 > #define PREHEAT_1_TEMP_BED 45 2308c1999 < #define PREHEAT_1_FAN_SPEED 0 // Value from 0 to 255 --- > #define PREHEAT_1_FAN_SPEED 255 // Value from 0 to 255 2312c2003 < #define PREHEAT_2_TEMP_BED 110 --- > #define PREHEAT_2_TEMP_BED 70 2314c2005 < #define PREHEAT_2_FAN_SPEED 0 // Value from 0 to 255 --- > #define PREHEAT_2_FAN_SPEED 255 // Value from 0 to 255 2316,2317d2006 < // @section motion < 2341c2030 < * Clean Nozzle Feature --- > * Clean Nozzle Feature -- EXPERIMENTAL 2374a2064 > * Attention: EXPERIMENTAL. G-code arguments may change. 2415,2416d2104 < // @section host < 2443,2444d2130 < // @section stats < 2459c2145 < #define PRINTCOUNTER_SAVE_INTERVAL 60 // (minutes) EEPROM save interval during print. A value of 0 will save stats at end of print. --- > #define PRINTCOUNTER_SAVE_INTERVAL 60 // (minutes) EEPROM save interval during print 2462,2463d2147 < // @section security < 2499c2183 < // @section interface --- > // @section lcd 2550c2234 < //#define SDSUPPORT --- > #define SDSUPPORT 2574c2258 < //#define ENCODER_PULSES_PER_STEP 4 --- > #define ENCODER_PULSES_PER_STEP 4 2580c2264 < //#define ENCODER_STEPS_PER_MENU_ITEM 1 --- > #define ENCODER_STEPS_PER_MENU_ITEM 1 2616,2625d2299 < // Encoder EMI Noise Filter < // < // This option increases encoder samples to filter out phantom encoder clicks caused by EMI noise. < // < //#define ENCODER_NOISE_FILTER < #if ENABLED(ENCODER_NOISE_FILTER) < #define ENCODER_SAMPLES 10 < #endif < < // 2630c2304 < //#define INDIVIDUAL_AXIS_HOMING_MENU --- > #define INDIVIDUAL_AXIS_HOMING_MENU 2648,2649c2322,2323 < //#define LCD_FEEDBACK_FREQUENCY_DURATION_MS 2 < //#define LCD_FEEDBACK_FREQUENCY_HZ 5000 --- > #define LCD_FEEDBACK_FREQUENCY_DURATION_MS 2 > #define LCD_FEEDBACK_FREQUENCY_HZ 5000 2655d2328 < // @section lcd 2830c2503 < // https://reprapworld.com/electronics/3d-printer-modules/autonomous-printing/graphical-lcd-screen-v1-0/ --- > // https://reprapworld.com/?products_details&products_id/1218 2928c2601,2604 < //#define CR10_STOCKDISPLAY --- > #define CR10_STOCKDISPLAY > #if ENABLED(CR10_STOCKDISPLAY) > #define RET6_12864_LCD // Specific to the SoC (can either be RET / VET) > #endif 2957,2962d2632 < // < // eMotion Tech LCD with SD < // https://www.reprap-france.com/produit/1234568748-ecran-graphique-128-x-64-points-2-1 < // < //#define EMOTION_TECH_LCD < 3027a2698,2700 > * ORIGIN : https://www.aliexpress.com/item/32993409517.html > * FYSETC : https://www.aliexpress.com/item/32961471929.html > * MKS : https://www.aliexpress.com/item/1005002008179262.html 3028a2702,2707 > * Flash display with DGUS Displays for Marlin: > * - Format the SD card to FAT32 with an allocation size of 4kb. > * - Download files as specified for your type of display. > * - Plug the microSD card into the back of the display. > * - Boot the display and wait for the update to complete. > * 3032d2710 < * - Product: https://www.aliexpress.com/item/32993409517.html 3037d2714 < * - Product: https://www.aliexpress.com/item/32961471929.html 3046d2722 < * - Product: https://www.aliexpress.com/item/1005002008179262.html 3051,3063d2726 < * < * IA_CREALITY (T5UID1) < * - Download https://github.com/InsanityAutomation/Marlin/raw/CrealityDwin2.0_Bleeding/TM3D_Combined480272_Landscape_V7.7z < * - Copy the downloaded DWIN_SET folder to the SD card. < * < * CREALITY_TOUCH < * - CR-6 OEM touch screen. A DWIN display with touch. < * < * Flash display with DGUS Displays for Marlin: < * - Format the SD card to FAT32 with an allocation size of 4kb. < * - Download files as specified for your type of display. < * - Plug the microSD card into the back of the display. < * - Boot the display and wait for the update to complete. 3065,3066c2728,2733 < //#define DGUS_LCD_UI ORIGIN < #if DGUS_UI_IS(MKS) --- > //#define DGUS_LCD_UI_ORIGIN > //#define DGUS_LCD_UI_FYSETC > //#define DGUS_LCD_UI_HIPRECY > //#define DGUS_LCD_UI_MKS > //#define DGUS_LCD_UI_RELOADED > #if ENABLED(DGUS_LCD_UI_MKS) 3071,3075d2737 < // CR-6 OEM touch screen. A DWIN display with touch. < // < //#define DWIN_CREALITY_TOUCHLCD < < // 3093d2754 < //#define ANYCUBIC_LCD_GCODE_EXT // Add ".gcode" to menu entries for DGUS clone compatibility 3102,3107d2762 < // PanelDue touch controller by Escher3D < // http://escher3d.com/pages/order/products/product2.php < // < //#define PANELDUE < < // 3168c2823 < // 480x320, 3.5", FSMC Stock Display from Tronxy --- > // 480x320, 3.5", FSMC Stock Display from TronxXY 3235,3247d2889 < #if ENABLED(TFT_COLOR_UI) < /** < * TFT Font for Color_UI. Choose one of the following: < * < * NOTOSANS - Default font with antialiasing. Supports Latin Extended and non-Latin characters. < * UNIFONT - Lightweight font, no antialiasing. Supports Latin Extended and non-Latin characters. < * HELVETICA - Lightweight font, no antialiasing. Supports Basic Latin (0x0020-0x007F) and Latin-1 Supplement (0x0080-0x00FF) characters only. < */ < #define TFT_FONT NOTOSANS < < //#define TFT_SHARED_SPI // SPI is shared between TFT display and other devices. Disable async data transfer < #endif < 3280,3281c2922,2923 < #define BUTTON_DELAY_EDIT 50 // (ms) Button repeat delay for edit screens < #define BUTTON_DELAY_MENU 250 // (ms) Button repeat delay for menus --- > #define BUTTON_DELAY_EDIT 50 // (ms) Button repeat delay for edit screens > #define BUTTON_DELAY_MENU 250 // (ms) Button repeat delay for menus 3283,3284c2925 < //#define DISABLE_ENCODER // Disable the click encoder, if any < //#define TOUCH_IDLE_SLEEP_MINS 5 // (minutes) Display Sleep after a period of inactivity. Set with M255 S. --- > //#define TOUCH_IDLE_SLEEP 300 // (s) Turn off the TFT backlight if set (5mn) 3319c2960 < // @section fans --- > // @section extras 3328c2969 < //#define FAN_SOFT_PWM --- > #define FAN_SOFT_PWM 3343,3349d2983 < // @section extras < < // Support for the BariCUDA Paste Extruder < //#define BARICUDA < < // @section lights < 3354a2989,2991 > // Support for the BariCUDA Paste Extruder > //#define BARICUDA > 3375c3012 < * === CAUTION === --- > * *** CAUTION *** 3379d3015 < * 3381a3018 > * *** CAUTION *** 3383,3384c3020 < * Requires PWM frequency between 50 <> 100Hz (Check HAL or variant) < * Use FAST_PWM_FAN, if possible, to reduce fan noise. --- > * LED Type. Enable only one of the following two options. 3386,3387d3021 < < // LED Type. Enable only one of the following two options: 3398,3404d3031 < #if ANY(RGB_LED, RGBW_LED, PCA9632) < //#define RGB_STARTUP_TEST // For PWM pins, fade between all colors < #if ENABLED(RGB_STARTUP_TEST) < #define RGB_STARTUP_TEST_INNER_MS 10 // (ms) Reduce or increase fading speed < #endif < #endif < 3424d3050 < #define NEOPIXEL_M150_DEFAULT -1 // Default strip for M150 without 'S'. Use -1 to set all by default. 3451,3452d3076 < // @section servos < 3474a3099 >

  • babyBear-3D-printer

    A very small 3D printer! that slightly smaller than an A4 paper including a spool of filament.

  • 23,24d22 < #error "Don't build with import-2.1.x configurations!" < #error "Use the 'bugfix...' or 'release...' configurations matching your Marlin version." 25a24,25 > #define CONFIG_EXAMPLES_DIR "Creality/Ender-3 Pro/CrealityV422" > 40c40 < #define CONFIGURATION_H_VERSION 02010300 --- > #define CONFIGURATION_H_VERSION 02010000 61a62,70 > //=========================================================================== > //========================== DELTA / SCARA / TPARA ========================== > //=========================================================================== > // > // Download configurations from the link above and customize for your machine. > // Examples are located in config/examples/delta, .../SCARA, and .../TPARA. > // > //=========================================================================== > 65c74 < #define STRING_CONFIG_H_AUTHOR "(none, default config)" // Who made the changes. --- > #define STRING_CONFIG_H_AUTHOR "(Hidasi Máté)" // Who made the changes. 83c92 < //#define SHOW_CUSTOM_BOOTSCREEN --- > #define SHOW_CUSTOM_BOOTSCREEN 86c95 < //#define CUSTOM_STATUS_SCREEN_IMAGE --- > #define CUSTOM_STATUS_SCREEN_IMAGE 92c101 < #define MOTHERBOARD BOARD_RAMPS_14_EFB --- > #define MOTHERBOARD BOARD_CREALITY_V4 103c112 < #define SERIAL_PORT 0 --- > #define SERIAL_PORT 1 116,117c125 < #define BAUDRATE 250000 < --- > #define BAUDRATE 115200 125,126c133,134 < //#define SERIAL_PORT_2 -1 < //#define BAUDRATE_2 250000 // :[2400, 9600, 19200, 38400, 57600, 115200, 250000, 500000, 1000000] Enable to override BAUDRATE --- > #define SERIAL_PORT_2 3 > //#define BAUDRATE_2 250000 // Enable to override BAUDRATE 134c142 < //#define BAUDRATE_3 250000 // :[2400, 9600, 19200, 38400, 57600, 115200, 250000, 500000, 1000000] Enable to override BAUDRATE --- > //#define BAUDRATE_3 250000 // Enable to override BAUDRATE 140c148 < //#define CUSTOM_MACHINE_NAME "3D Printer" --- > #define CUSTOM_MACHINE_NAME "Máté's Ender 3 Pro" 146,147d153 < // @section stepper drivers < 156c162,163 < * Options: A4988, A5984, DRV8825, LV8729, TB6560, TB6600, TMC2100, --- > * Options: A4988, A5984, DRV8825, LV8729, L6470, L6474, POWERSTEP01, > * TB6560, TB6600, TMC2100, 161c168 < * :['A4988', 'A5984', 'DRV8825', 'LV8729', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2160', 'TMC2160_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC2209', 'TMC2209_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE', 'TMC5160', 'TMC5160_STANDALONE'] --- > * :['A4988', 'A5984', 'DRV8825', 'LV8729', 'L6470', 'L6474', 'POWERSTEP01', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2160', 'TMC2160_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC2209', 'TMC2209_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE', 'TMC5160', 'TMC5160_STANDALONE'] 163,165c170,172 < #define X_DRIVER_TYPE A4988 < #define Y_DRIVER_TYPE A4988 < #define Z_DRIVER_TYPE A4988 --- > #define X_DRIVER_TYPE A4988 > #define Y_DRIVER_TYPE A4988 > #define Z_DRIVER_TYPE A4988 247,248d253 < // @section multi-material < 261d265 < * :["PRUSA_MMU1", "PRUSA_MMU2", "PRUSA_MMU2S", "EXTENDABLE_EMU_MMU2", "EXTENDABLE_EMU_MMU2S"] 281d284 < #define SWITCHING_NOZZLE_SERVO_DWELL 2500 // Dwell time to wait for servo to make physical move 398c401 < // @section psu control --- > // @section machine 501c504 < * 66 : 4.7MΩ Dyze Design / Trianglelab T-D500 500°C High Temperature Thermistor --- > * 66 : 4.7MΩ Dyze Design High Temperature Thermistor 523d525 < * 1022 : Pt1000 with 2.2kΩ pullup 549c551 < #define TEMP_SENSOR_BED 0 --- > #define TEMP_SENSOR_BED 1 561,572c563,566 < #if TEMP_SENSOR_IS_MAX_TC(0) < #define MAX31865_SENSOR_OHMS_0 100 // (Ω) Typically 100 or 1000 (PT100 or PT1000) < #define MAX31865_CALIBRATION_OHMS_0 430 // (Ω) Typically 430 for Adafruit PT100; 4300 for Adafruit PT1000 < #endif < #if TEMP_SENSOR_IS_MAX_TC(1) < #define MAX31865_SENSOR_OHMS_1 100 < #define MAX31865_CALIBRATION_OHMS_1 430 < #endif < #if TEMP_SENSOR_IS_MAX_TC(2) < #define MAX31865_SENSOR_OHMS_2 100 < #define MAX31865_CALIBRATION_OHMS_2 430 < #endif --- > //#define MAX31865_SENSOR_OHMS_0 100 // (Ω) Typically 100 or 1000 (PT100 or PT1000) > //#define MAX31865_CALIBRATION_OHMS_0 430 // (Ω) Typically 430 for Adafruit PT100; 4300 for Adafruit PT1000 > //#define MAX31865_SENSOR_OHMS_1 100 > //#define MAX31865_CALIBRATION_OHMS_1 430 574,578c568,570 < #if HAS_E_TEMP_SENSOR < #define TEMP_RESIDENCY_TIME 10 // (seconds) Time to wait for hotend to "settle" in M109 < #define TEMP_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer < #define TEMP_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target < #endif --- > #define TEMP_RESIDENCY_TIME 10 // (seconds) Time to wait for hotend to "settle" in M109 > #define TEMP_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer > #define TEMP_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target 580,584c572,574 < #if TEMP_SENSOR_BED < #define TEMP_BED_RESIDENCY_TIME 10 // (seconds) Time to wait for bed to "settle" in M190 < #define TEMP_BED_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer < #define TEMP_BED_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target < #endif --- > #define TEMP_BED_RESIDENCY_TIME 10 // (seconds) Time to wait for bed to "settle" in M190 > #define TEMP_BED_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer > #define TEMP_BED_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target 586,590c576,578 < #if TEMP_SENSOR_CHAMBER < #define TEMP_CHAMBER_RESIDENCY_TIME 10 // (seconds) Time to wait for chamber to "settle" in M191 < #define TEMP_CHAMBER_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer < #define TEMP_CHAMBER_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target < #endif --- > #define TEMP_CHAMBER_RESIDENCY_TIME 10 // (seconds) Time to wait for chamber to "settle" in M191 > #define TEMP_CHAMBER_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer > #define TEMP_CHAMBER_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target 610c598 < #define HEATER_0_MINTEMP 5 --- > #define HEATER_0_MINTEMP 0 618c606 < #define BED_MINTEMP 5 --- > #define BED_MINTEMP 0 632c620 < #define BED_MAXTEMP 150 --- > #define BED_MAXTEMP 120 649,650d636 < // @section hotend temp < 661,662c647 < //#define PID_DEBUG // Print PID debug data to the serial port. Use 'M303 D' to toggle activation. < //#define PID_PARAMS_PER_HOTEND // Use separate PID parameters for each extruder (useful for mismatched extruders) --- > //#define PID_PARAMS_PER_HOTEND // Uses separate PID parameters for each extruder (useful for mismatched extruders) 664a650 > // Ender 3 v2 668,670c654,656 < #define DEFAULT_Kp_LIST { 22.20, 22.20 } < #define DEFAULT_Ki_LIST { 1.08, 1.08 } < #define DEFAULT_Kd_LIST { 114.00, 114.00 } --- > #define DEFAULT_Kp_LIST { 28.72, 28.72 } > #define DEFAULT_Ki_LIST { 2.62, 2.62 } > #define DEFAULT_Kd_LIST { 78.81, 78.81 } 672,674c658,660 < #define DEFAULT_Kp 22.20 < #define DEFAULT_Ki 1.08 < #define DEFAULT_Kd 114.00 --- > #define DEFAULT_Kp 28.72 > #define DEFAULT_Ki 2.62 > #define DEFAULT_Kd 78.81 683,684c669 < * for PID_EXTRUSION_SCALING and PID_FAN_SCALING. Use M306 T to autotune the model. < * @section mpctemp --- > * for PID_EXTRUSION_SCALING and PID_FAN_SCALING. Use M306 to autotune the model. 737d721 < * @section bed temp 739c723 < //#define PIDTEMPBED --- > #define PIDTEMPBED 753c737 < //#define PID_BED_DEBUG // Print Bed PID debug data to the serial port. --- > //#define PID_BED_DEBUG // Sends debug data to the serial port. 757,759c741,743 < #define DEFAULT_bedKp 10.00 < #define DEFAULT_bedKi .023 < #define DEFAULT_bedKd 305.4 --- > #define DEFAULT_bedKp 462.10 > #define DEFAULT_bedKi 85.47 > #define DEFAULT_bedKd 624.59 781d764 < * @section chamber temp 796c779 < //#define PID_CHAMBER_DEBUG // Print Chamber PID debug data to the serial port. --- > //#define PID_CHAMBER_DEBUG // Sends debug data to the serial port. 809a793 > //#define PID_DEBUG // Sends debug data to the serial port. Use 'M303 D' to toggle activation. 819c803 < // @section safety --- > // @section extruder 829c813 < #define EXTRUDE_MINTEMP 170 --- > #define EXTRUDE_MINTEMP 180 836c820 < #define EXTRUDE_MAXLENGTH 200 --- > #define EXTRUDE_MAXLENGTH 1000 857c841 < #define THERMAL_PROTECTION_CHAMBER // Enable thermal protection for the heated chamber --- > //#define THERMAL_PROTECTION_CHAMBER // Enable thermal protection for the heated chamber 883,885c867,868 < #define POLARGRAPH_MAX_BELT_LEN 1035.0 // (mm) Belt length at full extension. Override with M665 H. < #define DEFAULT_SEGMENTS_PER_SECOND 5 // Move segmentation based on duration < #define PEN_UP_DOWN_MENU // Add "Pen Up" and "Pen Down" to the MarlinUI menu --- > #define POLARGRAPH_MAX_BELT_LEN 1035.0 > #define POLAR_SEGMENTS_PER_SECOND 5 888,1081d870 < // @section delta < < // Enable for DELTA kinematics and configure below < //#define DELTA < #if ENABLED(DELTA) < < // Make delta curves from many straight lines (linear interpolation). < // This is a trade-off between visible corners (not enough segments) < // and processor overload (too many expensive sqrt calls). < #define DEFAULT_SEGMENTS_PER_SECOND 200 < < // After homing move down to a height where XY movement is unconstrained < //#define DELTA_HOME_TO_SAFE_ZONE < < // Delta calibration menu < // Add three-point calibration to the MarlinUI menu. < // See http://minow.blogspot.com/index.html#4918805519571907051 < //#define DELTA_CALIBRATION_MENU < < // G33 Delta Auto-Calibration. Enable EEPROM_SETTINGS to store results. < //#define DELTA_AUTO_CALIBRATION < < #if ENABLED(DELTA_AUTO_CALIBRATION) < // Default number of probe points : n*n (1 -> 7) < #define DELTA_CALIBRATION_DEFAULT_POINTS 4 < #endif < < #if EITHER(DELTA_AUTO_CALIBRATION, DELTA_CALIBRATION_MENU) < // Step size for paper-test probing < #define PROBE_MANUALLY_STEP 0.05 // (mm) < #endif < < // Print surface diameter/2 minus unreachable space (avoid collisions with vertical towers). < #define PRINTABLE_RADIUS 140.0 // (mm) < < // Maximum reachable area < #define DELTA_MAX_RADIUS 140.0 // (mm) < < // Center-to-center distance of the holes in the diagonal push rods. < #define DELTA_DIAGONAL_ROD 250.0 // (mm) < < // Distance between bed and nozzle Z home position < #define DELTA_HEIGHT 250.00 // (mm) Get this value from G33 auto calibrate < < #define DELTA_ENDSTOP_ADJ { 0.0, 0.0, 0.0 } // Get these values from G33 auto calibrate < < // Horizontal distance bridged by diagonal push rods when effector is centered. < #define DELTA_RADIUS 124.0 // (mm) Get this value from G33 auto calibrate < < // Trim adjustments for individual towers < // tower angle corrections for X and Y tower / rotate XYZ so Z tower angle = 0 < // measured in degrees anticlockwise looking from above the printer < #define DELTA_TOWER_ANGLE_TRIM { 0.0, 0.0, 0.0 } // Get these values from G33 auto calibrate < < // Delta radius and diagonal rod adjustments (mm) < //#define DELTA_RADIUS_TRIM_TOWER { 0.0, 0.0, 0.0 } < //#define DELTA_DIAGONAL_ROD_TRIM_TOWER { 0.0, 0.0, 0.0 } < #endif < < // @section scara < < /** < * MORGAN_SCARA was developed by QHARLEY in South Africa in 2012-2013. < * Implemented and slightly reworked by JCERNY in June, 2014. < * < * Mostly Printed SCARA is an open source design by Tyler Williams. See: < * https://www.thingiverse.com/thing:2487048 < * https://www.thingiverse.com/thing:1241491 < */ < //#define MORGAN_SCARA < //#define MP_SCARA < #if EITHER(MORGAN_SCARA, MP_SCARA) < // If movement is choppy try lowering this value < #define DEFAULT_SEGMENTS_PER_SECOND 200 < < // Length of inner and outer support arms. Measure arm lengths precisely. < #define SCARA_LINKAGE_1 150 // (mm) < #define SCARA_LINKAGE_2 150 // (mm) < < // SCARA tower offset (position of Tower relative to bed zero position) < // This needs to be reasonably accurate as it defines the printbed position in the SCARA space. < #define SCARA_OFFSET_X 100 // (mm) < #define SCARA_OFFSET_Y -56 // (mm) < < #if ENABLED(MORGAN_SCARA) < < //#define DEBUG_SCARA_KINEMATICS < #define FEEDRATE_SCALING // Convert XY feedrate from mm/s to degrees/s on the fly < < // Radius around the center where the arm cannot reach < #define MIDDLE_DEAD_ZONE_R 0 // (mm) < < #define THETA_HOMING_OFFSET 0 // Calculated from Calibration Guide and M360 / M114. See http://reprap.harleystudio.co.za/?page_id=1073 < #define PSI_HOMING_OFFSET 0 // Calculated from Calibration Guide and M364 / M114. See http://reprap.harleystudio.co.za/?page_id=1073 < < #elif ENABLED(MP_SCARA) < < #define SCARA_OFFSET_THETA1 12 // degrees < #define SCARA_OFFSET_THETA2 131 // degrees < < #endif < < #endif < < // @section tpara < < // Enable for TPARA kinematics and configure below < //#define AXEL_TPARA < #if ENABLED(AXEL_TPARA) < #define DEBUG_TPARA_KINEMATICS < #define DEFAULT_SEGMENTS_PER_SECOND 200 < < // Length of inner and outer support arms. Measure arm lengths precisely. < #define TPARA_LINKAGE_1 120 // (mm) < #define TPARA_LINKAGE_2 120 // (mm) < < // SCARA tower offset (position of Tower relative to bed zero position) < // This needs to be reasonably accurate as it defines the printbed position in the SCARA space. < #define TPARA_OFFSET_X 0 // (mm) < #define TPARA_OFFSET_Y 0 // (mm) < #define TPARA_OFFSET_Z 0 // (mm) < < #define FEEDRATE_SCALING // Convert XY feedrate from mm/s to degrees/s on the fly < < // Radius around the center where the arm cannot reach < #define MIDDLE_DEAD_ZONE_R 0 // (mm) < < // Calculated from Calibration Guide and M360 / M114. See http://reprap.harleystudio.co.za/?page_id=1073 < #define THETA_HOMING_OFFSET 0 < #define PSI_HOMING_OFFSET 0 < #endif < < // @section polar < < /** < * POLAR Kinematics < * developed by Kadir ilkimen for PolarBear CNC and babyBear < * https://github.com/kadirilkimen/Polar-Bear-Cnc-Machine < * https://github.com/kadirilkimen/babyBear-3D-printer < * < * A polar machine can have different configurations. < * This kinematics is only compatible with the following configuration: < * X : Independent linear < * Y or B : Polar < * Z : Independent linear < * < * For example, PolarBear has CoreXZ plus Polar Y or B. < * < * Motion problem for Polar axis near center / origin: < * < * 3D printing: < * Movements very close to the center of the polar axis take more time than others. < * This brief delay results in more material deposition due to the pressure in the nozzle. < * < * Current Kinematics and feedrate scaling deals with this by making the movement as fast < * as possible. It works for slow movements but doesn't work well with fast ones. A more < * complicated extrusion compensation must be implemented. < * < * Ideally, it should estimate that a long rotation near the center is ahead and will cause < * unwanted deposition. Therefore it can compensate the extrusion beforehand. < * < * Laser cutting: < * Same thing would be a problem for laser engraving too. As it spends time rotating at the < * center point, more likely it will burn more material than it should. Therefore similar < * compensation would be implemented for laser-cutting operations. < * < * Milling: < * This shouldn't be a problem for cutting/milling operations. < */ < //#define POLAR < #if ENABLED(POLAR) < #define DEFAULT_SEGMENTS_PER_SECOND 180 // If movement is choppy try lowering this value < #define PRINTABLE_RADIUS 82.0f // (mm) Maximum travel of X axis < < // Movements fall inside POLAR_FAST_RADIUS are assigned the highest possible feedrate < // to compensate unwanted deposition related to the near-origin motion problem. < #define POLAR_FAST_RADIUS 3.0f // (mm) < < // Radius which is unreachable by the tool. < // Needed if the tool is not perfectly aligned to the center of the polar axis. < #define POLAR_CENTER_OFFSET 0.0f // (mm) < < #define FEEDRATE_SCALING // Convert XY feedrate from mm/s to degrees/s on the fly < #endif < < // @section machine < < // Articulated robot (arm). Joints are directly mapped to axes with no kinematics. < //#define ARTICULATED_ROBOT_ARM < < // For a hot wire cutter with parallel horizontal axes (X, I) where the heights of the two wire < // ends are controlled by parallel axes (Y, J). Joints are directly mapped to axes (no kinematics). < //#define FOAMCUTTER_XYUV < 1086c875 < // @section endstops --- > // @section homing 1183c972 < //#define ENDSTOP_INTERRUPTS_FEATURE --- > #define ENDSTOP_INTERRUPTS_FEATURE 1227c1016 < #define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 500 } --- > #define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 93 } 1234c1023 < #define DEFAULT_MAX_FEEDRATE { 300, 300, 5, 25 } --- > #define DEFAULT_MAX_FEEDRATE { 500, 500, 5, 25 } 1247c1036 < #define DEFAULT_MAX_ACCELERATION { 3000, 3000, 100, 10000 } --- > #define DEFAULT_MAX_ACCELERATION { 500, 500, 100, 1000 } 1261,1262d1049 < * M204 I Angular Acceleration < * M204 J Angular Travel Acceleration 1264,1270c1051,1053 < #define DEFAULT_ACCELERATION 3000 // X, Y, Z ... and E acceleration for printing moves < #define DEFAULT_RETRACT_ACCELERATION 3000 // E acceleration for retracts < #define DEFAULT_TRAVEL_ACCELERATION 3000 // X, Y, Z ... acceleration for travel (non printing) moves < #if ENABLED(AXIS4_ROTATES) < #define DEFAULT_ANGULAR_ACCELERATION 3000 // I, J, K acceleration for rotational-only printing moves < #define DEFAULT_ANGULAR_TRAVEL_ACCELERATION 3000 // I, J, K acceleration for rotational-only travel (non printing) moves < #endif --- > #define DEFAULT_ACCELERATION 500 // X, Y, Z and E acceleration for printing moves > #define DEFAULT_RETRACT_ACCELERATION 500 // E acceleration for retracts > #define DEFAULT_TRAVEL_ACCELERATION 1000 // X, Y, Z acceleration for travel (non printing) moves 1280c1063 < //#define CLASSIC_JERK --- > #define CLASSIC_JERK 1323c1106 < //#define S_CURVE_ACCELERATION --- > #define S_CURVE_ACCELERATION 1440,1460d1222 < /** < * Magnetically Mounted Probe < * For probes such as Euclid, Klicky, Klackender, etc. < */ < //#define MAG_MOUNTED_PROBE < #if ENABLED(MAG_MOUNTED_PROBE) < #define PROBE_DEPLOY_FEEDRATE (133*60) // (mm/min) Probe deploy speed < #define PROBE_STOW_FEEDRATE (133*60) // (mm/min) Probe stow speed < < #define MAG_MOUNTED_DEPLOY_1 { PROBE_DEPLOY_FEEDRATE, { 245, 114, 30 } } // Move to side Dock & Attach probe < #define MAG_MOUNTED_DEPLOY_2 { PROBE_DEPLOY_FEEDRATE, { 210, 114, 30 } } // Move probe off dock < #define MAG_MOUNTED_DEPLOY_3 { PROBE_DEPLOY_FEEDRATE, { 0, 0, 0 } } // Extra move if needed < #define MAG_MOUNTED_DEPLOY_4 { PROBE_DEPLOY_FEEDRATE, { 0, 0, 0 } } // Extra move if needed < #define MAG_MOUNTED_DEPLOY_5 { PROBE_DEPLOY_FEEDRATE, { 0, 0, 0 } } // Extra move if needed < #define MAG_MOUNTED_STOW_1 { PROBE_STOW_FEEDRATE, { 245, 114, 20 } } // Move to dock < #define MAG_MOUNTED_STOW_2 { PROBE_STOW_FEEDRATE, { 245, 114, 0 } } // Place probe beside remover < #define MAG_MOUNTED_STOW_3 { PROBE_STOW_FEEDRATE, { 230, 114, 0 } } // Side move to remove probe < #define MAG_MOUNTED_STOW_4 { PROBE_STOW_FEEDRATE, { 210, 114, 20 } } // Side move to remove probe < #define MAG_MOUNTED_STOW_5 { PROBE_STOW_FEEDRATE, { 0, 0, 0 } } // Extra move if needed < #endif < 1476,1483c1238,1240 < /** < * Allen key retractable z-probe as seen on many Kossel delta printers - https://reprap.org/wiki/Kossel#Automatic_bed_leveling_probe < * Deploys by touching z-axis belt. Retracts by pushing the probe down. < */ < //#define Z_PROBE_ALLEN_KEY < #if ENABLED(Z_PROBE_ALLEN_KEY) < // 2 or 3 sets of coordinates for deploying and retracting the spring loaded touch probe on G29, < // if servo actuated touch probe is not defined. Uncomment as appropriate for your printer/probe. --- > // > // For Z_PROBE_ALLEN_KEY see the Delta example configurations. > // 1485,1507d1241 < #define Z_PROBE_ALLEN_KEY_DEPLOY_1 { 30.0, PRINTABLE_RADIUS, 100.0 } < #define Z_PROBE_ALLEN_KEY_DEPLOY_1_FEEDRATE XY_PROBE_FEEDRATE < < #define Z_PROBE_ALLEN_KEY_DEPLOY_2 { 0.0, PRINTABLE_RADIUS, 100.0 } < #define Z_PROBE_ALLEN_KEY_DEPLOY_2_FEEDRATE (XY_PROBE_FEEDRATE)/10 < < #define Z_PROBE_ALLEN_KEY_DEPLOY_3 { 0.0, (PRINTABLE_RADIUS) * 0.75, 100.0 } < #define Z_PROBE_ALLEN_KEY_DEPLOY_3_FEEDRATE XY_PROBE_FEEDRATE < < #define Z_PROBE_ALLEN_KEY_STOW_1 { -64.0, 56.0, 23.0 } // Move the probe into position < #define Z_PROBE_ALLEN_KEY_STOW_1_FEEDRATE XY_PROBE_FEEDRATE < < #define Z_PROBE_ALLEN_KEY_STOW_2 { -64.0, 56.0, 3.0 } // Push it down < #define Z_PROBE_ALLEN_KEY_STOW_2_FEEDRATE (XY_PROBE_FEEDRATE)/10 < < #define Z_PROBE_ALLEN_KEY_STOW_3 { -64.0, 56.0, 50.0 } // Move it up to clear < #define Z_PROBE_ALLEN_KEY_STOW_3_FEEDRATE XY_PROBE_FEEDRATE < < #define Z_PROBE_ALLEN_KEY_STOW_4 { 0.0, 0.0, 50.0 } < #define Z_PROBE_ALLEN_KEY_STOW_4_FEEDRATE XY_PROBE_FEEDRATE < < #endif // Z_PROBE_ALLEN_KEY < 1555c1289 < #define XY_PROBE_FEEDRATE (133*60) --- > #define XY_PROBE_FEEDRATE (50*60) 1633,1634c1367,1368 < #define Z_PROBE_OFFSET_RANGE_MIN -20 < #define Z_PROBE_OFFSET_RANGE_MAX 20 --- > #define Z_PROBE_OFFSET_RANGE_MIN -10 > #define Z_PROBE_OFFSET_RANGE_MAX 10 1702c1436 < // @section motion --- > // @section machine 1706,1707c1440,1441 < #define INVERT_Y_DIR true < #define INVERT_Z_DIR false --- > #define INVERT_Y_DIR false > #define INVERT_Z_DIR true 1756c1490 < // @section geometry --- > // @section machine 1759,1760c1493,1494 < #define X_BED_SIZE 200 < #define Y_BED_SIZE 200 --- > #define X_BED_SIZE 235 > #define Y_BED_SIZE 235 1768c1502 < #define Z_MAX_POS 200 --- > #define Z_MAX_POS 250 1960,1968d1693 < * Bed Distance Sensor < * < * Measures the distance from bed to nozzle with accuracy of 0.01mm. < * For information about this sensor https://github.com/markniu/Bed_Distance_sensor < * Uses I2C port, so it requires I2C library markyue/Panda_SoftMasterI2C. < */ < //#define BD_SENSOR < < /** 1981,1985c1706,1708 < /** < * Gradually reduce leveling correction until a set height is reached, < * at which point movement will be level to the machine's XY plane. < * The height can be set with M420 Z < */ --- > // Gradually reduce leveling correction until a set height is reached, > // at which point movement will be level to the machine's XY plane. > // The height can be set with M420 Z 1991,2001c1714,1716 < /** < * Add Z offset (M424 Z) that applies to all moves at the planner level. < * This Z offset will be automatically set to the middle value with G29. < */ < //#define GLOBAL_MESH_Z_OFFSET < < /** < * For Cartesian machines, instead of dividing moves on mesh boundaries, < * split up moves into short segments like a Delta. This follows the < * contours of the bed more closely than edge-to-edge straight moves. < */ --- > // For Cartesian machines, instead of dividing moves on mesh boundaries, > // split up moves into short segments like a Delta. This follows the > // contours of the bed more closely than edge-to-edge straight moves. 2034c1749 < //#define EXTRAPOLATE_BEYOND_GRID --- > #define EXTRAPOLATE_BEYOND_GRID 2037c1752 < // Subdivision of the grid by Catmull-Rom method. --- > // Experimental Subdivision of the grid by Catmull-Rom method. 2070,2088d1784 < /** < * Probing not allowed within the position of an obstacle. < */ < //#define AVOID_OBSTACLES < #if ENABLED(AVOID_OBSTACLES) < #define CLIP_W 23 // Bed clip width, should be padded a few mm over its physical size < #define CLIP_H 14 // Bed clip height, should be padded a few mm over its physical size < < // Obstacle Rectangles defined as { X1, Y1, X2, Y2 } < #define OBSTACLE1 { (X_BED_SIZE) / 4 - (CLIP_W) / 2, 0, (X_BED_SIZE) / 4 + (CLIP_W) / 2, CLIP_H } < #define OBSTACLE2 { (X_BED_SIZE) * 3 / 4 - (CLIP_W) / 2, 0, (X_BED_SIZE) * 3 / 4 + (CLIP_W) / 2, CLIP_H } < #define OBSTACLE3 { (X_BED_SIZE) / 4 - (CLIP_W) / 2, ((Y_BED_SIZE) - (CLIP_H)), (X_BED_SIZE) / 4 + (CLIP_W) / 2, Y_BED_SIZE } < #define OBSTACLE4 { (X_BED_SIZE) * 3 / 4 - (CLIP_W) / 2, ((Y_BED_SIZE) - (CLIP_H)), (X_BED_SIZE) * 3 / 4 + (CLIP_W) / 2, Y_BED_SIZE } < < // The probed grid must be inset for G29 J. This is okay, since it is < // only used to compute a linear transformation for the mesh itself. < #define G29J_MESH_TILT_MARGIN ((CLIP_H) + 1) < #endif < 2183,2184c1879,1880 < #define Z_SAFE_HOMING_X_POINT X_CENTER // X point for Z homing < #define Z_SAFE_HOMING_Y_POINT Y_CENTER // Y point for Z homing --- > #define Z_SAFE_HOMING_X_POINT ((X_BED_SIZE - 10) / 2) // X point for Z homing > #define Z_SAFE_HOMING_Y_POINT ((Y_BED_SIZE - 10) / 2) // Y point for Z homing 2231,2232c1927,1929 < // Or, set the XY skew factor directly: < //#define XY_SKEW_FACTOR 0.0 --- > // Or, set the default skew factors directly here > // to override the above measurements: > #define XY_SKEW_FACTOR 0.0 2241,2244c1938,1939 < < // Or, set the Z skew factors directly: < //#define XZ_SKEW_FACTOR 0.0 < //#define YZ_SKEW_FACTOR 0.0 --- > #define XZ_SKEW_FACTOR 0.0 > #define YZ_SKEW_FACTOR 0.0 2255c1950 < // @section eeprom --- > // @section extras 2266c1961 < //#define EEPROM_SETTINGS // Persistent storage with M500 and M501 --- > #define EEPROM_SETTINGS // Persistent storage with M500 and M501 2268c1963 < #define EEPROM_CHITCHAT // Give feedback on EEPROM commands. Disable to save PROGMEM. --- > //#define EEPROM_CHITCHAT // Give feedback on EEPROM commands. Disable to save PROGMEM. 2271c1966 < //#define EEPROM_AUTO_INIT // Init EEPROM automatically on any errors. --- > #define EEPROM_AUTO_INIT // Init EEPROM automatically on any errors. 2275,2276d1969 < // @section host < 2287,2288d1979 < // @section units < 2302c1993 < // Preheat Constants - Up to 10 are supported without changes --- > // Preheat Constants - Up to 6 are supported without changes 2305,2306c1996,1997 < #define PREHEAT_1_TEMP_HOTEND 180 < #define PREHEAT_1_TEMP_BED 70 --- > #define PREHEAT_1_TEMP_HOTEND 185 > #define PREHEAT_1_TEMP_BED 45 2308c1999 < #define PREHEAT_1_FAN_SPEED 0 // Value from 0 to 255 --- > #define PREHEAT_1_FAN_SPEED 255 // Value from 0 to 255 2312c2003 < #define PREHEAT_2_TEMP_BED 110 --- > #define PREHEAT_2_TEMP_BED 70 2314c2005 < #define PREHEAT_2_FAN_SPEED 0 // Value from 0 to 255 --- > #define PREHEAT_2_FAN_SPEED 255 // Value from 0 to 255 2316,2317d2006 < // @section motion < 2341c2030 < * Clean Nozzle Feature --- > * Clean Nozzle Feature -- EXPERIMENTAL 2374a2064 > * Attention: EXPERIMENTAL. G-code arguments may change. 2415,2416d2104 < // @section host < 2443,2444d2130 < // @section stats < 2459c2145 < #define PRINTCOUNTER_SAVE_INTERVAL 60 // (minutes) EEPROM save interval during print. A value of 0 will save stats at end of print. --- > #define PRINTCOUNTER_SAVE_INTERVAL 60 // (minutes) EEPROM save interval during print 2462,2463d2147 < // @section security < 2499c2183 < // @section interface --- > // @section lcd 2550c2234 < //#define SDSUPPORT --- > #define SDSUPPORT 2574c2258 < //#define ENCODER_PULSES_PER_STEP 4 --- > #define ENCODER_PULSES_PER_STEP 4 2580c2264 < //#define ENCODER_STEPS_PER_MENU_ITEM 1 --- > #define ENCODER_STEPS_PER_MENU_ITEM 1 2616,2625d2299 < // Encoder EMI Noise Filter < // < // This option increases encoder samples to filter out phantom encoder clicks caused by EMI noise. < // < //#define ENCODER_NOISE_FILTER < #if ENABLED(ENCODER_NOISE_FILTER) < #define ENCODER_SAMPLES 10 < #endif < < // 2630c2304 < //#define INDIVIDUAL_AXIS_HOMING_MENU --- > #define INDIVIDUAL_AXIS_HOMING_MENU 2648,2649c2322,2323 < //#define LCD_FEEDBACK_FREQUENCY_DURATION_MS 2 < //#define LCD_FEEDBACK_FREQUENCY_HZ 5000 --- > #define LCD_FEEDBACK_FREQUENCY_DURATION_MS 2 > #define LCD_FEEDBACK_FREQUENCY_HZ 5000 2655d2328 < // @section lcd 2830c2503 < // https://reprapworld.com/electronics/3d-printer-modules/autonomous-printing/graphical-lcd-screen-v1-0/ --- > // https://reprapworld.com/?products_details&products_id/1218 2928c2601,2604 < //#define CR10_STOCKDISPLAY --- > #define CR10_STOCKDISPLAY > #if ENABLED(CR10_STOCKDISPLAY) > #define RET6_12864_LCD // Specific to the SoC (can either be RET / VET) > #endif 2957,2962d2632 < // < // eMotion Tech LCD with SD < // https://www.reprap-france.com/produit/1234568748-ecran-graphique-128-x-64-points-2-1 < // < //#define EMOTION_TECH_LCD < 3027a2698,2700 > * ORIGIN : https://www.aliexpress.com/item/32993409517.html > * FYSETC : https://www.aliexpress.com/item/32961471929.html > * MKS : https://www.aliexpress.com/item/1005002008179262.html 3028a2702,2707 > * Flash display with DGUS Displays for Marlin: > * - Format the SD card to FAT32 with an allocation size of 4kb. > * - Download files as specified for your type of display. > * - Plug the microSD card into the back of the display. > * - Boot the display and wait for the update to complete. > * 3032d2710 < * - Product: https://www.aliexpress.com/item/32993409517.html 3037d2714 < * - Product: https://www.aliexpress.com/item/32961471929.html 3046d2722 < * - Product: https://www.aliexpress.com/item/1005002008179262.html 3051,3063d2726 < * < * IA_CREALITY (T5UID1) < * - Download https://github.com/InsanityAutomation/Marlin/raw/CrealityDwin2.0_Bleeding/TM3D_Combined480272_Landscape_V7.7z < * - Copy the downloaded DWIN_SET folder to the SD card. < * < * CREALITY_TOUCH < * - CR-6 OEM touch screen. A DWIN display with touch. < * < * Flash display with DGUS Displays for Marlin: < * - Format the SD card to FAT32 with an allocation size of 4kb. < * - Download files as specified for your type of display. < * - Plug the microSD card into the back of the display. < * - Boot the display and wait for the update to complete. 3065,3066c2728,2733 < //#define DGUS_LCD_UI ORIGIN < #if DGUS_UI_IS(MKS) --- > //#define DGUS_LCD_UI_ORIGIN > //#define DGUS_LCD_UI_FYSETC > //#define DGUS_LCD_UI_HIPRECY > //#define DGUS_LCD_UI_MKS > //#define DGUS_LCD_UI_RELOADED > #if ENABLED(DGUS_LCD_UI_MKS) 3071,3075d2737 < // CR-6 OEM touch screen. A DWIN display with touch. < // < //#define DWIN_CREALITY_TOUCHLCD < < // 3093d2754 < //#define ANYCUBIC_LCD_GCODE_EXT // Add ".gcode" to menu entries for DGUS clone compatibility 3102,3107d2762 < // PanelDue touch controller by Escher3D < // http://escher3d.com/pages/order/products/product2.php < // < //#define PANELDUE < < // 3168c2823 < // 480x320, 3.5", FSMC Stock Display from Tronxy --- > // 480x320, 3.5", FSMC Stock Display from TronxXY 3235,3247d2889 < #if ENABLED(TFT_COLOR_UI) < /** < * TFT Font for Color_UI. Choose one of the following: < * < * NOTOSANS - Default font with antialiasing. Supports Latin Extended and non-Latin characters. < * UNIFONT - Lightweight font, no antialiasing. Supports Latin Extended and non-Latin characters. < * HELVETICA - Lightweight font, no antialiasing. Supports Basic Latin (0x0020-0x007F) and Latin-1 Supplement (0x0080-0x00FF) characters only. < */ < #define TFT_FONT NOTOSANS < < //#define TFT_SHARED_SPI // SPI is shared between TFT display and other devices. Disable async data transfer < #endif < 3280,3281c2922,2923 < #define BUTTON_DELAY_EDIT 50 // (ms) Button repeat delay for edit screens < #define BUTTON_DELAY_MENU 250 // (ms) Button repeat delay for menus --- > #define BUTTON_DELAY_EDIT 50 // (ms) Button repeat delay for edit screens > #define BUTTON_DELAY_MENU 250 // (ms) Button repeat delay for menus 3283,3284c2925 < //#define DISABLE_ENCODER // Disable the click encoder, if any < //#define TOUCH_IDLE_SLEEP_MINS 5 // (minutes) Display Sleep after a period of inactivity. Set with M255 S. --- > //#define TOUCH_IDLE_SLEEP 300 // (s) Turn off the TFT backlight if set (5mn) 3319c2960 < // @section fans --- > // @section extras 3328c2969 < //#define FAN_SOFT_PWM --- > #define FAN_SOFT_PWM 3343,3349d2983 < // @section extras < < // Support for the BariCUDA Paste Extruder < //#define BARICUDA < < // @section lights < 3354a2989,2991 > // Support for the BariCUDA Paste Extruder > //#define BARICUDA > 3375c3012 < * === CAUTION === --- > * *** CAUTION *** 3379d3015 < * 3381a3018 > * *** CAUTION *** 3383,3384c3020 < * Requires PWM frequency between 50 <> 100Hz (Check HAL or variant) < * Use FAST_PWM_FAN, if possible, to reduce fan noise. --- > * LED Type. Enable only one of the following two options. 3386,3387d3021 < < // LED Type. Enable only one of the following two options: 3398,3404d3031 < #if ANY(RGB_LED, RGBW_LED, PCA9632) < //#define RGB_STARTUP_TEST // For PWM pins, fade between all colors < #if ENABLED(RGB_STARTUP_TEST) < #define RGB_STARTUP_TEST_INNER_MS 10 // (ms) Reduce or increase fading speed < #endif < #endif < 3424d3050 < #define NEOPIXEL_M150_DEFAULT -1 // Default strip for M150 without 'S'. Use -1 to set all by default. 3451,3452d3076 < // @section servos < 3474a3099 >

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • Bed_Distance_sensor

    Auto bed level with High resolution distance sensor

  • 23,24d22 < #error "Don't build with import-2.1.x configurations!" < #error "Use the 'bugfix...' or 'release...' configurations matching your Marlin version." 25a24,25 > #define CONFIG_EXAMPLES_DIR "Creality/Ender-3 Pro/CrealityV422" > 40c40 < #define CONFIGURATION_H_VERSION 02010300 --- > #define CONFIGURATION_H_VERSION 02010000 61a62,70 > //=========================================================================== > //========================== DELTA / SCARA / TPARA ========================== > //=========================================================================== > // > // Download configurations from the link above and customize for your machine. > // Examples are located in config/examples/delta, .../SCARA, and .../TPARA. > // > //=========================================================================== > 65c74 < #define STRING_CONFIG_H_AUTHOR "(none, default config)" // Who made the changes. --- > #define STRING_CONFIG_H_AUTHOR "(Hidasi Máté)" // Who made the changes. 83c92 < //#define SHOW_CUSTOM_BOOTSCREEN --- > #define SHOW_CUSTOM_BOOTSCREEN 86c95 < //#define CUSTOM_STATUS_SCREEN_IMAGE --- > #define CUSTOM_STATUS_SCREEN_IMAGE 92c101 < #define MOTHERBOARD BOARD_RAMPS_14_EFB --- > #define MOTHERBOARD BOARD_CREALITY_V4 103c112 < #define SERIAL_PORT 0 --- > #define SERIAL_PORT 1 116,117c125 < #define BAUDRATE 250000 < --- > #define BAUDRATE 115200 125,126c133,134 < //#define SERIAL_PORT_2 -1 < //#define BAUDRATE_2 250000 // :[2400, 9600, 19200, 38400, 57600, 115200, 250000, 500000, 1000000] Enable to override BAUDRATE --- > #define SERIAL_PORT_2 3 > //#define BAUDRATE_2 250000 // Enable to override BAUDRATE 134c142 < //#define BAUDRATE_3 250000 // :[2400, 9600, 19200, 38400, 57600, 115200, 250000, 500000, 1000000] Enable to override BAUDRATE --- > //#define BAUDRATE_3 250000 // Enable to override BAUDRATE 140c148 < //#define CUSTOM_MACHINE_NAME "3D Printer" --- > #define CUSTOM_MACHINE_NAME "Máté's Ender 3 Pro" 146,147d153 < // @section stepper drivers < 156c162,163 < * Options: A4988, A5984, DRV8825, LV8729, TB6560, TB6600, TMC2100, --- > * Options: A4988, A5984, DRV8825, LV8729, L6470, L6474, POWERSTEP01, > * TB6560, TB6600, TMC2100, 161c168 < * :['A4988', 'A5984', 'DRV8825', 'LV8729', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2160', 'TMC2160_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC2209', 'TMC2209_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE', 'TMC5160', 'TMC5160_STANDALONE'] --- > * :['A4988', 'A5984', 'DRV8825', 'LV8729', 'L6470', 'L6474', 'POWERSTEP01', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2160', 'TMC2160_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC2209', 'TMC2209_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE', 'TMC5160', 'TMC5160_STANDALONE'] 163,165c170,172 < #define X_DRIVER_TYPE A4988 < #define Y_DRIVER_TYPE A4988 < #define Z_DRIVER_TYPE A4988 --- > #define X_DRIVER_TYPE A4988 > #define Y_DRIVER_TYPE A4988 > #define Z_DRIVER_TYPE A4988 247,248d253 < // @section multi-material < 261d265 < * :["PRUSA_MMU1", "PRUSA_MMU2", "PRUSA_MMU2S", "EXTENDABLE_EMU_MMU2", "EXTENDABLE_EMU_MMU2S"] 281d284 < #define SWITCHING_NOZZLE_SERVO_DWELL 2500 // Dwell time to wait for servo to make physical move 398c401 < // @section psu control --- > // @section machine 501c504 < * 66 : 4.7MΩ Dyze Design / Trianglelab T-D500 500°C High Temperature Thermistor --- > * 66 : 4.7MΩ Dyze Design High Temperature Thermistor 523d525 < * 1022 : Pt1000 with 2.2kΩ pullup 549c551 < #define TEMP_SENSOR_BED 0 --- > #define TEMP_SENSOR_BED 1 561,572c563,566 < #if TEMP_SENSOR_IS_MAX_TC(0) < #define MAX31865_SENSOR_OHMS_0 100 // (Ω) Typically 100 or 1000 (PT100 or PT1000) < #define MAX31865_CALIBRATION_OHMS_0 430 // (Ω) Typically 430 for Adafruit PT100; 4300 for Adafruit PT1000 < #endif < #if TEMP_SENSOR_IS_MAX_TC(1) < #define MAX31865_SENSOR_OHMS_1 100 < #define MAX31865_CALIBRATION_OHMS_1 430 < #endif < #if TEMP_SENSOR_IS_MAX_TC(2) < #define MAX31865_SENSOR_OHMS_2 100 < #define MAX31865_CALIBRATION_OHMS_2 430 < #endif --- > //#define MAX31865_SENSOR_OHMS_0 100 // (Ω) Typically 100 or 1000 (PT100 or PT1000) > //#define MAX31865_CALIBRATION_OHMS_0 430 // (Ω) Typically 430 for Adafruit PT100; 4300 for Adafruit PT1000 > //#define MAX31865_SENSOR_OHMS_1 100 > //#define MAX31865_CALIBRATION_OHMS_1 430 574,578c568,570 < #if HAS_E_TEMP_SENSOR < #define TEMP_RESIDENCY_TIME 10 // (seconds) Time to wait for hotend to "settle" in M109 < #define TEMP_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer < #define TEMP_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target < #endif --- > #define TEMP_RESIDENCY_TIME 10 // (seconds) Time to wait for hotend to "settle" in M109 > #define TEMP_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer > #define TEMP_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target 580,584c572,574 < #if TEMP_SENSOR_BED < #define TEMP_BED_RESIDENCY_TIME 10 // (seconds) Time to wait for bed to "settle" in M190 < #define TEMP_BED_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer < #define TEMP_BED_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target < #endif --- > #define TEMP_BED_RESIDENCY_TIME 10 // (seconds) Time to wait for bed to "settle" in M190 > #define TEMP_BED_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer > #define TEMP_BED_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target 586,590c576,578 < #if TEMP_SENSOR_CHAMBER < #define TEMP_CHAMBER_RESIDENCY_TIME 10 // (seconds) Time to wait for chamber to "settle" in M191 < #define TEMP_CHAMBER_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer < #define TEMP_CHAMBER_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target < #endif --- > #define TEMP_CHAMBER_RESIDENCY_TIME 10 // (seconds) Time to wait for chamber to "settle" in M191 > #define TEMP_CHAMBER_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer > #define TEMP_CHAMBER_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target 610c598 < #define HEATER_0_MINTEMP 5 --- > #define HEATER_0_MINTEMP 0 618c606 < #define BED_MINTEMP 5 --- > #define BED_MINTEMP 0 632c620 < #define BED_MAXTEMP 150 --- > #define BED_MAXTEMP 120 649,650d636 < // @section hotend temp < 661,662c647 < //#define PID_DEBUG // Print PID debug data to the serial port. Use 'M303 D' to toggle activation. < //#define PID_PARAMS_PER_HOTEND // Use separate PID parameters for each extruder (useful for mismatched extruders) --- > //#define PID_PARAMS_PER_HOTEND // Uses separate PID parameters for each extruder (useful for mismatched extruders) 664a650 > // Ender 3 v2 668,670c654,656 < #define DEFAULT_Kp_LIST { 22.20, 22.20 } < #define DEFAULT_Ki_LIST { 1.08, 1.08 } < #define DEFAULT_Kd_LIST { 114.00, 114.00 } --- > #define DEFAULT_Kp_LIST { 28.72, 28.72 } > #define DEFAULT_Ki_LIST { 2.62, 2.62 } > #define DEFAULT_Kd_LIST { 78.81, 78.81 } 672,674c658,660 < #define DEFAULT_Kp 22.20 < #define DEFAULT_Ki 1.08 < #define DEFAULT_Kd 114.00 --- > #define DEFAULT_Kp 28.72 > #define DEFAULT_Ki 2.62 > #define DEFAULT_Kd 78.81 683,684c669 < * for PID_EXTRUSION_SCALING and PID_FAN_SCALING. Use M306 T to autotune the model. < * @section mpctemp --- > * for PID_EXTRUSION_SCALING and PID_FAN_SCALING. Use M306 to autotune the model. 737d721 < * @section bed temp 739c723 < //#define PIDTEMPBED --- > #define PIDTEMPBED 753c737 < //#define PID_BED_DEBUG // Print Bed PID debug data to the serial port. --- > //#define PID_BED_DEBUG // Sends debug data to the serial port. 757,759c741,743 < #define DEFAULT_bedKp 10.00 < #define DEFAULT_bedKi .023 < #define DEFAULT_bedKd 305.4 --- > #define DEFAULT_bedKp 462.10 > #define DEFAULT_bedKi 85.47 > #define DEFAULT_bedKd 624.59 781d764 < * @section chamber temp 796c779 < //#define PID_CHAMBER_DEBUG // Print Chamber PID debug data to the serial port. --- > //#define PID_CHAMBER_DEBUG // Sends debug data to the serial port. 809a793 > //#define PID_DEBUG // Sends debug data to the serial port. Use 'M303 D' to toggle activation. 819c803 < // @section safety --- > // @section extruder 829c813 < #define EXTRUDE_MINTEMP 170 --- > #define EXTRUDE_MINTEMP 180 836c820 < #define EXTRUDE_MAXLENGTH 200 --- > #define EXTRUDE_MAXLENGTH 1000 857c841 < #define THERMAL_PROTECTION_CHAMBER // Enable thermal protection for the heated chamber --- > //#define THERMAL_PROTECTION_CHAMBER // Enable thermal protection for the heated chamber 883,885c867,868 < #define POLARGRAPH_MAX_BELT_LEN 1035.0 // (mm) Belt length at full extension. Override with M665 H. < #define DEFAULT_SEGMENTS_PER_SECOND 5 // Move segmentation based on duration < #define PEN_UP_DOWN_MENU // Add "Pen Up" and "Pen Down" to the MarlinUI menu --- > #define POLARGRAPH_MAX_BELT_LEN 1035.0 > #define POLAR_SEGMENTS_PER_SECOND 5 888,1081d870 < // @section delta < < // Enable for DELTA kinematics and configure below < //#define DELTA < #if ENABLED(DELTA) < < // Make delta curves from many straight lines (linear interpolation). < // This is a trade-off between visible corners (not enough segments) < // and processor overload (too many expensive sqrt calls). < #define DEFAULT_SEGMENTS_PER_SECOND 200 < < // After homing move down to a height where XY movement is unconstrained < //#define DELTA_HOME_TO_SAFE_ZONE < < // Delta calibration menu < // Add three-point calibration to the MarlinUI menu. < // See http://minow.blogspot.com/index.html#4918805519571907051 < //#define DELTA_CALIBRATION_MENU < < // G33 Delta Auto-Calibration. Enable EEPROM_SETTINGS to store results. < //#define DELTA_AUTO_CALIBRATION < < #if ENABLED(DELTA_AUTO_CALIBRATION) < // Default number of probe points : n*n (1 -> 7) < #define DELTA_CALIBRATION_DEFAULT_POINTS 4 < #endif < < #if EITHER(DELTA_AUTO_CALIBRATION, DELTA_CALIBRATION_MENU) < // Step size for paper-test probing < #define PROBE_MANUALLY_STEP 0.05 // (mm) < #endif < < // Print surface diameter/2 minus unreachable space (avoid collisions with vertical towers). < #define PRINTABLE_RADIUS 140.0 // (mm) < < // Maximum reachable area < #define DELTA_MAX_RADIUS 140.0 // (mm) < < // Center-to-center distance of the holes in the diagonal push rods. < #define DELTA_DIAGONAL_ROD 250.0 // (mm) < < // Distance between bed and nozzle Z home position < #define DELTA_HEIGHT 250.00 // (mm) Get this value from G33 auto calibrate < < #define DELTA_ENDSTOP_ADJ { 0.0, 0.0, 0.0 } // Get these values from G33 auto calibrate < < // Horizontal distance bridged by diagonal push rods when effector is centered. < #define DELTA_RADIUS 124.0 // (mm) Get this value from G33 auto calibrate < < // Trim adjustments for individual towers < // tower angle corrections for X and Y tower / rotate XYZ so Z tower angle = 0 < // measured in degrees anticlockwise looking from above the printer < #define DELTA_TOWER_ANGLE_TRIM { 0.0, 0.0, 0.0 } // Get these values from G33 auto calibrate < < // Delta radius and diagonal rod adjustments (mm) < //#define DELTA_RADIUS_TRIM_TOWER { 0.0, 0.0, 0.0 } < //#define DELTA_DIAGONAL_ROD_TRIM_TOWER { 0.0, 0.0, 0.0 } < #endif < < // @section scara < < /** < * MORGAN_SCARA was developed by QHARLEY in South Africa in 2012-2013. < * Implemented and slightly reworked by JCERNY in June, 2014. < * < * Mostly Printed SCARA is an open source design by Tyler Williams. See: < * https://www.thingiverse.com/thing:2487048 < * https://www.thingiverse.com/thing:1241491 < */ < //#define MORGAN_SCARA < //#define MP_SCARA < #if EITHER(MORGAN_SCARA, MP_SCARA) < // If movement is choppy try lowering this value < #define DEFAULT_SEGMENTS_PER_SECOND 200 < < // Length of inner and outer support arms. Measure arm lengths precisely. < #define SCARA_LINKAGE_1 150 // (mm) < #define SCARA_LINKAGE_2 150 // (mm) < < // SCARA tower offset (position of Tower relative to bed zero position) < // This needs to be reasonably accurate as it defines the printbed position in the SCARA space. < #define SCARA_OFFSET_X 100 // (mm) < #define SCARA_OFFSET_Y -56 // (mm) < < #if ENABLED(MORGAN_SCARA) < < //#define DEBUG_SCARA_KINEMATICS < #define FEEDRATE_SCALING // Convert XY feedrate from mm/s to degrees/s on the fly < < // Radius around the center where the arm cannot reach < #define MIDDLE_DEAD_ZONE_R 0 // (mm) < < #define THETA_HOMING_OFFSET 0 // Calculated from Calibration Guide and M360 / M114. See http://reprap.harleystudio.co.za/?page_id=1073 < #define PSI_HOMING_OFFSET 0 // Calculated from Calibration Guide and M364 / M114. See http://reprap.harleystudio.co.za/?page_id=1073 < < #elif ENABLED(MP_SCARA) < < #define SCARA_OFFSET_THETA1 12 // degrees < #define SCARA_OFFSET_THETA2 131 // degrees < < #endif < < #endif < < // @section tpara < < // Enable for TPARA kinematics and configure below < //#define AXEL_TPARA < #if ENABLED(AXEL_TPARA) < #define DEBUG_TPARA_KINEMATICS < #define DEFAULT_SEGMENTS_PER_SECOND 200 < < // Length of inner and outer support arms. Measure arm lengths precisely. < #define TPARA_LINKAGE_1 120 // (mm) < #define TPARA_LINKAGE_2 120 // (mm) < < // SCARA tower offset (position of Tower relative to bed zero position) < // This needs to be reasonably accurate as it defines the printbed position in the SCARA space. < #define TPARA_OFFSET_X 0 // (mm) < #define TPARA_OFFSET_Y 0 // (mm) < #define TPARA_OFFSET_Z 0 // (mm) < < #define FEEDRATE_SCALING // Convert XY feedrate from mm/s to degrees/s on the fly < < // Radius around the center where the arm cannot reach < #define MIDDLE_DEAD_ZONE_R 0 // (mm) < < // Calculated from Calibration Guide and M360 / M114. See http://reprap.harleystudio.co.za/?page_id=1073 < #define THETA_HOMING_OFFSET 0 < #define PSI_HOMING_OFFSET 0 < #endif < < // @section polar < < /** < * POLAR Kinematics < * developed by Kadir ilkimen for PolarBear CNC and babyBear < * https://github.com/kadirilkimen/Polar-Bear-Cnc-Machine < * https://github.com/kadirilkimen/babyBear-3D-printer < * < * A polar machine can have different configurations. < * This kinematics is only compatible with the following configuration: < * X : Independent linear < * Y or B : Polar < * Z : Independent linear < * < * For example, PolarBear has CoreXZ plus Polar Y or B. < * < * Motion problem for Polar axis near center / origin: < * < * 3D printing: < * Movements very close to the center of the polar axis take more time than others. < * This brief delay results in more material deposition due to the pressure in the nozzle. < * < * Current Kinematics and feedrate scaling deals with this by making the movement as fast < * as possible. It works for slow movements but doesn't work well with fast ones. A more < * complicated extrusion compensation must be implemented. < * < * Ideally, it should estimate that a long rotation near the center is ahead and will cause < * unwanted deposition. Therefore it can compensate the extrusion beforehand. < * < * Laser cutting: < * Same thing would be a problem for laser engraving too. As it spends time rotating at the < * center point, more likely it will burn more material than it should. Therefore similar < * compensation would be implemented for laser-cutting operations. < * < * Milling: < * This shouldn't be a problem for cutting/milling operations. < */ < //#define POLAR < #if ENABLED(POLAR) < #define DEFAULT_SEGMENTS_PER_SECOND 180 // If movement is choppy try lowering this value < #define PRINTABLE_RADIUS 82.0f // (mm) Maximum travel of X axis < < // Movements fall inside POLAR_FAST_RADIUS are assigned the highest possible feedrate < // to compensate unwanted deposition related to the near-origin motion problem. < #define POLAR_FAST_RADIUS 3.0f // (mm) < < // Radius which is unreachable by the tool. < // Needed if the tool is not perfectly aligned to the center of the polar axis. < #define POLAR_CENTER_OFFSET 0.0f // (mm) < < #define FEEDRATE_SCALING // Convert XY feedrate from mm/s to degrees/s on the fly < #endif < < // @section machine < < // Articulated robot (arm). Joints are directly mapped to axes with no kinematics. < //#define ARTICULATED_ROBOT_ARM < < // For a hot wire cutter with parallel horizontal axes (X, I) where the heights of the two wire < // ends are controlled by parallel axes (Y, J). Joints are directly mapped to axes (no kinematics). < //#define FOAMCUTTER_XYUV < 1086c875 < // @section endstops --- > // @section homing 1183c972 < //#define ENDSTOP_INTERRUPTS_FEATURE --- > #define ENDSTOP_INTERRUPTS_FEATURE 1227c1016 < #define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 500 } --- > #define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 93 } 1234c1023 < #define DEFAULT_MAX_FEEDRATE { 300, 300, 5, 25 } --- > #define DEFAULT_MAX_FEEDRATE { 500, 500, 5, 25 } 1247c1036 < #define DEFAULT_MAX_ACCELERATION { 3000, 3000, 100, 10000 } --- > #define DEFAULT_MAX_ACCELERATION { 500, 500, 100, 1000 } 1261,1262d1049 < * M204 I Angular Acceleration < * M204 J Angular Travel Acceleration 1264,1270c1051,1053 < #define DEFAULT_ACCELERATION 3000 // X, Y, Z ... and E acceleration for printing moves < #define DEFAULT_RETRACT_ACCELERATION 3000 // E acceleration for retracts < #define DEFAULT_TRAVEL_ACCELERATION 3000 // X, Y, Z ... acceleration for travel (non printing) moves < #if ENABLED(AXIS4_ROTATES) < #define DEFAULT_ANGULAR_ACCELERATION 3000 // I, J, K acceleration for rotational-only printing moves < #define DEFAULT_ANGULAR_TRAVEL_ACCELERATION 3000 // I, J, K acceleration for rotational-only travel (non printing) moves < #endif --- > #define DEFAULT_ACCELERATION 500 // X, Y, Z and E acceleration for printing moves > #define DEFAULT_RETRACT_ACCELERATION 500 // E acceleration for retracts > #define DEFAULT_TRAVEL_ACCELERATION 1000 // X, Y, Z acceleration for travel (non printing) moves 1280c1063 < //#define CLASSIC_JERK --- > #define CLASSIC_JERK 1323c1106 < //#define S_CURVE_ACCELERATION --- > #define S_CURVE_ACCELERATION 1440,1460d1222 < /** < * Magnetically Mounted Probe < * For probes such as Euclid, Klicky, Klackender, etc. < */ < //#define MAG_MOUNTED_PROBE < #if ENABLED(MAG_MOUNTED_PROBE) < #define PROBE_DEPLOY_FEEDRATE (133*60) // (mm/min) Probe deploy speed < #define PROBE_STOW_FEEDRATE (133*60) // (mm/min) Probe stow speed < < #define MAG_MOUNTED_DEPLOY_1 { PROBE_DEPLOY_FEEDRATE, { 245, 114, 30 } } // Move to side Dock & Attach probe < #define MAG_MOUNTED_DEPLOY_2 { PROBE_DEPLOY_FEEDRATE, { 210, 114, 30 } } // Move probe off dock < #define MAG_MOUNTED_DEPLOY_3 { PROBE_DEPLOY_FEEDRATE, { 0, 0, 0 } } // Extra move if needed < #define MAG_MOUNTED_DEPLOY_4 { PROBE_DEPLOY_FEEDRATE, { 0, 0, 0 } } // Extra move if needed < #define MAG_MOUNTED_DEPLOY_5 { PROBE_DEPLOY_FEEDRATE, { 0, 0, 0 } } // Extra move if needed < #define MAG_MOUNTED_STOW_1 { PROBE_STOW_FEEDRATE, { 245, 114, 20 } } // Move to dock < #define MAG_MOUNTED_STOW_2 { PROBE_STOW_FEEDRATE, { 245, 114, 0 } } // Place probe beside remover < #define MAG_MOUNTED_STOW_3 { PROBE_STOW_FEEDRATE, { 230, 114, 0 } } // Side move to remove probe < #define MAG_MOUNTED_STOW_4 { PROBE_STOW_FEEDRATE, { 210, 114, 20 } } // Side move to remove probe < #define MAG_MOUNTED_STOW_5 { PROBE_STOW_FEEDRATE, { 0, 0, 0 } } // Extra move if needed < #endif < 1476,1483c1238,1240 < /** < * Allen key retractable z-probe as seen on many Kossel delta printers - https://reprap.org/wiki/Kossel#Automatic_bed_leveling_probe < * Deploys by touching z-axis belt. Retracts by pushing the probe down. < */ < //#define Z_PROBE_ALLEN_KEY < #if ENABLED(Z_PROBE_ALLEN_KEY) < // 2 or 3 sets of coordinates for deploying and retracting the spring loaded touch probe on G29, < // if servo actuated touch probe is not defined. Uncomment as appropriate for your printer/probe. --- > // > // For Z_PROBE_ALLEN_KEY see the Delta example configurations. > // 1485,1507d1241 < #define Z_PROBE_ALLEN_KEY_DEPLOY_1 { 30.0, PRINTABLE_RADIUS, 100.0 } < #define Z_PROBE_ALLEN_KEY_DEPLOY_1_FEEDRATE XY_PROBE_FEEDRATE < < #define Z_PROBE_ALLEN_KEY_DEPLOY_2 { 0.0, PRINTABLE_RADIUS, 100.0 } < #define Z_PROBE_ALLEN_KEY_DEPLOY_2_FEEDRATE (XY_PROBE_FEEDRATE)/10 < < #define Z_PROBE_ALLEN_KEY_DEPLOY_3 { 0.0, (PRINTABLE_RADIUS) * 0.75, 100.0 } < #define Z_PROBE_ALLEN_KEY_DEPLOY_3_FEEDRATE XY_PROBE_FEEDRATE < < #define Z_PROBE_ALLEN_KEY_STOW_1 { -64.0, 56.0, 23.0 } // Move the probe into position < #define Z_PROBE_ALLEN_KEY_STOW_1_FEEDRATE XY_PROBE_FEEDRATE < < #define Z_PROBE_ALLEN_KEY_STOW_2 { -64.0, 56.0, 3.0 } // Push it down < #define Z_PROBE_ALLEN_KEY_STOW_2_FEEDRATE (XY_PROBE_FEEDRATE)/10 < < #define Z_PROBE_ALLEN_KEY_STOW_3 { -64.0, 56.0, 50.0 } // Move it up to clear < #define Z_PROBE_ALLEN_KEY_STOW_3_FEEDRATE XY_PROBE_FEEDRATE < < #define Z_PROBE_ALLEN_KEY_STOW_4 { 0.0, 0.0, 50.0 } < #define Z_PROBE_ALLEN_KEY_STOW_4_FEEDRATE XY_PROBE_FEEDRATE < < #endif // Z_PROBE_ALLEN_KEY < 1555c1289 < #define XY_PROBE_FEEDRATE (133*60) --- > #define XY_PROBE_FEEDRATE (50*60) 1633,1634c1367,1368 < #define Z_PROBE_OFFSET_RANGE_MIN -20 < #define Z_PROBE_OFFSET_RANGE_MAX 20 --- > #define Z_PROBE_OFFSET_RANGE_MIN -10 > #define Z_PROBE_OFFSET_RANGE_MAX 10 1702c1436 < // @section motion --- > // @section machine 1706,1707c1440,1441 < #define INVERT_Y_DIR true < #define INVERT_Z_DIR false --- > #define INVERT_Y_DIR false > #define INVERT_Z_DIR true 1756c1490 < // @section geometry --- > // @section machine 1759,1760c1493,1494 < #define X_BED_SIZE 200 < #define Y_BED_SIZE 200 --- > #define X_BED_SIZE 235 > #define Y_BED_SIZE 235 1768c1502 < #define Z_MAX_POS 200 --- > #define Z_MAX_POS 250 1960,1968d1693 < * Bed Distance Sensor < * < * Measures the distance from bed to nozzle with accuracy of 0.01mm. < * For information about this sensor https://github.com/markniu/Bed_Distance_sensor < * Uses I2C port, so it requires I2C library markyue/Panda_SoftMasterI2C. < */ < //#define BD_SENSOR < < /** 1981,1985c1706,1708 < /** < * Gradually reduce leveling correction until a set height is reached, < * at which point movement will be level to the machine's XY plane. < * The height can be set with M420 Z < */ --- > // Gradually reduce leveling correction until a set height is reached, > // at which point movement will be level to the machine's XY plane. > // The height can be set with M420 Z 1991,2001c1714,1716 < /** < * Add Z offset (M424 Z) that applies to all moves at the planner level. < * This Z offset will be automatically set to the middle value with G29. < */ < //#define GLOBAL_MESH_Z_OFFSET < < /** < * For Cartesian machines, instead of dividing moves on mesh boundaries, < * split up moves into short segments like a Delta. This follows the < * contours of the bed more closely than edge-to-edge straight moves. < */ --- > // For Cartesian machines, instead of dividing moves on mesh boundaries, > // split up moves into short segments like a Delta. This follows the > // contours of the bed more closely than edge-to-edge straight moves. 2034c1749 < //#define EXTRAPOLATE_BEYOND_GRID --- > #define EXTRAPOLATE_BEYOND_GRID 2037c1752 < // Subdivision of the grid by Catmull-Rom method. --- > // Experimental Subdivision of the grid by Catmull-Rom method. 2070,2088d1784 < /** < * Probing not allowed within the position of an obstacle. < */ < //#define AVOID_OBSTACLES < #if ENABLED(AVOID_OBSTACLES) < #define CLIP_W 23 // Bed clip width, should be padded a few mm over its physical size < #define CLIP_H 14 // Bed clip height, should be padded a few mm over its physical size < < // Obstacle Rectangles defined as { X1, Y1, X2, Y2 } < #define OBSTACLE1 { (X_BED_SIZE) / 4 - (CLIP_W) / 2, 0, (X_BED_SIZE) / 4 + (CLIP_W) / 2, CLIP_H } < #define OBSTACLE2 { (X_BED_SIZE) * 3 / 4 - (CLIP_W) / 2, 0, (X_BED_SIZE) * 3 / 4 + (CLIP_W) / 2, CLIP_H } < #define OBSTACLE3 { (X_BED_SIZE) / 4 - (CLIP_W) / 2, ((Y_BED_SIZE) - (CLIP_H)), (X_BED_SIZE) / 4 + (CLIP_W) / 2, Y_BED_SIZE } < #define OBSTACLE4 { (X_BED_SIZE) * 3 / 4 - (CLIP_W) / 2, ((Y_BED_SIZE) - (CLIP_H)), (X_BED_SIZE) * 3 / 4 + (CLIP_W) / 2, Y_BED_SIZE } < < // The probed grid must be inset for G29 J. This is okay, since it is < // only used to compute a linear transformation for the mesh itself. < #define G29J_MESH_TILT_MARGIN ((CLIP_H) + 1) < #endif < 2183,2184c1879,1880 < #define Z_SAFE_HOMING_X_POINT X_CENTER // X point for Z homing < #define Z_SAFE_HOMING_Y_POINT Y_CENTER // Y point for Z homing --- > #define Z_SAFE_HOMING_X_POINT ((X_BED_SIZE - 10) / 2) // X point for Z homing > #define Z_SAFE_HOMING_Y_POINT ((Y_BED_SIZE - 10) / 2) // Y point for Z homing 2231,2232c1927,1929 < // Or, set the XY skew factor directly: < //#define XY_SKEW_FACTOR 0.0 --- > // Or, set the default skew factors directly here > // to override the above measurements: > #define XY_SKEW_FACTOR 0.0 2241,2244c1938,1939 < < // Or, set the Z skew factors directly: < //#define XZ_SKEW_FACTOR 0.0 < //#define YZ_SKEW_FACTOR 0.0 --- > #define XZ_SKEW_FACTOR 0.0 > #define YZ_SKEW_FACTOR 0.0 2255c1950 < // @section eeprom --- > // @section extras 2266c1961 < //#define EEPROM_SETTINGS // Persistent storage with M500 and M501 --- > #define EEPROM_SETTINGS // Persistent storage with M500 and M501 2268c1963 < #define EEPROM_CHITCHAT // Give feedback on EEPROM commands. Disable to save PROGMEM. --- > //#define EEPROM_CHITCHAT // Give feedback on EEPROM commands. Disable to save PROGMEM. 2271c1966 < //#define EEPROM_AUTO_INIT // Init EEPROM automatically on any errors. --- > #define EEPROM_AUTO_INIT // Init EEPROM automatically on any errors. 2275,2276d1969 < // @section host < 2287,2288d1979 < // @section units < 2302c1993 < // Preheat Constants - Up to 10 are supported without changes --- > // Preheat Constants - Up to 6 are supported without changes 2305,2306c1996,1997 < #define PREHEAT_1_TEMP_HOTEND 180 < #define PREHEAT_1_TEMP_BED 70 --- > #define PREHEAT_1_TEMP_HOTEND 185 > #define PREHEAT_1_TEMP_BED 45 2308c1999 < #define PREHEAT_1_FAN_SPEED 0 // Value from 0 to 255 --- > #define PREHEAT_1_FAN_SPEED 255 // Value from 0 to 255 2312c2003 < #define PREHEAT_2_TEMP_BED 110 --- > #define PREHEAT_2_TEMP_BED 70 2314c2005 < #define PREHEAT_2_FAN_SPEED 0 // Value from 0 to 255 --- > #define PREHEAT_2_FAN_SPEED 255 // Value from 0 to 255 2316,2317d2006 < // @section motion < 2341c2030 < * Clean Nozzle Feature --- > * Clean Nozzle Feature -- EXPERIMENTAL 2374a2064 > * Attention: EXPERIMENTAL. G-code arguments may change. 2415,2416d2104 < // @section host < 2443,2444d2130 < // @section stats < 2459c2145 < #define PRINTCOUNTER_SAVE_INTERVAL 60 // (minutes) EEPROM save interval during print. A value of 0 will save stats at end of print. --- > #define PRINTCOUNTER_SAVE_INTERVAL 60 // (minutes) EEPROM save interval during print 2462,2463d2147 < // @section security < 2499c2183 < // @section interface --- > // @section lcd 2550c2234 < //#define SDSUPPORT --- > #define SDSUPPORT 2574c2258 < //#define ENCODER_PULSES_PER_STEP 4 --- > #define ENCODER_PULSES_PER_STEP 4 2580c2264 < //#define ENCODER_STEPS_PER_MENU_ITEM 1 --- > #define ENCODER_STEPS_PER_MENU_ITEM 1 2616,2625d2299 < // Encoder EMI Noise Filter < // < // This option increases encoder samples to filter out phantom encoder clicks caused by EMI noise. < // < //#define ENCODER_NOISE_FILTER < #if ENABLED(ENCODER_NOISE_FILTER) < #define ENCODER_SAMPLES 10 < #endif < < // 2630c2304 < //#define INDIVIDUAL_AXIS_HOMING_MENU --- > #define INDIVIDUAL_AXIS_HOMING_MENU 2648,2649c2322,2323 < //#define LCD_FEEDBACK_FREQUENCY_DURATION_MS 2 < //#define LCD_FEEDBACK_FREQUENCY_HZ 5000 --- > #define LCD_FEEDBACK_FREQUENCY_DURATION_MS 2 > #define LCD_FEEDBACK_FREQUENCY_HZ 5000 2655d2328 < // @section lcd 2830c2503 < // https://reprapworld.com/electronics/3d-printer-modules/autonomous-printing/graphical-lcd-screen-v1-0/ --- > // https://reprapworld.com/?products_details&products_id/1218 2928c2601,2604 < //#define CR10_STOCKDISPLAY --- > #define CR10_STOCKDISPLAY > #if ENABLED(CR10_STOCKDISPLAY) > #define RET6_12864_LCD // Specific to the SoC (can either be RET / VET) > #endif 2957,2962d2632 < // < // eMotion Tech LCD with SD < // https://www.reprap-france.com/produit/1234568748-ecran-graphique-128-x-64-points-2-1 < // < //#define EMOTION_TECH_LCD < 3027a2698,2700 > * ORIGIN : https://www.aliexpress.com/item/32993409517.html > * FYSETC : https://www.aliexpress.com/item/32961471929.html > * MKS : https://www.aliexpress.com/item/1005002008179262.html 3028a2702,2707 > * Flash display with DGUS Displays for Marlin: > * - Format the SD card to FAT32 with an allocation size of 4kb. > * - Download files as specified for your type of display. > * - Plug the microSD card into the back of the display. > * - Boot the display and wait for the update to complete. > * 3032d2710 < * - Product: https://www.aliexpress.com/item/32993409517.html 3037d2714 < * - Product: https://www.aliexpress.com/item/32961471929.html 3046d2722 < * - Product: https://www.aliexpress.com/item/1005002008179262.html 3051,3063d2726 < * < * IA_CREALITY (T5UID1) < * - Download https://github.com/InsanityAutomation/Marlin/raw/CrealityDwin2.0_Bleeding/TM3D_Combined480272_Landscape_V7.7z < * - Copy the downloaded DWIN_SET folder to the SD card. < * < * CREALITY_TOUCH < * - CR-6 OEM touch screen. A DWIN display with touch. < * < * Flash display with DGUS Displays for Marlin: < * - Format the SD card to FAT32 with an allocation size of 4kb. < * - Download files as specified for your type of display. < * - Plug the microSD card into the back of the display. < * - Boot the display and wait for the update to complete. 3065,3066c2728,2733 < //#define DGUS_LCD_UI ORIGIN < #if DGUS_UI_IS(MKS) --- > //#define DGUS_LCD_UI_ORIGIN > //#define DGUS_LCD_UI_FYSETC > //#define DGUS_LCD_UI_HIPRECY > //#define DGUS_LCD_UI_MKS > //#define DGUS_LCD_UI_RELOADED > #if ENABLED(DGUS_LCD_UI_MKS) 3071,3075d2737 < // CR-6 OEM touch screen. A DWIN display with touch. < // < //#define DWIN_CREALITY_TOUCHLCD < < // 3093d2754 < //#define ANYCUBIC_LCD_GCODE_EXT // Add ".gcode" to menu entries for DGUS clone compatibility 3102,3107d2762 < // PanelDue touch controller by Escher3D < // http://escher3d.com/pages/order/products/product2.php < // < //#define PANELDUE < < // 3168c2823 < // 480x320, 3.5", FSMC Stock Display from Tronxy --- > // 480x320, 3.5", FSMC Stock Display from TronxXY 3235,3247d2889 < #if ENABLED(TFT_COLOR_UI) < /** < * TFT Font for Color_UI. Choose one of the following: < * < * NOTOSANS - Default font with antialiasing. Supports Latin Extended and non-Latin characters. < * UNIFONT - Lightweight font, no antialiasing. Supports Latin Extended and non-Latin characters. < * HELVETICA - Lightweight font, no antialiasing. Supports Basic Latin (0x0020-0x007F) and Latin-1 Supplement (0x0080-0x00FF) characters only. < */ < #define TFT_FONT NOTOSANS < < //#define TFT_SHARED_SPI // SPI is shared between TFT display and other devices. Disable async data transfer < #endif < 3280,3281c2922,2923 < #define BUTTON_DELAY_EDIT 50 // (ms) Button repeat delay for edit screens < #define BUTTON_DELAY_MENU 250 // (ms) Button repeat delay for menus --- > #define BUTTON_DELAY_EDIT 50 // (ms) Button repeat delay for edit screens > #define BUTTON_DELAY_MENU 250 // (ms) Button repeat delay for menus 3283,3284c2925 < //#define DISABLE_ENCODER // Disable the click encoder, if any < //#define TOUCH_IDLE_SLEEP_MINS 5 // (minutes) Display Sleep after a period of inactivity. Set with M255 S. --- > //#define TOUCH_IDLE_SLEEP 300 // (s) Turn off the TFT backlight if set (5mn) 3319c2960 < // @section fans --- > // @section extras 3328c2969 < //#define FAN_SOFT_PWM --- > #define FAN_SOFT_PWM 3343,3349d2983 < // @section extras < < // Support for the BariCUDA Paste Extruder < //#define BARICUDA < < // @section lights < 3354a2989,2991 > // Support for the BariCUDA Paste Extruder > //#define BARICUDA > 3375c3012 < * === CAUTION === --- > * *** CAUTION *** 3379d3015 < * 3381a3018 > * *** CAUTION *** 3383,3384c3020 < * Requires PWM frequency between 50 <> 100Hz (Check HAL or variant) < * Use FAST_PWM_FAN, if possible, to reduce fan noise. --- > * LED Type. Enable only one of the following two options. 3386,3387d3021 < < // LED Type. Enable only one of the following two options: 3398,3404d3031 < #if ANY(RGB_LED, RGBW_LED, PCA9632) < //#define RGB_STARTUP_TEST // For PWM pins, fade between all colors < #if ENABLED(RGB_STARTUP_TEST) < #define RGB_STARTUP_TEST_INNER_MS 10 // (ms) Reduce or increase fading speed < #endif < #endif < 3424d3050 < #define NEOPIXEL_M150_DEFAULT -1 // Default strip for M150 without 'S'. Use -1 to set all by default. 3451,3452d3076 < // @section servos < 3474a3099 >

  • Marlin

    Optimized firmware for RepRap 3D printers based on the Arduino platform. (by InsanityAutomation)

  • 23,24d22 < #error "Don't build with import-2.1.x configurations!" < #error "Use the 'bugfix...' or 'release...' configurations matching your Marlin version." 25a24,25 > #define CONFIG_EXAMPLES_DIR "Creality/Ender-3 Pro/CrealityV422" > 40c40 < #define CONFIGURATION_H_VERSION 02010300 --- > #define CONFIGURATION_H_VERSION 02010000 61a62,70 > //=========================================================================== > //========================== DELTA / SCARA / TPARA ========================== > //=========================================================================== > // > // Download configurations from the link above and customize for your machine. > // Examples are located in config/examples/delta, .../SCARA, and .../TPARA. > // > //=========================================================================== > 65c74 < #define STRING_CONFIG_H_AUTHOR "(none, default config)" // Who made the changes. --- > #define STRING_CONFIG_H_AUTHOR "(Hidasi Máté)" // Who made the changes. 83c92 < //#define SHOW_CUSTOM_BOOTSCREEN --- > #define SHOW_CUSTOM_BOOTSCREEN 86c95 < //#define CUSTOM_STATUS_SCREEN_IMAGE --- > #define CUSTOM_STATUS_SCREEN_IMAGE 92c101 < #define MOTHERBOARD BOARD_RAMPS_14_EFB --- > #define MOTHERBOARD BOARD_CREALITY_V4 103c112 < #define SERIAL_PORT 0 --- > #define SERIAL_PORT 1 116,117c125 < #define BAUDRATE 250000 < --- > #define BAUDRATE 115200 125,126c133,134 < //#define SERIAL_PORT_2 -1 < //#define BAUDRATE_2 250000 // :[2400, 9600, 19200, 38400, 57600, 115200, 250000, 500000, 1000000] Enable to override BAUDRATE --- > #define SERIAL_PORT_2 3 > //#define BAUDRATE_2 250000 // Enable to override BAUDRATE 134c142 < //#define BAUDRATE_3 250000 // :[2400, 9600, 19200, 38400, 57600, 115200, 250000, 500000, 1000000] Enable to override BAUDRATE --- > //#define BAUDRATE_3 250000 // Enable to override BAUDRATE 140c148 < //#define CUSTOM_MACHINE_NAME "3D Printer" --- > #define CUSTOM_MACHINE_NAME "Máté's Ender 3 Pro" 146,147d153 < // @section stepper drivers < 156c162,163 < * Options: A4988, A5984, DRV8825, LV8729, TB6560, TB6600, TMC2100, --- > * Options: A4988, A5984, DRV8825, LV8729, L6470, L6474, POWERSTEP01, > * TB6560, TB6600, TMC2100, 161c168 < * :['A4988', 'A5984', 'DRV8825', 'LV8729', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2160', 'TMC2160_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC2209', 'TMC2209_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE', 'TMC5160', 'TMC5160_STANDALONE'] --- > * :['A4988', 'A5984', 'DRV8825', 'LV8729', 'L6470', 'L6474', 'POWERSTEP01', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2160', 'TMC2160_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC2209', 'TMC2209_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE', 'TMC5160', 'TMC5160_STANDALONE'] 163,165c170,172 < #define X_DRIVER_TYPE A4988 < #define Y_DRIVER_TYPE A4988 < #define Z_DRIVER_TYPE A4988 --- > #define X_DRIVER_TYPE A4988 > #define Y_DRIVER_TYPE A4988 > #define Z_DRIVER_TYPE A4988 247,248d253 < // @section multi-material < 261d265 < * :["PRUSA_MMU1", "PRUSA_MMU2", "PRUSA_MMU2S", "EXTENDABLE_EMU_MMU2", "EXTENDABLE_EMU_MMU2S"] 281d284 < #define SWITCHING_NOZZLE_SERVO_DWELL 2500 // Dwell time to wait for servo to make physical move 398c401 < // @section psu control --- > // @section machine 501c504 < * 66 : 4.7MΩ Dyze Design / Trianglelab T-D500 500°C High Temperature Thermistor --- > * 66 : 4.7MΩ Dyze Design High Temperature Thermistor 523d525 < * 1022 : Pt1000 with 2.2kΩ pullup 549c551 < #define TEMP_SENSOR_BED 0 --- > #define TEMP_SENSOR_BED 1 561,572c563,566 < #if TEMP_SENSOR_IS_MAX_TC(0) < #define MAX31865_SENSOR_OHMS_0 100 // (Ω) Typically 100 or 1000 (PT100 or PT1000) < #define MAX31865_CALIBRATION_OHMS_0 430 // (Ω) Typically 430 for Adafruit PT100; 4300 for Adafruit PT1000 < #endif < #if TEMP_SENSOR_IS_MAX_TC(1) < #define MAX31865_SENSOR_OHMS_1 100 < #define MAX31865_CALIBRATION_OHMS_1 430 < #endif < #if TEMP_SENSOR_IS_MAX_TC(2) < #define MAX31865_SENSOR_OHMS_2 100 < #define MAX31865_CALIBRATION_OHMS_2 430 < #endif --- > //#define MAX31865_SENSOR_OHMS_0 100 // (Ω) Typically 100 or 1000 (PT100 or PT1000) > //#define MAX31865_CALIBRATION_OHMS_0 430 // (Ω) Typically 430 for Adafruit PT100; 4300 for Adafruit PT1000 > //#define MAX31865_SENSOR_OHMS_1 100 > //#define MAX31865_CALIBRATION_OHMS_1 430 574,578c568,570 < #if HAS_E_TEMP_SENSOR < #define TEMP_RESIDENCY_TIME 10 // (seconds) Time to wait for hotend to "settle" in M109 < #define TEMP_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer < #define TEMP_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target < #endif --- > #define TEMP_RESIDENCY_TIME 10 // (seconds) Time to wait for hotend to "settle" in M109 > #define TEMP_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer > #define TEMP_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target 580,584c572,574 < #if TEMP_SENSOR_BED < #define TEMP_BED_RESIDENCY_TIME 10 // (seconds) Time to wait for bed to "settle" in M190 < #define TEMP_BED_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer < #define TEMP_BED_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target < #endif --- > #define TEMP_BED_RESIDENCY_TIME 10 // (seconds) Time to wait for bed to "settle" in M190 > #define TEMP_BED_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer > #define TEMP_BED_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target 586,590c576,578 < #if TEMP_SENSOR_CHAMBER < #define TEMP_CHAMBER_RESIDENCY_TIME 10 // (seconds) Time to wait for chamber to "settle" in M191 < #define TEMP_CHAMBER_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer < #define TEMP_CHAMBER_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target < #endif --- > #define TEMP_CHAMBER_RESIDENCY_TIME 10 // (seconds) Time to wait for chamber to "settle" in M191 > #define TEMP_CHAMBER_WINDOW 1 // (°C) Temperature proximity for the "temperature reached" timer > #define TEMP_CHAMBER_HYSTERESIS 3 // (°C) Temperature proximity considered "close enough" to the target 610c598 < #define HEATER_0_MINTEMP 5 --- > #define HEATER_0_MINTEMP 0 618c606 < #define BED_MINTEMP 5 --- > #define BED_MINTEMP 0 632c620 < #define BED_MAXTEMP 150 --- > #define BED_MAXTEMP 120 649,650d636 < // @section hotend temp < 661,662c647 < //#define PID_DEBUG // Print PID debug data to the serial port. Use 'M303 D' to toggle activation. < //#define PID_PARAMS_PER_HOTEND // Use separate PID parameters for each extruder (useful for mismatched extruders) --- > //#define PID_PARAMS_PER_HOTEND // Uses separate PID parameters for each extruder (useful for mismatched extruders) 664a650 > // Ender 3 v2 668,670c654,656 < #define DEFAULT_Kp_LIST { 22.20, 22.20 } < #define DEFAULT_Ki_LIST { 1.08, 1.08 } < #define DEFAULT_Kd_LIST { 114.00, 114.00 } --- > #define DEFAULT_Kp_LIST { 28.72, 28.72 } > #define DEFAULT_Ki_LIST { 2.62, 2.62 } > #define DEFAULT_Kd_LIST { 78.81, 78.81 } 672,674c658,660 < #define DEFAULT_Kp 22.20 < #define DEFAULT_Ki 1.08 < #define DEFAULT_Kd 114.00 --- > #define DEFAULT_Kp 28.72 > #define DEFAULT_Ki 2.62 > #define DEFAULT_Kd 78.81 683,684c669 < * for PID_EXTRUSION_SCALING and PID_FAN_SCALING. Use M306 T to autotune the model. < * @section mpctemp --- > * for PID_EXTRUSION_SCALING and PID_FAN_SCALING. Use M306 to autotune the model. 737d721 < * @section bed temp 739c723 < //#define PIDTEMPBED --- > #define PIDTEMPBED 753c737 < //#define PID_BED_DEBUG // Print Bed PID debug data to the serial port. --- > //#define PID_BED_DEBUG // Sends debug data to the serial port. 757,759c741,743 < #define DEFAULT_bedKp 10.00 < #define DEFAULT_bedKi .023 < #define DEFAULT_bedKd 305.4 --- > #define DEFAULT_bedKp 462.10 > #define DEFAULT_bedKi 85.47 > #define DEFAULT_bedKd 624.59 781d764 < * @section chamber temp 796c779 < //#define PID_CHAMBER_DEBUG // Print Chamber PID debug data to the serial port. --- > //#define PID_CHAMBER_DEBUG // Sends debug data to the serial port. 809a793 > //#define PID_DEBUG // Sends debug data to the serial port. Use 'M303 D' to toggle activation. 819c803 < // @section safety --- > // @section extruder 829c813 < #define EXTRUDE_MINTEMP 170 --- > #define EXTRUDE_MINTEMP 180 836c820 < #define EXTRUDE_MAXLENGTH 200 --- > #define EXTRUDE_MAXLENGTH 1000 857c841 < #define THERMAL_PROTECTION_CHAMBER // Enable thermal protection for the heated chamber --- > //#define THERMAL_PROTECTION_CHAMBER // Enable thermal protection for the heated chamber 883,885c867,868 < #define POLARGRAPH_MAX_BELT_LEN 1035.0 // (mm) Belt length at full extension. Override with M665 H. < #define DEFAULT_SEGMENTS_PER_SECOND 5 // Move segmentation based on duration < #define PEN_UP_DOWN_MENU // Add "Pen Up" and "Pen Down" to the MarlinUI menu --- > #define POLARGRAPH_MAX_BELT_LEN 1035.0 > #define POLAR_SEGMENTS_PER_SECOND 5 888,1081d870 < // @section delta < < // Enable for DELTA kinematics and configure below < //#define DELTA < #if ENABLED(DELTA) < < // Make delta curves from many straight lines (linear interpolation). < // This is a trade-off between visible corners (not enough segments) < // and processor overload (too many expensive sqrt calls). < #define DEFAULT_SEGMENTS_PER_SECOND 200 < < // After homing move down to a height where XY movement is unconstrained < //#define DELTA_HOME_TO_SAFE_ZONE < < // Delta calibration menu < // Add three-point calibration to the MarlinUI menu. < // See http://minow.blogspot.com/index.html#4918805519571907051 < //#define DELTA_CALIBRATION_MENU < < // G33 Delta Auto-Calibration. Enable EEPROM_SETTINGS to store results. < //#define DELTA_AUTO_CALIBRATION < < #if ENABLED(DELTA_AUTO_CALIBRATION) < // Default number of probe points : n*n (1 -> 7) < #define DELTA_CALIBRATION_DEFAULT_POINTS 4 < #endif < < #if EITHER(DELTA_AUTO_CALIBRATION, DELTA_CALIBRATION_MENU) < // Step size for paper-test probing < #define PROBE_MANUALLY_STEP 0.05 // (mm) < #endif < < // Print surface diameter/2 minus unreachable space (avoid collisions with vertical towers). < #define PRINTABLE_RADIUS 140.0 // (mm) < < // Maximum reachable area < #define DELTA_MAX_RADIUS 140.0 // (mm) < < // Center-to-center distance of the holes in the diagonal push rods. < #define DELTA_DIAGONAL_ROD 250.0 // (mm) < < // Distance between bed and nozzle Z home position < #define DELTA_HEIGHT 250.00 // (mm) Get this value from G33 auto calibrate < < #define DELTA_ENDSTOP_ADJ { 0.0, 0.0, 0.0 } // Get these values from G33 auto calibrate < < // Horizontal distance bridged by diagonal push rods when effector is centered. < #define DELTA_RADIUS 124.0 // (mm) Get this value from G33 auto calibrate < < // Trim adjustments for individual towers < // tower angle corrections for X and Y tower / rotate XYZ so Z tower angle = 0 < // measured in degrees anticlockwise looking from above the printer < #define DELTA_TOWER_ANGLE_TRIM { 0.0, 0.0, 0.0 } // Get these values from G33 auto calibrate < < // Delta radius and diagonal rod adjustments (mm) < //#define DELTA_RADIUS_TRIM_TOWER { 0.0, 0.0, 0.0 } < //#define DELTA_DIAGONAL_ROD_TRIM_TOWER { 0.0, 0.0, 0.0 } < #endif < < // @section scara < < /** < * MORGAN_SCARA was developed by QHARLEY in South Africa in 2012-2013. < * Implemented and slightly reworked by JCERNY in June, 2014. < * < * Mostly Printed SCARA is an open source design by Tyler Williams. See: < * https://www.thingiverse.com/thing:2487048 < * https://www.thingiverse.com/thing:1241491 < */ < //#define MORGAN_SCARA < //#define MP_SCARA < #if EITHER(MORGAN_SCARA, MP_SCARA) < // If movement is choppy try lowering this value < #define DEFAULT_SEGMENTS_PER_SECOND 200 < < // Length of inner and outer support arms. Measure arm lengths precisely. < #define SCARA_LINKAGE_1 150 // (mm) < #define SCARA_LINKAGE_2 150 // (mm) < < // SCARA tower offset (position of Tower relative to bed zero position) < // This needs to be reasonably accurate as it defines the printbed position in the SCARA space. < #define SCARA_OFFSET_X 100 // (mm) < #define SCARA_OFFSET_Y -56 // (mm) < < #if ENABLED(MORGAN_SCARA) < < //#define DEBUG_SCARA_KINEMATICS < #define FEEDRATE_SCALING // Convert XY feedrate from mm/s to degrees/s on the fly < < // Radius around the center where the arm cannot reach < #define MIDDLE_DEAD_ZONE_R 0 // (mm) < < #define THETA_HOMING_OFFSET 0 // Calculated from Calibration Guide and M360 / M114. See http://reprap.harleystudio.co.za/?page_id=1073 < #define PSI_HOMING_OFFSET 0 // Calculated from Calibration Guide and M364 / M114. See http://reprap.harleystudio.co.za/?page_id=1073 < < #elif ENABLED(MP_SCARA) < < #define SCARA_OFFSET_THETA1 12 // degrees < #define SCARA_OFFSET_THETA2 131 // degrees < < #endif < < #endif < < // @section tpara < < // Enable for TPARA kinematics and configure below < //#define AXEL_TPARA < #if ENABLED(AXEL_TPARA) < #define DEBUG_TPARA_KINEMATICS < #define DEFAULT_SEGMENTS_PER_SECOND 200 < < // Length of inner and outer support arms. Measure arm lengths precisely. < #define TPARA_LINKAGE_1 120 // (mm) < #define TPARA_LINKAGE_2 120 // (mm) < < // SCARA tower offset (position of Tower relative to bed zero position) < // This needs to be reasonably accurate as it defines the printbed position in the SCARA space. < #define TPARA_OFFSET_X 0 // (mm) < #define TPARA_OFFSET_Y 0 // (mm) < #define TPARA_OFFSET_Z 0 // (mm) < < #define FEEDRATE_SCALING // Convert XY feedrate from mm/s to degrees/s on the fly < < // Radius around the center where the arm cannot reach < #define MIDDLE_DEAD_ZONE_R 0 // (mm) < < // Calculated from Calibration Guide and M360 / M114. See http://reprap.harleystudio.co.za/?page_id=1073 < #define THETA_HOMING_OFFSET 0 < #define PSI_HOMING_OFFSET 0 < #endif < < // @section polar < < /** < * POLAR Kinematics < * developed by Kadir ilkimen for PolarBear CNC and babyBear < * https://github.com/kadirilkimen/Polar-Bear-Cnc-Machine < * https://github.com/kadirilkimen/babyBear-3D-printer < * < * A polar machine can have different configurations. < * This kinematics is only compatible with the following configuration: < * X : Independent linear < * Y or B : Polar < * Z : Independent linear < * < * For example, PolarBear has CoreXZ plus Polar Y or B. < * < * Motion problem for Polar axis near center / origin: < * < * 3D printing: < * Movements very close to the center of the polar axis take more time than others. < * This brief delay results in more material deposition due to the pressure in the nozzle. < * < * Current Kinematics and feedrate scaling deals with this by making the movement as fast < * as possible. It works for slow movements but doesn't work well with fast ones. A more < * complicated extrusion compensation must be implemented. < * < * Ideally, it should estimate that a long rotation near the center is ahead and will cause < * unwanted deposition. Therefore it can compensate the extrusion beforehand. < * < * Laser cutting: < * Same thing would be a problem for laser engraving too. As it spends time rotating at the < * center point, more likely it will burn more material than it should. Therefore similar < * compensation would be implemented for laser-cutting operations. < * < * Milling: < * This shouldn't be a problem for cutting/milling operations. < */ < //#define POLAR < #if ENABLED(POLAR) < #define DEFAULT_SEGMENTS_PER_SECOND 180 // If movement is choppy try lowering this value < #define PRINTABLE_RADIUS 82.0f // (mm) Maximum travel of X axis < < // Movements fall inside POLAR_FAST_RADIUS are assigned the highest possible feedrate < // to compensate unwanted deposition related to the near-origin motion problem. < #define POLAR_FAST_RADIUS 3.0f // (mm) < < // Radius which is unreachable by the tool. < // Needed if the tool is not perfectly aligned to the center of the polar axis. < #define POLAR_CENTER_OFFSET 0.0f // (mm) < < #define FEEDRATE_SCALING // Convert XY feedrate from mm/s to degrees/s on the fly < #endif < < // @section machine < < // Articulated robot (arm). Joints are directly mapped to axes with no kinematics. < //#define ARTICULATED_ROBOT_ARM < < // For a hot wire cutter with parallel horizontal axes (X, I) where the heights of the two wire < // ends are controlled by parallel axes (Y, J). Joints are directly mapped to axes (no kinematics). < //#define FOAMCUTTER_XYUV < 1086c875 < // @section endstops --- > // @section homing 1183c972 < //#define ENDSTOP_INTERRUPTS_FEATURE --- > #define ENDSTOP_INTERRUPTS_FEATURE 1227c1016 < #define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 500 } --- > #define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 93 } 1234c1023 < #define DEFAULT_MAX_FEEDRATE { 300, 300, 5, 25 } --- > #define DEFAULT_MAX_FEEDRATE { 500, 500, 5, 25 } 1247c1036 < #define DEFAULT_MAX_ACCELERATION { 3000, 3000, 100, 10000 } --- > #define DEFAULT_MAX_ACCELERATION { 500, 500, 100, 1000 } 1261,1262d1049 < * M204 I Angular Acceleration < * M204 J Angular Travel Acceleration 1264,1270c1051,1053 < #define DEFAULT_ACCELERATION 3000 // X, Y, Z ... and E acceleration for printing moves < #define DEFAULT_RETRACT_ACCELERATION 3000 // E acceleration for retracts < #define DEFAULT_TRAVEL_ACCELERATION 3000 // X, Y, Z ... acceleration for travel (non printing) moves < #if ENABLED(AXIS4_ROTATES) < #define DEFAULT_ANGULAR_ACCELERATION 3000 // I, J, K acceleration for rotational-only printing moves < #define DEFAULT_ANGULAR_TRAVEL_ACCELERATION 3000 // I, J, K acceleration for rotational-only travel (non printing) moves < #endif --- > #define DEFAULT_ACCELERATION 500 // X, Y, Z and E acceleration for printing moves > #define DEFAULT_RETRACT_ACCELERATION 500 // E acceleration for retracts > #define DEFAULT_TRAVEL_ACCELERATION 1000 // X, Y, Z acceleration for travel (non printing) moves 1280c1063 < //#define CLASSIC_JERK --- > #define CLASSIC_JERK 1323c1106 < //#define S_CURVE_ACCELERATION --- > #define S_CURVE_ACCELERATION 1440,1460d1222 < /** < * Magnetically Mounted Probe < * For probes such as Euclid, Klicky, Klackender, etc. < */ < //#define MAG_MOUNTED_PROBE < #if ENABLED(MAG_MOUNTED_PROBE) < #define PROBE_DEPLOY_FEEDRATE (133*60) // (mm/min) Probe deploy speed < #define PROBE_STOW_FEEDRATE (133*60) // (mm/min) Probe stow speed < < #define MAG_MOUNTED_DEPLOY_1 { PROBE_DEPLOY_FEEDRATE, { 245, 114, 30 } } // Move to side Dock & Attach probe < #define MAG_MOUNTED_DEPLOY_2 { PROBE_DEPLOY_FEEDRATE, { 210, 114, 30 } } // Move probe off dock < #define MAG_MOUNTED_DEPLOY_3 { PROBE_DEPLOY_FEEDRATE, { 0, 0, 0 } } // Extra move if needed < #define MAG_MOUNTED_DEPLOY_4 { PROBE_DEPLOY_FEEDRATE, { 0, 0, 0 } } // Extra move if needed < #define MAG_MOUNTED_DEPLOY_5 { PROBE_DEPLOY_FEEDRATE, { 0, 0, 0 } } // Extra move if needed < #define MAG_MOUNTED_STOW_1 { PROBE_STOW_FEEDRATE, { 245, 114, 20 } } // Move to dock < #define MAG_MOUNTED_STOW_2 { PROBE_STOW_FEEDRATE, { 245, 114, 0 } } // Place probe beside remover < #define MAG_MOUNTED_STOW_3 { PROBE_STOW_FEEDRATE, { 230, 114, 0 } } // Side move to remove probe < #define MAG_MOUNTED_STOW_4 { PROBE_STOW_FEEDRATE, { 210, 114, 20 } } // Side move to remove probe < #define MAG_MOUNTED_STOW_5 { PROBE_STOW_FEEDRATE, { 0, 0, 0 } } // Extra move if needed < #endif < 1476,1483c1238,1240 < /** < * Allen key retractable z-probe as seen on many Kossel delta printers - https://reprap.org/wiki/Kossel#Automatic_bed_leveling_probe < * Deploys by touching z-axis belt. Retracts by pushing the probe down. < */ < //#define Z_PROBE_ALLEN_KEY < #if ENABLED(Z_PROBE_ALLEN_KEY) < // 2 or 3 sets of coordinates for deploying and retracting the spring loaded touch probe on G29, < // if servo actuated touch probe is not defined. Uncomment as appropriate for your printer/probe. --- > // > // For Z_PROBE_ALLEN_KEY see the Delta example configurations. > // 1485,1507d1241 < #define Z_PROBE_ALLEN_KEY_DEPLOY_1 { 30.0, PRINTABLE_RADIUS, 100.0 } < #define Z_PROBE_ALLEN_KEY_DEPLOY_1_FEEDRATE XY_PROBE_FEEDRATE < < #define Z_PROBE_ALLEN_KEY_DEPLOY_2 { 0.0, PRINTABLE_RADIUS, 100.0 } < #define Z_PROBE_ALLEN_KEY_DEPLOY_2_FEEDRATE (XY_PROBE_FEEDRATE)/10 < < #define Z_PROBE_ALLEN_KEY_DEPLOY_3 { 0.0, (PRINTABLE_RADIUS) * 0.75, 100.0 } < #define Z_PROBE_ALLEN_KEY_DEPLOY_3_FEEDRATE XY_PROBE_FEEDRATE < < #define Z_PROBE_ALLEN_KEY_STOW_1 { -64.0, 56.0, 23.0 } // Move the probe into position < #define Z_PROBE_ALLEN_KEY_STOW_1_FEEDRATE XY_PROBE_FEEDRATE < < #define Z_PROBE_ALLEN_KEY_STOW_2 { -64.0, 56.0, 3.0 } // Push it down < #define Z_PROBE_ALLEN_KEY_STOW_2_FEEDRATE (XY_PROBE_FEEDRATE)/10 < < #define Z_PROBE_ALLEN_KEY_STOW_3 { -64.0, 56.0, 50.0 } // Move it up to clear < #define Z_PROBE_ALLEN_KEY_STOW_3_FEEDRATE XY_PROBE_FEEDRATE < < #define Z_PROBE_ALLEN_KEY_STOW_4 { 0.0, 0.0, 50.0 } < #define Z_PROBE_ALLEN_KEY_STOW_4_FEEDRATE XY_PROBE_FEEDRATE < < #endif // Z_PROBE_ALLEN_KEY < 1555c1289 < #define XY_PROBE_FEEDRATE (133*60) --- > #define XY_PROBE_FEEDRATE (50*60) 1633,1634c1367,1368 < #define Z_PROBE_OFFSET_RANGE_MIN -20 < #define Z_PROBE_OFFSET_RANGE_MAX 20 --- > #define Z_PROBE_OFFSET_RANGE_MIN -10 > #define Z_PROBE_OFFSET_RANGE_MAX 10 1702c1436 < // @section motion --- > // @section machine 1706,1707c1440,1441 < #define INVERT_Y_DIR true < #define INVERT_Z_DIR false --- > #define INVERT_Y_DIR false > #define INVERT_Z_DIR true 1756c1490 < // @section geometry --- > // @section machine 1759,1760c1493,1494 < #define X_BED_SIZE 200 < #define Y_BED_SIZE 200 --- > #define X_BED_SIZE 235 > #define Y_BED_SIZE 235 1768c1502 < #define Z_MAX_POS 200 --- > #define Z_MAX_POS 250 1960,1968d1693 < * Bed Distance Sensor < * < * Measures the distance from bed to nozzle with accuracy of 0.01mm. < * For information about this sensor https://github.com/markniu/Bed_Distance_sensor < * Uses I2C port, so it requires I2C library markyue/Panda_SoftMasterI2C. < */ < //#define BD_SENSOR < < /** 1981,1985c1706,1708 < /** < * Gradually reduce leveling correction until a set height is reached, < * at which point movement will be level to the machine's XY plane. < * The height can be set with M420 Z < */ --- > // Gradually reduce leveling correction until a set height is reached, > // at which point movement will be level to the machine's XY plane. > // The height can be set with M420 Z 1991,2001c1714,1716 < /** < * Add Z offset (M424 Z) that applies to all moves at the planner level. < * This Z offset will be automatically set to the middle value with G29. < */ < //#define GLOBAL_MESH_Z_OFFSET < < /** < * For Cartesian machines, instead of dividing moves on mesh boundaries, < * split up moves into short segments like a Delta. This follows the < * contours of the bed more closely than edge-to-edge straight moves. < */ --- > // For Cartesian machines, instead of dividing moves on mesh boundaries, > // split up moves into short segments like a Delta. This follows the > // contours of the bed more closely than edge-to-edge straight moves. 2034c1749 < //#define EXTRAPOLATE_BEYOND_GRID --- > #define EXTRAPOLATE_BEYOND_GRID 2037c1752 < // Subdivision of the grid by Catmull-Rom method. --- > // Experimental Subdivision of the grid by Catmull-Rom method. 2070,2088d1784 < /** < * Probing not allowed within the position of an obstacle. < */ < //#define AVOID_OBSTACLES < #if ENABLED(AVOID_OBSTACLES) < #define CLIP_W 23 // Bed clip width, should be padded a few mm over its physical size < #define CLIP_H 14 // Bed clip height, should be padded a few mm over its physical size < < // Obstacle Rectangles defined as { X1, Y1, X2, Y2 } < #define OBSTACLE1 { (X_BED_SIZE) / 4 - (CLIP_W) / 2, 0, (X_BED_SIZE) / 4 + (CLIP_W) / 2, CLIP_H } < #define OBSTACLE2 { (X_BED_SIZE) * 3 / 4 - (CLIP_W) / 2, 0, (X_BED_SIZE) * 3 / 4 + (CLIP_W) / 2, CLIP_H } < #define OBSTACLE3 { (X_BED_SIZE) / 4 - (CLIP_W) / 2, ((Y_BED_SIZE) - (CLIP_H)), (X_BED_SIZE) / 4 + (CLIP_W) / 2, Y_BED_SIZE } < #define OBSTACLE4 { (X_BED_SIZE) * 3 / 4 - (CLIP_W) / 2, ((Y_BED_SIZE) - (CLIP_H)), (X_BED_SIZE) * 3 / 4 + (CLIP_W) / 2, Y_BED_SIZE } < < // The probed grid must be inset for G29 J. This is okay, since it is < // only used to compute a linear transformation for the mesh itself. < #define G29J_MESH_TILT_MARGIN ((CLIP_H) + 1) < #endif < 2183,2184c1879,1880 < #define Z_SAFE_HOMING_X_POINT X_CENTER // X point for Z homing < #define Z_SAFE_HOMING_Y_POINT Y_CENTER // Y point for Z homing --- > #define Z_SAFE_HOMING_X_POINT ((X_BED_SIZE - 10) / 2) // X point for Z homing > #define Z_SAFE_HOMING_Y_POINT ((Y_BED_SIZE - 10) / 2) // Y point for Z homing 2231,2232c1927,1929 < // Or, set the XY skew factor directly: < //#define XY_SKEW_FACTOR 0.0 --- > // Or, set the default skew factors directly here > // to override the above measurements: > #define XY_SKEW_FACTOR 0.0 2241,2244c1938,1939 < < // Or, set the Z skew factors directly: < //#define XZ_SKEW_FACTOR 0.0 < //#define YZ_SKEW_FACTOR 0.0 --- > #define XZ_SKEW_FACTOR 0.0 > #define YZ_SKEW_FACTOR 0.0 2255c1950 < // @section eeprom --- > // @section extras 2266c1961 < //#define EEPROM_SETTINGS // Persistent storage with M500 and M501 --- > #define EEPROM_SETTINGS // Persistent storage with M500 and M501 2268c1963 < #define EEPROM_CHITCHAT // Give feedback on EEPROM commands. Disable to save PROGMEM. --- > //#define EEPROM_CHITCHAT // Give feedback on EEPROM commands. Disable to save PROGMEM. 2271c1966 < //#define EEPROM_AUTO_INIT // Init EEPROM automatically on any errors. --- > #define EEPROM_AUTO_INIT // Init EEPROM automatically on any errors. 2275,2276d1969 < // @section host < 2287,2288d1979 < // @section units < 2302c1993 < // Preheat Constants - Up to 10 are supported without changes --- > // Preheat Constants - Up to 6 are supported without changes 2305,2306c1996,1997 < #define PREHEAT_1_TEMP_HOTEND 180 < #define PREHEAT_1_TEMP_BED 70 --- > #define PREHEAT_1_TEMP_HOTEND 185 > #define PREHEAT_1_TEMP_BED 45 2308c1999 < #define PREHEAT_1_FAN_SPEED 0 // Value from 0 to 255 --- > #define PREHEAT_1_FAN_SPEED 255 // Value from 0 to 255 2312c2003 < #define PREHEAT_2_TEMP_BED 110 --- > #define PREHEAT_2_TEMP_BED 70 2314c2005 < #define PREHEAT_2_FAN_SPEED 0 // Value from 0 to 255 --- > #define PREHEAT_2_FAN_SPEED 255 // Value from 0 to 255 2316,2317d2006 < // @section motion < 2341c2030 < * Clean Nozzle Feature --- > * Clean Nozzle Feature -- EXPERIMENTAL 2374a2064 > * Attention: EXPERIMENTAL. G-code arguments may change. 2415,2416d2104 < // @section host < 2443,2444d2130 < // @section stats < 2459c2145 < #define PRINTCOUNTER_SAVE_INTERVAL 60 // (minutes) EEPROM save interval during print. A value of 0 will save stats at end of print. --- > #define PRINTCOUNTER_SAVE_INTERVAL 60 // (minutes) EEPROM save interval during print 2462,2463d2147 < // @section security < 2499c2183 < // @section interface --- > // @section lcd 2550c2234 < //#define SDSUPPORT --- > #define SDSUPPORT 2574c2258 < //#define ENCODER_PULSES_PER_STEP 4 --- > #define ENCODER_PULSES_PER_STEP 4 2580c2264 < //#define ENCODER_STEPS_PER_MENU_ITEM 1 --- > #define ENCODER_STEPS_PER_MENU_ITEM 1 2616,2625d2299 < // Encoder EMI Noise Filter < // < // This option increases encoder samples to filter out phantom encoder clicks caused by EMI noise. < // < //#define ENCODER_NOISE_FILTER < #if ENABLED(ENCODER_NOISE_FILTER) < #define ENCODER_SAMPLES 10 < #endif < < // 2630c2304 < //#define INDIVIDUAL_AXIS_HOMING_MENU --- > #define INDIVIDUAL_AXIS_HOMING_MENU 2648,2649c2322,2323 < //#define LCD_FEEDBACK_FREQUENCY_DURATION_MS 2 < //#define LCD_FEEDBACK_FREQUENCY_HZ 5000 --- > #define LCD_FEEDBACK_FREQUENCY_DURATION_MS 2 > #define LCD_FEEDBACK_FREQUENCY_HZ 5000 2655d2328 < // @section lcd 2830c2503 < // https://reprapworld.com/electronics/3d-printer-modules/autonomous-printing/graphical-lcd-screen-v1-0/ --- > // https://reprapworld.com/?products_details&products_id/1218 2928c2601,2604 < //#define CR10_STOCKDISPLAY --- > #define CR10_STOCKDISPLAY > #if ENABLED(CR10_STOCKDISPLAY) > #define RET6_12864_LCD // Specific to the SoC (can either be RET / VET) > #endif 2957,2962d2632 < // < // eMotion Tech LCD with SD < // https://www.reprap-france.com/produit/1234568748-ecran-graphique-128-x-64-points-2-1 < // < //#define EMOTION_TECH_LCD < 3027a2698,2700 > * ORIGIN : https://www.aliexpress.com/item/32993409517.html > * FYSETC : https://www.aliexpress.com/item/32961471929.html > * MKS : https://www.aliexpress.com/item/1005002008179262.html 3028a2702,2707 > * Flash display with DGUS Displays for Marlin: > * - Format the SD card to FAT32 with an allocation size of 4kb. > * - Download files as specified for your type of display. > * - Plug the microSD card into the back of the display. > * - Boot the display and wait for the update to complete. > * 3032d2710 < * - Product: https://www.aliexpress.com/item/32993409517.html 3037d2714 < * - Product: https://www.aliexpress.com/item/32961471929.html 3046d2722 < * - Product: https://www.aliexpress.com/item/1005002008179262.html 3051,3063d2726 < * < * IA_CREALITY (T5UID1) < * - Download https://github.com/InsanityAutomation/Marlin/raw/CrealityDwin2.0_Bleeding/TM3D_Combined480272_Landscape_V7.7z < * - Copy the downloaded DWIN_SET folder to the SD card. < * < * CREALITY_TOUCH < * - CR-6 OEM touch screen. A DWIN display with touch. < * < * Flash display with DGUS Displays for Marlin: < * - Format the SD card to FAT32 with an allocation size of 4kb. < * - Download files as specified for your type of display. < * - Plug the microSD card into the back of the display. < * - Boot the display and wait for the update to complete. 3065,3066c2728,2733 < //#define DGUS_LCD_UI ORIGIN < #if DGUS_UI_IS(MKS) --- > //#define DGUS_LCD_UI_ORIGIN > //#define DGUS_LCD_UI_FYSETC > //#define DGUS_LCD_UI_HIPRECY > //#define DGUS_LCD_UI_MKS > //#define DGUS_LCD_UI_RELOADED > #if ENABLED(DGUS_LCD_UI_MKS) 3071,3075d2737 < // CR-6 OEM touch screen. A DWIN display with touch. < // < //#define DWIN_CREALITY_TOUCHLCD < < // 3093d2754 < //#define ANYCUBIC_LCD_GCODE_EXT // Add ".gcode" to menu entries for DGUS clone compatibility 3102,3107d2762 < // PanelDue touch controller by Escher3D < // http://escher3d.com/pages/order/products/product2.php < // < //#define PANELDUE < < // 3168c2823 < // 480x320, 3.5", FSMC Stock Display from Tronxy --- > // 480x320, 3.5", FSMC Stock Display from TronxXY 3235,3247d2889 < #if ENABLED(TFT_COLOR_UI) < /** < * TFT Font for Color_UI. Choose one of the following: < * < * NOTOSANS - Default font with antialiasing. Supports Latin Extended and non-Latin characters. < * UNIFONT - Lightweight font, no antialiasing. Supports Latin Extended and non-Latin characters. < * HELVETICA - Lightweight font, no antialiasing. Supports Basic Latin (0x0020-0x007F) and Latin-1 Supplement (0x0080-0x00FF) characters only. < */ < #define TFT_FONT NOTOSANS < < //#define TFT_SHARED_SPI // SPI is shared between TFT display and other devices. Disable async data transfer < #endif < 3280,3281c2922,2923 < #define BUTTON_DELAY_EDIT 50 // (ms) Button repeat delay for edit screens < #define BUTTON_DELAY_MENU 250 // (ms) Button repeat delay for menus --- > #define BUTTON_DELAY_EDIT 50 // (ms) Button repeat delay for edit screens > #define BUTTON_DELAY_MENU 250 // (ms) Button repeat delay for menus 3283,3284c2925 < //#define DISABLE_ENCODER // Disable the click encoder, if any < //#define TOUCH_IDLE_SLEEP_MINS 5 // (minutes) Display Sleep after a period of inactivity. Set with M255 S. --- > //#define TOUCH_IDLE_SLEEP 300 // (s) Turn off the TFT backlight if set (5mn) 3319c2960 < // @section fans --- > // @section extras 3328c2969 < //#define FAN_SOFT_PWM --- > #define FAN_SOFT_PWM 3343,3349d2983 < // @section extras < < // Support for the BariCUDA Paste Extruder < //#define BARICUDA < < // @section lights < 3354a2989,2991 > // Support for the BariCUDA Paste Extruder > //#define BARICUDA > 3375c3012 < * === CAUTION === --- > * *** CAUTION *** 3379d3015 < * 3381a3018 > * *** CAUTION *** 3383,3384c3020 < * Requires PWM frequency between 50 <> 100Hz (Check HAL or variant) < * Use FAST_PWM_FAN, if possible, to reduce fan noise. --- > * LED Type. Enable only one of the following two options. 3386,3387d3021 < < // LED Type. Enable only one of the following two options: 3398,3404d3031 < #if ANY(RGB_LED, RGBW_LED, PCA9632) < //#define RGB_STARTUP_TEST // For PWM pins, fade between all colors < #if ENABLED(RGB_STARTUP_TEST) < #define RGB_STARTUP_TEST_INNER_MS 10 // (ms) Reduce or increase fading speed < #endif < #endif < 3424d3050 < #define NEOPIXEL_M150_DEFAULT -1 // Default strip for M150 without 'S'. Use -1 to set all by default. 3451,3452d3076 < // @section servos < 3474a3099 >

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts