From 05b39623b0490f0c49593b10bcc04d4b0f10851d Mon Sep 17 00:00:00 2001
From: Vert <45634861+Vertabreak@users.noreply.github.com>
Date: Thu, 1 Apr 2021 19:05:02 -0400
Subject: [PATCH] Board IDs for G2560 Rev B, G2560 v4, GTM32 VD (#21499)
---
Marlin/src/core/boards.h | 25 +++++++++--------
Marlin/src/pins/mega/pins_GT2560_REV_B.h | 30 +++++++++++++++++++++
Marlin/src/pins/mega/pins_GT2560_V3.h | 6 +++--
Marlin/src/pins/mega/pins_GT2560_V4.h | 30 +++++++++++++++++++++
Marlin/src/pins/pins.h | 6 +++++
Marlin/src/pins/stm32f1/pins_GTM32_PRO_VB.h | 8 ++++--
Marlin/src/pins/stm32f1/pins_GTM32_PRO_VD.h | 30 +++++++++++++++++++++
7 files changed, 120 insertions(+), 15 deletions(-)
create mode 100644 Marlin/src/pins/mega/pins_GT2560_REV_B.h
create mode 100644 Marlin/src/pins/mega/pins_GT2560_V4.h
create mode 100644 Marlin/src/pins/stm32f1/pins_GTM32_PRO_VD.h
diff --git a/Marlin/src/core/boards.h b/Marlin/src/core/boards.h
index a7ee18d6eb44..d2e2236a1415 100644
--- a/Marlin/src/core/boards.h
+++ b/Marlin/src/core/boards.h
@@ -146,17 +146,19 @@
#define BOARD_ELEFU_3 1311 // Elefu Ra Board (v3)
#define BOARD_LEAPFROG 1312 // Leapfrog
#define BOARD_MEGACONTROLLER 1313 // Mega controller
-#define BOARD_GT2560_REV_A 1314 // Geeetech GT2560 Rev. A
-#define BOARD_GT2560_REV_A_PLUS 1315 // Geeetech GT2560 Rev. A+ (with auto level probe)
-#define BOARD_GT2560_V3 1316 // Geeetech GT2560 Rev B for A10(M/D)
-#define BOARD_GT2560_V3_MC2 1317 // Geeetech GT2560 Rev B for Mecreator2
-#define BOARD_GT2560_V3_A20 1318 // Geeetech GT2560 Rev B for A20(M/D)
-#define BOARD_EINSTART_S 1319 // Einstart retrofit
-#define BOARD_WANHAO_ONEPLUS 1320 // Wanhao 0ne+ i3 Mini
-#define BOARD_LEAPFROG_XEED2015 1321 // Leapfrog Xeed 2015
-#define BOARD_PICA_REVB 1322 // PICA Shield (original version)
-#define BOARD_PICA 1323 // PICA Shield (rev C or later)
-#define BOARD_INTAMSYS40 1324 // Intamsys 4.0 (Funmat HT)
+#define BOARD_GT2560_REV_A 1314 // Geeetech GT2560 Rev A
+#define BOARD_GT2560_REV_A_PLUS 1315 // Geeetech GT2560 Rev A+ (with auto level probe)
+#define BOARD_GT2560_REV_B 1316 // Geeetech GT2560 Rev B
+#define BOARD_GT2560_V3 1317 // Geeetech GT2560 Rev B for A10(M/D)
+#define BOARD_GT2560_V4 1318 // Geeetech GT2560 Rev B for A10(M/D)
+#define BOARD_GT2560_V3_MC2 1319 // Geeetech GT2560 Rev B for Mecreator2
+#define BOARD_GT2560_V3_A20 1320 // Geeetech GT2560 Rev B for A20(M/D)
+#define BOARD_EINSTART_S 1321 // Einstart retrofit
+#define BOARD_WANHAO_ONEPLUS 1322 // Wanhao 0ne+ i3 Mini
+#define BOARD_LEAPFROG_XEED2015 1323 // Leapfrog Xeed 2015
+#define BOARD_PICA_REVB 1324 // PICA Shield (original version)
+#define BOARD_PICA 1325 // PICA Shield (rev C or later)
+#define BOARD_INTAMSYS40 1326 // Intamsys 4.0 (Funmat HT)
//
// ATmega1281, ATmega2561
@@ -341,6 +343,7 @@
#define BOARD_FLSUN_HISPEED 4046 // FLSUN HiSpeedV1 (STM32F103VET6)
#define BOARD_BEAST 4047 // STM32F103RET6 Libmaple-based controller
#define BOARD_MINGDA_MPX_ARM_MINI 4048 // STM32F103ZET6 Mingda MD-16
+#define BOARD_GTM32_PRO_VD 4049 // STM32F103VET6 controller
//
// ARM Cortex-M4F
diff --git a/Marlin/src/pins/mega/pins_GT2560_REV_B.h b/Marlin/src/pins/mega/pins_GT2560_REV_B.h
new file mode 100644
index 000000000000..be71ec4902dc
--- /dev/null
+++ b/Marlin/src/pins/mega/pins_GT2560_REV_B.h
@@ -0,0 +1,30 @@
+/**
+ * Marlin 3D Printer Firmware
+ * Copyright (c) 2021 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 .
+ *
+ */
+#pragma once
+
+/**
+ * Geeetech GT2560 Rev B Pins
+ */
+
+#define BOARD_INFO_NAME "GT2560 Rev B"
+
+#include "pins_GT2560_V3.h"
diff --git a/Marlin/src/pins/mega/pins_GT2560_V3.h b/Marlin/src/pins/mega/pins_GT2560_V3.h
index dd2d1d0f65aa..8490d5571dbe 100644
--- a/Marlin/src/pins/mega/pins_GT2560_V3.h
+++ b/Marlin/src/pins/mega/pins_GT2560_V3.h
@@ -22,14 +22,16 @@
#pragma once
/**
- * Geeetech GT2560 RevB + GT2560 3.0/3.1 + GT2560 4.0/4.1 pin assignments
+ * Geeetech GT2560 3.0/3.1 pin assignments
+ *
+ * Also GT2560 RevB and GT2560 4.0/4.1
*/
#define ALLOW_MEGA1280
#include "env_validate.h"
#ifndef BOARD_INFO_NAME
- #define BOARD_INFO_NAME "GT2560 RevB/3.x/4.x"
+ #define BOARD_INFO_NAME "GT2560 3.x"
#endif
//
diff --git a/Marlin/src/pins/mega/pins_GT2560_V4.h b/Marlin/src/pins/mega/pins_GT2560_V4.h
new file mode 100644
index 000000000000..6ac07b70bfce
--- /dev/null
+++ b/Marlin/src/pins/mega/pins_GT2560_V4.h
@@ -0,0 +1,30 @@
+/**
+ * Marlin 3D Printer Firmware
+ * Copyright (c) 2021 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 .
+ *
+ */
+#pragma once
+
+/**
+ * Geeetech GT2560 V4.X Pins
+ */
+
+#define BOARD_INFO_NAME "GT2560 4.x"
+
+#include "pins_GT2560_V3.h"
diff --git a/Marlin/src/pins/pins.h b/Marlin/src/pins/pins.h
index 35bfb266ebad..e4c692a3b996 100644
--- a/Marlin/src/pins/pins.h
+++ b/Marlin/src/pins/pins.h
@@ -244,6 +244,10 @@
#include "mega/pins_GT2560_REV_A_PLUS.h" // ATmega2560, ATmega1280 env:mega2560 env:mega1280
#elif MB(GT2560_V3)
#include "mega/pins_GT2560_V3.h" // ATmega2560 env:mega2560
+#elif MB(GT2560_REV_B)
+ #include "mega/pins_GT2560_REV_B.h" // ATmega2560 env:mega2560
+#elif MB(GT2560_V4)
+ #include "mega/pins_GT2560_V4.h" // ATmega2560 env:mega2560
#elif MB(GT2560_V3_MC2)
#include "mega/pins_GT2560_V3_MC2.h" // ATmega2560 env:mega2560
#elif MB(GT2560_V3_A20)
@@ -470,6 +474,8 @@
#include "stm32f1/pins_STM3R_MINI.h" // STM32F1 env:STM32F103RE
#elif MB(GTM32_PRO_VB)
#include "stm32f1/pins_GTM32_PRO_VB.h" // STM32F1 env:STM32F103RE
+#elif MB(GTM32_PRO_VD)
+ #include "stm32f1/pins_GTM32_PRO_VD.h" // STM32F1 env:STM32F103RE
#elif MB(GTM32_MINI)
#include "stm32f1/pins_GTM32_MINI.h" // STM32F1 env:STM32F103RE
#elif MB(GTM32_MINI_A30)
diff --git a/Marlin/src/pins/stm32f1/pins_GTM32_PRO_VB.h b/Marlin/src/pins/stm32f1/pins_GTM32_PRO_VB.h
index 18156fc0ff1f..2545642bae17 100644
--- a/Marlin/src/pins/stm32f1/pins_GTM32_PRO_VB.h
+++ b/Marlin/src/pins/stm32f1/pins_GTM32_PRO_VB.h
@@ -22,13 +22,17 @@
#pragma once
/**
- * Geeetech GTM32 Pro VB/VD board pin assignments
+ * Geeetech GTM32 Pro VB board pin assignments
* http://www.geeetech.com/wiki/index.php/File:Hardware_GTM32_PRO_VB.pdf
+ *
+ * Also applies to GTM32 Pro VD
*/
#include "env_validate.h"
-#define BOARD_INFO_NAME "GTM32 Pro VB/VD"
+#ifndef BOARD_INFO_NAME
+ #define BOARD_INFO_NAME "GTM32 Pro VB"
+#endif
#define DEFAULT_MACHINE_NAME "STM32F103VET6"
#define BOARD_NO_NATIVE_USB
diff --git a/Marlin/src/pins/stm32f1/pins_GTM32_PRO_VD.h b/Marlin/src/pins/stm32f1/pins_GTM32_PRO_VD.h
new file mode 100644
index 000000000000..fb8c73c45f24
--- /dev/null
+++ b/Marlin/src/pins/stm32f1/pins_GTM32_PRO_VD.h
@@ -0,0 +1,30 @@
+/**
+ * Marlin 3D Printer Firmware
+ * Copyright (c) 2021 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 .
+ *
+ */
+#pragma once
+
+/**
+ * Geeetech GTM32 Pro VD board pin assignments
+ */
+
+#define BOARD_INFO_NAME "GTM32 Pro VD"
+
+#include "pins_GTM32_PRO_VB.h"