My Marlin configs for Fabrikator Mini and CTC i3 Pro B
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

pins.h 52KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978
  1. #ifndef PINS_H
  2. #define PINS_H
  3. #define X_MS1_PIN -1
  4. #define X_MS2_PIN -1
  5. #define Y_MS1_PIN -1
  6. #define Y_MS2_PIN -1
  7. #define Z_MS1_PIN -1
  8. #define Z_MS2_PIN -1
  9. #define E0_MS1_PIN -1
  10. #define E0_MS2_PIN -1
  11. #define E1_MS1_PIN -1
  12. #define E1_MS2_PIN -1
  13. #define DIGIPOTSS_PIN -1
  14. #if MOTHERBOARD == 99
  15. #define KNOWN_BOARD 1
  16. #define X_STEP_PIN 2
  17. #define X_DIR_PIN 3
  18. #define X_ENABLE_PIN -1
  19. #define X_STOP_PIN 16
  20. #define Y_STEP_PIN 5
  21. #define Y_DIR_PIN 6
  22. #define Y_ENABLE_PIN -1
  23. #define Y_STOP_PIN 67
  24. #define Z_STEP_PIN 62
  25. #define Z_DIR_PIN 63
  26. #define Z_ENABLE_PIN -1
  27. #define Z_STOP_PIN 59
  28. #define E0_STEP_PIN 65
  29. #define E0_DIR_PIN 66
  30. #define E0_ENABLE_PIN -1
  31. #define SDPOWER -1
  32. #define SDSS 53
  33. #define LED_PIN -1
  34. #define FAN_PIN -1
  35. #define PS_ON_PIN 9
  36. #define KILL_PIN -1
  37. #define HEATER_0_PIN 13
  38. #define HEATER_1_PIN -1
  39. #define HEATER_2_PIN -1
  40. #define TEMP_0_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
  41. #define TEMP_1_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
  42. #define TEMP_2_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
  43. #define HEATER_BED_PIN 4
  44. #define TEMP_BED_PIN 10
  45. #endif /* 99 */
  46. /****************************************************************************************
  47. * Gen7 v1.1, v1.2, v1.3 pin assignment
  48. *
  49. ****************************************************************************************/
  50. #if MOTHERBOARD == 12
  51. #define MOTHERBOARD 11
  52. #define GEN7_VERSION 13 // v1.3
  53. #endif
  54. #if MOTHERBOARD == 11
  55. #define KNOWN_BOARD
  56. #if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
  57. #error Oops! Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu.
  58. #endif
  59. #ifndef GEN7_VERSION
  60. #define GEN7_VERSION 12 // v1.x
  61. #endif
  62. //x axis pins
  63. #define X_STEP_PIN 19
  64. #define X_DIR_PIN 18
  65. #define X_ENABLE_PIN 24
  66. #define X_STOP_PIN 7
  67. //y axis pins
  68. #define Y_STEP_PIN 23
  69. #define Y_DIR_PIN 22
  70. #define Y_ENABLE_PIN 24
  71. #define Y_STOP_PIN 5
  72. //z axis pins
  73. #define Z_STEP_PIN 26
  74. #define Z_DIR_PIN 25
  75. #define Z_ENABLE_PIN 24
  76. #define Z_MIN_PIN 1
  77. #define Z_MAX_PIN 0
  78. //extruder pins
  79. #define E0_STEP_PIN 28
  80. #define E0_DIR_PIN 27
  81. #define E0_ENABLE_PIN 24
  82. #define TEMP_0_PIN 1
  83. #define TEMP_1_PIN -1
  84. #define TEMP_2_PIN -1
  85. #define TEMP_BED_PIN 2
  86. #define HEATER_0_PIN 4
  87. #define HEATER_1_PIN -1
  88. #define HEATER_2_PIN -1
  89. #define HEATER_BED_PIN 3
  90. #define KILL_PIN -1
  91. #define SDPOWER -1
  92. #define SDSS -1 // SCL pin of I2C header
  93. #define LED_PIN -1
  94. #if (GEN7_VERSION >= 13)
  95. // Gen7 v1.3 removed the fan pin
  96. #define FAN_PIN -1
  97. #else
  98. #define FAN_PIN 31
  99. #endif
  100. #define PS_ON_PIN 15
  101. //All these generations of Gen7 supply thermistor power
  102. //via PS_ON, so ignore bad thermistor readings
  103. #define BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE
  104. //our pin for debugging.
  105. #define DEBUG_PIN 0
  106. //our RS485 pins
  107. #define TX_ENABLE_PIN 12
  108. #define RX_ENABLE_PIN 13
  109. #endif
  110. /****************************************************************************************
  111. * Gen7 v1.4 pin assignment
  112. *
  113. ****************************************************************************************/
  114. #if MOTHERBOARD == 13
  115. #define GEN7_VERSION 14 // v1.4
  116. #endif
  117. #if MOTHERBOARD == 13
  118. #define KNOWN_BOARD
  119. #if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
  120. #error Oops! Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu.
  121. #endif
  122. #ifndef GEN7_VERSION
  123. #define GEN7_VERSION 14 // v1.x
  124. #endif
  125. //x axis pins
  126. #define X_STEP_PIN 29
  127. #define X_DIR_PIN 28
  128. #define X_ENABLE_PIN 25
  129. #define X_STOP_PIN 0
  130. //y axis pins
  131. #define Y_STEP_PIN 27
  132. #define Y_DIR_PIN 26
  133. #define Y_ENABLE_PIN 25
  134. #define Y_STOP_PIN 1
  135. //z axis pins
  136. #define Z_STEP_PIN 23
  137. #define Z_DIR_PIN 22
  138. #define Z_ENABLE_PIN 25
  139. #define Z_STOP_PIN 2
  140. //extruder pins
  141. #define E0_STEP_PIN 19
  142. #define E0_DIR_PIN 18
  143. #define E0_ENABLE_PIN 25
  144. #define TEMP_0_PIN 1
  145. #define TEMP_1_PIN -1
  146. #define TEMP_2_PIN -1
  147. #define TEMP_BED_PIN 0
  148. #define HEATER_0_PIN 4
  149. #define HEATER_1_PIN -1
  150. #define HEATER_2_PIN -1
  151. #define HEATER_BED_PIN 3
  152. #define KILL_PIN -1
  153. #define SDPOWER -1
  154. #define SDSS -1 // SCL pin of I2C header
  155. #define LED_PIN -1
  156. #define FAN_PIN -1
  157. #define PS_ON_PIN 15
  158. //our pin for debugging.
  159. #define DEBUG_PIN 0
  160. //our RS485 pins
  161. #define TX_ENABLE_PIN 12
  162. #define RX_ENABLE_PIN 13
  163. #endif
  164. /*******************************************************************************
  165. *********
  166. * Gen7 Alfons3 pin assignment
  167. *
  168. ********************************************************************************
  169. ********/
  170. /* These Pins are assigned for the modified GEN7 Board from Alfons3 Please review the pins and adjust it for your needs*/
  171. #if MOTHERBOARD == 10
  172. #define KNOWN_BOARD
  173. #if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
  174. #error Oops! Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu.
  175. #endif
  176. //x axis pins
  177. #define X_STEP_PIN 21 //different from stanard GEN7
  178. #define X_DIR_PIN 20 //different from stanard GEN7
  179. #define X_ENABLE_PIN 24
  180. #define X_STOP_PIN 0
  181. //y axis pins
  182. #define Y_STEP_PIN 23
  183. #define Y_DIR_PIN 22
  184. #define Y_ENABLE_PIN 24
  185. #define Y_STOP_PIN 1
  186. //z axis pins
  187. #define Z_STEP_PIN 26
  188. #define Z_DIR_PIN 25
  189. #define Z_ENABLE_PIN 24
  190. #define Z_STOP_PIN 2
  191. //extruder pins
  192. #define E0_STEP_PIN 28
  193. #define E0_DIR_PIN 27
  194. #define E0_ENABLE_PIN 24
  195. #define TEMP_0_PIN 2
  196. #define TEMP_1_PIN -1
  197. #define TEMP_2_PIN -1
  198. #define TEMP_BED_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed)
  199. #define HEATER_0_PIN 4
  200. #define HEATER_1_PIN -1
  201. #define HEATER_2_PIN -1
  202. #define HEATER_BED_PIN 3 // (bed)
  203. #define SDPOWER -1
  204. #define SDSS 31 // SCL pin of I2C header || CS Pin for SD Card support
  205. #define LED_PIN -1
  206. #define FAN_PIN -1
  207. #define PS_ON_PIN 19
  208. //our pin for debugging.
  209. #define DEBUG_PIN -1
  210. //our RS485 pins
  211. //#define TX_ENABLE_PIN 12
  212. //#define RX_ENABLE_PIN 13
  213. #define BEEPER -1
  214. #define SDCARDDETECT -1
  215. #define SUICIDE_PIN -1 //has to be defined; otherwise Power_off doesn't work
  216. #define KILL_PIN -1
  217. //Pins for 4bit LCD Support
  218. #define LCD_PINS_RS 18
  219. #define LCD_PINS_ENABLE 17
  220. #define LCD_PINS_D4 16
  221. #define LCD_PINS_D5 15
  222. #define LCD_PINS_D6 13
  223. #define LCD_PINS_D7 14
  224. //buttons are directly attached
  225. #define BTN_EN1 11
  226. #define BTN_EN2 10
  227. #define BTN_ENC 12 //the click
  228. #endif
  229. /****************************************************************************************
  230. * Arduino Mega pin assignment
  231. *
  232. ****************************************************************************************/
  233. #if MOTHERBOARD == 3 || MOTHERBOARD == 33 || MOTHERBOARD == 34
  234. #define KNOWN_BOARD 1
  235. //////////////////FIX THIS//////////////
  236. #ifndef __AVR_ATmega1280__
  237. #ifndef __AVR_ATmega2560__
  238. #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
  239. #endif
  240. #endif
  241. // uncomment one of the following lines for RAMPS v1.3 or v1.0, comment both for v1.2 or 1.1
  242. // #define RAMPS_V_1_3
  243. // #define RAMPS_V_1_0
  244. #if MOTHERBOARD == 33 || MOTHERBOARD == 34
  245. #define LARGE_FLASH true
  246. #define X_STEP_PIN 54
  247. #define X_DIR_PIN 55
  248. #define X_ENABLE_PIN 38
  249. #define X_MIN_PIN 3
  250. #define X_MAX_PIN 2
  251. #define Y_STEP_PIN 60
  252. #define Y_DIR_PIN 61
  253. #define Y_ENABLE_PIN 56
  254. #define Y_MIN_PIN 14
  255. #define Y_MAX_PIN 15
  256. #define Z_STEP_PIN 46
  257. #define Z_DIR_PIN 48
  258. #define Z_ENABLE_PIN 62
  259. #define Z_MIN_PIN 18
  260. #define Z_MAX_PIN 19
  261. #define Z2_STEP_PIN 36
  262. #define Z2_DIR_PIN 34
  263. #define Z2_ENABLE_PIN 30
  264. #define E0_STEP_PIN 26
  265. #define E0_DIR_PIN 28
  266. #define E0_ENABLE_PIN 24
  267. #define E1_STEP_PIN 36
  268. #define E1_DIR_PIN 34
  269. #define E1_ENABLE_PIN 30
  270. #define SDPOWER -1
  271. #define SDSS 53
  272. #define LED_PIN 13
  273. #if MOTHERBOARD == 33
  274. #define FAN_PIN 9 // (Sprinter config)
  275. #else
  276. #define FAN_PIN 4 // IO pin. Buffer needed
  277. #endif
  278. #define PS_ON_PIN 12
  279. #if defined(REPRAP_DISCOUNT_SMART_CONTROLLER) || defined(G3D_PANEL)
  280. #define KILL_PIN 41
  281. #else
  282. #define KILL_PIN -1
  283. #endif
  284. #define HEATER_0_PIN 10 // EXTRUDER 1
  285. #if MOTHERBOARD == 33
  286. #define HEATER_1_PIN -1
  287. #else
  288. #define HEATER_1_PIN 9 // EXTRUDER 2 (FAN On Sprinter)
  289. #endif
  290. #define HEATER_2_PIN -1
  291. #define TEMP_0_PIN 13 // ANALOG NUMBERING
  292. #define TEMP_1_PIN 15 // ANALOG NUMBERING
  293. #define TEMP_2_PIN -1 // ANALOG NUMBERING
  294. #define HEATER_BED_PIN 8 // BED
  295. #define TEMP_BED_PIN 14 // ANALOG NUMBERING
  296. #ifdef NUM_SERVOS
  297. #define SERVO0_PIN 11
  298. #if NUM_SERVOS > 1
  299. #define SERVO1_PIN 6
  300. #endif
  301. #if NUM_SERVOS > 2
  302. #define SERVO2_PIN 5
  303. #endif
  304. #if NUM_SERVOS > 3
  305. #define SERVO3_PIN 4
  306. #endif
  307. #endif
  308. #ifdef ULTRA_LCD
  309. #ifdef NEWPANEL
  310. #define LCD_PINS_RS 16
  311. #define LCD_PINS_ENABLE 17
  312. #define LCD_PINS_D4 23
  313. #define LCD_PINS_D5 25
  314. #define LCD_PINS_D6 27
  315. #define LCD_PINS_D7 29
  316. #ifdef REPRAP_DISCOUNT_SMART_CONTROLLER
  317. #define BEEPER 37
  318. #define BTN_EN1 31
  319. #define BTN_EN2 33
  320. #define BTN_ENC 35
  321. #define SDCARDDETECT 49
  322. #else
  323. //arduino pin which triggers an piezzo beeper
  324. #define BEEPER 33 // Beeper on AUX-4
  325. //buttons are directly attached using AUX-2
  326. #ifdef REPRAPWORLD_KEYPAD
  327. #define BTN_EN1 64 // encoder
  328. #define BTN_EN2 59 // encoder
  329. #define BTN_ENC 63 // enter button
  330. #define SHIFT_OUT 40 // shift register
  331. #define SHIFT_CLK 44 // shift register
  332. #define SHIFT_LD 42 // shift register
  333. #else
  334. #define BTN_EN1 37
  335. #define BTN_EN2 35
  336. #define BTN_ENC 31 //the click
  337. #endif
  338. #ifdef G3D_PANEL
  339. #define SDCARDDETECT 49
  340. #else
  341. #define SDCARDDETECT -1 // Ramps does not use this port
  342. #endif
  343. #endif
  344. #else //old style panel with shift register
  345. //arduino pin witch triggers an piezzo beeper
  346. #define BEEPER 33 // No Beeper added
  347. //buttons are attached to a shift register
  348. // Not wired this yet
  349. //#define SHIFT_CLK 38
  350. //#define SHIFT_LD 42
  351. //#define SHIFT_OUT 40
  352. //#define SHIFT_EN 17
  353. #define LCD_PINS_RS 16
  354. #define LCD_PINS_ENABLE 17
  355. #define LCD_PINS_D4 23
  356. #define LCD_PINS_D5 25
  357. #define LCD_PINS_D6 27
  358. #define LCD_PINS_D7 29
  359. #endif
  360. #endif //ULTRA_LCD
  361. #else // RAMPS_V_1_1 or RAMPS_V_1_2 as default (MOTHERBOARD == 3)
  362. #define X_STEP_PIN 26
  363. #define X_DIR_PIN 28
  364. #define X_ENABLE_PIN 24
  365. #define X_MIN_PIN 3
  366. #define X_MAX_PIN -1 //2
  367. #define Y_STEP_PIN 38
  368. #define Y_DIR_PIN 40
  369. #define Y_ENABLE_PIN 36
  370. #define Y_MIN_PIN 16
  371. #define Y_MAX_PIN -1 //17
  372. #define Z_STEP_PIN 44
  373. #define Z_DIR_PIN 46
  374. #define Z_ENABLE_PIN 42
  375. #define Z_MIN_PIN 18
  376. #define Z_MAX_PIN -1 //19
  377. #define E0_STEP_PIN 32
  378. #define E0_DIR_PIN 34
  379. #define E0_ENABLE_PIN 30
  380. #define SDPOWER 48
  381. #define SDSS 53
  382. #define LED_PIN 13
  383. #define PS_ON_PIN -1
  384. #define KILL_PIN -1
  385. #ifdef RAMPS_V_1_0 // RAMPS_V_1_0
  386. #define HEATER_0_PIN 12 // RAMPS 1.0
  387. #define HEATER_BED_PIN -1 // RAMPS 1.0
  388. #define FAN_PIN 11 // RAMPS 1.0
  389. #else // RAMPS_V_1_1 or RAMPS_V_1_2
  390. #define HEATER_0_PIN 10 // RAMPS 1.1
  391. #define HEATER_BED_PIN 8 // RAMPS 1.1
  392. #define FAN_PIN 9 // RAMPS 1.1
  393. #endif
  394. #define HEATER_1_PIN -1
  395. #define HEATER_2_PIN -1
  396. #define TEMP_0_PIN 2 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
  397. #define TEMP_1_PIN -1
  398. #define TEMP_2_PIN -1
  399. #define TEMP_BED_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
  400. #endif// MOTHERBOARD == 33 || MOTHERBOARD == 34
  401. // SPI for Max6675 Thermocouple
  402. #ifndef SDSUPPORT
  403. // these pins are defined in the SD library if building with SD support
  404. #define MAX_SCK_PIN 52
  405. #define MAX_MISO_PIN 50
  406. #define MAX_MOSI_PIN 51
  407. #define MAX6675_SS 53
  408. #else
  409. #define MAX6675_SS 49
  410. #endif
  411. #endif//MOTHERBOARD == 3 || MOTHERBOARD == 33 || MOTHERBOARD == 34
  412. /****************************************************************************************
  413. * Duemilanove w/ ATMega328P pin assignment
  414. *
  415. ****************************************************************************************/
  416. #if MOTHERBOARD == 4
  417. #define KNOWN_BOARD 1
  418. #ifndef __AVR_ATmega328P__
  419. #error Oops! Make sure you have 'Arduino Duemilanove w/ ATMega328' selected from the 'Tools -> Boards' menu.
  420. #endif
  421. #define X_STEP_PIN 19
  422. #define X_DIR_PIN 18
  423. #define X_ENABLE_PIN -1
  424. #define X_STOP_PIN 17
  425. #define Y_STEP_PIN 10
  426. #define Y_DIR_PIN 7
  427. #define Y_ENABLE_PIN -1
  428. #define Y_STOP_PIN 8
  429. #define Z_STEP_PIN 13
  430. #define Z_DIR_PIN 3
  431. #define Z_ENABLE_PIN 2
  432. #define Z_STOP_PIN 4
  433. #define E0_STEP_PIN 11
  434. #define E0_DIR_PIN 12
  435. #define E0_ENABLE_PIN -1
  436. #define SDPOWER -1
  437. #define SDSS -1
  438. #define LED_PIN -1
  439. #define FAN_PIN 5
  440. #define PS_ON_PIN -1
  441. #define KILL_PIN -1
  442. #define HEATER_0_PIN 6
  443. #define HEATER_1_PIN -1
  444. #define HEATER_2_PIN -1
  445. #define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
  446. #define TEMP_1_PIN -1
  447. #define TEMP_2_PIN -1
  448. #define HEATER_BED_PIN -1
  449. #define TEMP_BED_PIN -1
  450. #endif
  451. /****************************************************************************************
  452. * Elefu RA Board Pin Assignments
  453. *
  454. ****************************************************************************************/
  455. #if MOTHERBOARD == 21
  456. #define KNOWN_BOARD 1
  457. #ifndef __AVR_ATmega2560__
  458. #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
  459. #endif
  460. #define X_STEP_PIN 49
  461. #define X_DIR_PIN 13
  462. #define X_ENABLE_PIN 48
  463. #define X_MIN_PIN 35
  464. #define X_MAX_PIN -1 //34
  465. #define Y_STEP_PIN 11
  466. #define Y_DIR_PIN 9
  467. #define Y_ENABLE_PIN 12
  468. #define Y_MIN_PIN 33
  469. #define Y_MAX_PIN -1 //32
  470. #define Z_STEP_PIN 7
  471. #define Z_DIR_PIN 6
  472. #define Z_ENABLE_PIN 8
  473. #define Z_MIN_PIN 31
  474. #define Z_MAX_PIN -1 //30
  475. #define E2_STEP_PIN 43
  476. #define E2_DIR_PIN 47
  477. #define E2_ENABLE_PIN 42
  478. #define E1_STEP_PIN 18
  479. #define E1_DIR_PIN 19
  480. #define E1_ENABLE_PIN 38
  481. #define E0_STEP_PIN 40
  482. #define E0_DIR_PIN 41
  483. #define E0_ENABLE_PIN 37
  484. #define SDPOWER -1
  485. #define LED_PIN -1 //Use +12V Aux port for LED Ring
  486. #define FAN_PIN 16 //5V PWM
  487. #define PS_ON_PIN 10 //Set to -1 if using a manual switch on the PWRSW Connector
  488. #define SLEEP_WAKE_PIN 26 //This feature still needs work
  489. #define HEATER_0_PIN 45 //12V PWM1
  490. #define HEATER_1_PIN 46 //12V PWM2
  491. #define HEATER_2_PIN 17 //12V PWM3
  492. #define HEATER_BED_PIN 44 //DOUBLE 12V PWM
  493. #define TEMP_0_PIN 3 //ANALOG NUMBERING
  494. #define TEMP_1_PIN 2 //ANALOG NUMBERING
  495. #define TEMP_2_PIN 1 //ANALOG NUMBERING
  496. #define TEMP_BED_PIN 0 //ANALOG NUMBERING
  497. #define BEEPER 36
  498. #define KILL_PIN -1
  499. // M240 Triggers a camera by emulating a Canon RC-1 Remote
  500. // Data from: http://www.doc-diy.net/photo/rc-1_hacked/
  501. #define PHOTOGRAPH_PIN 29
  502. #ifdef RA_CONTROL_PANEL
  503. #define SDSS 53
  504. #define SDCARDDETECT 28
  505. #define BTN_EN1 14
  506. #define BTN_EN2 39
  507. #define BTN_ENC 15 //the click
  508. #define BLEN_C 2
  509. #define BLEN_B 1
  510. #define BLEN_A 0
  511. //encoder rotation values
  512. #define encrot0 0
  513. #define encrot1 2
  514. #define encrot2 3
  515. #define encrot3 1
  516. #endif //RA_CONTROL_PANEL
  517. #ifdef RA_DISCO
  518. //variables for which pins the TLC5947 is using
  519. #define TLC_CLOCK_PIN 25
  520. #define TLC_BLANK_PIN 23
  521. #define TLC_XLAT_PIN 22
  522. #define TLC_DATA_PIN 24
  523. //We also need to define pin to port number mapping for the 2560 to match the pins listed above. If you change the TLC pins, update this as well per the 2560 datasheet!
  524. //This currently only works with the RA Board.
  525. #define TLC_CLOCK_BIT 3 //bit 3 on port A
  526. #define TLC_CLOCK_PORT &PORTA //bit 3 on port A
  527. #define TLC_BLANK_BIT 1 //bit 1 on port A
  528. #define TLC_BLANK_PORT &PORTA //bit 1 on port A
  529. #define TLC_DATA_BIT 2 //bit 2 on port A
  530. #define TLC_DATA_PORT &PORTA //bit 2 on port A
  531. #define TLC_XLAT_BIT 0 //bit 0 on port A
  532. #define TLC_XLAT_PORT &PORTA //bit 0 on port A
  533. //change this to match your situation. Lots of TLCs takes up the arduino SRAM very quickly, so be careful
  534. //Leave it at at least 1 if you have enabled RA_LIGHTING
  535. //The number of TLC5947 boards chained together for use with the animation, additional ones will repeat the animation on them, but are not individually addressable and mimic those before them. You can leave the default at 2 even if you only have 1 TLC5947 module.
  536. #define NUM_TLCS 2
  537. //These TRANS_ARRAY values let you change the order the LEDs on the lighting modules will animate for chase functions.
  538. //Modify them according to your specific situation.
  539. //NOTE: the array should be 8 long for every TLC you have. These defaults assume (2) TLCs.
  540. #define TRANS_ARRAY {0, 1, 2, 3, 4, 5, 6, 7, 15, 14, 13, 12, 11, 10, 9, 8} //forwards
  541. //#define TRANS_ARRAY {7, 6, 5, 4, 3, 2, 1, 0, 8, 9, 10, 11, 12, 13, 14, 15} //backwards
  542. #endif //RA_LIGHTING
  543. #endif /* Ra Board */
  544. /****************************************************************************************
  545. * Gen6 pin assignment
  546. *
  547. ****************************************************************************************/
  548. #if MOTHERBOARD == 5 || MOTHERBOARD == 51
  549. #define KNOWN_BOARD 1
  550. #ifndef __AVR_ATmega644P__
  551. #ifndef __AVR_ATmega1284P__
  552. #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
  553. #endif
  554. #endif
  555. //x axis pins
  556. #define X_STEP_PIN 15
  557. #define X_DIR_PIN 18
  558. #define X_ENABLE_PIN 19
  559. #define X_STOP_PIN 20
  560. //y axis pins
  561. #define Y_STEP_PIN 23
  562. #define Y_DIR_PIN 22
  563. #define Y_ENABLE_PIN 24
  564. #define Y_STOP_PIN 25
  565. //z axis pins
  566. #define Z_STEP_PIN 27
  567. #define Z_DIR_PIN 28
  568. #define Z_ENABLE_PIN 29
  569. #define Z_STOP_PIN 30
  570. //extruder pins
  571. #define E0_STEP_PIN 4 //Edited @ EJE Electronics 20100715
  572. #define E0_DIR_PIN 2 //Edited @ EJE Electronics 20100715
  573. #define E0_ENABLE_PIN 3 //Added @ EJE Electronics 20100715
  574. #define TEMP_0_PIN 5 //changed @ rkoeppl 20110410
  575. #define TEMP_1_PIN -1 //changed @ rkoeppl 20110410
  576. #define TEMP_2_PIN -1 //changed @ rkoeppl 20110410
  577. #define HEATER_0_PIN 14 //changed @ rkoeppl 20110410
  578. #define HEATER_1_PIN -1
  579. #define HEATER_2_PIN -1
  580. #if MOTHERBOARD == 5
  581. #define HEATER_BED_PIN -1 //changed @ rkoeppl 20110410
  582. #define TEMP_BED_PIN -1 //changed @ rkoeppl 20110410
  583. #else
  584. #define HEATER_BED_PIN 1 //changed @ rkoeppl 20110410
  585. #define TEMP_BED_PIN 0 //changed @ rkoeppl 20110410
  586. #endif
  587. #define SDPOWER -1
  588. #define SDSS 17
  589. #define LED_PIN -1 //changed @ rkoeppl 20110410
  590. #define FAN_PIN -1 //changed @ rkoeppl 20110410
  591. #define PS_ON_PIN -1 //changed @ rkoeppl 20110410
  592. #define KILL_PIN -1 //changed @ drakelive 20120830
  593. //our pin for debugging.
  594. #define DEBUG_PIN 0
  595. //our RS485 pins
  596. #define TX_ENABLE_PIN 12
  597. #define RX_ENABLE_PIN 13
  598. #endif
  599. /****************************************************************************************
  600. * Sanguinololu pin assignment
  601. *
  602. ****************************************************************************************/
  603. #if MOTHERBOARD == 64
  604. #define STB
  605. #endif
  606. #if MOTHERBOARD == 63
  607. #define MELZI
  608. #endif
  609. #if MOTHERBOARD == 62 || MOTHERBOARD == 63 || MOTHERBOARD == 64
  610. #undef MOTHERBOARD
  611. #define MOTHERBOARD 6
  612. #define SANGUINOLOLU_V_1_2
  613. #endif
  614. #if MOTHERBOARD == 6
  615. #define KNOWN_BOARD 1
  616. #ifndef __AVR_ATmega644P__
  617. #ifndef __AVR_ATmega1284P__
  618. #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
  619. #endif
  620. #endif
  621. #define X_STEP_PIN 15
  622. #define X_DIR_PIN 21
  623. #define X_STOP_PIN 18
  624. #define Y_STEP_PIN 22
  625. #define Y_DIR_PIN 23
  626. #define Y_STOP_PIN 19
  627. #define Z_STEP_PIN 3
  628. #define Z_DIR_PIN 2
  629. #define Z_STOP_PIN 20
  630. #define E0_STEP_PIN 1
  631. #define E0_DIR_PIN 0
  632. #define LED_PIN -1
  633. #define FAN_PIN -1
  634. #if FAN_PIN == 12 || FAN_PIN ==13
  635. #define FAN_SOFT_PWM
  636. #endif
  637. #ifdef MELZI
  638. #define LED_PIN 27 /* On some broken versions of the Sanguino libraries the pin definitions are wrong, which then needs LED_PIN as pin 28. But you better upgrade your Sanguino libraries! See #368. */
  639. #define FAN_PIN 4
  640. #endif
  641. #ifdef STB
  642. #define FAN_PIN 4
  643. #endif
  644. #define PS_ON_PIN -1
  645. #define KILL_PIN -1
  646. #define HEATER_0_PIN 13 // (extruder)
  647. #define HEATER_1_PIN -1
  648. #define HEATER_2_PIN -1
  649. #ifdef SANGUINOLOLU_V_1_2
  650. #define HEATER_BED_PIN 12 // (bed)
  651. #define X_ENABLE_PIN 14
  652. #define Y_ENABLE_PIN 14
  653. #define Z_ENABLE_PIN 26
  654. #define E0_ENABLE_PIN 14
  655. #else
  656. #define HEATER_BED_PIN 14 // (bed)
  657. #define X_ENABLE_PIN -1
  658. #define Y_ENABLE_PIN -1
  659. #define Z_ENABLE_PIN -1
  660. #define E0_ENABLE_PIN -1
  661. #endif
  662. #define TEMP_0_PIN 7 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder)
  663. #define TEMP_1_PIN -1
  664. #define TEMP_2_PIN -1
  665. #define TEMP_BED_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed)
  666. #define SDPOWER -1
  667. #define SDSS 31
  668. /* On some broken versions of the Sanguino libraries the pin definitions are wrong, which then needs SDSS as pin 24. But you better upgrade your Sanguino libraries! See #368. */
  669. //#define SDSS 24
  670. #ifdef ULTRA_LCD
  671. #ifdef NEWPANEL
  672. //we have no buzzer installed
  673. #define BEEPER -1
  674. //LCD Pins
  675. #ifdef DOGLCD
  676. // Pins for DOGM SPI LCD Support
  677. #define DOGLCD_A0 30
  678. #define DOGLCD_CS 29
  679. // GLCD features
  680. #define LCD_CONTRAST 1
  681. // Uncomment screen orientation
  682. // #define LCD_SCREEN_ROT_0
  683. // #define LCD_SCREEN_ROT_90
  684. #define LCD_SCREEN_ROT_180
  685. // #define LCD_SCREEN_ROT_270
  686. #else // standard Hitachi LCD controller
  687. #define LCD_PINS_RS 4
  688. #define LCD_PINS_ENABLE 17
  689. #define LCD_PINS_D4 30
  690. #define LCD_PINS_D5 29
  691. #define LCD_PINS_D6 28
  692. #define LCD_PINS_D7 27
  693. #endif
  694. //The encoder and click button
  695. #define BTN_EN1 11
  696. #define BTN_EN2 10
  697. #ifdef LCD_I2C_PANELOLU2
  698. #ifdef MELZI
  699. #define BTN_ENC 29 //the click switch
  700. #define SDSS 30 //to use the SD card reader on the Panelolu2 rather than the melzi board
  701. #else
  702. #define BTN_ENC 30 //the click switch
  703. #endif
  704. #else
  705. #define BTN_ENC 16 //the click switch
  706. #endif //Panelolu2
  707. //not connected to a pin
  708. #define SDCARDDETECT -1
  709. #endif //Newpanel
  710. #endif //Ultipanel
  711. #endif
  712. #if MOTHERBOARD == 7
  713. #define KNOWN_BOARD
  714. /*****************************************************************
  715. * Ultimaker pin assignment
  716. ******************************************************************/
  717. #ifndef __AVR_ATmega1280__
  718. #ifndef __AVR_ATmega2560__
  719. #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
  720. #endif
  721. #endif
  722. #define LARGE_FLASH true
  723. #define X_STEP_PIN 25
  724. #define X_DIR_PIN 23
  725. #define X_MIN_PIN 22
  726. #define X_MAX_PIN 24
  727. #define X_ENABLE_PIN 27
  728. #define Y_STEP_PIN 31
  729. #define Y_DIR_PIN 33
  730. #define Y_MIN_PIN 26
  731. #define Y_MAX_PIN 28
  732. #define Y_ENABLE_PIN 29
  733. #define Z_STEP_PIN 37
  734. #define Z_DIR_PIN 39
  735. #define Z_MIN_PIN 30
  736. #define Z_MAX_PIN 32
  737. #define Z_ENABLE_PIN 35
  738. #define HEATER_BED_PIN 4
  739. #define TEMP_BED_PIN 10
  740. #define HEATER_0_PIN 2
  741. #define TEMP_0_PIN 8
  742. #define HEATER_1_PIN 3
  743. #define TEMP_1_PIN 9
  744. #define HEATER_2_PIN -1
  745. #define TEMP_2_PIN -1
  746. #define E0_STEP_PIN 43
  747. #define E0_DIR_PIN 45
  748. #define E0_ENABLE_PIN 41
  749. #define E1_STEP_PIN 49
  750. #define E1_DIR_PIN 47
  751. #define E1_ENABLE_PIN 48
  752. #define SDPOWER -1
  753. #define SDSS 53
  754. #define LED_PIN 13
  755. #define FAN_PIN 7
  756. #define PS_ON_PIN 12
  757. #define KILL_PIN -1
  758. #define SUICIDE_PIN 54 //PIN that has to be turned on right after start, to keep power flowing.
  759. #ifdef ULTRA_LCD
  760. #ifdef NEWPANEL
  761. //arduino pin witch triggers an piezzo beeper
  762. #define BEEPER 18
  763. #define LCD_PINS_RS 20
  764. #define LCD_PINS_ENABLE 17
  765. #define LCD_PINS_D4 16
  766. #define LCD_PINS_D5 21
  767. #define LCD_PINS_D6 5
  768. #define LCD_PINS_D7 6
  769. //buttons are directly attached
  770. #define BTN_EN1 40
  771. #define BTN_EN2 42
  772. #define BTN_ENC 19 //the click
  773. #define SDCARDDETECT 38
  774. #else //old style panel with shift register
  775. //arduino pin witch triggers an piezzo beeper
  776. #define BEEPER 18
  777. //buttons are attached to a shift register
  778. #define SHIFT_CLK 38
  779. #define SHIFT_LD 42
  780. #define SHIFT_OUT 40
  781. #define SHIFT_EN 17
  782. #define LCD_PINS_RS 16
  783. #define LCD_PINS_ENABLE 5
  784. #define LCD_PINS_D4 6
  785. #define LCD_PINS_D5 21
  786. #define LCD_PINS_D6 20
  787. #define LCD_PINS_D7 19
  788. #define SDCARDDETECT -1
  789. #endif
  790. #endif //ULTRA_LCD
  791. #endif
  792. #if MOTHERBOARD == 71
  793. #define KNOWN_BOARD
  794. /*****************************************************************
  795. * Ultimaker pin assignment (Old electronics)
  796. ******************************************************************/
  797. #ifndef __AVR_ATmega1280__
  798. #ifndef __AVR_ATmega2560__
  799. #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
  800. #endif
  801. #endif
  802. #define LARGE_FLASH true
  803. #define X_STEP_PIN 25
  804. #define X_DIR_PIN 23
  805. #define X_MIN_PIN 15
  806. #define X_MAX_PIN 14
  807. #define X_ENABLE_PIN 27
  808. #define Y_STEP_PIN 31
  809. #define Y_DIR_PIN 33
  810. #define Y_MIN_PIN 17
  811. #define Y_MAX_PIN 16
  812. #define Y_ENABLE_PIN 29
  813. #define Z_STEP_PIN 37
  814. #define Z_DIR_PIN 39
  815. #define Z_MIN_PIN 19
  816. #define Z_MAX_PIN 18
  817. #define Z_ENABLE_PIN 35
  818. #define HEATER_BED_PIN -1
  819. #define TEMP_BED_PIN -1
  820. #define HEATER_0_PIN 2
  821. #define TEMP_0_PIN 8
  822. #define HEATER_1_PIN 1
  823. #define TEMP_1_PIN 1
  824. #define HEATER_2_PIN -1
  825. #define TEMP_2_PIN -1
  826. #define E0_STEP_PIN 43
  827. #define E0_DIR_PIN 45
  828. #define E0_ENABLE_PIN 41
  829. #define E1_STEP_PIN -1
  830. #define E1_DIR_PIN -1
  831. #define E1_ENABLE_PIN -1
  832. #define SDPOWER -1
  833. #define SDSS -1
  834. #define LED_PIN -1
  835. #define FAN_PIN -1
  836. #define PS_ON_PIN -1
  837. #define KILL_PIN -1
  838. #define SUICIDE_PIN -1 //PIN that has to be turned on right after start, to keep power flowing.
  839. #define LCD_PINS_RS 24
  840. #define LCD_PINS_ENABLE 22
  841. #define LCD_PINS_D4 36
  842. #define LCD_PINS_D5 34
  843. #define LCD_PINS_D6 32
  844. #define LCD_PINS_D7 30
  845. #endif
  846. /****************************************************************************************
  847. * RUMBA pin assignment
  848. *
  849. ****************************************************************************************/
  850. #if MOTHERBOARD == 80
  851. #define KNOWN_BOARD 1
  852. #ifndef __AVR_ATmega2560__
  853. #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
  854. #endif
  855. #define X_STEP_PIN 17
  856. #define X_DIR_PIN 16
  857. #define X_ENABLE_PIN 48
  858. #define X_MIN_PIN 37
  859. #define X_MAX_PIN 36
  860. #define Y_STEP_PIN 54
  861. #define Y_DIR_PIN 47
  862. #define Y_ENABLE_PIN 55
  863. #define Y_MIN_PIN 35
  864. #define Y_MAX_PIN 34
  865. #define Z_STEP_PIN 57
  866. #define Z_DIR_PIN 56
  867. #define Z_ENABLE_PIN 62
  868. #define Z_MIN_PIN 33
  869. #define Z_MAX_PIN 32
  870. #define E0_STEP_PIN 23
  871. #define E0_DIR_PIN 22
  872. #define E0_ENABLE_PIN 24
  873. #define E1_STEP_PIN 26
  874. #define E1_DIR_PIN 25
  875. #define E1_ENABLE_PIN 27
  876. #define E2_STEP_PIN 29
  877. #define E2_DIR_PIN 28
  878. #define E2_ENABLE_PIN 39
  879. #define LED_PIN 13
  880. #define FAN_PIN 7
  881. //additional FAN1 PIN (e.g. useful for electronics fan or light on/off) on PIN 8
  882. #define PS_ON_PIN 45
  883. #define KILL_PIN 46
  884. #if (TEMP_SENSOR_0==0)
  885. #define TEMP_0_PIN -1
  886. #define HEATER_0_PIN -1
  887. #else
  888. #define HEATER_0_PIN 2 // EXTRUDER 1
  889. #if (TEMP_SENSOR_0==-1)
  890. #define TEMP_0_PIN 6 // ANALOG NUMBERING - connector *K1* on RUMBA thermocouple ADD ON is used
  891. #else
  892. #define TEMP_0_PIN 15 // ANALOG NUMBERING - default connector for thermistor *T0* on rumba board is used
  893. #endif
  894. #endif
  895. #if (TEMP_SENSOR_1==0)
  896. #define TEMP_1_PIN -1
  897. #define HEATER_1_PIN -1
  898. #else
  899. #define HEATER_1_PIN 3 // EXTRUDER 2
  900. #if (TEMP_SENSOR_1==-1)
  901. #define TEMP_1_PIN 5 // ANALOG NUMBERING - connector *K2* on RUMBA thermocouple ADD ON is used
  902. #else
  903. #define TEMP_1_PIN 14 // ANALOG NUMBERING - default connector for thermistor *T1* on rumba board is used
  904. #endif
  905. #endif
  906. #if (TEMP_SENSOR_2==0)
  907. #define TEMP_2_PIN -1
  908. #define HEATER_2_PIN -1
  909. #else
  910. #define HEATER_2_PIN 6 // EXTRUDER 3
  911. #if (TEMP_SENSOR_2==-1)
  912. #define TEMP_2_PIN 7 // ANALOG NUMBERING - connector *K3* on RUMBA thermocouple ADD ON is used <-- this can not be used when TEMP_SENSOR_BED is defined as thermocouple
  913. #else
  914. #define TEMP_2_PIN 13 // ANALOG NUMBERING - default connector for thermistor *T2* on rumba board is used
  915. #endif
  916. #endif
  917. //optional for extruder 4 or chamber: #define TEMP_X_PIN 12 // ANALOG NUMBERING - default connector for thermistor *T3* on rumba board is used
  918. //optional FAN1 can be used as 4th heater output: #define HEATER_3_PIN 8 // EXTRUDER 4
  919. #if (TEMP_SENSOR_BED==0)
  920. #define TEMP_BED_PIN -1
  921. #define HEATER_BED_PIN -1
  922. #else
  923. #define HEATER_BED_PIN 9 // BED
  924. #if (TEMP_SENSOR_BED==-1)
  925. #define TEMP_BED_PIN 7 // ANALOG NUMBERING - connector *K3* on RUMBA thermocouple ADD ON is used <-- this can not be used when TEMP_SENSOR_2 is defined as thermocouple
  926. #else
  927. #define TEMP_BED_PIN 11 // ANALOG NUMBERING - default connector for thermistor *THB* on rumba board is used
  928. #endif
  929. #endif
  930. #define SDPOWER -1
  931. #define SDSS 53
  932. #define SDCARDDETECT 49
  933. #define BEEPER 44
  934. #define LCD_PINS_RS 19
  935. #define LCD_PINS_ENABLE 42
  936. #define LCD_PINS_D4 18
  937. #define LCD_PINS_D5 38
  938. #define LCD_PINS_D6 41
  939. #define LCD_PINS_D7 40
  940. #define BTN_EN1 11
  941. #define BTN_EN2 12
  942. #define BTN_ENC 43
  943. #endif //MOTHERBOARD==80
  944. /****************************************************************************************
  945. * Teensylu 0.7 / Printrboard pin assignments (AT90USB1286)
  946. * Requires the Teensyduino software with Teensy++ 2.0 selected in Arduino IDE!
  947. http://www.pjrc.com/teensy/teensyduino.html
  948. * See http://reprap.org/wiki/Printrboard for more info
  949. ****************************************************************************************/
  950. #if MOTHERBOARD == 8 || MOTHERBOARD == 81
  951. #define KNOWN_BOARD 1
  952. #define AT90USB 1286 // Disable MarlinSerial etc.
  953. #ifndef __AVR_AT90USB1286__
  954. #error Oops! Make sure you have 'Teensy++ 2.0' selected from the 'Tools -> Boards' menu.
  955. #endif
  956. #define LARGE_FLASH true
  957. #define X_STEP_PIN 0
  958. #define X_DIR_PIN 1
  959. #define X_ENABLE_PIN 39
  960. #define Y_STEP_PIN 2
  961. #define Y_DIR_PIN 3
  962. #define Y_ENABLE_PIN 38
  963. #define Z_STEP_PIN 4
  964. #define Z_DIR_PIN 5
  965. #define Z_ENABLE_PIN 23
  966. #define E0_STEP_PIN 6
  967. #define E0_DIR_PIN 7
  968. #define E0_ENABLE_PIN 19
  969. #define HEATER_0_PIN 21 // Extruder
  970. #define HEATER_1_PIN -1
  971. #define HEATER_2_PIN -1
  972. #define HEATER_BED_PIN 20 // Bed
  973. #define FAN_PIN 22 // Fan
  974. // You may need to change FAN_PIN to 16 because Marlin isn't using fastio.h
  975. // for the fan and Teensyduino uses a different pin mapping.
  976. #if MOTHERBOARD == 8 // Teensylu
  977. #define X_STOP_PIN 13
  978. #define Y_STOP_PIN 14
  979. #define Z_STOP_PIN 15
  980. #define TEMP_0_PIN 7 // Extruder / Analog pin numbering
  981. #define TEMP_BED_PIN 6 // Bed / Analog pin numbering
  982. #else // Printrboard
  983. #define X_STOP_PIN 35
  984. #define Y_STOP_PIN 8
  985. #define Z_STOP_PIN 36
  986. #define TEMP_0_PIN 1 // Extruder / Analog pin numbering
  987. #define TEMP_BED_PIN 0 // Bed / Analog pin numbering
  988. #endif
  989. #define TEMP_1_PIN -1
  990. #define TEMP_2_PIN -1
  991. #define SDPOWER -1
  992. #define SDSS 8
  993. #define LED_PIN -1
  994. #define PS_ON_PIN -1
  995. #define KILL_PIN -1
  996. #define ALARM_PIN -1
  997. #ifndef SDSUPPORT
  998. // these pins are defined in the SD library if building with SD support
  999. #define SCK_PIN 9
  1000. #define MISO_PIN 11
  1001. #define MOSI_PIN 10
  1002. #endif
  1003. #endif // MOTHERBOARD == 8 (Teensylu) or 81 (Printrboard)
  1004. /****************************************************************************************
  1005. * Brainwave 1.0 pin assignments (AT90USB646)
  1006. * Requires hardware bundle for Arduino:
  1007. https://github.com/unrepentantgeek/brainwave-arduino
  1008. ****************************************************************************************/
  1009. #if MOTHERBOARD == 82
  1010. #define KNOWN_BOARD 1
  1011. #define AT90USB 646 // Disable MarlinSerial etc.
  1012. #ifndef __AVR_AT90USB646__
  1013. #error Oops! Make sure you have 'Brainwave' selected from the 'Tools -> Boards' menu.
  1014. #endif
  1015. #define X_STEP_PIN 27
  1016. #define X_DIR_PIN 29
  1017. #define X_ENABLE_PIN 28
  1018. #define X_STOP_PIN 7
  1019. #define X_ATT_PIN 26
  1020. #define Y_STEP_PIN 31
  1021. #define Y_DIR_PIN 33
  1022. #define Y_ENABLE_PIN 32
  1023. #define Y_STOP_PIN 6
  1024. #define Y_ATT_PIN 30
  1025. #define Z_STEP_PIN 17
  1026. #define Z_DIR_PIN 19
  1027. #define Z_ENABLE_PIN 18
  1028. #define Z_STOP_PIN 5
  1029. #define Z_ATT_PIN 16
  1030. #define E0_STEP_PIN 21
  1031. #define E0_DIR_PIN 23
  1032. #define E0_ENABLE_PIN 22
  1033. #define E0_ATT_PIN 20
  1034. #define HEATER_0_PIN 4 // Extruder
  1035. #define HEATER_1_PIN -1
  1036. #define HEATER_2_PIN -1
  1037. #define HEATER_BED_PIN 38 // Bed
  1038. #define FAN_PIN 3 // Fan
  1039. #define TEMP_0_PIN 7 // Extruder / Analog pin numbering
  1040. #define TEMP_1_PIN -1
  1041. #define TEMP_2_PIN -1
  1042. #define TEMP_BED_PIN 6 // Bed / Analog pin numbering
  1043. #define SDPOWER -1
  1044. #define SDSS -1
  1045. #define LED_PIN 39
  1046. #define PS_ON_PIN -1
  1047. #define KILL_PIN -1
  1048. #define ALARM_PIN -1
  1049. #ifndef SDSUPPORT
  1050. // these pins are defined in the SD library if building with SD support
  1051. #define SCK_PIN 9
  1052. #define MISO_PIN 11
  1053. #define MOSI_PIN 10
  1054. #endif
  1055. #endif // MOTHERBOARD == 82 (Brainwave)
  1056. /****************************************************************************************
  1057. * Gen3+ pin assignment
  1058. *
  1059. ****************************************************************************************/
  1060. #if MOTHERBOARD == 9
  1061. #define MOTHERBOARD 6 /*TODO: Figure out, Why is this done?*/
  1062. #define KNOWN_BOARD 1
  1063. #ifndef __AVR_ATmega644P__
  1064. #ifndef __AVR_ATmega1284P__
  1065. #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
  1066. #endif
  1067. #endif
  1068. #define X_STEP_PIN 15
  1069. #define X_DIR_PIN 18
  1070. #define X_STOP_PIN 20
  1071. #define Y_STEP_PIN 23
  1072. #define Y_DIR_PIN 22
  1073. #define Y_STOP_PIN 25
  1074. #define Z_STEP_PIN 27
  1075. #define Z_DIR_PIN 28
  1076. #define Z_STOP_PIN 30
  1077. #define E_STEP_PIN 17
  1078. #define E_DIR_PIN 21
  1079. #define LED_PIN -1
  1080. #define FAN_PIN -1
  1081. #define PS_ON_PIN 14
  1082. #define KILL_PIN -1
  1083. #define HEATER_0_PIN 12 // (extruder)
  1084. #define HEATER_1_PIN 16 // (bed)
  1085. #define X_ENABLE_PIN 19
  1086. #define Y_ENABLE_PIN 24
  1087. #define Z_ENABLE_PIN 29
  1088. #define E_ENABLE_PIN 13
  1089. #define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder)
  1090. #define TEMP_1_PIN 5 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed)
  1091. #define TEMP_2_PIN -1
  1092. #define SDPOWER -1
  1093. #define SDSS 4
  1094. #define HEATER_2_PIN -1
  1095. #endif
  1096. /****************************************************************************************
  1097. * Open Motion controller with enable based extruders
  1098. *
  1099. * ATMega644
  1100. *
  1101. * +---\/---+
  1102. * (D 0) PB0 1| |40 PA0 (AI 0 / D31)
  1103. * (D 1) PB1 2| |39 PA1 (AI 1 / D30)
  1104. * INT2 (D 2) PB2 3| |38 PA2 (AI 2 / D29)
  1105. * PWM (D 3) PB3 4| |37 PA3 (AI 3 / D28)
  1106. * PWM (D 4) PB4 5| |36 PA4 (AI 4 / D27)
  1107. * MOSI (D 5) PB5 6| |35 PA5 (AI 5 / D26)
  1108. * MISO (D 6) PB6 7| |34 PA6 (AI 6 / D25)
  1109. * SCK (D 7) PB7 8| |33 PA7 (AI 7 / D24)
  1110. * RST 9| |32 AREF
  1111. * VCC 10| |31 GND
  1112. * GND 11| |30 AVCC
  1113. * XTAL2 12| |29 PC7 (D 23)
  1114. * XTAL1 13| |28 PC6 (D 22)
  1115. * RX0 (D 8) PD0 14| |27 PC5 (D 21) TDI
  1116. * TX0 (D 9) PD1 15| |26 PC4 (D 20) TDO
  1117. * INT0 RX1 (D 10) PD2 16| |25 PC3 (D 19) TMS
  1118. * INT1 TX1 (D 11) PD3 17| |24 PC2 (D 18) TCK
  1119. * PWM (D 12) PD4 18| |23 PC1 (D 17) SDA
  1120. * PWM (D 13) PD5 19| |22 PC0 (D 16) SCL
  1121. * PWM (D 14) PD6 20| |21 PD7 (D 15) PWM
  1122. * +--------+
  1123. *
  1124. ****************************************************************************************/
  1125. #if MOTHERBOARD == 90 //Alpha OMCA board
  1126. #define KNOWN_BOARD 1
  1127. #ifndef __AVR_ATmega644__
  1128. #error Oops! Make sure you have 'SanguinoA' selected from the 'Tools -> Boards' menu.
  1129. #endif
  1130. #define X_STEP_PIN 21
  1131. #define X_DIR_PIN 20
  1132. #define X_ENABLE_PIN 24
  1133. #define X_STOP_PIN 0
  1134. #define Y_STEP_PIN 23
  1135. #define Y_DIR_PIN 22
  1136. #define Y_ENABLE_PIN 24
  1137. #define Y_STOP_PIN 1
  1138. #define Z_STEP_PIN 26
  1139. #define Z_DIR_PIN 25
  1140. #define Z_ENABLE_PIN 24
  1141. #define Z_STOP_PIN 2
  1142. #define E0_STEP_PIN 28
  1143. #define E0_DIR_PIN 27
  1144. #define E0_ENABLE_PIN 24
  1145. #define E1_STEP_PIN -1 // 19
  1146. #define E1_DIR_PIN -1 // 18
  1147. #define E1_ENABLE_PIN 24
  1148. #define E2_STEP_PIN -1 // 17
  1149. #define E2_DIR_PIN -1 // 16
  1150. #define E2_ENABLE_PIN 24
  1151. #define SDPOWER -1
  1152. #define SDSS 11
  1153. #define SDCARDDETECT -1 // 10 optional also used as mode pin
  1154. #define LED_PIN -1
  1155. #define FAN_PIN 3
  1156. #define PS_ON_PIN -1
  1157. #define KILL_PIN -1
  1158. #define HEATER_0_PIN 4
  1159. #define HEATER_1_PIN -1 // 12
  1160. #define HEATER_2_PIN -1 // 13
  1161. #define TEMP_0_PIN 0 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
  1162. #define TEMP_1_PIN -1 // 1
  1163. #define TEMP_2_PIN -1 // 2
  1164. #define HEATER_BED_PIN -1 // 14/15
  1165. #define TEMP_BED_PIN -1 // 1,2 or I2C
  1166. /* Unused (1) (2) (3) 4 5 6 7 8 9 10 11 12 13 (14) (15) (16) 17 (18) (19) (20) (21) (22) (23) 24 (25) (26) (27) 28 (29) (30) (31) */
  1167. #endif
  1168. #if MOTHERBOARD == 91 // Final OMCA board -- REF http://sanguino.cc/hardware
  1169. #define KNOWN_BOARD 1
  1170. #if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__)
  1171. #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. (Final OMCA board)
  1172. #endif
  1173. #define X_STEP_PIN 26
  1174. #define X_DIR_PIN 25
  1175. #define X_ENABLE_PIN 10
  1176. #define X_STOP_PIN 0
  1177. #define Y_STEP_PIN 28
  1178. #define Y_DIR_PIN 27
  1179. #define Y_ENABLE_PIN 10
  1180. #define Y_STOP_PIN 1
  1181. #define Z_STEP_PIN 23
  1182. #define Z_DIR_PIN 22
  1183. #define Z_ENABLE_PIN 10
  1184. #define Z_STOP_PIN 2
  1185. #define E0_STEP_PIN 24
  1186. #define E0_DIR_PIN 21
  1187. #define E0_ENABLE_PIN 10
  1188. /* future proofing */
  1189. #define __FS 20
  1190. #define __FD 19
  1191. #define __GS 18
  1192. #define __GD 13
  1193. #define UNUSED_PWM 14 /* PWM on LEFT connector */
  1194. #define E1_STEP_PIN -1 // 21
  1195. #define E1_DIR_PIN -1 // 20
  1196. #define E1_ENABLE_PIN -1 // 19
  1197. #define E2_STEP_PIN -1 // 21
  1198. #define E2_DIR_PIN -1 // 20
  1199. #define E2_ENABLE_PIN -1 // 18
  1200. #define SDPOWER -1
  1201. #define SDSS 11
  1202. #define SDCARDDETECT -1 // 10 optional also used as mode pin
  1203. #define LED_PIN -1
  1204. #define FAN_PIN 14 /* PWM on MIDDLE connector */
  1205. #define PS_ON_PIN -1
  1206. #define KILL_PIN -1
  1207. #define HEATER_0_PIN 3 /*DONE PWM on RIGHT connector */
  1208. #define HEATER_1_PIN -1
  1209. #define HEATER_2_PIN -1
  1210. #define HEATER_1_PIN -1
  1211. #define HEATER_2_PIN -1
  1212. #define TEMP_0_PIN 0 // ANALOG INPUT NUMBERING
  1213. #define TEMP_1_PIN 1 // ANALOG
  1214. #define TEMP_2_PIN -1 // 2
  1215. #define HEATER_BED_PIN 4
  1216. #define TEMP_BED_PIN 2 // 1,2 or I2C
  1217. #define I2C_SCL 16
  1218. #define I2C_SDA 17
  1219. #endif
  1220. #if MOTHERBOARD == 301
  1221. #define KNOWN_BOARD
  1222. /*****************************************************************
  1223. * Rambo Pin Assignments
  1224. ******************************************************************/
  1225. #ifndef __AVR_ATmega2560__
  1226. #error Oops! Make sure you have 'Arduino Mega 2560' selected from the 'Tools -> Boards' menu.
  1227. #endif
  1228. #define LARGE_FLASH true
  1229. #define X_STEP_PIN 37
  1230. #define X_DIR_PIN 48
  1231. #define X_MIN_PIN 12
  1232. #define X_MAX_PIN 24
  1233. #define X_ENABLE_PIN 29
  1234. #define X_MS1_PIN 40
  1235. #define X_MS2_PIN 41
  1236. #define Y_STEP_PIN 36
  1237. #define Y_DIR_PIN 49
  1238. #define Y_MIN_PIN 11
  1239. #define Y_MAX_PIN 23
  1240. #define Y_ENABLE_PIN 28
  1241. #define Y_MS1_PIN 69
  1242. #define Y_MS2_PIN 39
  1243. #define Z_STEP_PIN 35
  1244. #define Z_DIR_PIN 47
  1245. #define Z_MIN_PIN 10
  1246. #define Z_MAX_PIN 30
  1247. #define Z_ENABLE_PIN 27
  1248. #define Z_MS1_PIN 68
  1249. #define Z_MS2_PIN 67
  1250. #define HEATER_BED_PIN 3
  1251. #define TEMP_BED_PIN 2
  1252. #define HEATER_0_PIN 9
  1253. #define TEMP_0_PIN 0
  1254. #define HEATER_1_PIN 7
  1255. #define TEMP_1_PIN 1
  1256. #ifdef BARICUDA
  1257. #define HEATER_2_PIN 6
  1258. #else
  1259. #define HEATER_2_PIN -1
  1260. #endif
  1261. #define TEMP_2_PIN -1
  1262. #define E0_STEP_PIN 34
  1263. #define E0_DIR_PIN 43
  1264. #define E0_ENABLE_PIN 26
  1265. #define E0_MS1_PIN 65
  1266. #define E0_MS2_PIN 66
  1267. #define E1_STEP_PIN 33
  1268. #define E1_DIR_PIN 42
  1269. #define E1_ENABLE_PIN 25
  1270. #define E1_MS1_PIN 63
  1271. #define E1_MS2_PIN 64
  1272. #define DIGIPOTSS_PIN 38
  1273. #define DIGIPOT_CHANNELS {4,5,3,0,1} // X Y Z E0 E1 digipot channels to stepper driver mapping
  1274. #define SDPOWER -1
  1275. #define SDSS 53
  1276. #define LED_PIN 13
  1277. #define FAN_PIN 8
  1278. #define PS_ON_PIN 4
  1279. #define KILL_PIN -1
  1280. #define SUICIDE_PIN -1 //PIN that has to be turned on right after start, to keep power flowing.
  1281. #endif
  1282. /****************************************************************************************
  1283. * MegaTronics
  1284. *
  1285. ****************************************************************************************/
  1286. #if MOTHERBOARD == 70
  1287. #define KNOWN_BOARD 1
  1288. #ifndef __AVR_ATmega2560__
  1289. #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
  1290. #endif
  1291. #define LARGE_FLASH true
  1292. #define X_STEP_PIN 26
  1293. #define X_DIR_PIN 28
  1294. #define X_ENABLE_PIN 24
  1295. #define X_MIN_PIN 41
  1296. #define X_MAX_PIN 37
  1297. #define Y_STEP_PIN 60 // A6
  1298. #define Y_DIR_PIN 61 // A7
  1299. #define Y_ENABLE_PIN 22
  1300. #define Y_MIN_PIN 14
  1301. #define Y_MAX_PIN 15
  1302. #define Z_STEP_PIN 54 // A0
  1303. #define Z_DIR_PIN 55 // A1
  1304. #define Z_ENABLE_PIN 56 // A2
  1305. #define Z_MIN_PIN 18
  1306. #define Z_MAX_PIN 19
  1307. #define E0_STEP_PIN 31
  1308. #define E0_DIR_PIN 32
  1309. #define E0_ENABLE_PIN 38
  1310. #define E1_STEP_PIN 34
  1311. #define E1_DIR_PIN 36
  1312. #define E1_ENABLE_PIN 30
  1313. #define SDPOWER -1
  1314. #define SDSS 53
  1315. #define LED_PIN 13
  1316. #define FAN_PIN 7 // IO pin. Buffer needed
  1317. #define PS_ON_PIN 12
  1318. #define KILL_PIN -1
  1319. #define HEATER_0_PIN 9 // EXTRUDER 1
  1320. #define HEATER_1_PIN 8 // EXTRUDER 2 (FAN On Sprinter)
  1321. #define HEATER_2_PIN -1
  1322. #if TEMP_SENSOR_0 == -1
  1323. #define TEMP_0_PIN 8 // ANALOG NUMBERING
  1324. #else
  1325. #define TEMP_0_PIN 13 // ANALOG NUMBERING
  1326. #endif
  1327. #define TEMP_1_PIN 15 // ANALOG NUMBERING
  1328. #define TEMP_2_PIN -1 // ANALOG NUMBERING
  1329. #define HEATER_BED_PIN 10 // BED
  1330. #define TEMP_BED_PIN 14 // ANALOG NUMBERING
  1331. #define BEEPER 33 // Beeper on AUX-4
  1332. #ifdef ULTRA_LCD
  1333. #ifdef NEWPANEL
  1334. //arduino pin which triggers an piezzo beeper
  1335. #define LCD_PINS_RS 16
  1336. #define LCD_PINS_ENABLE 17
  1337. #define LCD_PINS_D4 23
  1338. #define LCD_PINS_D5 25
  1339. #define LCD_PINS_D6 27
  1340. #define LCD_PINS_D7 29
  1341. //buttons are directly attached using AUX-2
  1342. #define BTN_EN1 59
  1343. #define BTN_EN2 64
  1344. #define BTN_ENC 43 //the click
  1345. #define BLEN_C 2
  1346. #define BLEN_B 1
  1347. #define BLEN_A 0
  1348. #define SDCARDDETECT -1 // Ramps does not use this port
  1349. //encoder rotation values
  1350. #define encrot0 0
  1351. #define encrot1 2
  1352. #define encrot2 3
  1353. #define encrot3 1
  1354. #endif
  1355. #endif //ULTRA_LCD
  1356. #endif
  1357. /****************************************************************************************
  1358. * MegaTronics v2.0
  1359. *
  1360. ****************************************************************************************/
  1361. #if MOTHERBOARD == 701
  1362. #define KNOWN_BOARD 1
  1363. #ifndef __AVR_ATmega2560__
  1364. #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
  1365. #endif
  1366. #define LARGE_FLASH true
  1367. #define X_STEP_PIN 26
  1368. #define X_DIR_PIN 27
  1369. #define X_ENABLE_PIN 25
  1370. #define X_MIN_PIN 37
  1371. #define X_MAX_PIN 40 //2 //Max endstops default to disabled "-1", set to commented value to enable.
  1372. #define Y_STEP_PIN 4 // A6
  1373. #define Y_DIR_PIN 54 // A0
  1374. #define Y_ENABLE_PIN 5
  1375. #define Y_MIN_PIN 41
  1376. #define Y_MAX_PIN 38 //15
  1377. #define Z_STEP_PIN 56 // A2
  1378. #define Z_DIR_PIN 60 // A6
  1379. #define Z_ENABLE_PIN 55 // A1
  1380. #define Z_MIN_PIN 18
  1381. #define Z_MAX_PIN 19
  1382. #define E0_STEP_PIN 35
  1383. #define E0_DIR_PIN 36
  1384. #define E0_ENABLE_PIN 34
  1385. #define E1_STEP_PIN 29
  1386. #define E1_DIR_PIN 39
  1387. #define E1_ENABLE_PIN 28
  1388. #define E2_STEP_PIN 23
  1389. #define E2_DIR_PIN 24
  1390. #define E2_ENABLE_PIN 22
  1391. #define SDPOWER -1
  1392. #define SDSS 53
  1393. #define LED_PIN 13
  1394. #define FAN_PIN 7
  1395. #define FAN2_PIN 6
  1396. #define PS_ON_PIN 12
  1397. #define KILL_PIN -1
  1398. #define HEATER_0_PIN 9 // EXTRUDER 1
  1399. #define HEATER_1_PIN 8 // EXTRUDER 2
  1400. #define HEATER_2_PIN -1
  1401. #if TEMP_SENSOR_0 == -1
  1402. #define TEMP_0_PIN 4 // ANALOG NUMBERING
  1403. #else
  1404. #define TEMP_0_PIN 13 // ANALOG NUMBERING
  1405. #endif
  1406. #if TEMP_SENSOR_1 == -1
  1407. #define TEMP_1_PIN 8 // ANALOG NUMBERING
  1408. #else
  1409. #define TEMP_1_PIN 15 // ANALOG NUMBERING
  1410. #endif
  1411. #define TEMP_2_PIN -1 // ANALOG NUMBERING
  1412. #define HEATER_BED_PIN 10 // BED
  1413. #if TEMP_SENSOR_BED == -1
  1414. #define TEMP_BED_PIN 8 // ANALOG NUMBERING
  1415. #else
  1416. #define TEMP_BED_PIN 14 // ANALOG NUMBERING
  1417. #endif
  1418. #define BEEPER 64
  1419. #define LCD_PINS_RS 14
  1420. #define LCD_PINS_ENABLE 15
  1421. #define LCD_PINS_D4 30
  1422. #define LCD_PINS_D5 31
  1423. #define LCD_PINS_D6 32
  1424. #define LCD_PINS_D7 33
  1425. //buttons are directly attached using keypad
  1426. #define BTN_EN1 61
  1427. #define BTN_EN2 59
  1428. #define BTN_ENC 43 //the click
  1429. #define BLEN_C 2
  1430. #define BLEN_B 1
  1431. #define BLEN_A 0
  1432. #define SDCARDDETECT -1 // Megatronics does not use this port
  1433. //encoder rotation values
  1434. #define encrot0 0
  1435. #define encrot1 2
  1436. #define encrot2 3
  1437. #define encrot3 1
  1438. #endif
  1439. /****************************************************************************************
  1440. * Minitronics v1.0
  1441. *
  1442. ****************************************************************************************/
  1443. #if MOTHERBOARD == 702
  1444. #define KNOWN_BOARD 1
  1445. #ifndef __AVR_ATmega1281__
  1446. #error Oops! Make sure you have 'Minitronics ' selected from the 'Tools -> Boards' menu.
  1447. #endif
  1448. #define LARGE_FLASH true
  1449. #define X_STEP_PIN 48
  1450. #define X_DIR_PIN 47
  1451. #define X_ENABLE_PIN 49
  1452. #define X_MIN_PIN 5
  1453. #define X_MAX_PIN -1 //2 //Max endstops default to disabled "-1", set to commented value to enable.
  1454. #define Y_STEP_PIN 39 // A6
  1455. #define Y_DIR_PIN 40 // A0
  1456. #define Y_ENABLE_PIN 38
  1457. #define Y_MIN_PIN 2
  1458. #define Y_MAX_PIN -1 //15
  1459. #define Z_STEP_PIN 42 // A2
  1460. #define Z_DIR_PIN 43 // A6
  1461. #define Z_ENABLE_PIN 41 // A1
  1462. #define Z_MIN_PIN 6
  1463. #define Z_MAX_PIN -1
  1464. #define E0_STEP_PIN 45
  1465. #define E0_DIR_PIN 44
  1466. #define E0_ENABLE_PIN 27
  1467. #define E1_STEP_PIN 36
  1468. #define E1_DIR_PIN 35
  1469. #define E1_ENABLE_PIN 37
  1470. #define E2_STEP_PIN -1
  1471. #define E2_DIR_PIN -1
  1472. #define E2_ENABLE_PIN -1
  1473. #define SDPOWER -1
  1474. #define SDSS 16
  1475. #define LED_PIN 46
  1476. #define FAN_PIN 9
  1477. #define FAN2_PIN -1
  1478. #define PS_ON_PIN -1
  1479. #define KILL_PIN -1
  1480. #define HEATER_0_PIN 7 // EXTRUDER 1
  1481. #define HEATER_1_PIN 8 // EXTRUDER 2
  1482. #define HEATER_2_PIN -1
  1483. #define TEMP_0_PIN 7 // ANALOG NUMBERING
  1484. #define TEMP_1_PIN 6 // ANALOG NUMBERING
  1485. #define TEMP_2_PIN -1 // ANALOG NUMBERING
  1486. #define HEATER_BED_PIN 3 // BED
  1487. #define TEMP_BED_PIN 6 // ANALOG NUMBERING
  1488. #define BEEPER -1
  1489. #define LCD_PINS_RS -1
  1490. #define LCD_PINS_ENABLE -1
  1491. #define LCD_PINS_D4 -1
  1492. #define LCD_PINS_D5 -1
  1493. #define LCD_PINS_D6 -1
  1494. #define LCD_PINS_D7 -1
  1495. //buttons are directly attached using keypad
  1496. #define BTN_EN1 -1
  1497. #define BTN_EN2 -1
  1498. #define BTN_ENC -1 //the click
  1499. #define BLEN_C 2
  1500. #define BLEN_B 1
  1501. #define BLEN_A 0
  1502. #define SDCARDDETECT -1 // Megatronics does not use this port
  1503. //encoder rotation values
  1504. #define encrot0 0
  1505. #define encrot1 2
  1506. #define encrot2 3
  1507. #define encrot3 1
  1508. #endif
  1509. #ifndef KNOWN_BOARD
  1510. #error Unknown MOTHERBOARD value in configuration.h
  1511. #endif
  1512. //List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those!
  1513. #define _E0_PINS E0_STEP_PIN, E0_DIR_PIN, E0_ENABLE_PIN, HEATER_0_PIN,
  1514. #if EXTRUDERS > 1
  1515. #define _E1_PINS E1_STEP_PIN, E1_DIR_PIN, E1_ENABLE_PIN, HEATER_1_PIN,
  1516. #else
  1517. #define _E1_PINS
  1518. #endif
  1519. #if EXTRUDERS > 2
  1520. #define _E2_PINS E2_STEP_PIN, E2_DIR_PIN, E2_ENABLE_PIN, HEATER_2_PIN,
  1521. #else
  1522. #define _E2_PINS
  1523. #endif
  1524. #ifdef X_STOP_PIN
  1525. #if X_HOME_DIR < 0
  1526. #define X_MIN_PIN X_STOP_PIN
  1527. #define X_MAX_PIN -1
  1528. #else
  1529. #define X_MIN_PIN -1
  1530. #define X_MAX_PIN X_STOP_PIN
  1531. #endif
  1532. #endif
  1533. #ifdef Y_STOP_PIN
  1534. #if Y_HOME_DIR < 0
  1535. #define Y_MIN_PIN Y_STOP_PIN
  1536. #define Y_MAX_PIN -1
  1537. #else
  1538. #define Y_MIN_PIN -1
  1539. #define Y_MAX_PIN Y_STOP_PIN
  1540. #endif
  1541. #endif
  1542. #ifdef Z_STOP_PIN
  1543. #if Z_HOME_DIR < 0
  1544. #define Z_MIN_PIN Z_STOP_PIN
  1545. #define Z_MAX_PIN -1
  1546. #else
  1547. #define Z_MIN_PIN -1
  1548. #define Z_MAX_PIN Z_STOP_PIN
  1549. #endif
  1550. #endif
  1551. #ifdef DISABLE_MAX_ENDSTOPS
  1552. #define X_MAX_PIN -1
  1553. #define Y_MAX_PIN -1
  1554. #define Z_MAX_PIN -1
  1555. #endif
  1556. #define SENSITIVE_PINS {0, 1, X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, PS_ON_PIN, \
  1557. HEATER_BED_PIN, FAN_PIN, \
  1558. _E0_PINS _E1_PINS _E2_PINS \
  1559. analogInputToDigitalPin(TEMP_0_PIN), analogInputToDigitalPin(TEMP_1_PIN), analogInputToDigitalPin(TEMP_2_PIN), analogInputToDigitalPin(TEMP_BED_PIN) }
  1560. #endif