From e8701195e66f2d27ffe17fb514eae8173795aaf7 Mon Sep 17 00:00:00 2001
From: Georgiy Bondarenko <69736697+nehilo@users.noreply.github.com>
Date: Thu, 4 Mar 2021 22:54:23 +0500
Subject: Initial commit
---
Marlin/src/pins/esp32/pins_E4D.h | 107 ++++++++++++++++++++++
Marlin/src/pins/esp32/pins_ESP32.h | 86 +++++++++++++++++
Marlin/src/pins/esp32/pins_FYSETC_E4.h | 126 +++++++++++++++++++++++++
Marlin/src/pins/esp32/pins_MRR_ESPA.h | 108 ++++++++++++++++++++++
Marlin/src/pins/esp32/pins_MRR_ESPE.h | 163 +++++++++++++++++++++++++++++++++
5 files changed, 590 insertions(+)
create mode 100644 Marlin/src/pins/esp32/pins_E4D.h
create mode 100644 Marlin/src/pins/esp32/pins_ESP32.h
create mode 100644 Marlin/src/pins/esp32/pins_FYSETC_E4.h
create mode 100644 Marlin/src/pins/esp32/pins_MRR_ESPA.h
create mode 100644 Marlin/src/pins/esp32/pins_MRR_ESPE.h
(limited to 'Marlin/src/pins/esp32')
diff --git a/Marlin/src/pins/esp32/pins_E4D.h b/Marlin/src/pins/esp32/pins_E4D.h
new file mode 100644
index 0000000..4a5a2bf
--- /dev/null
+++ b/Marlin/src/pins/esp32/pins_E4D.h
@@ -0,0 +1,107 @@
+/**
+ * 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 .
+ *
+ */
+#pragma once
+
+/**
+ * E4d@Box pin assignments
+ * E4d@Box is a small factor 3D printer control board based on the ESP32 microcontroller for Laser, CNC and 3d printers
+ * for more info check https://atbox.tech/ and join to Facebook page E4d@box.
+ */
+
+#if NOT_TARGET(ARDUINO_ARCH_ESP32)
+ #error "Oops! Select an ESP32 board in 'Tools > Board.'"
+#elif EXTRUDERS > 1 || E_STEPPERS > 1
+ #error "E4d@box only supports one E Stepper. Comment out this line to continue."
+#elif HOTENDS > 1
+ #error "E4d@box only supports one hotend / E-stepper. Comment out this line to continue."
+#endif
+
+#define BOARD_INFO_NAME "E4D@BOX"
+#define BOARD_WEBSITE_URL "github.com/Exilaus/E4d@box"
+#define DEFAULT_MACHINE_NAME BOARD_INFO_NAME
+
+//
+// Disable I2S stepper stream
+//
+#undef I2S_STEPPER_STREAM
+
+//
+// Redefine I2S for ESP32
+//
+#undef I2S_WS
+#define I2S_WS 23
+#undef I2S_BCK
+#define I2S_BCK 22
+#undef I2S_DATA
+#define I2S_DATA 21
+
+//
+// Limit Switches
+//
+#define X_STOP_PIN 34
+#define Y_STOP_PIN 35
+#define Z_STOP_PIN 16
+
+//
+// Steppers
+//
+#define X_STEP_PIN 12
+#define X_DIR_PIN 13
+#define X_ENABLE_PIN 17
+//#define X_CS_PIN 0
+
+#define Y_STEP_PIN 32
+#define Y_DIR_PIN 33
+#define Y_ENABLE_PIN X_ENABLE_PIN
+//#define Y_CS_PIN 13
+
+#define Z_STEP_PIN 25
+#define Z_DIR_PIN 26
+#define Z_ENABLE_PIN X_ENABLE_PIN
+//#define Z_CS_PIN 5 // SS_PIN
+
+#define E0_STEP_PIN 27
+#define E0_DIR_PIN 14
+#define E0_ENABLE_PIN X_ENABLE_PIN
+//#define E0_CS_PIN 21
+
+//
+// Temperature Sensors
+//
+#define TEMP_0_PIN 36 // Analog Input
+#define TEMP_BED_PIN 39 // Analog Input
+
+//
+// Heaters / Fans
+//
+#define HEATER_0_PIN 2
+#define FAN_PIN 0
+#define HEATER_BED_PIN 15
+
+//
+// MicroSD card on SPI
+//
+#define SD_MOSI_PIN 23
+#define SD_MISO_PIN 19
+#define SD_SCK_PIN 18
+#define SDSS 5
+#define USES_SHARED_SPI // SPI is shared by SD card with TMC SPI drivers
diff --git a/Marlin/src/pins/esp32/pins_ESP32.h b/Marlin/src/pins/esp32/pins_ESP32.h
new file mode 100644
index 0000000..d54a92b
--- /dev/null
+++ b/Marlin/src/pins/esp32/pins_ESP32.h
@@ -0,0 +1,86 @@
+/**
+ * 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 .
+ *
+ */
+#pragma once
+
+/**
+ * Espressif ESP32 (Tensilica Xtensa LX6) pin assignments
+ */
+
+#if NOT_TARGET(ARDUINO_ARCH_ESP32)
+ "Oops! Select an ESP32 board in 'Tools > Board.'"
+#endif
+
+#define BOARD_INFO_NAME "Espressif ESP32"
+
+//
+// I2S (steppers & other output-only pins)
+//
+#define I2S_STEPPER_STREAM
+#define I2S_WS 25
+#define I2S_BCK 26
+#define I2S_DATA 27
+
+//
+// Limit Switches
+//
+#define X_MIN_PIN 34
+#define Y_MIN_PIN 35
+#define Z_MIN_PIN 15
+
+//
+// Steppers
+//
+#define X_STEP_PIN 128
+#define X_DIR_PIN 129
+#define X_ENABLE_PIN 130
+//#define X_CS_PIN 0
+
+#define Y_STEP_PIN 131
+#define Y_DIR_PIN 132
+#define Y_ENABLE_PIN 133
+//#define Y_CS_PIN 13
+
+#define Z_STEP_PIN 134
+#define Z_DIR_PIN 135
+#define Z_ENABLE_PIN 136
+//#define Z_CS_PIN 5 // SS_PIN
+
+#define E0_STEP_PIN 137
+#define E0_DIR_PIN 138
+#define E0_ENABLE_PIN 139
+//#define E0_CS_PIN 21
+
+//
+// Temperature Sensors
+//
+#define TEMP_0_PIN 36 // Analog Input
+#define TEMP_BED_PIN 39 // Analog Input
+
+//
+// Heaters / Fans
+//
+#define HEATER_0_PIN 2
+#define FAN_PIN 13
+#define HEATER_BED_PIN 4
+
+// SPI
+#define SDSS 5
diff --git a/Marlin/src/pins/esp32/pins_FYSETC_E4.h b/Marlin/src/pins/esp32/pins_FYSETC_E4.h
new file mode 100644
index 0000000..50a8587
--- /dev/null
+++ b/Marlin/src/pins/esp32/pins_FYSETC_E4.h
@@ -0,0 +1,126 @@
+/**
+ * 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 .
+ *
+ */
+#pragma once
+
+/**
+ * FYSETC E4 pin assignments
+ * FYSETC E4 is a 3D printer control board based on the ESP32 microcontroller.
+ * Supports 4 stepper drivers, heated bed, single hotend.
+ */
+
+#ifndef ARDUINO_ARCH_ESP32
+ #error "Oops! Select an ESP32 board in 'Tools > Board.'"
+#elif EXTRUDERS > 1 || E_STEPPERS > 1
+ #error "FYSETC E4 only supports one E Stepper. Comment out this line to continue."
+#elif HOTENDS > 1
+ #error "FYSETC E4 only supports one hotend / E-stepper. Comment out this line to continue."
+#endif
+
+#define BOARD_INFO_NAME "FYSETC_E4"
+#define DEFAULT_MACHINE_NAME BOARD_INFO_NAME
+
+//
+// Disable I2S stepper stream
+//
+#undef I2S_STEPPER_STREAM
+#define I2S_WS -1
+#define I2S_BCK -1
+#define I2S_DATA -1
+
+//
+// Limit Switches
+//
+#define X_STOP_PIN 34
+#define Y_STOP_PIN 35
+#define Z_STOP_PIN 15
+
+//
+// Steppers
+//
+#define X_STEP_PIN 27
+#define X_DIR_PIN 26
+#define X_ENABLE_PIN 25
+
+#define Y_STEP_PIN 33
+#define Y_DIR_PIN 32
+#define Y_ENABLE_PIN X_ENABLE_PIN
+
+#define Z_STEP_PIN 14
+#define Z_DIR_PIN 12
+#define Z_ENABLE_PIN X_ENABLE_PIN
+
+#define E0_STEP_PIN 16
+#define E0_DIR_PIN 17
+#define E0_ENABLE_PIN X_ENABLE_PIN
+
+#if HAS_TMC_UART
+ //
+ // TMC2209 stepper drivers
+ //
+
+ //
+ // Hardware serial 1
+ //
+ #define X_HARDWARE_SERIAL Serial1
+ #define Y_HARDWARE_SERIAL Serial1
+ #define Z_HARDWARE_SERIAL Serial1
+ #define E0_HARDWARE_SERIAL Serial1
+
+ #define TMC_BAUD_RATE 115200
+#endif
+
+//
+// Temperature Sensors
+//
+#define TEMP_0_PIN 36 // Analog Input
+#define TEMP_BED_PIN 39 // Analog Input
+
+//
+// Heaters / Fans
+//
+#define HEATER_0_PIN 2
+#define FAN_PIN 13
+#define HEATER_BED_PIN 4
+
+//
+// MicroSD card
+//
+#define SD_MOSI_PIN 23
+#define SD_MISO_PIN 19
+#define SD_SCK_PIN 18
+#define SDSS 5
+#define USES_SHARED_SPI // SPI is shared by SD card with TMC SPI drivers
+
+/**
+ * Hardware serial pins
+ *
+ * Override these pins in Configuration.h or Configuration_adv.h if needed.
+ *
+ * Note: Serial2 can be defined using HARDWARE_SERIAL2_RX and HARDWARE_SERIAL2_TX
+ * but MRR ESPA does not have enough spare pins for such reassignment.
+ */
+#ifndef HARDWARE_SERIAL1_RX
+ #define HARDWARE_SERIAL1_RX 21
+#endif
+#ifndef HARDWARE_SERIAL1_TX
+ #define HARDWARE_SERIAL1_TX 22
+#endif
diff --git a/Marlin/src/pins/esp32/pins_MRR_ESPA.h b/Marlin/src/pins/esp32/pins_MRR_ESPA.h
new file mode 100644
index 0000000..fe67f75
--- /dev/null
+++ b/Marlin/src/pins/esp32/pins_MRR_ESPA.h
@@ -0,0 +1,108 @@
+/**
+ * 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 .
+ *
+ */
+#pragma once
+
+/**
+ * MRR ESPA pin assignments
+ * MRR ESPA is a 3D printer control board based on the ESP32 microcontroller.
+ * Supports 4 stepper drivers, heated bed, single hotend.
+ */
+
+#if NOT_TARGET(ARDUINO_ARCH_ESP32)
+ #error "Oops! Select an ESP32 board in 'Tools > Board.'"
+#elif EXTRUDERS > 1 || E_STEPPERS > 1
+ #error "MRR ESPA only supports one E Stepper. Comment out this line to continue."
+#elif HOTENDS > 1
+ #error "MRR ESPA only supports one hotend / E-stepper. Comment out this line to continue."
+#endif
+
+#define BOARD_INFO_NAME "MRR ESPA"
+#define BOARD_WEBSITE_URL "github.com/maplerainresearch/MRR_ESPA"
+#define DEFAULT_MACHINE_NAME BOARD_INFO_NAME
+
+//
+// Disable I2S stepper stream
+//
+#undef I2S_STEPPER_STREAM
+#undef I2S_WS
+#undef I2S_BCK
+#undef I2S_DATA
+
+//
+// Limit Switches
+//
+#define X_STOP_PIN 34
+#define Y_STOP_PIN 35
+#define Z_STOP_PIN 15
+
+//
+// Steppers
+//
+#define X_STEP_PIN 27
+#define X_DIR_PIN 26
+#define X_ENABLE_PIN 25
+//#define X_CS_PIN 21
+
+#define Y_STEP_PIN 33
+#define Y_DIR_PIN 32
+#define Y_ENABLE_PIN X_ENABLE_PIN
+//#define Y_CS_PIN 22
+
+#define Z_STEP_PIN 14
+#define Z_DIR_PIN 12
+#define Z_ENABLE_PIN X_ENABLE_PIN
+//#define Z_CS_PIN 5 // SS_PIN
+
+#define E0_STEP_PIN 16
+#define E0_DIR_PIN 17
+#define E0_ENABLE_PIN X_ENABLE_PIN
+//#define E0_CS_PIN 21
+
+//
+// Temperature Sensors
+//
+#define TEMP_0_PIN 36 // Analog Input
+#define TEMP_BED_PIN 39 // Analog Input
+
+//
+// Heaters / Fans
+//
+#define HEATER_0_PIN 2
+#define FAN_PIN 13
+#define HEATER_BED_PIN 4
+
+//
+// MicroSD card
+//
+#define SD_MOSI_PIN 23
+#define SD_MISO_PIN 19
+#define SD_SCK_PIN 18
+#define SDSS 5
+#define USES_SHARED_SPI // SPI is shared by SD card with TMC SPI drivers
+
+// Hardware serial pins
+// Add the following to Configuration.h or Configuration_adv.h to assign
+// specific pins to hardware Serial1.
+// Note: Serial2 can be defined using HARDWARE_SERIAL2_RX and HARDWARE_SERIAL2_TX but
+// MRR ESPA does not have enough spare pins for such reassignment.
+//#define HARDWARE_SERIAL1_RX 21
+//#define HARDWARE_SERIAL1_TX 22
diff --git a/Marlin/src/pins/esp32/pins_MRR_ESPE.h b/Marlin/src/pins/esp32/pins_MRR_ESPE.h
new file mode 100644
index 0000000..3f9a6a0
--- /dev/null
+++ b/Marlin/src/pins/esp32/pins_MRR_ESPE.h
@@ -0,0 +1,163 @@
+/**
+ * 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 .
+ *
+ */
+#pragma once
+
+/**
+ * MRR ESPE pin assignments
+ * MRR ESPE is a 3D printer control board based on the ESP32 microcontroller.
+ * Supports 5 stepper drivers (using I2S stepper stream), heated bed,
+ * single hotend, and LCD controller.
+ */
+
+#if NOT_TARGET(ARDUINO_ARCH_ESP32)
+ #error "Oops! Select an ESP32 board in 'Tools > Board.'"
+#elif EXTRUDERS > 2 || E_STEPPERS > 2
+ #error "MRR ESPE only supports two E Steppers. Comment out this line to continue."
+#elif HOTENDS > 1
+ #error "MRR ESPE only supports one hotend / E-stepper. Comment out this line to continue."
+#endif
+
+#define BOARD_INFO_NAME "MRR ESPE"
+#define BOARD_WEBSITE_URL "github.com/maplerainresearch/MRR_ESPE"
+#define DEFAULT_MACHINE_NAME BOARD_INFO_NAME
+
+//
+// Limit Switches
+//
+#define X_STOP_PIN 35
+#define Y_STOP_PIN 32
+#define Z_STOP_PIN 33
+
+//
+// Enable I2S stepper stream
+//
+#undef I2S_STEPPER_STREAM
+#define I2S_STEPPER_STREAM
+#define I2S_WS 26
+#define I2S_BCK 25
+#define I2S_DATA 27
+#undef LIN_ADVANCE // Currently, I2S stream does not work with linear advance
+
+//
+// Steppers
+//
+#define X_STEP_PIN 129
+#define X_DIR_PIN 130
+#define X_ENABLE_PIN 128
+//#define X_CS_PIN 21
+
+#define Y_STEP_PIN 132
+#define Y_DIR_PIN 133
+#define Y_ENABLE_PIN 131
+//#define Y_CS_PIN 22
+
+#define Z_STEP_PIN 135
+#define Z_DIR_PIN 136
+#define Z_ENABLE_PIN 134
+//#define Z_CS_PIN 5 // SS_PIN
+
+#define E0_STEP_PIN 138
+#define E0_DIR_PIN 139
+#define E0_ENABLE_PIN 137
+//#define E0_CS_PIN 21
+
+#define E1_STEP_PIN 141
+#define E1_DIR_PIN 142
+#define E1_ENABLE_PIN 140
+//#define E1_CS_PIN 22
+
+#define Z2_STEP_PIN 141
+#define Z2_DIR_PIN 142
+#define Z2_ENABLE_PIN 140
+//#define Z2_CS_PIN 5
+
+//
+// Temperature Sensors
+//
+#define TEMP_0_PIN 36 // Analog Input
+#define TEMP_1_PIN 34 // Analog Input
+#define TEMP_BED_PIN 39 // Analog Input
+
+//
+// Heaters / Fans
+//
+#define HEATER_0_PIN 145 // 2
+#define FAN_PIN 146 // 15
+#define HEATER_BED_PIN 144 // 4
+
+#define CONTROLLER_FAN_PIN 147
+//#define E0_AUTO_FAN_PIN 148 // need to update Configuration_adv.h @section extruder
+//#define E1_AUTO_FAN_PIN 149 // need to update Configuration_adv.h @section extruder
+#define FAN1_PIN 149
+
+//
+// MicroSD card
+//
+#define SD_MOSI_PIN 23
+#define SD_MISO_PIN 19
+#define SD_SCK_PIN 18
+#define SDSS 5
+#define USES_SHARED_SPI // SPI is shared by SD card with TMC SPI drivers
+
+//////////////////////////
+// LCDs and Controllers //
+//////////////////////////
+
+#if HAS_MARLINUI_U8GLIB
+
+ #define LCD_PINS_RS 13
+ #define LCD_PINS_ENABLE 17
+ #define LCD_PINS_D4 16
+
+ #if ENABLED(CR10_STOCKDISPLAY)
+
+ #define BEEPER_PIN 151
+
+ #elif IS_RRD_FG_SC
+
+ #define BEEPER_PIN 151
+
+ //#define LCD_PINS_D5 150
+ //#define LCD_PINS_D6 152
+ //#define LCD_PINS_D7 153
+
+ #else
+
+ #error "Only CR10_STOCKDISPLAY and REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER are currently supported. Comment out this line to continue."
+
+ #endif
+
+ #define BTN_EN1 0
+ #define BTN_EN2 12
+ #define BTN_ENC 14
+
+#endif // HAS_MARLINUI_U8GLIB
+
+// Hardware serial pins
+// Add the following to Configuration.h or Configuration_adv.h to assign
+// specific pins to hardware Serial1 and Serial2.
+// Note: Serial2 can be defined using HARDWARE_SERIAL2_RX and HARDWARE_SERIAL2_TX but
+// MRR ESPA does not have enough spare pins for such reassignment.
+//#define HARDWARE_SERIAL1_RX 21
+//#define HARDWARE_SERIAL1_TX 22
+//#define HARDWARE_SERIAL2_RX 2
+//#define HARDWARE_SERIAL2_TX 4
--
cgit v1.2.3