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_MINITRONICS.h 4.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  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 <https://www.gnu.org/licenses/>.
  20. *
  21. */
  22. #pragma once
  23. /**
  24. * Minitronics v1.0/1.1 pin assignments
  25. */
  26. /**
  27. * Rev B 2 JAN 2017
  28. *
  29. * Added pin definitions for M3, M4 & M5 spindle control commands
  30. */
  31. #if NOT_TARGET(__AVR_ATmega1281__)
  32. #error "Oops! Select 'Minitronics' in 'Tools > Board.'"
  33. #elif HOTENDS > 2 || E_STEPPERS > 2
  34. #error "Minitronics supports up to 2 hotends / E steppers."
  35. #endif
  36. #define BOARD_INFO_NAME "Minitronics v1.0/1.1"
  37. //
  38. // Limit Switches
  39. //
  40. #define X_MIN_PIN 5
  41. #define X_MAX_PIN 2
  42. #define Y_MIN_PIN 2
  43. #define Y_MAX_PIN 15
  44. #define Z_MIN_PIN 6
  45. #define Z_MAX_PIN -1
  46. //
  47. // Steppers
  48. //
  49. #define X_STEP_PIN 48
  50. #define X_DIR_PIN 47
  51. #define X_ENABLE_PIN 49
  52. #define Y_STEP_PIN 39 // A6
  53. #define Y_DIR_PIN 40 // A0
  54. #define Y_ENABLE_PIN 38
  55. #define Z_STEP_PIN 42 // A2
  56. #define Z_DIR_PIN 43 // A6
  57. #define Z_ENABLE_PIN 41 // A1
  58. #define E0_STEP_PIN 45
  59. #define E0_DIR_PIN 44
  60. #define E0_ENABLE_PIN 27
  61. #define E1_STEP_PIN 36
  62. #define E1_DIR_PIN 35
  63. #define E1_ENABLE_PIN 37
  64. //
  65. // Temperature Sensors
  66. //
  67. #define TEMP_0_PIN 7 // Analog Input
  68. #define TEMP_1_PIN 6 // Analog Input
  69. #define TEMP_BED_PIN 6 // Analog Input
  70. //
  71. // Heaters / Fans
  72. //
  73. #define HEATER_0_PIN 7 // EXTRUDER 1
  74. #define HEATER_1_PIN 8 // EXTRUDER 2
  75. #define HEATER_BED_PIN 3 // BED
  76. #ifndef FAN_PIN
  77. #define FAN_PIN 9
  78. #endif
  79. //
  80. // Misc. Functions
  81. //
  82. #define SDSS 16
  83. #define LED_PIN 46
  84. //
  85. // LCD / Controller
  86. //
  87. #define BEEPER_PIN -1
  88. #if ENABLED(REPRAPWORLD_GRAPHICAL_LCD)
  89. #define LCD_PINS_RS 15 // CS chip select /SS chip slave select
  90. #define LCD_PINS_ENABLE 11 // SID (MOSI)
  91. #define LCD_PINS_D4 10 // SCK (CLK) clock
  92. #define BTN_EN1 18
  93. #define BTN_EN2 17
  94. #define BTN_ENC 25
  95. #define SD_DETECT_PIN 30
  96. #else
  97. #define LCD_PINS_RS -1
  98. #define LCD_PINS_ENABLE -1
  99. // Buttons are directly attached using keypad
  100. #define BTN_EN1 -1
  101. #define BTN_EN2 -1
  102. #define BTN_ENC -1
  103. #define SD_DETECT_PIN -1 // Minitronics doesn't use this
  104. #endif
  105. //
  106. // M3/M4/M5 - Spindle/Laser Control
  107. //
  108. #if HAS_CUTTER // assumes we're only doing CNC work (no 3D printing)
  109. #undef HEATER_BED_PIN
  110. #undef TEMP_BED_PIN // need to free up some pins but also need to
  111. #undef TEMP_0_PIN // re-assign them (to unused pins) because Marlin
  112. #undef TEMP_1_PIN // requires the presence of certain pins or else it
  113. #define HEATER_BED_PIN 4 // won't compile
  114. #define TEMP_BED_PIN 50
  115. #define TEMP_0_PIN 51
  116. #define SPINDLE_LASER_ENA_PIN 52 // using A6 because it already has a pullup
  117. #define SPINDLE_LASER_PWM_PIN 3 // WARNING - LED & resistor pull up to +12/+24V stepper voltage
  118. #define SPINDLE_DIR_PIN 53
  119. #endif