Procházet zdrojové kódy

Fix some 8 extruders issues, GTR build (#17043)

Jason Smith před 4 roky
rodič
revize
cc822bf70f
No account linked to committer's email address

+ 1
- 0
.github/workflows/test-builds.yml Zobrazit soubor

@@ -53,6 +53,7 @@ jobs:
53 53
         - STM32F103VE_longer
54 54
         - STM32F407VE_black
55 55
         - BIGTREE_SKR_PRO
56
+        - BIGTREE_GTR_V1_0
56 57
         - mks_robin
57 58
         - ARMED
58 59
         - FYSETC_S6

+ 2
- 2
Marlin/src/inc/Conditionals_LCD.h Zobrazit soubor

@@ -443,9 +443,9 @@
443 443
 // Helper macros for extruder and hotend arrays
444 444
 #define HOTEND_LOOP() for (int8_t e = 0; e < HOTENDS; e++)
445 445
 #define ARRAY_BY_EXTRUDERS(V...) ARRAY_N(EXTRUDERS, V)
446
-#define ARRAY_BY_EXTRUDERS1(v1) ARRAY_BY_EXTRUDERS(v1, v1, v1, v1, v1, v1)
446
+#define ARRAY_BY_EXTRUDERS1(v1) ARRAY_BY_EXTRUDERS(v1, v1, v1, v1, v1, v1, v1, v1)
447 447
 #define ARRAY_BY_HOTENDS(V...) ARRAY_N(HOTENDS, V)
448
-#define ARRAY_BY_HOTENDS1(v1) ARRAY_BY_HOTENDS(v1, v1, v1, v1, v1, v1)
448
+#define ARRAY_BY_HOTENDS1(v1) ARRAY_BY_HOTENDS(v1, v1, v1, v1, v1, v1, v1, v1)
449 449
 
450 450
 #define DO_SWITCH_EXTRUDER (ENABLED(SWITCHING_EXTRUDER) && (DISABLED(SWITCHING_NOZZLE) || SWITCHING_EXTRUDER_SERVO_NR != SWITCHING_NOZZLE_SERVO_NR))
451 451
 #define SWITCHING_NOZZLE_TWO_SERVOS defined(SWITCHING_NOZZLE_E1_SERVO_NR)

+ 5
- 3
Marlin/src/module/temperature.cpp Zobrazit soubor

@@ -101,11 +101,13 @@
101 101
 
102 102
 #if HOTEND_USES_THERMISTOR
103 103
   #if ENABLED(TEMP_SENSOR_1_AS_REDUNDANT)
104
-    static void* heater_ttbl_map[2] = { (void*)HEATER_0_TEMPTABLE, (void*)HEATER_1_TEMPTABLE };
104
+    static const void* heater_ttbl_map[2] = { (void*)HEATER_0_TEMPTABLE, (void*)HEATER_1_TEMPTABLE };
105 105
     static constexpr uint8_t heater_ttbllen_map[2] = { HEATER_0_TEMPTABLE_LEN, HEATER_1_TEMPTABLE_LEN };
106 106
   #else
107
-    static void* heater_ttbl_map[HOTENDS] = ARRAY_BY_HOTENDS((void*)HEATER_0_TEMPTABLE, (void*)HEATER_1_TEMPTABLE, (void*)HEATER_2_TEMPTABLE, (void*)HEATER_3_TEMPTABLE, (void*)HEATER_4_TEMPTABLE, (void*)HEATER_5_TEMPTABLE);
108
-    static constexpr uint8_t heater_ttbllen_map[HOTENDS] = ARRAY_BY_HOTENDS(HEATER_0_TEMPTABLE_LEN, HEATER_1_TEMPTABLE_LEN, HEATER_2_TEMPTABLE_LEN, HEATER_3_TEMPTABLE_LEN, HEATER_4_TEMPTABLE_LEN, HEATER_5_TEMPTABLE_LEN);
107
+    #define NEXT_TEMPTABLE(N) ,HEATER_##N##_TEMPTABLE
108
+    #define NEXT_TEMPTABLE_LEN(N) ,HEATER_##N##_TEMPTABLE_LEN
109
+    static const void* heater_ttbl_map[HOTENDS] = ARRAY_BY_HOTENDS(HEATER_0_TEMPTABLE REPEAT_S(1, HOTENDS, NEXT_TEMPTABLE));
110
+    static constexpr uint8_t heater_ttbllen_map[HOTENDS] = ARRAY_BY_HOTENDS(HEATER_0_TEMPTABLE_LEN REPEAT_S(1, HOTENDS, NEXT_TEMPTABLE_LEN));
109 111
   #endif
110 112
 #endif
111 113
 

+ 1
- 1
Marlin/src/pins/pins.h Zobrazit soubor

@@ -35,7 +35,7 @@
35 35
  *    These numbers are the same in any pin mapping.
36 36
  */
37 37
 
38
-#define MAX_EXTRUDERS 6
38
+#define MAX_EXTRUDERS 8
39 39
 
40 40
 #if   MB(RAMPS_13_EFB, RAMPS_14_EFB, RAMPS_PLUS_EFB, RAMPS_14_RE_ARM_EFB, RAMPS_SMART_EFB, RAMPS_DUO_EFB, RAMPS4DUE_EFB)
41 41
   #define IS_RAMPS_EFB

+ 3
- 3
Marlin/src/pins/sensitive_pins.h Zobrazit soubor

@@ -278,9 +278,9 @@
278 278
 #endif
279 279
 
280 280
 #define _E6_CS
281
+#define _E6_MS1
281 282
 #define _E6_MS2
282 283
 #define _E6_MS3
283
-#define _E6_MS4
284 284
 
285 285
 #if E_NEEDED(6)
286 286
   #if PIN_EXISTS(E6_CS) && AXIS_HAS_SPI(E6)
@@ -302,9 +302,9 @@
302 302
 #endif
303 303
 
304 304
 #define _E7_CS
305
+#define _E7_MS1
306
+#define _E7_MS2
305 307
 #define _E7_MS3
306
-#define _E7_MS4
307
-#define _E7_MS5
308 308
 
309 309
 #if E_NEEDED(7)
310 310
   #if PIN_EXISTS(E7_CS) && AXIS_HAS_SPI(E7)

+ 4
- 4
Marlin/src/pins/stm32/pins_BTT_GTR_V1_0.h Zobrazit soubor

@@ -237,8 +237,8 @@
237 237
 #define TEMP_3_PIN         PA3   // T4 <-> E3
238 238
 #define TEMP_4_PIN         PF9   // T5 <-> E4
239 239
 #define TEMP_5_PIN         PF10  // T6 <-> E5
240
-//#define TEMP_6_PIN         PF7   // T7 <-> E6
241
-//#define TEMP_7_PIN         PF5   // T8 <-> E7
240
+#define TEMP_6_PIN         PF7   // T7 <-> E6
241
+#define TEMP_7_PIN         PF5   // T8 <-> E7
242 242
 
243 243
 #define TEMP_BED_PIN       PC0   // T0 <-> Bed
244 244
 
@@ -266,8 +266,8 @@
266 266
 #define HEATER_3_PIN       PD15  // Heater3
267 267
 #define HEATER_4_PIN       PD13  // Heater4
268 268
 #define HEATER_5_PIN       PD12  // Heater5
269
-//#define HEATER_6_PIN       PE13 // Heater6
270
-//#define HEATER_7_PIN       PI6  // Heater7
269
+#define HEATER_6_PIN       PE13 // Heater6
270
+#define HEATER_7_PIN       PI6  // Heater7
271 271
 
272 272
 #define HEATER_BED_PIN     PA2   // Hotbed
273 273
 

+ 39
- 0
buildroot/share/tests/BIGTREE_GTR_V1_0-tests Zobrazit soubor

@@ -0,0 +1,39 @@
1
+#!/usr/bin/env bash
2
+#
3
+# Build tests for BigTreeTech GTR 1.0
4
+#
5
+
6
+# exit on first failure
7
+set -e
8
+
9
+restore_configs
10
+opt_set MOTHERBOARD BOARD_BTT_GTR_V1_0
11
+opt_set SERIAL_PORT -1
12
+opt_set EXTRUDERS 8
13
+opt_set TEMP_SENSOR_1 1
14
+opt_set TEMP_SENSOR_2 1
15
+opt_set TEMP_SENSOR_3 1
16
+opt_set TEMP_SENSOR_4 1
17
+opt_set TEMP_SENSOR_5 1
18
+opt_set TEMP_SENSOR_6 1
19
+opt_set TEMP_SENSOR_7 1
20
+# Not necessary to enable auto-fan for all extruders to hit problematic code paths
21
+opt_set E0_AUTO_FAN_PIN PC10
22
+opt_set E1_AUTO_FAN_PIN PC11
23
+opt_set E2_AUTO_FAN_PIN PC12
24
+exec_test $1 $2 "BigTreeTech GTR 8 Extruders with Auto-Fan"
25
+
26
+restore_configs
27
+opt_set MOTHERBOARD BOARD_BTT_GTR_V1_0
28
+opt_set SERIAL_PORT -1
29
+opt_set EXTRUDERS 6
30
+opt_set TEMP_SENSOR_1 1
31
+opt_set TEMP_SENSOR_2 1
32
+opt_set TEMP_SENSOR_3 1
33
+opt_set TEMP_SENSOR_4 1
34
+opt_set TEMP_SENSOR_5 1
35
+opt_set NUM_Z_STEPPER_DRIVERS 3
36
+exec_test $1 $2 "BigTreeTech GTR 6 Extruders Triple Z"
37
+
38
+# clean up
39
+restore_configs

+ 1
- 2
platformio.ini Zobrazit soubor

@@ -681,13 +681,12 @@ debug_init_break  =
681 681
 [env:BIGTREE_GTR_V1_0]
682 682
 platform          = ststm32@>=5.7.0
683 683
 framework         = arduino
684
-platform_packages = framework-arduinoststm32@>=3.10700.191028
684
+platform_packages = framework-arduinoststm32@>=3.107,<4
685 685
 board             = BigTree_SKR_Pro
686 686
 extra_scripts     = pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py
687 687
 build_flags       = ${common.build_flags}
688 688
   -DUSBCON -DUSBD_USE_CDC -DUSBD_VID=0x0483 -DUSB_PRODUCT=\"STM32F407IG\"
689 689
   -DTARGET_STM32F4 -DSTM32F407IX -DVECT_TAB_OFFSET=0x8000
690
-
691 690
   -IMarlin/src/HAL/HAL_STM32
692 691
 lib_deps          =
693 692
   U8glib-HAL=https://github.com/MarlinFirmware/U8glib-HAL/archive/bugfix.zip

Loading…
Zrušit
Uložit