Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for MKS Robin E3/E3D V1.1 motherboard #20216

Merged
merged 38 commits into from
Nov 26, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
5c8f4a5
Merge pull request #1 from MarlinFirmware/bugfix-2.0.x
mks-viva Jul 28, 2020
5d5f4e6
Merge pull request #2 from MarlinFirmware/bugfix-2.0.x
mks-viva Jul 28, 2020
34b9df8
Support MKS SGEN_L V2 board
Jul 28, 2020
a3b0f9d
Update pins_MKS_SGEN_L_V2.h
thinkyhead Jul 29, 2020
bf9ee2e
Update pins_MKS_SGEN_L_V2.h
thinkyhead Jul 29, 2020
2d95919
4K size stated
thinkyhead Jul 29, 2020
4bdaec1
Update pins_MKS_SGEN_L_V2.h
thinkyhead Sep 1, 2020
45d1077
Merge pull request #3 from MarlinFirmware/bugfix-2.0.x
mks-viva Sep 5, 2020
8a8da49
Fix MKS LCD12864A/B display on MKS Robin E3/E3D and MKS SGEN_L
Sep 5, 2020
7dc13be
Merge pull request #4 from MarlinFirmware/bugfix-2.0.x
makerbase-mks Sep 8, 2020
a96c6de
Add support for MKS GEN_L V2.1
Sep 9, 2020
d4bdd00
Merge pull request #5 from MarlinFirmware/bugfix-2.0.x
makerbase-mks Sep 9, 2020
0f9b303
Merge branch 'bugfix-2.0.x' of https://github.com/mks-viva/Marlin int…
Sep 9, 2020
7c622f3
Add support for MKS Gen-L V2.1
Sep 9, 2020
1c8c018
Update pins_MKS_GEN_L_V21.h
makerbase-mks Sep 9, 2020
453f220
Update pins_MKS_GEN_L_V21.h
makerbase-mks Sep 9, 2020
cd14a96
Update MarlinCore.cpp
makerbase-mks Sep 9, 2020
bc5d316
Update Configuration.h
makerbase-mks Sep 9, 2020
07b33a9
Update MarlinCore.cpp
makerbase-mks Sep 9, 2020
4cb7f4a
Update MarlinCore.cpp
thinkyhead Sep 10, 2020
8b08e95
Add Makefile, clean up
thinkyhead Sep 10, 2020
ceb896f
fix Makefile and board file
Sep 16, 2020
aee8e75
Merge pull request #6 from MarlinFirmware/bugfix-2.0.x
makerbase-mks Sep 16, 2020
e323c13
Merge pull request #7 from MarlinFirmware/bugfix-2.0.x
makerbase-mks Sep 17, 2020
2a0f81c
Merge pull request #8 from MarlinFirmware/bugfix-2.0.x
makerbase-mks Sep 21, 2020
ff8a7e2
Fix MKS SGEN_L V2 FAN pins
Sep 21, 2020
fe2f3cd
Update pins_MKS_SGEN_L_V2.h
thinkyhead Sep 22, 2020
ee8db31
Merge pull request #9 from MarlinFirmware/bugfix-2.0.x
mks-viva Oct 14, 2020
a3b7b83
Merge pull request #10 from MarlinFirmware/bugfix-2.0.x
mks-viva Oct 16, 2020
b39f490
Add RGB LED pin define for MKS SGEN_L V2
mks-viva Oct 16, 2020
b7ae0f9
Update pins_MKS_SGEN_L_V2.h
thinkyhead Oct 16, 2020
034dd99
Merge pull request #11 from MarlinFirmware/bugfix-2.0.x
mks-viva Nov 20, 2020
e64c055
Add support for MKS Robin E3/E3D V1.1 motherboard
mks-viva Nov 20, 2020
60a264a
Update Configuration.h
mks-viva Nov 20, 2020
3c8ff62
Merge remote-tracking branch 'upstream/bugfix-2.0.x' into pr/20216
thinkyhead Nov 26, 2020
0657f35
Update pins.h
thinkyhead Nov 26, 2020
0a9b678
Consolidate pins
thinkyhead Nov 26, 2020
9a20663
Tweak comments
thinkyhead Nov 26, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 28 additions & 26 deletions Marlin/src/core/boards.h
Original file line number Diff line number Diff line change
Expand Up @@ -289,11 +289,11 @@
// STM32 ARM Cortex-M3
//

#define BOARD_MALYAN_M200_V2 4000 // STM32F070CB STM32F0 controller
#define BOARD_MALYAN_M200_V2 4000 // STM32F070CB controller
#define BOARD_MALYAN_M300 4001 // STM32F070-based delta
#define BOARD_STM32F103RE 4002 // STM32F103RE Libmaple-based STM32F1 controller
#define BOARD_MALYAN_M200 4003 // STM32C8T6 Libmaple-based STM32F1 controller
#define BOARD_STM3R_MINI 4004 // STM32F103RE Libmaple-based STM32F1 controller
#define BOARD_MALYAN_M200 4003 // STM32C8T6 Libmaple-based STM32F1 controller
#define BOARD_STM3R_MINI 4004 // STM32F103RE Libmaple-based STM32F1 controller
#define BOARD_GTM32_PRO_VB 4005 // STM32F103VET6 controller
#define BOARD_GTM32_MINI 4006 // STM32F103VET6 controller
#define BOARD_GTM32_MINI_A30 4007 // STM32F103VET6 controller
Expand All @@ -307,29 +307,31 @@
#define BOARD_MKS_ROBIN_LITE 4015 // MKS Robin Lite/Lite2 (STM32F103RCT6)
#define BOARD_MKS_ROBIN_LITE3 4016 // MKS Robin Lite3 (STM32F103RCT6)
#define BOARD_MKS_ROBIN_PRO 4017 // MKS Robin Pro (STM32F103ZET6)
#define BOARD_MKS_ROBIN_E3 4018 // MKS Robin E3 (STM32F103RCT6)
#define BOARD_MKS_ROBIN_E3D 4019 // MKS Robin E3D (STM32F103RCT6)
#define BOARD_MKS_ROBIN_E3P 4020 // MKS Robin E3p (STM32F103VET6)
#define BOARD_BTT_SKR_MINI_V1_1 4021 // BigTreeTech SKR Mini v1.1 (STM32F103RC)
#define BOARD_BTT_SKR_MINI_E3_V1_0 4022 // BigTreeTech SKR Mini E3 (STM32F103RC)
#define BOARD_BTT_SKR_MINI_E3_V1_2 4023 // BigTreeTech SKR Mini E3 V1.2 (STM32F103RC)
#define BOARD_BTT_SKR_MINI_E3_V2_0 4024 // BigTreeTech SKR Mini E3 V2.0 (STM32F103RC)
#define BOARD_BTT_SKR_MINI_MZ_V1_0 4025 // BigTreeTech SKR Mini MZ V1.0 (STM32F103RC)
#define BOARD_BTT_SKR_E3_DIP 4026 // BigTreeTech SKR E3 DIP V1.0 (STM32F103RC / STM32F103RE)
#define BOARD_JGAURORA_A5S_A1 4027 // JGAurora A5S A1 (STM32F103ZET6)
#define BOARD_FYSETC_AIO_II 4028 // FYSETC AIO_II
#define BOARD_FYSETC_CHEETAH 4029 // FYSETC Cheetah
#define BOARD_FYSETC_CHEETAH_V12 4030 // FYSETC Cheetah V1.2
#define BOARD_LONGER3D_LK 4031 // Alfawise U20/U20+/U30 (Longer3D LK1/2) / STM32F103VET6
#define BOARD_CCROBOT_MEEB_3DP 4032 // ccrobot-online.com MEEB_3DP (STM32F103RC)
#define BOARD_CHITU3D_V5 4033 // Chitu3D TronXY X5SA V5 Board
#define BOARD_CHITU3D_V6 4034 // Chitu3D TronXY X5SA V5 Board
#define BOARD_CREALITY_V4 4035 // Creality v4.x (STM32F103RE)
#define BOARD_CREALITY_V427 4036 // Creality v4.2.7 (STM32F103RE)
#define BOARD_TRIGORILLA_PRO 4037 // Trigorilla Pro (STM32F103ZET6)
#define BOARD_FLY_MINI 4038 // FLY MINI (STM32F103RCT6)
#define BOARD_FLSUN_HISPEED 4039 // FLSUN HiSpeedV1 (STM32F103VET6)
#define BOARD_BEAST 4040 // STM32F103RET6 Libmaple-based controller
#define BOARD_MKS_ROBIN_E3 4018 // MKS Robin E3 (STM32F103RCT6)
#define BOARD_MKS_ROBIN_E3_V1_1 4019 // MKS Robin E3 V1.1 (STM32F103RCT6)
#define BOARD_MKS_ROBIN_E3D 4020 // MKS Robin E3D (STM32F103RCT6)
#define BOARD_MKS_ROBIN_E3D_V1_1 4021 // MKS Robin E3D V1.1 (STM32F103RCT6)
#define BOARD_MKS_ROBIN_E3P 4022 // MKS Robin E3p (STM32F103VET6)
#define BOARD_BTT_SKR_MINI_V1_1 4023 // BigTreeTech SKR Mini v1.1 (STM32F103RC)
#define BOARD_BTT_SKR_MINI_E3_V1_0 4024 // BigTreeTech SKR Mini E3 (STM32F103RC)
#define BOARD_BTT_SKR_MINI_E3_V1_2 4025 // BigTreeTech SKR Mini E3 V1.2 (STM32F103RC)
#define BOARD_BTT_SKR_MINI_E3_V2_0 4026 // BigTreeTech SKR Mini E3 V2.0 (STM32F103RC)
#define BOARD_BTT_SKR_MINI_MZ_V1_0 4027 // BigTreeTech SKR Mini MZ V1.0 (STM32F103RC)
#define BOARD_BTT_SKR_E3_DIP 4028 // BigTreeTech SKR E3 DIP V1.0 (STM32F103RC / STM32F103RE)
#define BOARD_JGAURORA_A5S_A1 4029 // JGAurora A5S A1 (STM32F103ZET6)
#define BOARD_FYSETC_AIO_II 4030 // FYSETC AIO_II
#define BOARD_FYSETC_CHEETAH 4031 // FYSETC Cheetah
#define BOARD_FYSETC_CHEETAH_V12 4032 // FYSETC Cheetah V1.2
#define BOARD_LONGER3D_LK 4033 // Alfawise U20/U20+/U30 (Longer3D LK1/2) / STM32F103VET6
#define BOARD_CCROBOT_MEEB_3DP 4034 // ccrobot-online.com MEEB_3DP (STM32F103RC)
#define BOARD_CHITU3D_V5 4035 // Chitu3D TronXY X5SA V5 Board
#define BOARD_CHITU3D_V6 4036 // Chitu3D TronXY X5SA V5 Board
#define BOARD_CREALITY_V4 4037 // Creality v4.x (STM32F103RE)
#define BOARD_CREALITY_V427 4038 // Creality v4.2.7 (STM32F103RE)
#define BOARD_TRIGORILLA_PRO 4039 // Trigorilla Pro (STM32F103ZET6)
#define BOARD_FLY_MINI 4040 // FLY MINI (STM32F103RCT6)
#define BOARD_FLSUN_HISPEED 4041 // FLSUN HiSpeedV1 (STM32F103VET6)
#define BOARD_BEAST 4042 // STM32F103RET6 Libmaple-based controller

//
// ARM Cortex-M4F
Expand Down
4 changes: 4 additions & 0 deletions Marlin/src/pins/pins.h
Original file line number Diff line number Diff line change
Expand Up @@ -552,8 +552,12 @@
#include "stm32f1/pins_MKS_ROBIN_PRO.h" // STM32F1 env:mks_robin_pro
#elif MB(MKS_ROBIN_E3)
#include "stm32f1/pins_MKS_ROBIN_E3.h" // STM32F1 env:mks_robin_e3
#elif MB(MKS_ROBIN_E3_V1_1)
#include "stm32f1/pins_MKS_ROBIN_E3_V1_1.h" // STM32F1 env:mks_robin_e3
#elif MB(MKS_ROBIN_E3D)
#include "stm32f1/pins_MKS_ROBIN_E3D.h" // STM32F1 env:mks_robin_e3
#elif MB(MKS_ROBIN_E3D_V1_1)
#include "stm32f1/pins_MKS_ROBIN_E3D_V1_1.h" // STM32F1 env:mks_robin_e3
#elif MB(MKS_ROBIN_E3P)
#include "stm32f1/pins_MKS_ROBIN_E3P.h" // STM32F1 env:mks_robin_e3p
#elif MB(BTT_SKR_MINI_V1_1)
Expand Down
67 changes: 67 additions & 0 deletions Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3D_V1_1.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
*
* Based on Sprinter and grbl.
* Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

/**
* MKS Robin E3D v1.1 (STM32F103RCT6) board pin assignments
*/

#if HOTENDS > 1 || E_STEPPERS > 1
#error "MKS Robin E3D v1.1 only supports one hotend / E-stepper. Comment out this line to continue."
#endif

#ifndef BOARD_INFO_NAME
#define BOARD_INFO_NAME "MKS Robin E3D V1.1"
#endif

//
// Steppers
//
#ifndef X_CS_PIN
#define X_CS_PIN PC7
#endif
#ifndef Y_CS_PIN
#define Y_CS_PIN PD2
#endif
#ifndef Z_CS_PIN
#define Z_CS_PIN PC12
#endif
#ifndef E0_CS_PIN
#define E0_CS_PIN PC11
#endif

//
// Software SPI pins for TMC2130 stepper drivers
//
#if ENABLED(TMC_USE_SW_SPI)
#ifndef TMC_SW_MOSI
#define TMC_SW_MOSI PB15
#endif
#ifndef TMC_SW_MISO
#define TMC_SW_MISO PB14
#endif
#ifndef TMC_SW_SCK
#define TMC_SW_SCK PB13
#endif
#endif

#include "pins_MKS_ROBIN_E3_V1_1_common.h"
36 changes: 36 additions & 0 deletions Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3_V1_1.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
*
* Based on Sprinter and grbl.
* Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

/**
* MKS Robin E3 v1.1 (STM32F103RCT6) board pin assignments
*/

#if HOTENDS > 1 || E_STEPPERS > 1
#error "MKS Robin E3 v1.1 only supports one hotend / E-stepper. Comment out this line to continue."
#endif

#ifndef BOARD_INFO_NAME
#define BOARD_INFO_NAME "MKS Robin E3 V1.1"
#endif

#include "pins_MKS_ROBIN_E3_V1_1_common.h"
39 changes: 39 additions & 0 deletions Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3_V1_1_common.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
/**
* Marlin 3D Printer Firmware
* Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
*
* Based on Sprinter and grbl.
* Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
*/
#pragma once

//
// EEPROM
//
// Onboard I2C EEPROM
#if NO_EEPROM_SELECTED
#define I2C_EEPROM
#define MARLIN_EEPROM_SIZE 0x1000// 4KB
#undef NO_EEPROM_SELECTED
#endif

#define Z_STEP_PIN PC14
#define Z_DIR_PIN PC15

#define BTN_ENC_EN -1

#include "pins_MKS_ROBIN_E3_common.h"
10 changes: 7 additions & 3 deletions Marlin/src/pins/stm32f1/pins_MKS_ROBIN_E3_common.h
Original file line number Diff line number Diff line change
Expand Up @@ -70,8 +70,12 @@
#define Y_DIR_PIN PB9
#define Y_ENABLE_PIN PB12

#define Z_STEP_PIN PB7
#define Z_DIR_PIN PB6
#ifndef Z_STEP_PIN
#define Z_STEP_PIN PB7
#endif
#ifndef Z_DIR_PIN
#define Z_DIR_PIN PB6
#endif
#define Z_ENABLE_PIN PB8

#define E0_STEP_PIN PB4
Expand Down Expand Up @@ -161,7 +165,7 @@
#define LCD_PINS_D6 PC4
#define LCD_PINS_D7 PC5

#if ENABLED(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER)
#if !defined(BTN_ENC_EN) && ENABLED(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER)
#define BTN_ENC_EN LCD_PINS_D7 // Detect the presence of the encoder
#endif

Expand Down