Skip to content

Commit 72465e4

Browse files
authored
✨ BigTreeTech EBB42 v1.1 (#24964)
1 parent ed6212e commit 72465e4

File tree

11 files changed

+1248
-48
lines changed

11 files changed

+1248
-48
lines changed

Marlin/src/core/boards.h

Lines changed: 47 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -325,52 +325,53 @@
325325
#define BOARD_MKS_ROBIN_E3D 4020 // MKS Robin E3D (STM32F103RC)
326326
#define BOARD_MKS_ROBIN_E3D_V1_1 4021 // MKS Robin E3D V1.1 (STM32F103RC)
327327
#define BOARD_MKS_ROBIN_E3P 4022 // MKS Robin E3p (STM32F103VE)
328-
#define BOARD_BTT_SKR_MINI_V1_1 4023 // BigTreeTech SKR Mini v1.1 (STM32F103RC)
329-
#define BOARD_BTT_SKR_MINI_E3_V1_0 4024 // BigTreeTech SKR Mini E3 (STM32F103RC)
330-
#define BOARD_BTT_SKR_MINI_E3_V1_2 4025 // BigTreeTech SKR Mini E3 V1.2 (STM32F103RC)
331-
#define BOARD_BTT_SKR_MINI_E3_V2_0 4026 // BigTreeTech SKR Mini E3 V2.0 (STM32F103RC / STM32F103RE)
332-
#define BOARD_BTT_SKR_MINI_E3_V3_0 4027 // BigTreeTech SKR Mini E3 V3.0 (STM32G0B1RE)
333-
#define BOARD_BTT_SKR_MINI_E3_V3_0_1 4028 // BigTreeTech SKR Mini E3 V3.0.1 (STM32F401RC)
334-
#define BOARD_BTT_SKR_MINI_MZ_V1_0 4029 // BigTreeTech SKR Mini MZ V1.0 (STM32F103RC)
335-
#define BOARD_BTT_SKR_E3_DIP 4030 // BigTreeTech SKR E3 DIP V1.0 (STM32F103RC / STM32F103RE)
336-
#define BOARD_BTT_SKR_CR6 4031 // BigTreeTech SKR CR6 v1.0 (STM32F103RE)
337-
#define BOARD_JGAURORA_A5S_A1 4032 // JGAurora A5S A1 (STM32F103ZE)
338-
#define BOARD_FYSETC_AIO_II 4033 // FYSETC AIO_II (STM32F103RC)
339-
#define BOARD_FYSETC_CHEETAH 4034 // FYSETC Cheetah (STM32F103RC)
340-
#define BOARD_FYSETC_CHEETAH_V12 4035 // FYSETC Cheetah V1.2 (STM32F103RC)
341-
#define BOARD_LONGER3D_LK 4036 // Longer3D LK1/2 - Alfawise U20/U20+/U30 (STM32F103VE)
342-
#define BOARD_CCROBOT_MEEB_3DP 4037 // ccrobot-online.com MEEB_3DP (STM32F103RC)
343-
#define BOARD_CHITU3D_V5 4038 // Chitu3D TronXY X5SA V5 Board (STM32F103ZE)
344-
#define BOARD_CHITU3D_V6 4039 // Chitu3D TronXY X5SA V6 Board (STM32F103ZE)
345-
#define BOARD_CHITU3D_V9 4040 // Chitu3D TronXY X5SA V9 Board (STM32F103ZE)
346-
#define BOARD_CREALITY_V4 4041 // Creality v4.x (STM32F103RC / STM32F103RE)
347-
#define BOARD_CREALITY_V422 4042 // Creality v4.2.2 (STM32F103RC / STM32F103RE)
348-
#define BOARD_CREALITY_V423 4043 // Creality v4.2.3 (STM32F103RC / STM32F103RE)
349-
#define BOARD_CREALITY_V425 4044 // Creality v4.2.5 (STM32F103RC / STM32F103RE)
350-
#define BOARD_CREALITY_V427 4045 // Creality v4.2.7 (STM32F103RC / STM32F103RE)
351-
#define BOARD_CREALITY_V4210 4046 // Creality v4.2.10 (STM32F103RC / STM32F103RE) as found in the CR-30
352-
#define BOARD_CREALITY_V431 4047 // Creality v4.3.1 (STM32F103RC / STM32F103RE)
353-
#define BOARD_CREALITY_V431_A 4048 // Creality v4.3.1a (STM32F103RC / STM32F103RE)
354-
#define BOARD_CREALITY_V431_B 4049 // Creality v4.3.1b (STM32F103RC / STM32F103RE)
355-
#define BOARD_CREALITY_V431_C 4050 // Creality v4.3.1c (STM32F103RC / STM32F103RE)
356-
#define BOARD_CREALITY_V431_D 4051 // Creality v4.3.1d (STM32F103RC / STM32F103RE)
357-
#define BOARD_CREALITY_V452 4052 // Creality v4.5.2 (STM32F103RC / STM32F103RE)
358-
#define BOARD_CREALITY_V453 4053 // Creality v4.5.3 (STM32F103RC / STM32F103RE)
359-
#define BOARD_CREALITY_V521 4054 // Creality v5.2.1 (STM32F103VE) as found in the SV04
360-
#define BOARD_CREALITY_V24S1 4055 // Creality v2.4.S1 (STM32F103RC / STM32F103RE) v101 as found in the Ender-7
361-
#define BOARD_CREALITY_V24S1_301 4056 // Creality v2.4.S1_301 (STM32F103RC / STM32F103RE) v301 as found in the Ender-3 S1
362-
#define BOARD_CREALITY_V25S1 4057 // Creality v2.5.S1 (STM32F103RE) as found in the CR-10 Smart Pro
363-
#define BOARD_TRIGORILLA_PRO 4058 // Trigorilla Pro (STM32F103ZE)
364-
#define BOARD_FLY_MINI 4059 // FLYmaker FLY MINI (STM32F103RC)
365-
#define BOARD_FLSUN_HISPEED 4060 // FLSUN HiSpeedV1 (STM32F103VE)
366-
#define BOARD_BEAST 4061 // STM32F103RE Libmaple-based controller
367-
#define BOARD_MINGDA_MPX_ARM_MINI 4062 // STM32F103ZE Mingda MD-16
368-
#define BOARD_GTM32_PRO_VD 4063 // STM32F103VE controller
369-
#define BOARD_ZONESTAR_ZM3E2 4064 // Zonestar ZM3E2 (STM32F103RC)
370-
#define BOARD_ZONESTAR_ZM3E4 4065 // Zonestar ZM3E4 V1 (STM32F103VC)
371-
#define BOARD_ZONESTAR_ZM3E4V2 4066 // Zonestar ZM3E4 V2 (STM32F103VC)
372-
#define BOARD_ERYONE_ERY32_MINI 4067 // Eryone Ery32 mini (STM32F103VE)
373-
#define BOARD_PANDA_PI_V29 4068 // Panda Pi V2.9 - Standalone (STM32F103RC)
328+
#define BOARD_BTT_EBB42_V1_1 4023 // BigTreeTech EBB42 V1.1 (STM32G0B1CB)
329+
#define BOARD_BTT_SKR_MINI_V1_1 4024 // BigTreeTech SKR Mini v1.1 (STM32F103RC)
330+
#define BOARD_BTT_SKR_MINI_E3_V1_0 4025 // BigTreeTech SKR Mini E3 (STM32F103RC)
331+
#define BOARD_BTT_SKR_MINI_E3_V1_2 4026 // BigTreeTech SKR Mini E3 V1.2 (STM32F103RC)
332+
#define BOARD_BTT_SKR_MINI_E3_V2_0 4027 // BigTreeTech SKR Mini E3 V2.0 (STM32F103RC / STM32F103RE)
333+
#define BOARD_BTT_SKR_MINI_E3_V3_0 4028 // BigTreeTech SKR Mini E3 V3.0 (STM32G0B1RE)
334+
#define BOARD_BTT_SKR_MINI_E3_V3_0_1 4029 // BigTreeTech SKR Mini E3 V3.0.1 (STM32F401RC)
335+
#define BOARD_BTT_SKR_MINI_MZ_V1_0 4030 // BigTreeTech SKR Mini MZ V1.0 (STM32F103RC)
336+
#define BOARD_BTT_SKR_E3_DIP 4031 // BigTreeTech SKR E3 DIP V1.0 (STM32F103RC / STM32F103RE)
337+
#define BOARD_BTT_SKR_CR6 4032 // BigTreeTech SKR CR6 v1.0 (STM32F103RE)
338+
#define BOARD_JGAURORA_A5S_A1 4033 // JGAurora A5S A1 (STM32F103ZE)
339+
#define BOARD_FYSETC_AIO_II 4034 // FYSETC AIO_II (STM32F103RC)
340+
#define BOARD_FYSETC_CHEETAH 4035 // FYSETC Cheetah (STM32F103RC)
341+
#define BOARD_FYSETC_CHEETAH_V12 4036 // FYSETC Cheetah V1.2 (STM32F103RC)
342+
#define BOARD_LONGER3D_LK 4037 // Longer3D LK1/2 - Alfawise U20/U20+/U30 (STM32F103VE)
343+
#define BOARD_CCROBOT_MEEB_3DP 4038 // ccrobot-online.com MEEB_3DP (STM32F103RC)
344+
#define BOARD_CHITU3D_V5 4039 // Chitu3D TronXY X5SA V5 Board (STM32F103ZE)
345+
#define BOARD_CHITU3D_V6 4040 // Chitu3D TronXY X5SA V6 Board (STM32F103ZE)
346+
#define BOARD_CHITU3D_V9 4041 // Chitu3D TronXY X5SA V9 Board (STM32F103ZE)
347+
#define BOARD_CREALITY_V4 4042 // Creality v4.x (STM32F103RC / STM32F103RE)
348+
#define BOARD_CREALITY_V422 4043 // Creality v4.2.2 (STM32F103RC / STM32F103RE)
349+
#define BOARD_CREALITY_V423 4044 // Creality v4.2.3 (STM32F103RC / STM32F103RE)
350+
#define BOARD_CREALITY_V425 4045 // Creality v4.2.5 (STM32F103RC / STM32F103RE)
351+
#define BOARD_CREALITY_V427 4046 // Creality v4.2.7 (STM32F103RC / STM32F103RE)
352+
#define BOARD_CREALITY_V4210 4047 // Creality v4.2.10 (STM32F103RC / STM32F103RE) as found in the CR-30
353+
#define BOARD_CREALITY_V431 4048 // Creality v4.3.1 (STM32F103RC / STM32F103RE)
354+
#define BOARD_CREALITY_V431_A 4049 // Creality v4.3.1a (STM32F103RC / STM32F103RE)
355+
#define BOARD_CREALITY_V431_B 4050 // Creality v4.3.1b (STM32F103RC / STM32F103RE)
356+
#define BOARD_CREALITY_V431_C 4051 // Creality v4.3.1c (STM32F103RC / STM32F103RE)
357+
#define BOARD_CREALITY_V431_D 4052 // Creality v4.3.1d (STM32F103RC / STM32F103RE)
358+
#define BOARD_CREALITY_V452 4053 // Creality v4.5.2 (STM32F103RC / STM32F103RE)
359+
#define BOARD_CREALITY_V453 4054 // Creality v4.5.3 (STM32F103RC / STM32F103RE)
360+
#define BOARD_CREALITY_V521 4055 // Creality v5.2.1 (STM32F103VE) as found in the SV04
361+
#define BOARD_CREALITY_V24S1 4056 // Creality v2.4.S1 (STM32F103RC / STM32F103RE) v101 as found in the Ender-7
362+
#define BOARD_CREALITY_V24S1_301 4057 // Creality v2.4.S1_301 (STM32F103RC / STM32F103RE) v301 as found in the Ender-3 S1
363+
#define BOARD_CREALITY_V25S1 4058 // Creality v2.5.S1 (STM32F103RE) as found in the CR-10 Smart Pro
364+
#define BOARD_TRIGORILLA_PRO 4059 // Trigorilla Pro (STM32F103ZE)
365+
#define BOARD_FLY_MINI 4060 // FLYmaker FLY MINI (STM32F103RC)
366+
#define BOARD_FLSUN_HISPEED 4061 // FLSUN HiSpeedV1 (STM32F103VE)
367+
#define BOARD_BEAST 4062 // STM32F103RE Libmaple-based controller
368+
#define BOARD_MINGDA_MPX_ARM_MINI 4063 // STM32F103ZE Mingda MD-16
369+
#define BOARD_GTM32_PRO_VD 4064 // STM32F103VE controller
370+
#define BOARD_ZONESTAR_ZM3E2 4065 // Zonestar ZM3E2 (STM32F103RC)
371+
#define BOARD_ZONESTAR_ZM3E4 4066 // Zonestar ZM3E4 V1 (STM32F103VC)
372+
#define BOARD_ZONESTAR_ZM3E4V2 4067 // Zonestar ZM3E4 V2 (STM32F103VC)
373+
#define BOARD_ERYONE_ERY32_MINI 4068 // Eryone Ery32 mini (STM32F103VE)
374+
#define BOARD_PANDA_PI_V29 4069 // Panda Pi V2.9 - Standalone (STM32F103RC)
374375

375376
//
376377
// ARM Cortex-M4F

Marlin/src/feature/controllerfan.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ void ControllerFan::update() {
104104
hal.set_pwm_duty(pin_t(CONTROLLER_FAN2_PIN), speed);
105105
else
106106
WRITE(CONTROLLER_FAN2_PIN, speed > 0);
107-
#endif
107+
#endif
108108
#endif
109109
}
110110
}

Marlin/src/pins/pins.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -533,6 +533,8 @@
533533
#include "stm32f1/pins_MKS_ROBIN_E3D_V1_1.h" // STM32F1 env:mks_robin_e3
534534
#elif MB(MKS_ROBIN_E3P)
535535
#include "stm32f1/pins_MKS_ROBIN_E3P.h" // STM32F1 env:mks_robin_e3p env:mks_robin_e3p_maple
536+
#elif MB(BTT_EBB42_V1_1)
537+
#include "stm32g0/pins_BTT_EBB42_V1_1.h" // STM32G0 env:BTT_EBB42_V1_1_filament_extruder
536538
#elif MB(BTT_SKR_MINI_V1_1)
537539
#include "stm32f1/pins_BTT_SKR_MINI_V1_1.h" // STM32F1 env:STM32F103RC_btt env:STM32F103RC_btt_USB env:STM32F103RC_btt_maple env:STM32F103RC_btt_USB_maple
538540
#elif MB(BTT_SKR_MINI_E3_V1_0)
Lines changed: 153 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,153 @@
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+
/** CAUTION **
25+
* This board definition is to facilitate support for a Filament Extrusion
26+
* devices, used to convert waste plastic into 3D printable filament.
27+
* This board is NOT a general 3D printing controller; it is NOT supported
28+
* as a toolboard via CANBUS (as it was originally designed) or any device
29+
* that requires kinematics.
30+
*/
31+
32+
#ifndef BOARD_INFO_NAME
33+
#define BOARD_INFO_NAME "BTT EBB42 V1.1"
34+
#endif
35+
36+
//
37+
// EEPROM
38+
//
39+
#if EITHER(NO_EEPROM_SELECTED, FLASH_EEPROM_EMULATION)
40+
#undef NO_EEPROM_SELECTED
41+
#ifndef FLASH_EEPROM_EMULATION
42+
#define FLASH_EEPROM_EMULATION
43+
#endif
44+
#define EEPROM_PAGE_SIZE (0x800UL) // 2K
45+
#define EEPROM_START_ADDRESS (0x0801F800UL)
46+
#define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE
47+
#endif
48+
49+
//#define USES_DIAG_JUMPERS
50+
51+
// Ignore temp readings during development.
52+
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
53+
54+
#define LED_PIN PA13
55+
56+
#define I2C_SDA_PIN PB4
57+
#define I2C_SCL_PIN PB3
58+
59+
//
60+
// Servos
61+
//
62+
#define SERVO0_PIN PB9 // SERVOS
63+
64+
//
65+
// Limit Switches
66+
//
67+
#if !HAS_WIRED_LCD
68+
#define X_STOP_PIN PB6
69+
#define Y_STOP_PIN PB5
70+
#define Z_STOP_PIN PB7
71+
#endif
72+
73+
//
74+
// Z Probe must be this pin
75+
//
76+
#define Z_MIN_PROBE_PIN PB8 // PROBE
77+
78+
//
79+
// Steppers
80+
//
81+
#define X_ENABLE_PIN -1
82+
#define X_STEP_PIN PA10 // Unused. Assigned so Marlin will compile
83+
#define X_DIR_PIN -1
84+
85+
#define Y_ENABLE_PIN -1
86+
#define Y_STEP_PIN PA10 // Unused. Assigned so Marlin will compile
87+
#define Y_DIR_PIN -1
88+
89+
#define Z_ENABLE_PIN -1
90+
#define Z_STEP_PIN PA10 // Unused. Assigned so Marlin will compile
91+
#define Z_DIR_PIN -1
92+
93+
#define E0_ENABLE_PIN PD2
94+
#define E0_STEP_PIN PD0
95+
#define E0_DIR_PIN PD1
96+
97+
#if HAS_TMC_UART
98+
/**
99+
* TMC220x stepper drivers
100+
* Hardware serial communication ports
101+
*/
102+
//#define E0_HARDWARE_SERIAL MSerial4
103+
104+
// This is the stable default value after testing, but, higher UART rates could be configured, remeber to test the Steppers with the M122 command to check if everything works.
105+
//#define TMC_BAUD_RATE 250000
106+
107+
#define E0_SERIAL_TX_PIN PA15
108+
#define E0_SERIAL_RX_PIN E0_SERIAL_TX_PIN
109+
110+
// Reduce baud rate to improve software serial reliability
111+
#define TMC_BAUD_RATE 19200
112+
113+
// Default TMC slave addresses
114+
#ifndef E0_SLAVE_ADDRESS
115+
#define E0_SLAVE_ADDRESS 0b00
116+
#endif
117+
#endif
118+
119+
//
120+
// Temperature Sensors
121+
//
122+
#define TEMP_0_PIN PA3 // Analog Input "TH0"
123+
124+
// SPI for MAX Thermocouple
125+
// Uses a separate SPI bus
126+
127+
#define TEMP_0_CS_PIN PA4 // GTR K-TEMP
128+
#define TEMP_0_SCK_PIN PA5 // SCK
129+
#define TEMP_0_MISO_PIN PA6 // MISO
130+
#define TEMP_0_MOSI_PIN PA7 // For MAX31865
131+
132+
//
133+
// Heaters / Fans
134+
//
135+
#define HEATER_0_PIN PA2 // "HE"
136+
#define FAN_PIN PA0 // "FAN0"
137+
#define FAN1_PIN PA1 // "FAN1"
138+
139+
//
140+
// Default NEOPIXEL_PIN
141+
//
142+
#ifndef NEOPIXEL_PIN
143+
#define NEOPIXEL_PIN PD3 // LED driving pin
144+
#endif
145+
146+
//
147+
// LCD / Controller
148+
//
149+
#if HAS_WIRED_LCD
150+
#define BTN_EN1 PB7
151+
#define BTN_EN2 PB5
152+
#define BTN_ENC PB6
153+
#endif
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
{
2+
"build": {
3+
"core": "stm32",
4+
"cpu": "cortex-m0plus",
5+
"extra_flags": "-DSTM32G0xx -DSTM32G0B1xx",
6+
"f_cpu": "64000000L",
7+
"framework_extra_flags": {
8+
"arduino": "-D__CORTEX_SC=0"
9+
},
10+
"mcu": "stm32g0b1cbt6",
11+
"product_line": "STM32G0B1xx",
12+
"variant": "MARLIN_BTT_EBB42_V1_1"
13+
},
14+
"debug": {
15+
"default_tools": [
16+
"stlink"
17+
],
18+
"jlink_device": "STM32G0B1CB",
19+
"onboard_tools": [
20+
"stlink"
21+
],
22+
"openocd_target": "stm32g0x",
23+
"svd_path": "STM32G0B1.svd"
24+
},
25+
"frameworks": [
26+
"arduino",
27+
"cmsis",
28+
"libopencm3",
29+
"stm32cube",
30+
"zephyr"
31+
],
32+
"name": "STM32G0B1CB",
33+
"upload": {
34+
"maximum_ram_size": 147456,
35+
"maximum_size": 131072,
36+
"protocol": "stlink",
37+
"protocols": [
38+
"stlink",
39+
"jlink",
40+
"cmsis-dap",
41+
"blackmagic",
42+
"mbed"
43+
]
44+
},
45+
"url": "https://www.st.com/content/st_com/en/products/microcontrollers-microprocessors/stm32-32-bit-arm-cortex-mcus/stm32-mainstream-mcus/stm32g0-series/stm32g0x1.html",
46+
"vendor": "ST"
47+
}

0 commit comments

Comments
 (0)