My Marlin configs for Fabrikator Mini and CTC i3 Pro B
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

pins_GTM32_REV_B.h 6.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232
  1. /**
  2. * Marlin 3D Printer Firmware
  3. * Copyright (c) 2020 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 <http://www.gnu.org/licenses/>.
  20. *
  21. */
  22. #pragma once
  23. /**
  24. * 24 May 2018 - @chepo for STM32F103VET6
  25. * Schematic: https://github.com/chepo92/Smartto/blob/master/circuit_diagram/Rostock301/Hardware_GTM32_PRO_VB.pdf
  26. */
  27. #ifndef __STM32F1__
  28. #error "Oops! Select an STM32F1 board in 'Tools > Board.'"
  29. #endif
  30. #define BOARD_NAME "GTM32 Pro VB"
  31. #define DEFAULT_MACHINE_NAME "M201"
  32. //#define DISABLE_DEBUG
  33. //
  34. // It is required to disable JTAG function because its pins are
  35. // used as GPIO to drive the Y axis stepper.
  36. // DO NOT ENABLE!
  37. //
  38. #define DISABLE_JTAG
  39. //
  40. // If you don't need the SWDIO functionality (any more), you may
  41. // disable SWD here to regain PA13/PA14 pins for other use.
  42. //
  43. //#define DISABLE_JTAGSWD
  44. // Ignore temp readings during development.
  45. //#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
  46. // Enable EEPROM Emulation for this board as it doesn't have EEPROM
  47. #define FLASH_EEPROM_EMULATION
  48. #define E2END 0xFFF // 4KB
  49. //
  50. // Limit Switches
  51. //
  52. #define X_MIN_PIN PE5 // ENDSTOPS 15,17
  53. #define X_MAX_PIN PE4 // ENDSTOPS 16,18
  54. #define Y_MIN_PIN PE3 // ENDSTOPS 9,11
  55. #define Y_MAX_PIN PE2 // ENDSTOPS 10,12
  56. #define Z_MIN_PIN PE1 // ENDSTOPS 3,5
  57. #define Z_MAX_PIN PE0 // ENDSTOPS 4,6
  58. //
  59. // Steppers
  60. //
  61. #define X_STEP_PIN PC6
  62. #define X_DIR_PIN PD13
  63. #define X_ENABLE_PIN PA8
  64. #define Y_STEP_PIN PA12
  65. #define Y_DIR_PIN PA11
  66. #define Y_ENABLE_PIN PA15
  67. #define Z_STEP_PIN PD6
  68. #define Z_DIR_PIN PD3
  69. #define Z_ENABLE_PIN PB3
  70. // Extruder stepper pins
  71. // NOTE: Numbering here is made according to EXT connector numbers,
  72. // the FANx_PWM line numbering in the schematics is reverse.
  73. // That is, E0_*_PIN are the E2_* lines connected to E2_A1 step
  74. // stick that drives the EXT0 output on the board.
  75. //
  76. #define E0_STEP_PIN PC14
  77. #define E0_DIR_PIN PC13
  78. #define E0_ENABLE_PIN PC15
  79. #define E1_STEP_PIN PA0
  80. #define E1_DIR_PIN PB6
  81. #define E1_ENABLE_PIN PA1
  82. #define E2_STEP_PIN PB2
  83. #define E2_DIR_PIN PB11
  84. #define E2_ENABLE_PIN PC4
  85. //
  86. // Heaters / Fans - INFO: Extruders ports are in reverse order. Pin numbers here differ from schematic. Original firmware assumes heater, fan and temp sensor on port EXT0 PB0, PB9, PC2.
  87. //
  88. #define HEATER_0_PIN PB0 // EXT0 port.
  89. #define HEATER_1_PIN PB5 // EXT1 port
  90. #define HEATER_2_PIN PB4 // EXT2 port
  91. #define HEATER_BED_PIN PB1 // CON2X3 hotbed port
  92. //
  93. // These are FAN PWM pins on EXT0..EXT2 connectors.
  94. //
  95. //#define FAN_PIN PB9 // EXT0 port
  96. #define FAN1_PIN PB8 // EXT1 port
  97. #define FAN2_PIN PB7 // EXT2 port
  98. #define ORIG_E0_AUTO_FAN_PIN PB9 // EXT0 port, used as main extruder fan
  99. //
  100. // Temperature Sensors
  101. //
  102. #define TEMP_0_PIN PC2 // EXT0 port
  103. #define TEMP_1_PIN PC1 // EXT1 port
  104. #define TEMP_2_PIN PC0 // EXT2 port
  105. #define TEMP_BED_PIN PC3 // CON2X3 hotbed port
  106. //
  107. // Misc. Functions
  108. //
  109. #define LED_PWM PD12 // External LED, pin 2 on LED labeled connector
  110. //
  111. // LCD / Controller
  112. //
  113. #if HAS_SPI_LCD
  114. #if ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER)
  115. //
  116. // LCD display on J2 FFC40
  117. // Geeetech's LCD2004A Control Panel is very much like
  118. // RepRapDiscount Smart Controller, but adds an FFC40 connector
  119. // connected with a flat wire to J2 connector on the board.
  120. //
  121. #define LCD_PINS_RS PE6 // CS chip select /SS chip slave select
  122. #define LCD_PINS_ENABLE PE14 // SID (MOSI)
  123. #define LCD_PINS_D4 PD8 // SCK (CLK) clock
  124. #define LCD_PINS_D5 PD9
  125. #define LCD_PINS_D6 PD10
  126. #define LCD_PINS_D7 PE15
  127. #define BTN_EN1 PE8
  128. #define BTN_EN2 PE9
  129. #define BTN_ENC PE13
  130. //#define GTM32_PRO_VB_USE_LCD_BEEPER
  131. #define GTM32_PRO_VB_USE_EXT_SDCARD
  132. #else
  133. //
  134. // Serial LCDs can be implemented in ExtUI
  135. //
  136. //#define LCD_UART_TX PD8
  137. //#define LCD_UART_RX PD9
  138. #endif
  139. #if HAS_GRAPHICAL_LCD
  140. #ifndef ST7920_DELAY_1
  141. #define ST7920_DELAY_1 DELAY_NS(96)
  142. #endif
  143. #ifndef ST7920_DELAY_2
  144. #define ST7920_DELAY_2 DELAY_NS(48)
  145. #endif
  146. #ifndef ST7920_DELAY_3
  147. #define ST7920_DELAY_3 DELAY_NS(715)
  148. #endif
  149. #endif
  150. #endif // HAS_SPI_LCD
  151. //
  152. // Beeper
  153. //
  154. #ifdef GTM32_PRO_VB_USE_LCD_BEEPER
  155. // This is pin 32 on J2 FFC40 and pin, goes to the beeper
  156. // on Geeetech's version of RepRapDiscount Smart Controller
  157. // (e.g. on Rostock 301)
  158. #define BEEPER_PIN PE12
  159. #else
  160. // This is the beeper on the board itself
  161. #define BEEPER_PIN PB10
  162. #endif
  163. /**
  164. * The on-board TF_CARD_SOCKET microSD card socket has no SD Detect pin wired.
  165. *
  166. * The FFC10 (SD_CARD) connector has the same pins as those routed to the FFC40 (J2)
  167. * connector, which usually go to the SD Card slot on the Geeetech version of the
  168. * RepRapDiscount Smart Controller. Both connectors have the card detect signal.
  169. *
  170. * The on-board SD card and the external card (on either SD_CARD or J2) are two
  171. * separate devices and can work simultaneously. Unfortunately, Marlin only supports
  172. * a single SPI Flash device (as of 2019-07-05) so only one is enabled here.
  173. */
  174. #if ENABLED(GTM32_PRO_VB_USE_EXT_SDCARD)
  175. //
  176. // SD Card on RepRapDiscount Smart Controller (J2) or on SD_CARD connector
  177. //
  178. #define SS_PIN PB12 // PC11
  179. #define SCK_PIN PB13 // PC12 // PC1
  180. #define MOSI_PIN PB15 // PD2 // PD2
  181. #define MISO_PIN PB14 // PC8
  182. #define SD_DETECT_PIN PC7
  183. #else
  184. //
  185. // Use the on-board card socket labeled TF_CARD_SOCKET
  186. //
  187. #define SS_PIN PA4
  188. #define SCK_PIN PA5
  189. #define MOSI_PIN PA7
  190. #define MISO_PIN PA6 // PA6
  191. #define SD_DETECT_PIN -1 // Card detect is not connected
  192. #endif
  193. #define SDSS SS_PIN
  194. //
  195. // ESP WiFi can be soldered to J9 connector which is wired to USART2.
  196. // Must define WIFISUPPORT in Configuration.h for the printer.
  197. //
  198. #define ESP_WIFI_MODULE_COM 2
  199. #define ESP_WIFI_MODULE_BAUDRATE 115200
  200. #define ESP_WIFI_MODULE_RESET_PIN -1