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_BTT_SKR_MINI_E3.h 4.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  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. #ifndef TARGET_STM32F1
  24. #error "Oops! Select an STM32F1 board in 'Tools > Board.'"
  25. #endif
  26. // Release PB3/PB4 (E0 STP/DIR) from JTAG pins
  27. #define DISABLE_JTAG
  28. // Ignore temp readings during development.
  29. //#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
  30. #define FLASH_EEPROM_EMULATION
  31. #define EEPROM_PAGE_SIZE uint16(0x800) // 2KB
  32. #define EEPROM_START_ADDRESS uint32(0x8000000 + (STM32_FLASH_SIZE) * 1024 - 2 * EEPROM_PAGE_SIZE)
  33. #undef E2END
  34. #define E2END (EEPROM_PAGE_SIZE - 1) // 2KB
  35. //
  36. // Servos
  37. //
  38. #define SERVO0_PIN PA1
  39. //
  40. // Limit Switches
  41. //
  42. #define X_STOP_PIN PC0
  43. #define Y_STOP_PIN PC1
  44. #define Z_STOP_PIN PC2
  45. //
  46. // Z Probe must be this pins
  47. //
  48. #define Z_MIN_PROBE_PIN PC14
  49. //
  50. // Filament Runout Sensor
  51. //
  52. #ifndef FIL_RUNOUT_PIN
  53. #define FIL_RUNOUT_PIN PC15 // "E0-STOP"
  54. #endif
  55. //
  56. // Steppers
  57. //
  58. #define X_ENABLE_PIN PB14
  59. #define X_STEP_PIN PB13
  60. #define X_DIR_PIN PB12
  61. #define Y_ENABLE_PIN PB11
  62. #define Y_STEP_PIN PB10
  63. #define Y_DIR_PIN PB2
  64. #define Z_ENABLE_PIN PB1
  65. #define Z_STEP_PIN PB0
  66. #define Z_DIR_PIN PC5
  67. #define E0_ENABLE_PIN PD2
  68. #define E0_STEP_PIN PB3
  69. #define E0_DIR_PIN PB4
  70. //
  71. // Temperature Sensors
  72. //
  73. #define TEMP_0_PIN PA0 // Analog Input
  74. #define TEMP_BED_PIN PC3 // Analog Input
  75. //
  76. // Heaters / Fans
  77. //
  78. #define HEATER_0_PIN PC8 // EXTRUDER
  79. #define HEATER_BED_PIN PC9 // BED
  80. #define FAN_PIN PA8
  81. //
  82. // USB connect control
  83. //
  84. #define USB_CONNECT_PIN PC13
  85. #define USB_CONNECT_INVERTING false
  86. #define SD_DETECT_PIN PC4
  87. /**
  88. * _____
  89. * 5V | · · | GND
  90. * (LCD_EN) PB7 | · · | PB8 (LCD_RS)
  91. * (LCD_D4) PB9 | · · | PA10 (BTN_EN2)
  92. * RESET | · · | PA9 (BTN_EN1)
  93. * (BTN_ENC) PB6 | · · | PB5 (BEEPER)
  94. * -----
  95. * EXP1
  96. */
  97. #if HAS_SPI_LCD
  98. #if ENABLED(CR10_STOCKDISPLAY)
  99. #define BEEPER_PIN PB5
  100. #define BTN_ENC PB6
  101. #define LCD_PINS_RS PB8
  102. #define BTN_EN1 PA9
  103. #define BTN_EN2 PA10
  104. #define LCD_PINS_ENABLE PB7
  105. #define LCD_PINS_D4 PB9
  106. #elif ENABLED(ZONESTAR_LCD) // ANET A8 LCD Controller - Must convert to 3.3V - CONNECTING TO 5V WILL DAMAGE THE BOARD!
  107. #error "CAUTION! ZONESTAR_LCD requires wiring modifications. See 'pins_BTT_SKR_MINI_E3.h' for details. Comment out this line to continue."
  108. #define LCD_PINS_RS PB9
  109. #define LCD_PINS_ENABLE PB6
  110. #define LCD_PINS_D4 PB8
  111. #define LCD_PINS_D5 PA10
  112. #define LCD_PINS_D6 PA9
  113. #define LCD_PINS_D7 PB5
  114. #define ADC_KEYPAD_PIN PA1 // Repurpose servo pin for ADC - CONNECTING TO 5V WILL DAMAGE THE BOARD!
  115. #elif EITHER(MKS_MINI_12864, ENDER2_STOCKDISPLAY)
  116. /** Creality Ender-2 display pinout
  117. * _____
  118. * 5V | · · | GND
  119. * (MOSI) PB7 | · · | PB8 (LCD_RS)
  120. * (LCD_A0) PB9 | · · | PA10 (BTN_EN2)
  121. * RESET | · · | PA9 (BTN_EN1)
  122. * (BTN_ENC) PB6 | · · | PB5 (SCK)
  123. * -----
  124. * EXP1
  125. */
  126. #define BTN_EN1 PA9
  127. #define BTN_EN2 PA10
  128. #define BTN_ENC PB6
  129. #define DOGLCD_CS PB8
  130. #define DOGLCD_A0 PB9
  131. #define DOGLCD_SCK PB5
  132. #define DOGLCD_MOSI PB7
  133. #define FORCE_SOFT_SPI
  134. #define LCD_BACKLIGHT_PIN -1
  135. #else
  136. #error "Only ZONESTAR_LCD, MKS_MINI_12864, ENDER2_STOCKDISPLAY, and CR10_STOCKDISPLAY are currently supported on the BIGTREE_SKR_MINI_E3."
  137. #endif
  138. #endif // HAS_SPI_LCD
  139. //
  140. // SD Support
  141. //
  142. #define HAS_ONBOARD_SD
  143. #ifndef SDCARD_CONNECTION
  144. #define SDCARD_CONNECTION ONBOARD
  145. #endif
  146. #define ON_BOARD_SPI_DEVICE 1 // SPI1
  147. #define ONBOARD_SD_CS_PIN PA4 // Chip select for "System" SD card