🚸 Improve Sovol SV01 / SKR Mini E3 V3 (#748)

This commit is contained in:
0Hertz 2022-06-08 02:30:28 +03:00 committed by GitHub
parent f50438e1af
commit dbad16d3eb
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 125 additions and 102 deletions

View file

@ -39,6 +39,8 @@
*/
#define CONFIGURATION_H_VERSION 02010000
//#define SOVOL_FIXED_PROBE
//===========================================================================
//============================= Getting Started =============================
//===========================================================================
@ -795,8 +797,8 @@
#define PID_FUNCTIONAL_RANGE 10 // If the temperature difference between the target temperature and the actual temperature
// is more than PID_FUNCTIONAL_RANGE then the PID will be shut off and the heater will be set to min/max.
//#define PID_EDIT_MENU // Add PID editing to the "Advanced Settings" menu. (~700 bytes of flash)
//#define PID_AUTOTUNE_MENU // Add PID auto-tuning to the "Advanced Settings" menu. (~250 bytes of flash)
#define PID_EDIT_MENU // Add PID editing to the "Advanced Settings" menu. (~700 bytes of flash)
#define PID_AUTOTUNE_MENU // Add PID auto-tuning to the "Advanced Settings" menu. (~250 bytes of flash)
#endif
// @section extruder
@ -1075,7 +1077,7 @@
//#define LIMITED_JERK_EDITING // Limit edit via M205 or LCD to DEFAULT_aJERK * 2
#if ENABLED(LIMITED_JERK_EDITING)
#define MAX_JERK_EDIT_VALUES { 20, 20, 0.6, 10 } // ...or, set your own edit limits
#define MAX_JERK_EDIT_VALUES { 20, 20, 0.8, 10 } // ...or, set your own edit limits
#endif
#endif
@ -1089,7 +1091,7 @@
* https://blog.kyneticcnc.com/2018/10/computing-junction-deviation-for-marlin.html
*/
#if DISABLED(CLASSIC_JERK)
#define JUNCTION_DEVIATION_MM 0.013 // (mm) Distance from real junction edge
#define JUNCTION_DEVIATION_MM 0.08 // (mm) Distance from real junction edge
#define JD_HANDLE_SMALL_SEGMENTS // Use curvature estimation instead of just the junction angle
// for small segments (< 1mm) with large junction angles (> 135°).
#endif
@ -1158,7 +1160,9 @@
* A Fix-Mounted Probe either doesn't deploy or needs manual deployment.
* (e.g., an inductive probe or a nozzle-based probe-switch.)
*/
#define FIX_MOUNTED_PROBE
#ifdef SOVOL_FIXED_PROBE
#define FIX_MOUNTED_PROBE
#endif
/**
* Use the nozzle as the probe, as with a conductive
@ -1282,7 +1286,7 @@
// Most probes should stay away from the edges of the bed, but
// with NOZZLE_AS_PROBE this can be negative for a wider probing area.
#define PROBING_MARGIN 25
#define PROBING_MARGIN 25
// X and Y axis travel speed (mm/min) between probes
#define XY_PROBE_FEEDRATE (50*60)
@ -1338,7 +1342,7 @@
* A total of 2 does fast/slow probes with a weighted average.
* A total of 3 or more adds more slow probes, taking the average.
*/
#define MULTIPLE_PROBING 2
#define MULTIPLE_PROBING 2
//#define EXTRA_PROBING 1
/**
@ -1489,8 +1493,8 @@
// @section machine
// The size of the printable area
#define X_BED_SIZE 280
#define Y_BED_SIZE 240
#define X_BED_SIZE 290
#define Y_BED_SIZE 250
// Travel limits (linear=mm, rotational=°) after homing, corresponding to endstop positions.
#define X_MIN_POS 0
@ -1498,7 +1502,7 @@
#define Z_MIN_POS 0
#define X_MAX_POS X_BED_SIZE
#define Y_MAX_POS Y_BED_SIZE
#define Z_MAX_POS 300
#define Z_MAX_POS 310
//#define I_MIN_POS 0
//#define I_MAX_POS 50
//#define J_MIN_POS 0
@ -1666,18 +1670,20 @@
* leveling in steps so you can manually adjust the Z height at each grid-point.
* With an LCD controller the process is guided step-by-step.
*/
//#define AUTO_BED_LEVELING_3POINT
//#define AUTO_BED_LEVELING_LINEAR
//#define AUTO_BED_LEVELING_BILINEAR
#define AUTO_BED_LEVELING_UBL
//#define MESH_BED_LEVELING
#ifdef SOVOL_FIXED_PROBE
//#define AUTO_BED_LEVELING_3POINT
//#define AUTO_BED_LEVELING_LINEAR
//#define AUTO_BED_LEVELING_BILINEAR
#define AUTO_BED_LEVELING_UBL
//#define MESH_BED_LEVELING
#endif
/**
* Normally G28 leaves leveling disabled on completion. Enable one of
* these options to restore the prior leveling state or to always enable
* leveling immediately after G28.
*/
#define RESTORE_LEVELING_AFTER_G28
#define RESTORE_LEVELING_AFTER_G28
//#define ENABLE_LEVELING_AFTER_G28
/**
@ -1872,7 +1878,9 @@
* - Allows Z homing only when XY positions are known and trusted.
* - If stepper drivers sleep, XY homing may be required again before Z homing.
*/
#define Z_SAFE_HOMING
#ifdef SOVOL_FIXED_PROBE
#define Z_SAFE_HOMING
#endif
#if ENABLED(Z_SAFE_HOMING)
#define Z_SAFE_HOMING_X_POINT X_CENTER // X point for Z homing
@ -2139,7 +2147,7 @@
*
* View the current statistics with M78.
*/
//#define PRINTCOUNTER
#define PRINTCOUNTER
#if ENABLED(PRINTCOUNTER)
#define PRINTCOUNTER_SAVE_INTERVAL 60 // (minutes) EEPROM save interval during print
#endif
@ -2309,7 +2317,7 @@
// If you have a speaker that can produce tones, enable it here.
// By default Marlin assumes you have a buzzer with a fixed frequency.
//
#define SPEAKER
#define SPEAKER
//
// The duration and frequency for the UI feedback sound.
@ -2318,7 +2326,7 @@
// Note: Test audio output with the G-Code:
// M300 S<frequency Hz> P<duration ms>
//
//#define LCD_FEEDBACK_FREQUENCY_DURATION_MS 2
#define LCD_FEEDBACK_FREQUENCY_DURATION_MS 4
//#define LCD_FEEDBACK_FREQUENCY_HZ 5000
//=============================================================================

View file

@ -596,7 +596,7 @@
* Multiple extruders can be assigned to the same pin in which case
* the fan will turn on when any selected extruder is above the threshold.
*/
#define E0_AUTO_FAN_PIN FAN1_PIN
#define E0_AUTO_FAN_PIN FAN1_PIN
#define E1_AUTO_FAN_PIN -1
#define E2_AUTO_FAN_PIN -1
#define E3_AUTO_FAN_PIN -1
@ -1336,7 +1336,7 @@
#endif // HAS_MARLINUI_MENU
#if ANY(HAS_DISPLAY, DWIN_LCD_PROUI, DWIN_CREALITY_LCD_JYERSUI)
//#define SOUND_MENU_ITEM // Add a mute option to the LCD menu
#define SOUND_MENU_ITEM // Add a mute option to the LCD menu
#define SOUND_ON_DEFAULT // Buzzer/speaker default enabled state
#endif
@ -1361,7 +1361,7 @@
// #define LCD_DECIMAL_SMALL_XY
// Add an 'M73' G-code to set the current percentage
#define LCD_SET_PROGRESS_MANUALLY
//#define LCD_SET_PROGRESS_MANUALLY
// Show the E position (filament used) during printing
//#define LCD_SHOW_E_TOTAL
@ -1637,7 +1637,7 @@
*
* :[ 'LCD', 'ONBOARD', 'CUSTOM_CABLE' ]
*/
#define SDCARD_CONNECTION ONBOARD
#define SDCARD_CONNECTION ONBOARD
// Enable if SD detect is rendered useless (e.g., by using an SD extender)
//#define NO_SD_DETECT
@ -1748,7 +1748,7 @@
//#define STATUS_ALT_FAN_BITMAP // Use the alternative fan bitmap
//#define STATUS_FAN_FRAMES 3 // :[0,1,2,3,4] Number of fan animation frames
//#define STATUS_HEAT_PERCENT // Show heating in a progress bar
//#define BOOT_MARLIN_LOGO_ANIMATED // Animated Marlin logo. Costs ~3260 (or ~940) bytes of flash.
#define BOOT_MARLIN_LOGO_ANIMATED // Animated Marlin logo. Costs ~3260 (or ~940) bytes of flash.
// Frivolous Game Options
//#define MARLIN_BRICKOUT
@ -1760,7 +1760,7 @@
#if HAS_MARLINUI_U8GLIB || IS_DWIN_MARLINUI
// Show SD percentage next to the progress bar
//#define SHOW_SD_PERCENT
#define SHOW_SD_PERCENT
// Enable to save many cycles by drawing a hollow frame on Menu Screens
#define MENU_HOLLOW_FRAME
@ -1978,7 +1978,7 @@
#define BABYSTEPPING
#if ENABLED(BABYSTEPPING)
//#define INTEGRATED_BABYSTEPPING // EXPERIMENTAL integration of babystepping into the Stepper ISR
#define BABYSTEP_WITHOUT_HOMING
#define BABYSTEP_WITHOUT_HOMING
#define BABYSTEP_ALWAYS_AVAILABLE // Allow babystepping at all times (not just during movement).
//#define BABYSTEP_XY // Also enable X/Y Babystepping. Not supported on DELTA!
#define BABYSTEP_INVERT_Z false // Change if Z babysteps should go the other way
@ -2388,7 +2388,7 @@
#define SERIAL_OVERRUN_PROTECTION
// For serial echo, the number of digits after the decimal point
#define SERIAL_FLOAT_PRECISION 4
#define SERIAL_FLOAT_PRECISION 4
/**
* Set the number of proportional font spaces required to fill up a typical character space.
@ -2763,7 +2763,7 @@
#define INTERPOLATE true
#if AXIS_IS_TMC(X)
#define X_CURRENT 800 // (mA) RMS current. Multiply by 1.414 for peak current.
#define X_CURRENT 580 // (mA) RMS current. Multiply by 1.414 for peak current.
#define X_CURRENT_HOME X_CURRENT // (mA) RMS current for sensorless homing
#define X_MICROSTEPS 16 // 0..256
#define X_RSENSE 0.11
@ -2783,7 +2783,7 @@
#endif
#if AXIS_IS_TMC(Y)
#define Y_CURRENT 800
#define Y_CURRENT 580
#define Y_CURRENT_HOME Y_CURRENT
#define Y_MICROSTEPS 16
#define Y_RSENSE 0.11
@ -2803,7 +2803,7 @@
#endif
#if AXIS_IS_TMC(Z)
#define Z_CURRENT 800
#define Z_CURRENT 580
#define Z_CURRENT_HOME Z_CURRENT
#define Z_MICROSTEPS 16
#define Z_RSENSE 0.11
@ -2903,7 +2903,7 @@
#endif
#if AXIS_IS_TMC(E0)
#define E0_CURRENT 800
#define E0_CURRENT 650
#define E0_MICROSTEPS 16
#define E0_RSENSE 0.11
#define E0_CHAIN_POS -1
@ -3188,9 +3188,9 @@
#if EITHER(SENSORLESS_HOMING, SENSORLESS_PROBING)
// TMC2209: 0...255. TMC2130: -64...63
#define X_STALL_SENSITIVITY 8
#define X_STALL_SENSITIVITY 75
#define X2_STALL_SENSITIVITY X_STALL_SENSITIVITY
#define Y_STALL_SENSITIVITY 8
#define Y_STALL_SENSITIVITY 75
#define Y2_STALL_SENSITIVITY Y_STALL_SENSITIVITY
//#define Z_STALL_SENSITIVITY 8
//#define Z2_STALL_SENSITIVITY Z_STALL_SENSITIVITY
@ -3203,7 +3203,7 @@
//#define V_STALL_SENSITIVITY 8
//#define W_STALL_SENSITIVITY 8
//#define SPI_ENDSTOPS // TMC2130 only
#define IMPROVE_HOMING_RELIABILITY
#define IMPROVE_HOMING_RELIABILITY
#endif
/**
@ -3222,13 +3222,13 @@
* Beta feature!
* Create a 50/50 square wave step pulse optimal for stepper drivers.
*/
// #define SQUARE_WAVE_STEPPING
#define SQUARE_WAVE_STEPPING
/**
* Enable M122 debugging command for TMC stepper drivers.
* M122 S0/1 will enable continuous reporting.
*/
#define TMC_DEBUG
#define TMC_DEBUG
/**
* You can set your own advanced settings by filling in predefined functions.
@ -3928,7 +3928,7 @@
* Add the M16 G-code to compare a string to the MACHINE_NAME.
* M16 with a non-matching string causes the printer to halt.
*/
#define EXPECTED_PRINTER_CHECK
#define EXPECTED_PRINTER_CHECK
/**
* Disable all Volumetric extrusion options

View file

@ -1,50 +0,0 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2022 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
*
* Based on Sprinter and grbl.
* Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once
/**
* Custom Status Screen bitmap
*
* Place this file in the root with your configuration files
* and enable CUSTOM_STATUS_SCREEN_IMAGE in Configuration.h.
*
* Use the Marlin Bitmap Converter to make your own:
* https://marlinfw.org/tools/u8glib/converter.html
*/
#define STATUS_LOGO_Y 8
#define STATUS_LOGO_WIDTH 32
const unsigned char status_logo_bmp[] PROGMEM = {
B00011110,B11110111,B10011100,B00000100,
B00111111,B01100011,B00111110,B00001100,
B01100011,B01100011,B01100011,B00111100,
B01100000,B01100011,B01100011,B00001100,
B01100000,B01100011,B01100011,B00001100,
B00111100,B01100011,B01100011,B00001100,
B00011110,B00110110,B01100011,B00001100,
B00000011,B00110110,B01100011,B00001100,
B00000011,B00110110,B01100011,B00001100,
B01100011,B00011100,B01100011,B00001100,
B01111110,B00011100,B00111110,B00111111,
B00111100,B00001000,B00011100,B00111111
};

View file

@ -3,10 +3,7 @@
These files configure Marlin for a Sovol SV01 with `MOTHERBOARD BOARD_BTT_SKR_MINI_E3_V3_0` board installed with silent stepper drivers and a Fixed Probe.
The probe is configured to use the Z endstop port on the board.
This Is For test only.
### Probe and Offsets
!!!! caution !!! use at your own risk
### Nozzle to Probe Offsets
You'll need to to adjust the `NOZZLE_TO_PROBE_OFFSET` values according to your probe's mounting location.
- Enable the `SOVOL_FIXED_PROBE` option for a `FIXED_MOUNTED_PROBE`.
- You'll need to to adjust the `NOZZLE_TO_PROBE_OFFSET` values according to your probe's mounting location.

View file

@ -0,0 +1,68 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2022 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
*
* Based on Sprinter and grbl.
* Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
/**
* Custom Status Screen bitmap
*
* Place this file in the root with your configuration files
* and enable CUSTOM_STATUS_SCREEN_IMAGE in Configuration.h.
*
* Use the Marlin Bitmap Converter to make your own:
* http://marlinfw.org/tools/u8glib/converter.html
*/
#pragma once
#define STATUS_LOGO_WIDTH 32
const unsigned char status_logo_bmp[] PROGMEM = {
B00000000,B00000000,B00000000,B00000000,
B00000000,B00011111,B11000000,B00000000,
B00000000,B11111111,B11111000,B00000000,
B00000000,B11111111,B11111000,B00000000,
B00000011,B11111111,B11111110,B00000000,
B00000111,B11111111,B11100111,B00000000,
B00001111,B11111111,B11000011,B10000000,
B00001111,B11111111,B00000001,B10000000,
B00111111,B11111100,B00000000,B01000000,
B00111111,B11111000,B00000000,B01100000,
B00111111,B11110000,B00000000,B11100000,
B01111111,B11100000,B00000011,B11110000,
B01111111,B10000000,B00000111,B11110000,
B01111111,B00000000,B00001111,B11110000,
B01111100,B00000000,B11111111,B11110000,
B01111000,B00000001,B11111111,B11110000,
B01110000,B00000000,B01111111,B11110000,
B01111100,B00000000,B00111111,B11110000,
B00111111,B00000000,B00001111,B11100000,
B00111111,B11100000,B00000111,B11100000,
B00111111,B11100000,B00000011,B11000000,
B00001111,B00000000,B00000111,B10000000,
B00001110,B00000000,B01111111,B10000000,
B00000000,B00000011,B11111111,B00000000,
B00000000,B00001111,B11111110,B00000000,
B00000000,B11111111,B11111000,B00000000,
B00000000,B01111111,B11110000,B00000000,
B00000000,B00011111,B11000000,B00000000,
B00000000,B00000000,B00000000,B00000000
};