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_FORMBOT_TREX2PLUS.h 4.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196
  1. /**
  2. * Marlin 3D Printer Firmware
  3. * Copyright (c) 2019 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. * Formbot pin assignments
  25. */
  26. #ifndef __AVR_ATmega2560__
  27. #error "Oops! Select 'Arduino/Genuino Mega or Mega 2560' in 'Tools > Board.'"
  28. #elif HOTENDS > 2 || E_STEPPERS > 2
  29. #error "Formbot supports up to 2 hotends / E-steppers. Comment out this line to continue."
  30. #endif
  31. #define BOARD_INFO_NAME "Formbot"
  32. #define DEFAULT_MACHINE_NAME BOARD_INFO_NAME
  33. //
  34. // Servos
  35. //
  36. #define SERVO0_PIN 11
  37. #define SERVO1_PIN -1 // was 6
  38. #define SERVO2_PIN -1 // was 5
  39. #define SERVO3_PIN -1
  40. //
  41. // Limit Switches
  42. //
  43. #define X_MIN_PIN 3
  44. #ifndef X_MAX_PIN
  45. #define X_MAX_PIN 2
  46. #endif
  47. #define Y_MIN_PIN 14
  48. #define Y_MAX_PIN 15
  49. #define Z_MIN_PIN 18
  50. #define Z_MAX_PIN 19
  51. //
  52. // Z Probe (when not Z_MIN_PIN)
  53. //
  54. #ifndef Z_MIN_PROBE_PIN
  55. #define Z_MIN_PROBE_PIN 32
  56. #endif
  57. //
  58. // Steppers
  59. //
  60. #define X_STEP_PIN 54
  61. #define X_DIR_PIN 55
  62. #define X_ENABLE_PIN 38
  63. #ifndef X_CS_PIN
  64. #define X_CS_PIN 53
  65. #endif
  66. #define Y_STEP_PIN 60
  67. #define Y_DIR_PIN 61
  68. #define Y_ENABLE_PIN 56
  69. #ifndef Y_CS_PIN
  70. #define Y_CS_PIN 49
  71. #endif
  72. #define Z_STEP_PIN 46
  73. #define Z_DIR_PIN 48
  74. #define Z_ENABLE_PIN 62
  75. #ifndef Z_CS_PIN
  76. #define Z_CS_PIN 40
  77. #endif
  78. #define E0_STEP_PIN 26
  79. #define E0_DIR_PIN 28
  80. #define E0_ENABLE_PIN 24
  81. #ifndef E0_CS_PIN
  82. #define E0_CS_PIN 42
  83. #endif
  84. #define E1_STEP_PIN 36
  85. #define E1_DIR_PIN 34
  86. #define E1_ENABLE_PIN 30
  87. #ifndef E1_CS_PIN
  88. #define E1_CS_PIN 44
  89. #endif
  90. #define E2_STEP_PIN 42
  91. #define E2_DIR_PIN 43
  92. #define E2_ENABLE_PIN 44
  93. //
  94. // Temperature Sensors
  95. //
  96. #define TEMP_0_PIN 13 // Analog Input
  97. #define TEMP_1_PIN 15 // Analog Input
  98. #define TEMP_BED_PIN 3 // Analog Input
  99. // SPI for Max6675 or Max31855 Thermocouple
  100. #if DISABLED(SDSUPPORT)
  101. #define MAX6675_SS_PIN 66 // Don't use 53 if there is even the remote possibility of using Display/SD card
  102. #else
  103. #define MAX6675_SS_PIN 66 // Don't use 49 as this is tied to the switch inside the SD card socket to detect if there is an SD card present
  104. #endif
  105. //
  106. // Augmentation for auto-assigning RAMPS plugs
  107. //
  108. #if NONE(IS_RAMPS_EEB, IS_RAMPS_EEF, IS_RAMPS_EFB, IS_RAMPS_EFF, IS_RAMPS_SF) && !PIN_EXISTS(MOSFET_D)
  109. #if HOTENDS > 1
  110. #if TEMP_SENSOR_BED
  111. #define IS_RAMPS_EEB
  112. #else
  113. #define IS_RAMPS_EEF
  114. #endif
  115. #elif TEMP_SENSOR_BED
  116. #define IS_RAMPS_EFB
  117. #else
  118. #define IS_RAMPS_EFF
  119. #endif
  120. #endif
  121. //
  122. // Heaters / Fans
  123. //
  124. #define HEATER_0_PIN 10
  125. #define HEATER_1_PIN 7
  126. #define HEATER_BED_PIN 58
  127. #define FAN_PIN 9
  128. #if HAS_FILAMENT_SENSOR
  129. #define FIL_RUNOUT_PIN 4
  130. //#define FIL_RUNOUT2_PIN -1
  131. #else
  132. // Though defined as a fan pin, it is utilized as a dedicated laser pin by Formbot.
  133. #define FAN1_PIN 4
  134. #endif
  135. //
  136. // Misc. Functions
  137. //
  138. #define SDSS 53
  139. #ifndef LED_PIN
  140. #define LED_PIN 13 // The Formbot v 1 board has almost no unassigned pins on it. The Board's LED
  141. #endif // is a good place to get a signal to control the Max7219 LED Matrix.
  142. // Use the RAMPS 1.4 Analog input 5 on the AUX2 connector
  143. #define FILWIDTH_PIN 5 // Analog Input
  144. #ifndef PS_ON_PIN
  145. #define PS_ON_PIN 12
  146. #endif
  147. #define CASE_LIGHT_PIN 8
  148. //
  149. // LCD / Controller
  150. //
  151. // Formbot only supports REPRAP_DISCOUNT_SMART_CONTROLLER
  152. //
  153. #if ENABLED(REPRAP_DISCOUNT_SMART_CONTROLLER)
  154. #ifndef BEEPER_PIN
  155. #define BEEPER_PIN 37
  156. #endif
  157. #define BTN_EN1 31
  158. #define BTN_EN2 33
  159. #define BTN_ENC 35
  160. #define SD_DETECT_PIN 49
  161. // Allow MAX7219 to steal the KILL pin
  162. #if !defined(KILL_PIN) && MAX7219_CLK_PIN != 41 && MAX7219_DIN_PIN != 41 && MAX7219_LOAD_PIN != 41
  163. #define KILL_PIN 41
  164. #endif
  165. #define LCD_PINS_RS 16
  166. #define LCD_PINS_ENABLE 17
  167. #define LCD_PINS_D4 23
  168. #define LCD_PINS_D5 25
  169. #define LCD_PINS_D6 27
  170. #define LCD_PINS_D7 29
  171. #endif