Browse Source

✨ Creality CR-10 SmartPro (#24151)

Co-authored-by: Scott Lahteine <github@thinkyhead.com>
InsanityAutomation 2 years ago
parent
commit
64ebb78892
No account linked to committer's email address

+ 14
- 13
Marlin/src/core/boards.h View File

@@ -352,19 +352,20 @@
352 352
 #define BOARD_CREALITY_V431_D         4049  // Creality v4.3.1d (STM32F103RC / STM32F103RE)
353 353
 #define BOARD_CREALITY_V452           4050  // Creality v4.5.2 (STM32F103RC / STM32F103RE)
354 354
 #define BOARD_CREALITY_V453           4051  // Creality v4.5.3 (STM32F103RC / STM32F103RE)
355
-#define BOARD_CREALITY_V24S1          4052  // Creality v2.4.S1 (STM32F103RC / STM32F103RE) v101 as found in the Ender 7
356
-#define BOARD_CREALITY_V24S1_301      4053  // Creality v2.4.S1_301 (STM32F103RC / STM32F103RE) as found in the Ender 3 S1
357
-#define BOARD_TRIGORILLA_PRO          4054  // Trigorilla Pro (STM32F103ZE)
358
-#define BOARD_FLY_MINI                4055  // FLYmaker FLY MINI (STM32F103RC)
359
-#define BOARD_FLSUN_HISPEED           4056  // FLSUN HiSpeedV1 (STM32F103VE)
360
-#define BOARD_BEAST                   4057  // STM32F103RE Libmaple-based controller
361
-#define BOARD_MINGDA_MPX_ARM_MINI     4058  // STM32F103ZE Mingda MD-16
362
-#define BOARD_GTM32_PRO_VD            4059  // STM32F103VE controller
363
-#define BOARD_ZONESTAR_ZM3E2          4060  // Zonestar ZM3E2    (STM32F103RC)
364
-#define BOARD_ZONESTAR_ZM3E4          4061  // Zonestar ZM3E4 V1 (STM32F103VC)
365
-#define BOARD_ZONESTAR_ZM3E4V2        4062  // Zonestar ZM3E4 V2 (STM32F103VC)
366
-#define BOARD_ERYONE_ERY32_MINI       4063  // Eryone Ery32 mini (STM32F103VE)
367
-#define BOARD_PANDA_PI_V29            4064  // Panda Pi V2.9 - Standalone (STM32F103RC)
355
+#define BOARD_CREALITY_V24S1          4052  // Creality v2.4.S1 (STM32F103RC / STM32F103RE) v101 as found in the Ender-7
356
+#define BOARD_CREALITY_V24S1_301      4053  // Creality v2.4.S1_301 (STM32F103RC / STM32F103RE) v301 as found in the Ender-3 S1
357
+#define BOARD_CREALITY_V25S1          4054  // Creality v2.5.S1 (STM32F103RE) as found in the CR-10 Smart Pro
358
+#define BOARD_TRIGORILLA_PRO          4055  // Trigorilla Pro (STM32F103ZE)
359
+#define BOARD_FLY_MINI                4056  // FLYmaker FLY MINI (STM32F103RC)
360
+#define BOARD_FLSUN_HISPEED           4057  // FLSUN HiSpeedV1 (STM32F103VE)
361
+#define BOARD_BEAST                   4058  // STM32F103RE Libmaple-based controller
362
+#define BOARD_MINGDA_MPX_ARM_MINI     4059  // STM32F103ZE Mingda MD-16
363
+#define BOARD_GTM32_PRO_VD            4060  // STM32F103VE controller
364
+#define BOARD_ZONESTAR_ZM3E2          4061  // Zonestar ZM3E2    (STM32F103RC)
365
+#define BOARD_ZONESTAR_ZM3E4          4062  // Zonestar ZM3E4 V1 (STM32F103VC)
366
+#define BOARD_ZONESTAR_ZM3E4V2        4063  // Zonestar ZM3E4 V2 (STM32F103VC)
367
+#define BOARD_ERYONE_ERY32_MINI       4064  // Eryone Ery32 mini (STM32F103VE)
368
+#define BOARD_PANDA_PI_V29            4065  // Panda Pi V2.9 - Standalone (STM32F103RC)
368 369
 
369 370
 //
370 371
 // ARM Cortex-M4F

+ 2
- 0
Marlin/src/pins/pins.h View File

@@ -583,6 +583,8 @@
583 583
   #include "stm32f1/pins_CREALITY_V24S1.h"      // STM32F1                                env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple
584 584
 #elif MB(CREALITY_V24S1_301)
585 585
   #include "stm32f1/pins_CREALITY_V24S1_301.h"  // STM32F1                                env:STM32F103RE_creality env:STM32F103RE_creality_xfer env:STM32F103RC_creality env:STM32F103RC_creality_xfer env:STM32F103RE_creality_maple
586
+#elif MB(CREALITY_V25S1)
587
+  #include "stm32f1/pins_CREALITY_V25S1.h"      // STM32F1                                env:STM32F103RE_creality_smartPro env:STM32F103RE_creality_smartPro_maple
586 588
 #elif MB(TRIGORILLA_PRO)
587 589
   #include "stm32f1/pins_TRIGORILLA_PRO.h"      // STM32F1                                env:trigorilla_pro env:trigorilla_pro_maple
588 590
 #elif MB(FLY_MINI)

+ 1
- 1
Marlin/src/pins/stm32f1/pins_CREALITY_V24S1.h View File

@@ -22,7 +22,7 @@
22 22
 #pragma once
23 23
 
24 24
 /**
25
- * Creality v2.4.S1 (STM32F103RE / STM32F103RC) v101 as found in the Ender 7 board pin assignments
25
+ * Creality v2.4.S1 (STM32F103RE / STM32F103RC) v101 as found in the Ender 7
26 26
  */
27 27
 
28 28
 #define BOARD_INFO_NAME      "Creality v2.4.S1 V101"

+ 152
- 0
Marlin/src/pins/stm32f1/pins_CREALITY_V25S1.h View File

@@ -0,0 +1,152 @@
1
+/**
2
+ * Marlin 3D Printer Firmware
3
+ * Copyright (c) 2022 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
4
+ *
5
+ * Based on Sprinter and grbl.
6
+ * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
7
+ *
8
+ * This program is free software: you can redistribute it and/or modify
9
+ * it under the terms of the GNU General Public License as published by
10
+ * the Free Software Foundation, either version 3 of the License, or
11
+ * (at your option) any later version.
12
+ *
13
+ * This program is distributed in the hope that it will be useful,
14
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
+ * GNU General Public License for more details.
17
+ *
18
+ * You should have received a copy of the GNU General Public License
19
+ * along with this program.  If not, see <https://www.gnu.org/licenses/>.
20
+ *
21
+ */
22
+#pragma once
23
+
24
+/**
25
+ * Creality v2.5.S1 (STM32F103RE / STM32F103RC) as found in the CR-10 Smart Pro
26
+ */
27
+
28
+#include "env_validate.h"
29
+
30
+#if HAS_MULTI_HOTEND || E_STEPPERS > 1
31
+  #error "Creality V2.5.S1 only supports one hotend / E-stepper. Comment out this line to continue."
32
+#endif
33
+
34
+#define BOARD_INFO_NAME      "Creality v2.5.S1"
35
+#define DEFAULT_MACHINE_NAME "Creality3D"
36
+
37
+//
38
+// Release PB4 (Y_ENABLE_PIN) from JTAG NRST role
39
+//
40
+#define DISABLE_DEBUG
41
+
42
+//
43
+// EEPROM
44
+//
45
+#if NO_EEPROM_SELECTED
46
+  #define IIC_BL24CXX_EEPROM                      // EEPROM on I2C-0
47
+  //#define SDCARD_EEPROM_EMULATION
48
+  //#define FLASH_EEPROM_EMULATION
49
+#endif
50
+
51
+#if ENABLED(IIC_BL24CXX_EEPROM)
52
+  #define IIC_EEPROM_SDA                  PA11
53
+  #define IIC_EEPROM_SCL                  PA12
54
+  #define MARLIN_EEPROM_SIZE             0x800  // 2K (24C16)
55
+#elif EITHER(SDCARD_EEPROM_EMULATION, FLASH_EEPROM_EMULATION)
56
+  #define MARLIN_EEPROM_SIZE             0x800  // 2K
57
+#endif
58
+
59
+//
60
+// Limit Switches
61
+//
62
+#define X_STOP_PIN                          PC4
63
+#define Y_STOP_PIN                          PC5
64
+
65
+#if ENABLED(BLTOUCH)
66
+  #define Z_STOP_PIN                        -1
67
+  #define SERVO0_PIN                        PC14  // BLTouch OUT PIN
68
+  #ifndef Z_MIN_PROBE_PIN
69
+    #define Z_MIN_PROBE_PIN                 PC15  // BLTouch IN PIN
70
+  #endif
71
+#else
72
+  #define Z_STOP_PIN                        PC15
73
+  #if ENABLED(PROBE_ACTIVATION_SWITCH)
74
+    #define PROBE_TARE_PIN                  PC14
75
+    #define PROBE_ACTIVATION_SWITCH_PIN     PB2
76
+  #endif
77
+#endif
78
+
79
+//
80
+// Filament Runout Sensor
81
+//
82
+#if ENABLED(FILAMENT_RUNOUT_SENSOR)
83
+  #define FIL_RUNOUT_PIN                    PA15  // "Pulled-high"
84
+#endif
85
+
86
+//
87
+// Steppers
88
+//
89
+#define X_STEP_PIN                          PB8
90
+#define X_DIR_PIN                           PB7
91
+#define X_ENABLE_PIN                        PC3
92
+
93
+#define Y_STEP_PIN                          PB6
94
+#define Y_DIR_PIN                           PB5
95
+#define Y_ENABLE_PIN                X_ENABLE_PIN
96
+
97
+#define Z_STEP_PIN                          PB4
98
+#define Z_DIR_PIN                           PB3
99
+#define Z_ENABLE_PIN                X_ENABLE_PIN
100
+
101
+#define E0_STEP_PIN                         PC2
102
+#define E0_DIR_PIN                          PB9
103
+#define E0_ENABLE_PIN               X_ENABLE_PIN
104
+
105
+//
106
+// Temperature Sensors
107
+//
108
+#define TEMP_0_PIN                          PB1   // TH1
109
+#define TEMP_BED_PIN                        PB0   // TB1
110
+
111
+//
112
+// Heaters / Fans
113
+//
114
+#define HEATER_0_PIN                        PB14  // HEATER1
115
+#define HEATER_BED_PIN                      PB13  // HOT BED
116
+
117
+#define FAN_PIN                             PB15  // FAN
118
+#ifndef E0_AUTO_FAN_PIN
119
+  #define E0_AUTO_FAN_PIN                   PC13  // FAN
120
+#endif
121
+#define FAN_SOFT_PWM_REQUIRED
122
+
123
+//
124
+// SD Card
125
+//
126
+#define SD_DETECT_PIN                       PC7
127
+#define SDCARD_CONNECTION                ONBOARD
128
+#define ON_BOARD_SPI_DEVICE                    1
129
+#define ONBOARD_SD_CS_PIN                   PC12  // SDSS
130
+#define SDIO_SUPPORT
131
+#define NO_SD_HOST_DRIVE                          // This board's SD is only seen by the printer
132
+
133
+//
134
+// Misc. Functions
135
+//
136
+#define CASE_LIGHT_PIN                      PA7
137
+
138
+//
139
+// Suicide Power
140
+//
141
+#define PS_ON_PIN                           PA0
142
+#define MOTOR_CIRCUIT_PIN                   PA1
143
+
144
+//
145
+// Motor Protect
146
+//
147
+#define MOTOR_PROTECT_PIN                   PC0
148
+
149
+//
150
+// WiFi Reset
151
+//
152
+#define RESET_WIFI_PIN                      PB12

+ 5
- 5
Marlin/src/pins/stm32f1/pins_CREALITY_V4.h View File

@@ -41,6 +41,11 @@
41 41
 #define BOARD_NO_NATIVE_USB
42 42
 
43 43
 //
44
+// Release PB4 (Y_ENABLE_PIN) from JTAG NRST role
45
+//
46
+#define DISABLE_DEBUG
47
+
48
+//
44 49
 // EEPROM
45 50
 //
46 51
 #if NO_EEPROM_SELECTED
@@ -123,11 +128,6 @@
123 128
 #define E0_ENABLE_PIN               X_ENABLE_PIN
124 129
 
125 130
 //
126
-// Release PB4 (Y_ENABLE_PIN) from JTAG NRST role
127
-//
128
-#define DISABLE_DEBUG
129
-
130
-//
131 131
 // Temperature Sensors
132 132
 //
133 133
 #define TEMP_0_PIN                          PC5   // TH1

+ 21
- 34
Marlin/src/pins/stm32f1/pins_CREALITY_V4210.h View File

@@ -41,33 +41,23 @@
41 41
 #define BOARD_NO_NATIVE_USB
42 42
 
43 43
 //
44
+// Release PB4 (Y_ENABLE_PIN) from JTAG NRST role
45
+//
46
+#define DISABLE_DEBUG
47
+
48
+//
44 49
 // EEPROM
45 50
 //
46 51
 #if NO_EEPROM_SELECTED
47
-  // FLASH
48
-  //#define FLASH_EEPROM_EMULATION
49
-
50
-  // I2C
51
-  #define IIC_BL24CXX_EEPROM                      // EEPROM on I2C-0 used only for display settings
52
-  #if ENABLED(IIC_BL24CXX_EEPROM)
53
-    #define IIC_EEPROM_SDA                  PA11
54
-    #define IIC_EEPROM_SCL                  PA12
55
-    #define MARLIN_EEPROM_SIZE             0x800  // 2K (24C16)
56
-  #else
57
-    #define SDCARD_EEPROM_EMULATION               // SD EEPROM until all EEPROM is BL24CXX
58
-    #define MARLIN_EEPROM_SIZE             0x800  // 2K
59
-  #endif
60
-
61
-  // SPI
62
-  //#define SPI_EEPROM                            // EEPROM on SPI-0
63
-  //#define SPI_CHAN_EEPROM1  ?
64
-  //#define SPI_EEPROM1_CS_PIN    ?
65
-
66
-  // 2K EEPROM
67
-  //#define SPI_EEPROM2_CS_PIN    ?
68
-
69
-  // 32Mb FLASH
70
-  //#define SPI_FLASH_CS_PIN  ?
52
+  #define IIC_BL24CXX_EEPROM                      // EEPROM on I2C-0
53
+#endif
54
+#if ENABLED(IIC_BL24CXX_EEPROM)
55
+  #define IIC_EEPROM_SDA                    PA11
56
+  #define IIC_EEPROM_SCL                    PA12
57
+  #define MARLIN_EEPROM_SIZE               0x800  // 2K (24C16)
58
+#else
59
+  #define SDCARD_EEPROM_EMULATION                 // SD EEPROM until all EEPROM is BL24CXX
60
+  #define MARLIN_EEPROM_SIZE               0x800  // 2K
71 61
 #endif
72 62
 
73 63
 //
@@ -82,7 +72,9 @@
82 72
 #define Y_STOP_PIN                          PA7
83 73
 #define Z_STOP_PIN                          PA5
84 74
 
85
-#define Z_MIN_PROBE_PIN                     PA5   // BLTouch IN
75
+#ifndef Z_MIN_PROBE_PIN
76
+  #define Z_MIN_PROBE_PIN                   PA5   // BLTouch IN
77
+#endif
86 78
 
87 79
 //
88 80
 // Filament Runout Sensor
@@ -94,42 +86,37 @@
94 86
 //
95 87
 // Steppers
96 88
 //
97
-#define X_ENABLE_PIN                        PC3
98 89
 #ifndef X_STEP_PIN
99 90
   #define X_STEP_PIN                        PC2
100 91
 #endif
101 92
 #ifndef X_DIR_PIN
102 93
   #define X_DIR_PIN                         PB9
103 94
 #endif
95
+#define X_ENABLE_PIN                        PC3
104 96
 
105
-#define Y_ENABLE_PIN                        PC3
106 97
 #ifndef Y_STEP_PIN
107 98
   #define Y_STEP_PIN                        PB8
108 99
 #endif
109 100
 #ifndef Y_DIR_PIN
110 101
   #define Y_DIR_PIN                         PB7
111 102
 #endif
103
+#define Y_ENABLE_PIN                X_ENABLE_PIN
112 104
 
113
-#define Z_ENABLE_PIN                        PC3
114 105
 #ifndef Z_STEP_PIN
115 106
   #define Z_STEP_PIN                        PB6
116 107
 #endif
117 108
 #ifndef Z_DIR_PIN
118 109
   #define Z_DIR_PIN                         PB5
119 110
 #endif
111
+#define Z_ENABLE_PIN                X_ENABLE_PIN
120 112
 
121
-#define E0_ENABLE_PIN                       PC3
122 113
 #ifndef E0_STEP_PIN
123 114
   #define E0_STEP_PIN                       PB4
124 115
 #endif
125 116
 #ifndef E0_DIR_PIN
126 117
   #define E0_DIR_PIN                        PB3
127 118
 #endif
128
-
129
-//
130
-// Release PB4 (Y_ENABLE_PIN) from JTAG NRST role
131
-//
132
-#define DISABLE_DEBUG
119
+#define E0_ENABLE_PIN               X_ENABLE_PIN
133 120
 
134 121
 //
135 122
 // Temperature Sensors

+ 14
- 0
buildroot/share/PlatformIO/ldscripts/crealityPro.ld View File

@@ -0,0 +1,14 @@
1
+MEMORY
2
+{
3
+  ram (rwx) : ORIGIN = 0x20000000, LENGTH = 64K - 40
4
+  rom (rx)  : ORIGIN = 0x08010000, LENGTH = 512K - 64K
5
+}
6
+
7
+/* Provide memory region aliases for common.inc */
8
+REGION_ALIAS("REGION_TEXT", rom);
9
+REGION_ALIAS("REGION_DATA", ram);
10
+REGION_ALIAS("REGION_BSS", ram);
11
+REGION_ALIAS("REGION_RODATA", rom);
12
+
13
+/* Let common.inc handle the real work. */
14
+INCLUDE common.inc

+ 8
- 0
ini/stm32f1-maple.ini View File

@@ -148,6 +148,14 @@ debug_tool           = jlink
148 148
 upload_protocol      = jlink
149 149
 
150 150
 #
151
+# Creality (STM32F103RET6)
152
+#
153
+[env:STM32F103RE_creality_smartPro_maple]
154
+extends              = env:STM32F103RE_creality_maple
155
+board_build.address  = 0x08010000
156
+board_build.ldscript = crealityPro.ld
157
+
158
+#
151 159
 # BigTree SKR Mini E3 V2.0 & DIP / SKR CR6 (STM32F103RET6 ARM Cortex-M3)
152 160
 #
153 161
 #   STM32F103RE_btt_maple ............. RET6

+ 5
- 0
ini/stm32f1.ini View File

@@ -153,6 +153,11 @@ board   = genericSTM32F103RE
153 153
 extends = STM32F103Rx_creality_xfer
154 154
 board   = genericSTM32F103RE
155 155
 
156
+[env:STM32F103RE_creality_smartPro]
157
+extends                     = STM32F103Rx_creality
158
+board_build.offset          = 0x10000
159
+board_upload.offset_address = 0x08010000
160
+
156 161
 #
157 162
 # Creality 256K (STM32F103RC)
158 163
 #

Loading…
Cancel
Save