As Promised, I will try and explain the changes I made to the firmware. I am going to try and keep it simple… Just the settings you need to get a SKR E3 Turbo working with CR-10 V2/3 with a BLTouch. Check out Google if you have never compiled software for your printer, there are many good videos. I am assuming you have a good knowledge of the firmware and only need the stuff to get the board working.
I will be using github updates for this. Since color does not appear to be available here… I am only putting the line after it is changed, but it will include the line number. I will be using the newest main branch for this example, and the Configuration files for Creality CR10 V2.
Let’s get started. First copy over the current version of Marlin 2 and the corresponding examples files. Copy all the example files from Creality/CR10v2 to the main Marlin directory.
At this point you have the setup for a Non-BLTouch CR10 v2/3 with bowden extruder and original motherboard.
The files you will need to change are:
configuration.h
configuration_adv.h
pins_BTT_SKR_E3_TURBO.h
platformio.ini
PLATFORMIO.ini
21 default_envs = LPC1769
pins_BTT_SKR_E3_TURBO.h
50 #define Z_STOP_PIN P1_22
configuration.h
115 #define SERIAL_PORT -1
121 #define SERIAL_PORT_2 0
139 #define MOTHERBOARD BOARD_BTT_SKR_E3_TURBO
471 #define HEATER_0_MAXTEMP 275
580 #define EXTRUDE_MAXLENGTH 600
664 #define Z_MIN_ENDSTOP_INVERTING false //(CR10V2_BLTOUCH) Set to true to invert the logic of the endstop.
667 #define Z_MAX_ENDSTOP_INVERTING false //(CR10V2_BLTOUCH) Set to true to invert the logic of the endstop.
668 #define Z_MIN_PROBE_ENDSTOP_INVERTING false //(CR10V2_BLTOUCH) Set to true to invert the logic of the probe.
686 #define X_DRIVER_TYPE TMC2209
687 #define Y_DRIVER_TYPE TMC2209
688 #define Z_DRIVER_TYPE TMC2209
694 #define E0_DRIVER_TYPE TMC2209
749 #define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 409.8 }
756 #define DEFAULT_MAX_FEEDRATE { 750, 750, 20, 75 }
871 //#if ENABLED(CR10V2_BLTOUCH)
872 //#define Z_STOP_PIN 19 // Source DWIN2
873 //#endif
1102 #define INVERT_X_DIR true
1103 #define INVERT_Y_DIR true
1104 #define INVERT_Z_DIR false
1124 #define Z_HOMING_HEIGHT 10 // (mm) Minimal Z height before homing (G28) for Z clearance above the bed, clamps, …
1127 #define Z_AFTER_HOMING 10 // (mm) Height to move to after homing Z
1302 #define GRID_MAX_POINTS_X 4
1395 #define MANUAL_X_HOME_POS X_MIN_POS -1
1396 #define MANUAL_Y_HOME_POS Y_MIN_POS -1
1838 #define SPEAKER
2011 //#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
2097 #define CR10_STOCKDISPLAY
A Few Notes:
Some of these are specific to my printer, and you may need to re-adjust
471, 580, 756, 1124, 1127, 1395, and 1396 are my settings feel free to set anything you like
749 is with a direct drive extruder… If you have Single drive Bowden, ignore But I still recommend you do an extruder length test and adjustment.
1302 I found 25 probes was a bit much… dropped it to 16
configuration_adv.h
376 #define HOTEND_IDLE_TIMEOUT
378 #define HOTEND_IDLE_TIMEOUT_SEC (10*60) // (seconds) Time without extruder movement to trigger protection
379 #define HOTEND_IDLE_MIN_TRIGGER 100 // (°C) Minimum temperature to enable hotend protection
479 #define E0_AUTO_FAN_PIN FAN1_PIN
1621 #define BABYSTEP_MULTIPLICATOR_Z 10 // (steps or mm) Steps or millimeter distance for each Z babystep
2595 #define TMC_DEBUG
A Few Notes:
Only lines 479 and 2595 are necessary rest are optional.
The Currents for the Steppers are default… BE VERY CAREFUL HERE. Check video’s on how to set this.
Let me know if I missed anything.
Steve