Changes to the original Marlin 2.0.7.1 files for SKR Mini E3 v2.0, Ender 3.
Use this guide with other marlin versions at your own risk.
Getting started
Essential changes
Manual Mesh Bed Leveling
Filament Runout Sensor/Detection and Filament Change
Linear Advance
All in one Retraction testing
Compiling firmware
Flashing firmware
Updating/Reflashing firmware
Printable Direct Drive mod
Changelog
Install VSCode and Git GUI according to this Installation guide
Open Marlin in VSCode as it is in this Comment
(You can choose the marlin version at the bottom left corner of the window, the default is the latest 2.0.x)
Modify your Marlin based on this guide
(Not necessary step / Use it at your own risk) Optionally you can use the marlin example file for this board. (config/examples/Creality/Ender-3/BigTreeTech SKR Mini E3 2.0/)
Teaching Tech - Beginner guide to editing Marlin firmware - step by step
E - Enable | C - Change | E&C - Enable and Change | D - Disable
Enable/Disable by deleting/placing // at the start of a line.
Essential / useful changes to platformio.ini, Configuration.h and Configuration_adv.h files in /Marlin folder.
C
default_envs =STM32F103RC_btt_512K
E
SHOW_CUSTOM_BOOTSCREENE
CUSTOM_STATUS_SCREEN_IMAGE(Copy
_Bootscreen.h/_Statusscreen.hfile from Marlin\config\examples\Creality\Ender-3\ to Marlin\Marlin folder)Download it from the Marlin GitHub.
C
SERIAL_PORT2E
SERIAL_PORT_2-1C
BAUDRATE115200(BTT default baudrate)
C
MOTHERBOARDBOARD_BTT_SKR_MINI_E3_V2_0E&C
CUSTOM_MACHINE_NAME"Ender-3"C
TEMP_SENSOR_BED1C
BED_MAXTEMP125(By setting it to 70 for a magnetic bed that works up to 70 °C, marlin will only let it heat up to 60, for safety reasons)
C
DEFAULT_Kp21.73C
DEFAULT_Ki1.54C
DEFAULT_Kd76.55(PID autotune for faster heating and more stable temperature)
E
PIDTEMPBED(You don't need to enable
PIDTEMPBED, if you are satisfied with your heated bed, but by calibrating the heated bed, it could heat up faster and maintain temperature more accurately)(Be sure to do a PID autotune for your heated bed after you enabled it in your firmware, otherwise it will trigger Thermal Runaway Protection when heating up the bed. You can find the guide under the PID autotune section, later in this post)
C
EXTRUDE_MAXLENGTH200(Or measure the length from the extruder gear to the nozzle through the PTFE tube)
E&C
X_DRIVER_TYPETMC2209E&C
Y_DRIVER_TYPETMC2209E&C
Z_DRIVER_TYPETMC2209E&C
E0_DRIVER_TYPETMC2209C
DEFAULT_AXIS_STEPS_PER_UNIT{ 80, 80, 400, 93 }C
DEFAULT_MAX_FEEDRATE{ 500, 500, 20, 120 }C
DEFAULT_ACCELERATION500C
DEFAULT_RETRACT_ACCELERATION500C
DEFAULT_TRAVEL_ACCELERATION500E
CLASSIC_JERKE&C
TRAVEL_EXTRA_XYJERK5.0C
DEFAULT_EJERK15.0D
S_CURVE_ACCELERATION(Enable if you don't use Linear Advance. LIN_ADVANCE and S_CURVE_ACCELERATION may not play well together)
C
INVERT_X_DIRtrueC
INVERT_E0_DIRtrueC
X_BED_SIZE235C
Y_BED_SIZE235C
Z_MAX_POS250E
LEVEL_BED_CORNERSC
LEVEL_CORNERS_HEIGHT0.1(Set it to the thickness (mm) of the paper/credit card/feeler gauge you want to use)
C
HOMING_FEEDRATE_XY(50*60)E
EEPROM_SETTINGSE
EEPROM_AUTO_INITE
NOZZLE_PARK_FEATURED
DISPLAY_CHARSET_HD44780E
SDSUPPORTE
CR10_STOCKDISPLAYE
FAN_SOFT_PWM
E
HOTEND_IDLE_TIMEOUTE
USE_CONTROLLER_FANE&C
CONTROLLER_FAN_PINPC7E
CONTROLLER_FAN_EDITABLEC
HOMING_BUMP_MM{ 5, 5, 2 }E
QUICK_HOMEC
SLOWDOWN_DIVISOR8D
ADAPTIVE_STEP_SMOOTHINGE
STATUS_MESSAGE_SCROLLINGE
SHOW_REMAINING_TIMEE
USE_M73_REMAINING_TIMEE
ROTATE_PROGRESS_DISPLAYE
PRINT_PROGRESS_SHOW_DECIMALSE
SCROLL_LONG_FILENAMESE&C
SDCARD_CONNECTIONONBOARDE
STATUS_HEAT_PERCENTE
LIN_ADVANCE(Disable S-Curve Acc. if you want to use LA. LIN_ADVANCE and S_CURVE_ACCELERATION may not play well together)
C
LIN_ADVANCE_K0.00(You can find guide links to calibrate your K value under the Linear Advance section, later in this post)
E
EMERGENCY_PARSERC
X_CURRENT580C
Y_CURRENT580C
Z_CURRENT580C
E0_CURRENT650C
Y_SLAVE_ADDRESS2C
Z_SLAVE_ADDRESS1C
E0_SLAVE_ADDRESS3C
CHOPPER_TIMINGCHOPPER_DEFAULT_24VD
HYBRID_THRESHOLDE
SQUARE_WAVE_STEPPINGE
CANCEL_OBJECTS
(Use this if you don't have a bed leveling sensor, e.g. BLTouch)
Configuration.h
E
PROBE_MANUALLYE
MANUAL_PROBE_START_ZC
NOZZLE_TO_PROBE_OFFSET{ 0, 0, 0 }E
MESH_BED_LEVELINGE
RESTORE_LEVELING_AFTER_G28C
GRID_MAX_POINTS_X5 (Or change it accordingly to your needs)E
LCD_BED_LEVELING
Leveling:
Heat up your bed to the temperature you usually print on (e.g. 60°C) (Make sure that there are no plastic on the nozzle, that would alter the nozzles distance to the bed)
Select: Motion - Bed Leveling - Level Bed
Wait for Homing XYZ to complete
When Click to Begin appears, press the controller button to move to the first point
Use the controller wheel to adjust Z so that a piece of paper can just pass under the nozzle
Press the controller button to save the Z value and move to the next point
Repeat steps 4-5 until completed
Select: Configuration - Store settings to save the mesh to the EEPROM
Select: Motion - Fade height: Set it to 10
Select: Motion - Store settings
Make a test print, and as it prints you can change the nozzle distance to the bed in Motion - Bed Z with the controller wheel
Select: Configuration - Store settings
Marlin Bed Leveling (Manual)
Teaching Tech Manual Mesh Bed Levelling
Crosslink Ender 3 Mesh Bed Leveling
E0-STOP (PC15)
Configuration.h
E
FILAMENT_RUNOUT_SENSORE&C
FILAMENT_RUNOUT_DISTANCE_MM5C
EXTRUDE_MAXLENGTH100(Length from the extruder gear to the nozzle + 10)
E
NOZZLE_PARK_FEATUREC
NOZZLE_PARK_Z_FEEDRATE3
Configuration_adv.h
E
ADVANCED_PAUSE_FEATUREC
PAUSE_PARK_RETRACT_FEEDRATE30(Change it to your retraction speed)
C
PAUSE_PARK_RETRACT_LENGTH6(Change it to your retraction length)
C
FILAMENT_CHANGE_UNLOAD_LENGTH100(Length from the extruder gear to the nozzle OR set it to 0 for manual filament extraction)
(This needs to be less than or equal to
EXTRUDE_MAXLENGTH)
C
FILAMENT_CHANGE_FAST_LOAD_LENGTH0(Length from the extruder gear to the nozzle OR set it to 0 for manual filament insertion)
(This needs to be less than or equal to
EXTRUDE_MAXLENGTH)
E
ADVANCED_PAUSE_CONTINUOUS_PURGEC
FILAMENT_CHANGE_ALERT_BEEPS10(10 might be too much/annoying, if so, lower it to your liking)
E
PARK_HEAD_ON_PAUSEE
FILAMENT_LOAD_UNLOAD_GCODES(Adds
M701/M702Load/Unload G-code, and Load/Unload in the LCD Prepare menu.)
Teaching Tech
Chris Riley
Crosslink
Linear Advance K-factor Calibration
Teaching Tech Linear advance video guide
Chris Riley Linear advance video guide
KARL JOHNSON
Use VSCode with the PlatformIO extension and Git GUI.
Chris Riley
VSCode installation guide for Marlin 2.0.
You can find the firmware file in .pio/build/STM32F103RC_btt_512K/firmware.bin
Place the firmware.bin file onto your SD card, them insert it into your printer and turn it on. After a short 20-30 sec blank screen your printer should be ready.
FusionSource - 3D Printing - BIGTREETECH SKR MINI | Firmware Update| THE EASY WAY
If after ~50-60 sec there is still a blank screen, don't worry, just turn off your printer. A long blank screen could mean that the firmware you just tried is bad in some way. You should recheck your configurations, then try reflashing it. Comment.
(Comment) You don't need to redo all the changes every time you want to update to a newer version of marlin, just copy your edited files to the new marlin and compare them in VSC Source Control (Ctrl+Shift+G), and copy anything that is new or changed.
Not all changes will be applied on a firmware update. For that you will need to reset your printer settings by Restore Defaults (M502) in menu - Configuration, then Save Settings (M500). It will reset your settings back to your edited firmware values.
Printable Direct Drive extruder mount for Ender 3, Ender 5, CR-10 etc.
07.03.
+
ENDSTOP_INTERRUPTS_FEATURE(18526)
07.12.
Follow this comment if you are experiencing freezing mid print.
07.13.
+ Teaching Tech - Beginner guide to editing Marlin firmware - step by step
07.15.
Disable
ADAPTIVE_STEP_SMOOTHINGComment
07.17.
Changed
FAN1_PINtoPC7
07.27.
Changed from Junction Deviation to Classic Jerk
Updated to Marlin 2.0.6
+
ASSISTED_TRAMMING(G35)-
BLOCK_BUFFER_SIZE,BUFSIZE,TX_BUFFER_SIZE. (PR)
07.28.
Updated
ASSISTED_TRAMMING
07.29.
Mesh bed leveling clarification.
+
TRAMMING_SCREW_THREAD
08.03.
Moved ABL section to an external guide
08.28.
Updated to 2.0.6.1 -> You most likely need to update your configs
-
MANUAL_FEEDRATE
08.31.
-
MONITOR_DRIVER_STATUS
09.10.
-
HOME_BEFORE_FILAMENT_CHANGE
09.29.
Updated to 2.0.7 -> You most likely need to update your configs
+
EMERGENCY_PARSER
10.10.
Updated to 2.0.7.1, No changes needed.
10.28.
+
MANUAL_PROBE_START_Z
You can tip the author here
Original Post from here: https://www.reddit.com/r/ender3/comments/h8y1ia/marlin_20x_guide_skr_mini_e3_v20_ender_3/
Business IT Solutions - https://bizhostnc.com
Plastic Process Engineering
