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.h 79KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958
  1. #ifndef PINS_H
  2. #define PINS_H
  3. #if MOTHERBOARD != 88
  4. #define X_MS1_PIN -1
  5. #define X_MS2_PIN -1
  6. #define Y_MS1_PIN -1
  7. #define Y_MS2_PIN -1
  8. #define Z_MS1_PIN -1
  9. #define Z_MS2_PIN -1
  10. #define E0_MS1_PIN -1
  11. #define E0_MS2_PIN -1
  12. #define E1_MS1_PIN -1
  13. #define E1_MS2_PIN -1
  14. #define DIGIPOTSS_PIN -1
  15. #endif
  16. /****************************************************************************************
  17. * 5DPrint D8 Driver board
  18. * https://bitbucket.org/makible/5dprint-d8-controller-board
  19. ****************************************************************************************/
  20. #if MOTHERBOARD == 88
  21. #define KNOWN_BOARD 1
  22. #define AT90USB 1286 // Disable MarlinSerial etc.
  23. #ifndef __AVR_AT90USB1286__
  24. #error Oops! Make sure you have 'Teensy++ 2.0' selected from the 'Tools -> Boards' menu.
  25. #endif
  26. #define LARGE_FLASH true
  27. #define X_STEP_PIN 0
  28. #define X_DIR_PIN 1
  29. #define X_ENABLE_PIN 23
  30. #define X_STOP_PIN 37
  31. #define Y_STEP_PIN 2
  32. #define Y_DIR_PIN 3
  33. #define Y_ENABLE_PIN 19
  34. #define Y_STOP_PIN 36
  35. #define Z_STEP_PIN 4
  36. #define Z_DIR_PIN 5
  37. #define Z_ENABLE_PIN 18
  38. #define Z_STOP_PIN 39
  39. #define E0_STEP_PIN 6
  40. #define E0_DIR_PIN 7
  41. #define E0_ENABLE_PIN 17
  42. #define HEATER_0_PIN 21 // Extruder
  43. #define HEATER_1_PIN -1
  44. #define HEATER_2_PIN -1
  45. #define HEATER_BED_PIN 20 // Bed
  46. // You may need to change FAN_PIN to 16 because Marlin isn't using fastio.h
  47. // for the fan and Teensyduino uses a different pin mapping.
  48. #define FAN_PIN 16 // Fan
  49. #define TEMP_0_PIN 1 // Extruder / Analog pin numbering
  50. #define TEMP_BED_PIN 0 // Bed / Analog pin numbering
  51. #define TEMP_1_PIN -1
  52. #define TEMP_2_PIN -1
  53. #define SDPOWER -1
  54. #define LED_PIN -1
  55. #define PS_ON_PIN -1
  56. #define KILL_PIN -1
  57. #define ALARM_PIN -1
  58. // The SDSS pin uses a different pin mapping from file Sd2PinMap.h
  59. #define SDSS 20
  60. #ifndef SDSUPPORT
  61. // these pins are defined in the SD library if building with SD support
  62. #define SCK_PIN 9
  63. #define MISO_PIN 11
  64. #define MOSI_PIN 10
  65. #endif
  66. // Microstepping pins
  67. // Note that the pin mapping is not from fastio.h
  68. // See Sd2PinMap.h for the pin configurations
  69. #define X_MS1_PIN 25
  70. #define X_MS2_PIN 26
  71. #define Y_MS1_PIN 9
  72. #define Y_MS2_PIN 8
  73. #define Z_MS1_PIN 7
  74. #define Z_MS2_PIN 6
  75. #define E0_MS1_PIN 5
  76. #define E0_MS2_PIN 4
  77. #endif /* 88 */
  78. /****************************************************************************************
  79. * Leapfrog Driver board
  80. *
  81. ****************************************************************************************/
  82. #if MOTHERBOARD == 999 // Leapfrog board
  83. #define KNOWN_BOARD 1
  84. #ifndef __AVR_ATmega1280__
  85. #ifndef __AVR_ATmega2560__
  86. #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
  87. #endif
  88. #endif
  89. #define X_STEP_PIN 28
  90. #define X_DIR_PIN 63
  91. #define X_ENABLE_PIN 29
  92. #define X_MIN_PIN 47
  93. #define X_MAX_PIN -1 //2 //Max endstops default to disabled "-1", set to commented value to enable.
  94. #define Y_STEP_PIN 14 // A6
  95. #define Y_DIR_PIN 15 // A0
  96. #define Y_ENABLE_PIN 39
  97. #define Y_MIN_PIN 48
  98. #define Y_MAX_PIN -1 //15
  99. #define Z_STEP_PIN 31 // A2
  100. #define Z_DIR_PIN 32 // A6
  101. #define Z_ENABLE_PIN 30 // A1
  102. #define Z_MIN_PIN 49
  103. #define Z_MAX_PIN -1
  104. #define E0_STEP_PIN 34 //34
  105. #define E0_DIR_PIN 35 //35
  106. #define E0_ENABLE_PIN 33 //33
  107. #define E1_STEP_PIN 37 //37
  108. #define E1_DIR_PIN 40 //40
  109. #define E1_ENABLE_PIN 36 //36
  110. #define Y2_STEP_PIN 37
  111. #define Y2_DIR_PIN 40
  112. #define Y2_ENABLE_PIN 36
  113. #define Z2_STEP_PIN 37
  114. #define Z2_DIR_PIN 40
  115. #define Z2_ENABLE_PIN 36
  116. #define SDPOWER -1
  117. #define SDSS 11
  118. #define SDCARDDETECT -1 // 10 optional also used as mode pin
  119. #define LED_PIN 13
  120. #define FAN_PIN 7
  121. #define PS_ON_PIN -1
  122. #define KILL_PIN -1
  123. #define SOL1_PIN 16
  124. #define SOL2_PIN 17
  125. #define HEATER_0_PIN 9
  126. #define HEATER_1_PIN 8 // 12
  127. #define HEATER_2_PIN 11 //-1 // 13
  128. #define TEMP_0_PIN 13 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
  129. #define TEMP_1_PIN 15 // 1
  130. #define TEMP_2_PIN -1 // 2
  131. #define HEATER_BED_PIN 10 // 14/15
  132. #define TEMP_BED_PIN 14 // 1,2 or I2C
  133. /* 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) */
  134. #endif
  135. /****************************************************************************************
  136. *
  137. *
  138. ****************************************************************************************/
  139. #if MOTHERBOARD == 99
  140. #define KNOWN_BOARD 1
  141. #define X_STEP_PIN 2
  142. #define X_DIR_PIN 3
  143. #define X_ENABLE_PIN -1
  144. #define X_STOP_PIN 16
  145. #define Y_STEP_PIN 5
  146. #define Y_DIR_PIN 6
  147. #define Y_ENABLE_PIN -1
  148. #define Y_STOP_PIN 67
  149. #define Z_STEP_PIN 62
  150. #define Z_DIR_PIN 63
  151. #define Z_ENABLE_PIN -1
  152. #define Z_STOP_PIN 59
  153. #define E0_STEP_PIN 65
  154. #define E0_DIR_PIN 66
  155. #define E0_ENABLE_PIN -1
  156. #define SDPOWER -1
  157. #define SDSS 53
  158. #define LED_PIN -1
  159. #define FAN_PIN -1
  160. #define PS_ON_PIN 9
  161. #define KILL_PIN -1
  162. #define HEATER_0_PIN 13
  163. #define HEATER_1_PIN -1
  164. #define HEATER_2_PIN -1
  165. #define TEMP_0_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
  166. #define TEMP_1_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
  167. #define TEMP_2_PIN -1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
  168. #define HEATER_BED_PIN 4
  169. #define TEMP_BED_PIN 10
  170. #endif /* 99 */
  171. /****************************************************************************************
  172. * Sethi 3D_1 pin assignment - www.sethi3d.com.br
  173. *
  174. ****************************************************************************************/
  175. #if MOTHERBOARD == 20
  176. #define KNOWN_BOARD
  177. #if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
  178. #error Oops! Make sure you have 'Sethi 3D' selected from the 'Tools -> Boards' menu.
  179. #endif
  180. #ifndef GEN7_VERSION
  181. #define GEN7_VERSION 12 // v1.x
  182. #endif
  183. //x axis pins
  184. #define X_STEP_PIN 19
  185. #define X_DIR_PIN 18
  186. #define X_ENABLE_PIN 24
  187. #define X_STOP_PIN 2
  188. //y axis pins
  189. #define Y_STEP_PIN 23
  190. #define Y_DIR_PIN 22
  191. #define Y_ENABLE_PIN 24
  192. #define Y_STOP_PIN 0
  193. //z axis pins
  194. #define Z_STEP_PIN 26
  195. #define Z_DIR_PIN 25
  196. #define Z_ENABLE_PIN 24
  197. #define Z_MIN_PIN 1
  198. #define Z_MAX_PIN 0
  199. //extruder pins
  200. #define E0_STEP_PIN 28
  201. #define E0_DIR_PIN 27
  202. #define E0_ENABLE_PIN 24
  203. #define TEMP_0_PIN 1
  204. #define TEMP_1_PIN -1
  205. #define TEMP_2_PIN -1
  206. #define TEMP_BED_PIN 2
  207. #define HEATER_0_PIN 4
  208. #define HEATER_1_PIN -1
  209. #define HEATER_2_PIN -1
  210. #define HEATER_BED_PIN 3
  211. #define KILL_PIN -1
  212. #define SDPOWER -1
  213. #define SDSS -1 // SCL pin of I2C header
  214. #define LED_PIN -1
  215. #if (GEN7_VERSION >= 13)
  216. // Gen7 v1.3 removed the fan pin
  217. #define FAN_PIN -1
  218. #else
  219. #define FAN_PIN 31
  220. #endif
  221. #define PS_ON_PIN 15
  222. //All these generations of Gen7 supply thermistor power
  223. //via PS_ON, so ignore bad thermistor readings
  224. #define BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE
  225. //our pin for debugging.
  226. #define DEBUG_PIN 0
  227. //our RS485 pins
  228. #define TX_ENABLE_PIN 12
  229. #define RX_ENABLE_PIN 13
  230. #endif
  231. /****************************************************************************************
  232. * Gen7 v1.1, v1.2, v1.3 pin assignment
  233. *
  234. ****************************************************************************************/
  235. #if MOTHERBOARD == 12
  236. #define MOTHERBOARD 11
  237. #define GEN7_VERSION 13 // v1.3
  238. #endif
  239. #if MOTHERBOARD == 11
  240. #define KNOWN_BOARD
  241. #if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
  242. #error Oops! Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu.
  243. #endif
  244. #ifndef GEN7_VERSION
  245. #define GEN7_VERSION 12 // v1.x
  246. #endif
  247. //x axis pins
  248. #define X_STEP_PIN 19
  249. #define X_DIR_PIN 18
  250. #define X_ENABLE_PIN 24
  251. #define X_STOP_PIN 7
  252. //y axis pins
  253. #define Y_STEP_PIN 23
  254. #define Y_DIR_PIN 22
  255. #define Y_ENABLE_PIN 24
  256. #define Y_STOP_PIN 5
  257. //z axis pins
  258. #define Z_STEP_PIN 26
  259. #define Z_DIR_PIN 25
  260. #define Z_ENABLE_PIN 24
  261. #define Z_MIN_PIN 1
  262. #define Z_MAX_PIN 0
  263. //extruder pins
  264. #define E0_STEP_PIN 28
  265. #define E0_DIR_PIN 27
  266. #define E0_ENABLE_PIN 24
  267. #define TEMP_0_PIN 1
  268. #define TEMP_1_PIN -1
  269. #define TEMP_2_PIN -1
  270. #define TEMP_BED_PIN 2
  271. #define HEATER_0_PIN 4
  272. #define HEATER_1_PIN -1
  273. #define HEATER_2_PIN -1
  274. #define HEATER_BED_PIN 3
  275. #define KILL_PIN -1
  276. #define SDPOWER -1
  277. #define SDSS -1 // SCL pin of I2C header
  278. #define LED_PIN -1
  279. #if (GEN7_VERSION >= 13)
  280. // Gen7 v1.3 removed the fan pin
  281. #define FAN_PIN -1
  282. #else
  283. #define FAN_PIN 31
  284. #endif
  285. #define PS_ON_PIN 15
  286. //All these generations of Gen7 supply thermistor power
  287. //via PS_ON, so ignore bad thermistor readings
  288. #define BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE
  289. //our pin for debugging.
  290. #define DEBUG_PIN 0
  291. //our RS485 pins
  292. #define TX_ENABLE_PIN 12
  293. #define RX_ENABLE_PIN 13
  294. #endif
  295. /****************************************************************************************
  296. * Gen7 v1.4 pin assignment
  297. *
  298. ****************************************************************************************/
  299. #if MOTHERBOARD == 13
  300. #define GEN7_VERSION 14 // v1.4
  301. #endif
  302. #if MOTHERBOARD == 13
  303. #define KNOWN_BOARD
  304. #if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
  305. #error Oops! Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu.
  306. #endif
  307. #ifndef GEN7_VERSION
  308. #define GEN7_VERSION 14 // v1.x
  309. #endif
  310. //x axis pins
  311. #define X_STEP_PIN 29
  312. #define X_DIR_PIN 28
  313. #define X_ENABLE_PIN 25
  314. #define X_STOP_PIN 0
  315. //y axis pins
  316. #define Y_STEP_PIN 27
  317. #define Y_DIR_PIN 26
  318. #define Y_ENABLE_PIN 25
  319. #define Y_STOP_PIN 1
  320. //z axis pins
  321. #define Z_STEP_PIN 23
  322. #define Z_DIR_PIN 22
  323. #define Z_ENABLE_PIN 25
  324. #define Z_STOP_PIN 2
  325. //extruder pins
  326. #define E0_STEP_PIN 19
  327. #define E0_DIR_PIN 18
  328. #define E0_ENABLE_PIN 25
  329. #define TEMP_0_PIN 1
  330. #define TEMP_1_PIN -1
  331. #define TEMP_2_PIN -1
  332. #define TEMP_BED_PIN 0
  333. #define HEATER_0_PIN 4
  334. #define HEATER_1_PIN -1
  335. #define HEATER_2_PIN -1
  336. #define HEATER_BED_PIN 3
  337. #define KILL_PIN -1
  338. #define SDPOWER -1
  339. #define SDSS -1 // SCL pin of I2C header
  340. #define LED_PIN -1
  341. #define FAN_PIN -1
  342. #define PS_ON_PIN 15
  343. //our pin for debugging.
  344. #define DEBUG_PIN 0
  345. //our RS485 pins
  346. #define TX_ENABLE_PIN 12
  347. #define RX_ENABLE_PIN 13
  348. #endif
  349. /*******************************************************************************
  350. *********
  351. * Gen7 Alfons3 pin assignment
  352. *
  353. ********************************************************************************
  354. ********/
  355. /* These Pins are assigned for the modified GEN7 Board from Alfons3 Please review the pins and adjust it for your needs*/
  356. #if MOTHERBOARD == 10
  357. #define KNOWN_BOARD
  358. #if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__)
  359. #error Oops! Make sure you have 'Gen7' selected from the 'Tools -> Boards' menu.
  360. #endif
  361. //x axis pins
  362. #define X_STEP_PIN 21 // different from standard GEN7
  363. #define X_DIR_PIN 20 // different from standard GEN7
  364. #define X_ENABLE_PIN 24
  365. #define X_STOP_PIN 0
  366. //y axis pins
  367. #define Y_STEP_PIN 23
  368. #define Y_DIR_PIN 22
  369. #define Y_ENABLE_PIN 24
  370. #define Y_STOP_PIN 1
  371. //z axis pins
  372. #define Z_STEP_PIN 26
  373. #define Z_DIR_PIN 25
  374. #define Z_ENABLE_PIN 24
  375. #define Z_STOP_PIN 2
  376. //extruder pins
  377. #define E0_STEP_PIN 28
  378. #define E0_DIR_PIN 27
  379. #define E0_ENABLE_PIN 24
  380. #define TEMP_0_PIN 2
  381. #define TEMP_1_PIN -1
  382. #define TEMP_2_PIN -1
  383. #define TEMP_BED_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed)
  384. #define HEATER_0_PIN 4
  385. #define HEATER_1_PIN -1
  386. #define HEATER_2_PIN -1
  387. #define HEATER_BED_PIN 3 // (bed)
  388. #define SDPOWER -1
  389. #define SDSS 31 // SCL pin of I2C header || CS Pin for SD Card support
  390. #define LED_PIN -1
  391. #define FAN_PIN -1
  392. #define PS_ON_PIN 19
  393. //our pin for debugging.
  394. #define DEBUG_PIN -1
  395. //our RS485 pins
  396. //#define TX_ENABLE_PIN 12
  397. //#define RX_ENABLE_PIN 13
  398. #define BEEPER -1
  399. #define SDCARDDETECT -1
  400. #define SUICIDE_PIN -1 //has to be defined; otherwise Power_off doesn't work
  401. #define KILL_PIN -1
  402. //Pins for 4bit LCD Support
  403. #define LCD_PINS_RS 18
  404. #define LCD_PINS_ENABLE 17
  405. #define LCD_PINS_D4 16
  406. #define LCD_PINS_D5 15
  407. #define LCD_PINS_D6 13
  408. #define LCD_PINS_D7 14
  409. //buttons are directly attached
  410. #define BTN_EN1 11
  411. #define BTN_EN2 10
  412. #define BTN_ENC 12 //the click
  413. #endif
  414. /****************************************************************************************
  415. * Arduino Mega pin assignment
  416. *
  417. ****************************************************************************************/
  418. #if MOTHERBOARD == 3 || MOTHERBOARD == 33 || MOTHERBOARD == 34 || MOTHERBOARD == 35 || MOTHERBOARD == 36 || MOTHERBOARD == 77 || MOTHERBOARD == 67 || MOTHERBOARD == 68
  419. #define KNOWN_BOARD 1
  420. //////////////////FIX THIS//////////////
  421. #ifndef __AVR_ATmega1280__
  422. #ifndef __AVR_ATmega2560__
  423. #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
  424. #endif
  425. #endif
  426. // uncomment one of the following lines for RAMPS v1.3 or v1.0, comment both for v1.2 or 1.1
  427. // #define RAMPS_V_1_3
  428. // #define RAMPS_V_1_0
  429. #if MOTHERBOARD == 33 || MOTHERBOARD == 34 || MOTHERBOARD == 35 || MOTHERBOARD == 36 || MOTHERBOARD == 77 || MOTHERBOARD == 67 || MOTHERBOARD == 68
  430. #define LARGE_FLASH true
  431. #if MOTHERBOARD == 77
  432. #define X_STEP_PIN 54
  433. #define X_DIR_PIN 55
  434. #define X_ENABLE_PIN 38
  435. #define X_MIN_PIN 3
  436. #define X_MAX_PIN -1 //2 //Max endstops default to disabled "-1", set to commented value to enable.
  437. #define Y_STEP_PIN 60
  438. #define Y_DIR_PIN 61
  439. #define Y_ENABLE_PIN 56
  440. #define Y_MIN_PIN 14
  441. #define Y_MAX_PIN -1 //15
  442. #define Z_STEP_PIN 46
  443. #define Z_DIR_PIN 48
  444. #define Z_ENABLE_PIN 63
  445. #define Z_MIN_PIN 18
  446. #define Z_MAX_PIN -1
  447. #define Y2_STEP_PIN 36
  448. #define Y2_DIR_PIN 34
  449. #define Y2_ENABLE_PIN 30
  450. #define Z2_STEP_PIN 36
  451. #define Z2_DIR_PIN 34
  452. #define Z2_ENABLE_PIN 30
  453. #define E0_STEP_PIN 26
  454. #define E0_DIR_PIN 28
  455. #define E0_ENABLE_PIN 24
  456. #define E1_STEP_PIN 36
  457. #define E1_DIR_PIN 34
  458. #define E1_ENABLE_PIN 30
  459. #define SDPOWER -1
  460. #define SDSS 25//53
  461. #define LED_PIN 13
  462. #define BEEPER 33
  463. #else
  464. #define X_STEP_PIN 54
  465. #define X_DIR_PIN 55
  466. #define X_ENABLE_PIN 38
  467. #define X_MIN_PIN 3
  468. #define X_MAX_PIN 2
  469. #define Y_STEP_PIN 60
  470. #define Y_DIR_PIN 61
  471. #define Y_ENABLE_PIN 56
  472. #define Y_MIN_PIN 14
  473. #define Y_MAX_PIN 15
  474. #define Z_STEP_PIN 46
  475. #define Z_DIR_PIN 48
  476. #define Z_ENABLE_PIN 62
  477. #define Z_MIN_PIN 18
  478. #define Z_MAX_PIN 19
  479. #define Y2_STEP_PIN 36
  480. #define Y2_DIR_PIN 34
  481. #define Y2_ENABLE_PIN 30
  482. #define Z2_STEP_PIN 36
  483. #define Z2_DIR_PIN 34
  484. #define Z2_ENABLE_PIN 30
  485. #define E0_STEP_PIN 26
  486. #define E0_DIR_PIN 28
  487. #define E0_ENABLE_PIN 24
  488. #define E1_STEP_PIN 36
  489. #define E1_DIR_PIN 34
  490. #define E1_ENABLE_PIN 30
  491. #if MOTHERBOARD == 34 //FMM added for Filament Extruder
  492. #ifdef FILAMENT_SENSOR
  493. //define analog pin for the filament width sensor input
  494. //Use the RAMPS 1.4 Analog input 5 on the AUX2 connector
  495. #define FILWIDTH_PIN 5
  496. #endif
  497. #endif
  498. #if MOTHERBOARD == 68
  499. #define E2_STEP_PIN 23
  500. #define E2_DIR_PIN 25
  501. #define E2_ENABLE_PIN 40
  502. #define E3_STEP_PIN 27
  503. #define E3_DIR_PIN 29
  504. #define E3_ENABLE_PIN 41
  505. #define E4_STEP_PIN 43
  506. #define E4_DIR_PIN 37
  507. #define E4_ENABLE_PIN 42
  508. #endif
  509. #define SDPOWER -1
  510. #define SDSS 53
  511. #define LED_PIN 13
  512. #endif
  513. #if MOTHERBOARD == 33 || MOTHERBOARD == 35 || MOTHERBOARD == 67 || MOTHERBOARD == 68
  514. #define FAN_PIN 9 // (Sprinter config)
  515. #else
  516. #define FAN_PIN 4 // IO pin. Buffer needed
  517. #endif
  518. #if MOTHERBOARD == 77 || MOTHERBOARD == 36
  519. #define FAN_PIN 8
  520. #endif
  521. #if MOTHERBOARD == 35
  522. #define CONTROLLERFAN_PIN -1 //Pin used for the fan to cool controller
  523. #endif
  524. #define PS_ON_PIN 12
  525. #if defined(REPRAP_DISCOUNT_SMART_CONTROLLER) || defined(G3D_PANEL)
  526. #define KILL_PIN 41
  527. #else
  528. #define KILL_PIN -1
  529. #endif
  530. #if MOTHERBOARD == 35
  531. #define HEATER_0_PIN 8
  532. #else
  533. #define HEATER_0_PIN 10 // EXTRUDER 1
  534. #endif
  535. #if MOTHERBOARD == 33 || MOTHERBOARD == 67
  536. #define HEATER_1_PIN -1
  537. #else
  538. #define HEATER_1_PIN 9 // EXTRUDER 2 (FAN On Sprinter)
  539. #endif
  540. #if MOTHERBOARD == 77
  541. #define HEATER_0_PIN 10
  542. #define HEATER_1_PIN 12
  543. #define HEATER_2_PIN 6
  544. #elif MOTHERBOARD == 68
  545. #define HEATER_2_PIN 16
  546. #define HEATER_3_PIN 17
  547. #define HEATER_4_PIN 4
  548. #define HEATER_5_PIN 5
  549. #define HEATER_6_PIN 6
  550. #define HEATER_7_PIN 11
  551. #else
  552. #define HEATER_2_PIN -1
  553. #endif
  554. #define TEMP_0_PIN 13 // ANALOG NUMBERING
  555. #define TEMP_1_PIN 15 // ANALOG NUMBERING
  556. #if MOTHERBOARD == 68
  557. #define TEMP_2_PIN 12 // ANALOG NUMBERING
  558. #define TEMP_3_PIN 11 // ANALOG NUMBERING
  559. #define TEMP_4_PIN 10 // ANALOG NUMBERING
  560. #define TC1 4 // ANALOG NUMBERING Thermo couple on Azteeg X3Pro
  561. #define TC2 5 // ANALOG NUMBERING Thermo couple on Azteeg X3Pro
  562. #else
  563. #define TEMP_2_PIN -1 // ANALOG NUMBERING
  564. #endif
  565. #if MOTHERBOARD == 35 || MOTHERBOARD == 36
  566. #define HEATER_BED_PIN -1 // NO BED
  567. #else
  568. #if MOTHERBOARD == 77
  569. #define HEATER_BED_PIN 9 // BED
  570. #else
  571. #define HEATER_BED_PIN 8 // BED
  572. #endif
  573. #endif
  574. #define TEMP_BED_PIN 14 // ANALOG NUMBERING
  575. #ifdef NUM_SERVOS
  576. #define SERVO0_PIN 11
  577. #if NUM_SERVOS > 1
  578. #define SERVO1_PIN 6
  579. #endif
  580. #if NUM_SERVOS > 2
  581. #define SERVO2_PIN 5
  582. #endif
  583. #if NUM_SERVOS > 3
  584. #define SERVO3_PIN 4
  585. #endif
  586. #endif
  587. #if MOTHERBOARD == 68
  588. #define BEEPER 33
  589. #endif
  590. #ifdef TEMP_STAT_LEDS
  591. #if MOTHERBOARD == 67
  592. #define STAT_LED_RED 6
  593. #define STAT_LED_BLUE 11
  594. #endif
  595. #endif
  596. #ifdef ULTRA_LCD
  597. #ifdef NEWPANEL
  598. #define LCD_PINS_RS 16
  599. #define LCD_PINS_ENABLE 17
  600. #define LCD_PINS_D4 23
  601. #define LCD_PINS_D5 25
  602. #define LCD_PINS_D6 27
  603. #define LCD_PINS_D7 29
  604. #ifdef REPRAP_DISCOUNT_SMART_CONTROLLER
  605. #define BEEPER 37
  606. #define BTN_EN1 31
  607. #define BTN_EN2 33
  608. #define BTN_ENC 35
  609. #define SDCARDDETECT 49
  610. #elif defined(LCD_I2C_PANELOLU2)
  611. #define BTN_EN1 47 //reverse if the encoder turns the wrong way.
  612. #define BTN_EN2 43
  613. #define BTN_ENC 32
  614. #define LCD_SDSS 53
  615. #define SDCARDDETECT -1
  616. #define KILL_PIN 41
  617. #elif defined(LCD_I2C_VIKI)
  618. #define BTN_EN1 22 //reverse if the encoder turns the wrong way.
  619. #define BTN_EN2 7
  620. #define BTN_ENC -1
  621. #define LCD_SDSS 53
  622. #define SDCARDDETECT 49
  623. #else
  624. //arduino pin which triggers an piezzo beeper
  625. #define BEEPER 33 // Beeper on AUX-4
  626. //buttons are directly attached using AUX-2
  627. #ifdef REPRAPWORLD_KEYPAD
  628. #define BTN_EN1 64 // encoder
  629. #define BTN_EN2 59 // encoder
  630. #define BTN_ENC 63 // enter button
  631. #define SHIFT_OUT 40 // shift register
  632. #define SHIFT_CLK 44 // shift register
  633. #define SHIFT_LD 42 // shift register
  634. #else
  635. #define BTN_EN1 37
  636. #define BTN_EN2 35
  637. #define BTN_ENC 31 //the click
  638. #endif
  639. #ifdef G3D_PANEL
  640. #define SDCARDDETECT 49
  641. #else
  642. #define SDCARDDETECT -1 // Ramps does not use this port
  643. #endif
  644. #endif
  645. #if MOTHERBOARD == 77
  646. #define BEEPER -1
  647. #define LCD_PINS_RS 27
  648. #define LCD_PINS_ENABLE 29
  649. #define LCD_PINS_D4 37
  650. #define LCD_PINS_D5 35
  651. #define LCD_PINS_D6 33
  652. #define LCD_PINS_D7 31
  653. //buttons
  654. #define BTN_EN1 16
  655. #define BTN_EN2 17
  656. #define BTN_ENC 23 //the click
  657. #endif
  658. #else //old style panel with shift register
  659. //arduino pin witch triggers an piezzo beeper
  660. #define BEEPER 33 //No Beeper added
  661. //buttons are attached to a shift register
  662. // Not wired this yet
  663. //#define SHIFT_CLK 38
  664. //#define SHIFT_LD 42
  665. //#define SHIFT_OUT 40
  666. //#define SHIFT_EN 17
  667. #define LCD_PINS_RS 16
  668. #define LCD_PINS_ENABLE 17
  669. #define LCD_PINS_D4 23
  670. #define LCD_PINS_D5 25
  671. #define LCD_PINS_D6 27
  672. #define LCD_PINS_D7 29
  673. #endif
  674. #endif //ULTRA_LCD
  675. #else // RAMPS_V_1_1 or RAMPS_V_1_2 as default (MOTHERBOARD == 3)
  676. #define X_STEP_PIN 26
  677. #define X_DIR_PIN 28
  678. #define X_ENABLE_PIN 24
  679. #define X_MIN_PIN 3
  680. #define X_MAX_PIN -1 //2
  681. #define Y_STEP_PIN 38
  682. #define Y_DIR_PIN 40
  683. #define Y_ENABLE_PIN 36
  684. #define Y_MIN_PIN 16
  685. #define Y_MAX_PIN -1 //17
  686. #define Z_STEP_PIN 44
  687. #define Z_DIR_PIN 46
  688. #define Z_ENABLE_PIN 42
  689. #define Z_MIN_PIN 18
  690. #define Z_MAX_PIN -1 //19
  691. #define E0_STEP_PIN 32
  692. #define E0_DIR_PIN 34
  693. #define E0_ENABLE_PIN 30
  694. #define SDPOWER 48
  695. #define SDSS 53
  696. #define LED_PIN 13
  697. #define PS_ON_PIN -1
  698. #define KILL_PIN -1
  699. #ifdef RAMPS_V_1_0 // RAMPS_V_1_0
  700. #define HEATER_0_PIN 12 // RAMPS 1.0
  701. #define HEATER_BED_PIN -1 // RAMPS 1.0
  702. #define FAN_PIN 11 // RAMPS 1.0
  703. #else // RAMPS_V_1_1 or RAMPS_V_1_2
  704. #define HEATER_0_PIN 10 // RAMPS 1.1
  705. #define HEATER_BED_PIN 8 // RAMPS 1.1
  706. #define FAN_PIN 9 // RAMPS 1.1
  707. #endif
  708. #define HEATER_1_PIN -1
  709. #define HEATER_2_PIN -1
  710. #define TEMP_0_PIN 2 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
  711. #define TEMP_1_PIN -1
  712. #define TEMP_2_PIN -1
  713. #define TEMP_BED_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
  714. #endif // MOTHERBOARD == 33 || MOTHERBOARD == 34 || MOTHERBOARD == 35 || MOTHERBOARD == 77
  715. // SPI for Max6675 Thermocouple
  716. #ifndef SDSUPPORT
  717. // these pins are defined in the SD library if building with SD support
  718. #define SCK_PIN 52
  719. #define MISO_PIN 50
  720. #define MOSI_PIN 51
  721. #define MAX6675_SS 53
  722. #else
  723. #define MAX6675_SS 49
  724. #endif
  725. #endif //MOTHERBOARD == 3 || MOTHERBOARD == 33 || MOTHERBOARD == 34 || MOTHERBOARD == 35 || MOTHERBOARD == 77
  726. /****************************************************************************************
  727. * Duemilanove w/ ATMega328P pin assignment
  728. *
  729. ****************************************************************************************/
  730. #if MOTHERBOARD == 4
  731. #define KNOWN_BOARD 1
  732. #ifndef __AVR_ATmega328P__
  733. #error Oops! Make sure you have 'Arduino Duemilanove w/ ATMega328' selected from the 'Tools -> Boards' menu.
  734. #endif
  735. #define X_STEP_PIN 19
  736. #define X_DIR_PIN 18
  737. #define X_ENABLE_PIN -1
  738. #define X_STOP_PIN 17
  739. #define Y_STEP_PIN 10
  740. #define Y_DIR_PIN 7
  741. #define Y_ENABLE_PIN -1
  742. #define Y_STOP_PIN 8
  743. #define Z_STEP_PIN 13
  744. #define Z_DIR_PIN 3
  745. #define Z_ENABLE_PIN 2
  746. #define Z_STOP_PIN 4
  747. #define E0_STEP_PIN 11
  748. #define E0_DIR_PIN 12
  749. #define E0_ENABLE_PIN -1
  750. #define SDPOWER -1
  751. #define SDSS -1
  752. #define LED_PIN -1
  753. #define FAN_PIN 5
  754. #define PS_ON_PIN -1
  755. #define KILL_PIN -1
  756. #define HEATER_0_PIN 6
  757. #define HEATER_1_PIN -1
  758. #define HEATER_2_PIN -1
  759. #define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
  760. #define TEMP_1_PIN -1
  761. #define TEMP_2_PIN -1
  762. #define HEATER_BED_PIN -1
  763. #define TEMP_BED_PIN -1
  764. #endif
  765. /****************************************************************************************
  766. * Elefu RA Board Pin Assignments
  767. *
  768. ****************************************************************************************/
  769. #if MOTHERBOARD == 21
  770. #define KNOWN_BOARD 1
  771. #ifndef __AVR_ATmega2560__
  772. #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
  773. #endif
  774. #define X_STEP_PIN 49
  775. #define X_DIR_PIN 13
  776. #define X_ENABLE_PIN 48
  777. #define X_MIN_PIN 35
  778. #define X_MAX_PIN -1 //34
  779. #define Y_STEP_PIN 11
  780. #define Y_DIR_PIN 9
  781. #define Y_ENABLE_PIN 12
  782. #define Y_MIN_PIN 33
  783. #define Y_MAX_PIN -1 //32
  784. #define Z_STEP_PIN 7
  785. #define Z_DIR_PIN 6
  786. #define Z_ENABLE_PIN 8
  787. #define Z_MIN_PIN 31
  788. #define Z_MAX_PIN -1 //30
  789. #define E2_STEP_PIN 43
  790. #define E2_DIR_PIN 47
  791. #define E2_ENABLE_PIN 42
  792. #define E1_STEP_PIN 18
  793. #define E1_DIR_PIN 19
  794. #define E1_ENABLE_PIN 38
  795. #define E0_STEP_PIN 40
  796. #define E0_DIR_PIN 41
  797. #define E0_ENABLE_PIN 37
  798. #define SDPOWER -1
  799. #define LED_PIN -1 //Use +12V Aux port for LED Ring
  800. #define FAN_PIN 16 //5V PWM
  801. #define PS_ON_PIN 10 //Set to -1 if using a manual switch on the PWRSW Connector
  802. #define SLEEP_WAKE_PIN 26 //This feature still needs work
  803. #define HEATER_0_PIN 45 //12V PWM1
  804. #define HEATER_1_PIN 46 //12V PWM2
  805. #define HEATER_2_PIN 17 //12V PWM3
  806. #define HEATER_BED_PIN 44 //DOUBLE 12V PWM
  807. #define TEMP_0_PIN 3 //ANALOG NUMBERING
  808. #define TEMP_1_PIN 2 //ANALOG NUMBERING
  809. #define TEMP_2_PIN 1 //ANALOG NUMBERING
  810. #define TEMP_BED_PIN 0 //ANALOG NUMBERING
  811. #define BEEPER 36
  812. #define KILL_PIN -1
  813. // M240 Triggers a camera by emulating a Canon RC-1 Remote
  814. // Data from: http://www.doc-diy.net/photo/rc-1_hacked/
  815. #define PHOTOGRAPH_PIN 29
  816. #ifdef RA_CONTROL_PANEL
  817. #define SDSS 53
  818. #define SDCARDDETECT 28
  819. #define BTN_EN1 14
  820. #define BTN_EN2 39
  821. #define BTN_ENC 15 //the click
  822. #define BLEN_C 2
  823. #define BLEN_B 1
  824. #define BLEN_A 0
  825. //encoder rotation values
  826. #define encrot0 0
  827. #define encrot1 2
  828. #define encrot2 3
  829. #define encrot3 1
  830. #endif //RA_CONTROL_PANEL
  831. #ifdef RA_DISCO
  832. //variables for which pins the TLC5947 is using
  833. #define TLC_CLOCK_PIN 25
  834. #define TLC_BLANK_PIN 23
  835. #define TLC_XLAT_PIN 22
  836. #define TLC_DATA_PIN 24
  837. //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!
  838. //This currently only works with the RA Board.
  839. #define TLC_CLOCK_BIT 3 //bit 3 on port A
  840. #define TLC_CLOCK_PORT &PORTA //bit 3 on port A
  841. #define TLC_BLANK_BIT 1 //bit 1 on port A
  842. #define TLC_BLANK_PORT &PORTA //bit 1 on port A
  843. #define TLC_DATA_BIT 2 //bit 2 on port A
  844. #define TLC_DATA_PORT &PORTA //bit 2 on port A
  845. #define TLC_XLAT_BIT 0 //bit 0 on port A
  846. #define TLC_XLAT_PORT &PORTA //bit 0 on port A
  847. //change this to match your situation. Lots of TLCs takes up the arduino SRAM very quickly, so be careful
  848. //Leave it at at least 1 if you have enabled RA_LIGHTING
  849. //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.
  850. #define NUM_TLCS 2
  851. //These TRANS_ARRAY values let you change the order the LEDs on the lighting modules will animate for chase functions.
  852. //Modify them according to your specific situation.
  853. //NOTE: the array should be 8 long for every TLC you have. These defaults assume (2) TLCs.
  854. #define TRANS_ARRAY {0, 1, 2, 3, 4, 5, 6, 7, 15, 14, 13, 12, 11, 10, 9, 8} //forwards
  855. //#define TRANS_ARRAY {7, 6, 5, 4, 3, 2, 1, 0, 8, 9, 10, 11, 12, 13, 14, 15} //backwards
  856. #endif //RA_LIGHTING
  857. #endif /* Ra Board */
  858. /****************************************************************************************
  859. * Gen6 pin assignment
  860. *
  861. ****************************************************************************************/
  862. #if MOTHERBOARD == 5 || MOTHERBOARD == 51
  863. #define KNOWN_BOARD 1
  864. #ifndef __AVR_ATmega644P__
  865. #ifndef __AVR_ATmega1284P__
  866. #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
  867. #endif
  868. #endif
  869. //x axis pins
  870. #define X_STEP_PIN 15
  871. #define X_DIR_PIN 18
  872. #define X_ENABLE_PIN 19
  873. #define X_STOP_PIN 20
  874. //y axis pins
  875. #define Y_STEP_PIN 23
  876. #define Y_DIR_PIN 22
  877. #define Y_ENABLE_PIN 24
  878. #define Y_STOP_PIN 25
  879. //z axis pins
  880. #define Z_STEP_PIN 27
  881. #define Z_DIR_PIN 28
  882. #define Z_ENABLE_PIN 29
  883. #define Z_STOP_PIN 30
  884. //extruder pins
  885. #define E0_STEP_PIN 4 //Edited @ EJE Electronics 20100715
  886. #define E0_DIR_PIN 2 //Edited @ EJE Electronics 20100715
  887. #define E0_ENABLE_PIN 3 //Added @ EJE Electronics 20100715
  888. #define TEMP_0_PIN 5 //changed @ rkoeppl 20110410
  889. #define TEMP_1_PIN -1 //changed @ rkoeppl 20110410
  890. #define TEMP_2_PIN -1 //changed @ rkoeppl 20110410
  891. #define HEATER_0_PIN 14 //changed @ rkoeppl 20110410
  892. #define HEATER_1_PIN -1
  893. #define HEATER_2_PIN -1
  894. #if MOTHERBOARD == 5
  895. #define HEATER_BED_PIN -1 //changed @ rkoeppl 20110410
  896. #define TEMP_BED_PIN -1 //changed @ rkoeppl 20110410
  897. #else
  898. #define HEATER_BED_PIN 1 //changed @ rkoeppl 20110410
  899. #define TEMP_BED_PIN 0 //changed @ rkoeppl 20110410
  900. #endif
  901. #define SDPOWER -1
  902. #define SDSS 17
  903. #define LED_PIN -1 //changed @ rkoeppl 20110410
  904. #define FAN_PIN -1 //changed @ rkoeppl 20110410
  905. #define PS_ON_PIN -1 //changed @ rkoeppl 20110410
  906. #define KILL_PIN -1 //changed @ drakelive 20120830
  907. //our pin for debugging.
  908. #define DEBUG_PIN 0
  909. //our RS485 pins
  910. #define TX_ENABLE_PIN 12
  911. #define RX_ENABLE_PIN 13
  912. #endif
  913. /****************************************************************************************
  914. * Sanguinololu pin assignment
  915. *
  916. ****************************************************************************************/
  917. #if MOTHERBOARD == 64
  918. #define STB
  919. #endif
  920. #if MOTHERBOARD == 63 || MOTHERBOARD == 66
  921. #define MELZI
  922. #endif
  923. #if MOTHERBOARD == 65
  924. #define AZTEEG_X1
  925. #endif
  926. #if MOTHERBOARD == 62 || MOTHERBOARD == 63 || MOTHERBOARD == 64 || MOTHERBOARD == 65 || MOTHERBOARD == 66
  927. #undef MOTHERBOARD
  928. #define MOTHERBOARD 6
  929. #define SANGUINOLOLU_V_1_2
  930. #if defined(__AVR_ATmega1284P__)
  931. #define LARGE_FLASH true
  932. #endif
  933. #endif
  934. #if MOTHERBOARD == 6
  935. #define KNOWN_BOARD 1
  936. #ifndef __AVR_ATmega644P__
  937. #ifndef __AVR_ATmega1284P__
  938. #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
  939. #endif
  940. #endif
  941. #define X_STEP_PIN 15
  942. #define X_DIR_PIN 21
  943. #define X_STOP_PIN 18
  944. #define Y_STEP_PIN 22
  945. #define Y_DIR_PIN 23
  946. #define Y_STOP_PIN 19
  947. #define Z_STEP_PIN 3
  948. #define Z_DIR_PIN 2
  949. #define Z_STOP_PIN 20
  950. #define E0_STEP_PIN 1
  951. #define E0_DIR_PIN 0
  952. #define LED_PIN -1
  953. #define FAN_PIN -1
  954. #if FAN_PIN == 12 || FAN_PIN ==13
  955. #define FAN_SOFT_PWM
  956. #endif
  957. #ifdef MELZI
  958. #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. */
  959. #define FAN_PIN 4 // Works for Panelolu2 too
  960. #endif
  961. #ifdef STB
  962. #define FAN_PIN 4
  963. // Uncomment this if you have the first generation (V1.10) of STBs board
  964. #define LCD_PIN_BL 17 // LCD backlight LED
  965. #endif
  966. #ifdef AZTEEG_X1
  967. #define FAN_PIN 4
  968. #endif
  969. #ifdef NUM_SERVOS
  970. #define SERVO0_PIN -1
  971. #if NUM_SERVOS > 1
  972. #define SERVO1_PIN -1
  973. #endif
  974. #if NUM_SERVOS > 2
  975. #define SERVO2_PIN -1
  976. #endif
  977. #if NUM_SERVOS > 3
  978. #define SERVO3_PIN -1
  979. #endif
  980. #endif
  981. #define PS_ON_PIN -1
  982. #define KILL_PIN -1
  983. #define HEATER_0_PIN 13 // (extruder)
  984. #define HEATER_1_PIN -1
  985. #define HEATER_2_PIN -1
  986. #ifdef SANGUINOLOLU_V_1_2
  987. #define HEATER_BED_PIN 12 // (bed)
  988. #define X_ENABLE_PIN 14
  989. #define Y_ENABLE_PIN 14
  990. #define Z_ENABLE_PIN 26
  991. #define E0_ENABLE_PIN 14
  992. #ifdef LCD_I2C_PANELOLU2
  993. #define FAN_PIN 4 // Uses Transistor1 (PWM) on Panelolu2's Sanguino Adapter Board to drive the fan
  994. #endif
  995. #else
  996. #define HEATER_BED_PIN 14 // (bed)
  997. #define X_ENABLE_PIN -1
  998. #define Y_ENABLE_PIN -1
  999. #define Z_ENABLE_PIN -1
  1000. #define E0_ENABLE_PIN -1
  1001. #endif
  1002. #define TEMP_0_PIN 7 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder)
  1003. #define TEMP_1_PIN -1
  1004. #define TEMP_2_PIN -1
  1005. #define TEMP_BED_PIN 6 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed)
  1006. #define SDPOWER -1
  1007. #define SDSS 31
  1008. /* 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. */
  1009. //#define SDSS 24
  1010. #ifdef ULTRA_LCD
  1011. #ifdef NEWPANEL
  1012. //we have no buzzer installed
  1013. #define BEEPER -1
  1014. //LCD Pins
  1015. #ifdef DOGLCD
  1016. // Pins for DOGM SPI LCD Support
  1017. #define DOGLCD_A0 30
  1018. #define DOGLCD_CS 29
  1019. // GLCD features
  1020. #define LCD_CONTRAST 1
  1021. // Uncomment screen orientation
  1022. // #define LCD_SCREEN_ROT_0
  1023. // #define LCD_SCREEN_ROT_90
  1024. #define LCD_SCREEN_ROT_180
  1025. // #define LCD_SCREEN_ROT_270
  1026. #else // standard Hitachi LCD controller
  1027. #define LCD_PINS_RS 4
  1028. #define LCD_PINS_ENABLE 17
  1029. #define LCD_PINS_D4 30
  1030. #define LCD_PINS_D5 29
  1031. #define LCD_PINS_D6 28
  1032. #define LCD_PINS_D7 27
  1033. #endif
  1034. //The encoder and click button
  1035. #define BTN_EN1 11
  1036. #define BTN_EN2 10
  1037. #ifdef LCD_I2C_PANELOLU2
  1038. #ifdef MELZI
  1039. #define BTN_ENC 29 //the click switch
  1040. #define LCD_SDSS 30 //to use the SD card reader on the Panelolu2 rather than the melzi board
  1041. #else
  1042. #define BTN_ENC 30 //the click switch
  1043. #endif
  1044. #else
  1045. #define BTN_ENC 16 //the click switch
  1046. #endif //Panelolu2
  1047. //not connected to a pin
  1048. #define SDCARDDETECT -1
  1049. #endif //Newpanel
  1050. #endif //Ultipanel
  1051. #ifdef MAKRPANEL
  1052. #define BEEPER 29
  1053. // Pins for DOGM SPI LCD Support
  1054. #define DOGLCD_A0 30
  1055. #define DOGLCD_CS 17
  1056. #define LCD_PIN_BL 28 // backlight LED on PA3
  1057. // GLCD features
  1058. #define LCD_CONTRAST 1
  1059. // Uncomment screen orientation
  1060. #define LCD_SCREEN_ROT_0
  1061. // #define LCD_SCREEN_ROT_90
  1062. // #define LCD_SCREEN_ROT_180
  1063. // #define LCD_SCREEN_ROT_270
  1064. //The encoder and click button
  1065. #define BTN_EN1 11
  1066. #define BTN_EN2 10
  1067. #define BTN_ENC 16 //the click switch
  1068. //not connected to a pin
  1069. #define SDCARDDETECT -1
  1070. #endif //Makrpanel
  1071. #endif
  1072. #if MOTHERBOARD == 7
  1073. #define KNOWN_BOARD
  1074. /*****************************************************************
  1075. * Ultimaker pin assignment
  1076. ******************************************************************/
  1077. #ifndef __AVR_ATmega1280__
  1078. #ifndef __AVR_ATmega2560__
  1079. #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
  1080. #endif
  1081. #endif
  1082. #define LARGE_FLASH true
  1083. #define X_STEP_PIN 25
  1084. #define X_DIR_PIN 23
  1085. #define X_MIN_PIN 22
  1086. #define X_MAX_PIN 24
  1087. #define X_ENABLE_PIN 27
  1088. #define Y_STEP_PIN 31
  1089. #define Y_DIR_PIN 33
  1090. #define Y_MIN_PIN 26
  1091. #define Y_MAX_PIN 28
  1092. #define Y_ENABLE_PIN 29
  1093. #define Z_STEP_PIN 37
  1094. #define Z_DIR_PIN 39
  1095. #define Z_MIN_PIN 30
  1096. #define Z_MAX_PIN 32
  1097. #define Z_ENABLE_PIN 35
  1098. #define HEATER_BED_PIN 4
  1099. #define TEMP_BED_PIN 10
  1100. #define HEATER_0_PIN 2
  1101. #define TEMP_0_PIN 8
  1102. #define HEATER_1_PIN 3
  1103. #define TEMP_1_PIN 9
  1104. #define HEATER_2_PIN -1
  1105. #define TEMP_2_PIN -1
  1106. #define E0_STEP_PIN 43
  1107. #define E0_DIR_PIN 45
  1108. #define E0_ENABLE_PIN 41
  1109. #define E1_STEP_PIN 49
  1110. #define E1_DIR_PIN 47
  1111. #define E1_ENABLE_PIN 48
  1112. #define SDPOWER -1
  1113. #define SDSS 53
  1114. #define LED_PIN 13
  1115. #define FAN_PIN 7
  1116. #define PS_ON_PIN 12
  1117. #define KILL_PIN -1
  1118. #define SUICIDE_PIN 54 //PIN that has to be turned on right after start, to keep power flowing.
  1119. #ifdef ULTRA_LCD
  1120. #ifdef NEWPANEL
  1121. //arduino pin witch triggers an piezzo beeper
  1122. #define BEEPER 18
  1123. #define LCD_PINS_RS 20
  1124. #define LCD_PINS_ENABLE 17
  1125. #define LCD_PINS_D4 16
  1126. #define LCD_PINS_D5 21
  1127. #define LCD_PINS_D6 5
  1128. #define LCD_PINS_D7 6
  1129. //buttons are directly attached
  1130. #define BTN_EN1 40
  1131. #define BTN_EN2 42
  1132. #define BTN_ENC 19 //the click
  1133. #define SDCARDDETECT 38
  1134. #else //old style panel with shift register
  1135. //arduino pin witch triggers an piezzo beeper
  1136. #define BEEPER 18
  1137. //buttons are attached to a shift register
  1138. #define SHIFT_CLK 38
  1139. #define SHIFT_LD 42
  1140. #define SHIFT_OUT 40
  1141. #define SHIFT_EN 17
  1142. #define LCD_PINS_RS 16
  1143. #define LCD_PINS_ENABLE 5
  1144. #define LCD_PINS_D4 6
  1145. #define LCD_PINS_D5 21
  1146. #define LCD_PINS_D6 20
  1147. #define LCD_PINS_D7 19
  1148. #define SDCARDDETECT -1
  1149. #endif
  1150. #endif //ULTRA_LCD
  1151. #endif
  1152. #if MOTHERBOARD == 71
  1153. #define KNOWN_BOARD
  1154. /*****************************************************************
  1155. * Ultimaker pin assignment (Old electronics)
  1156. ******************************************************************/
  1157. #ifndef __AVR_ATmega1280__
  1158. #ifndef __AVR_ATmega2560__
  1159. #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
  1160. #endif
  1161. #endif
  1162. #define LARGE_FLASH true
  1163. #define X_STEP_PIN 25
  1164. #define X_DIR_PIN 23
  1165. #define X_MIN_PIN 15
  1166. #define X_MAX_PIN 14
  1167. #define X_ENABLE_PIN 27
  1168. #define Y_STEP_PIN 31
  1169. #define Y_DIR_PIN 33
  1170. #define Y_MIN_PIN 17
  1171. #define Y_MAX_PIN 16
  1172. #define Y_ENABLE_PIN 29
  1173. #define Z_STEP_PIN 37
  1174. #define Z_DIR_PIN 39
  1175. #define Z_MIN_PIN 19
  1176. #define Z_MAX_PIN 18
  1177. #define Z_ENABLE_PIN 35
  1178. #define HEATER_BED_PIN -1
  1179. #define TEMP_BED_PIN -1
  1180. #define HEATER_0_PIN 2
  1181. #define TEMP_0_PIN 8
  1182. #define HEATER_1_PIN 1
  1183. #define TEMP_1_PIN 1
  1184. #define HEATER_2_PIN -1
  1185. #define TEMP_2_PIN -1
  1186. #define E0_STEP_PIN 43
  1187. #define E0_DIR_PIN 45
  1188. #define E0_ENABLE_PIN 41
  1189. #define E1_STEP_PIN -1
  1190. #define E1_DIR_PIN -1
  1191. #define E1_ENABLE_PIN -1
  1192. #define SDPOWER -1
  1193. #define SDSS -1
  1194. #define LED_PIN -1
  1195. #define FAN_PIN -1
  1196. #define PS_ON_PIN -1
  1197. #define KILL_PIN -1
  1198. #define SUICIDE_PIN -1 //PIN that has to be turned on right after start, to keep power flowing.
  1199. #define LCD_PINS_RS 24
  1200. #define LCD_PINS_ENABLE 22
  1201. #define LCD_PINS_D4 36
  1202. #define LCD_PINS_D5 34
  1203. #define LCD_PINS_D6 32
  1204. #define LCD_PINS_D7 30
  1205. #endif
  1206. #if MOTHERBOARD == 72
  1207. #define KNOWN_BOARD
  1208. /*****************************************************************
  1209. * Ultiboard v2.0 pin assignment
  1210. ******************************************************************/
  1211. #ifndef __AVR_ATmega2560__
  1212. #error Oops! Make sure you have 'Arduino Mega 2560' selected from the 'Tools -> Boards' menu.
  1213. #endif
  1214. #define X_STEP_PIN 25
  1215. #define X_DIR_PIN 23
  1216. #define X_STOP_PIN 22
  1217. #define X_ENABLE_PIN 27
  1218. #define Y_STEP_PIN 32
  1219. #define Y_DIR_PIN 33
  1220. #define Y_STOP_PIN 26
  1221. #define Y_ENABLE_PIN 31
  1222. #define Z_STEP_PIN 35
  1223. #define Z_DIR_PIN 36
  1224. #define Z_STOP_PIN 29
  1225. #define Z_ENABLE_PIN 34
  1226. #define HEATER_BED_PIN 4
  1227. #define TEMP_BED_PIN 10
  1228. #define HEATER_0_PIN 2
  1229. #define TEMP_0_PIN 8
  1230. #define HEATER_1_PIN 3
  1231. #define TEMP_1_PIN 9
  1232. #define HEATER_2_PIN -1
  1233. #define TEMP_2_PIN -1
  1234. #define E0_STEP_PIN 42
  1235. #define E0_DIR_PIN 43
  1236. #define E0_ENABLE_PIN 37
  1237. #define E1_STEP_PIN 49
  1238. #define E1_DIR_PIN 47
  1239. #define E1_ENABLE_PIN 48
  1240. #define SDPOWER -1
  1241. #define SDSS 53
  1242. #define LED_PIN 8
  1243. #define FAN_PIN 7
  1244. #define PS_ON_PIN -1
  1245. #define KILL_PIN -1
  1246. #define SUICIDE_PIN -1 //PIN that has to be turned on right after start, to keep power flowing.
  1247. #define SAFETY_TRIGGERED_PIN 28 //PIN to detect the safety circuit has triggered
  1248. #define MAIN_VOLTAGE_MEASURE_PIN 14 //Analogue PIN to measure the main voltage, with a 100k - 4k7 resitor divider.
  1249. #define MOTOR_CURRENT_PWM_XY_PIN 44
  1250. #define MOTOR_CURRENT_PWM_Z_PIN 45
  1251. #define MOTOR_CURRENT_PWM_E_PIN 46
  1252. //Motor current PWM conversion, PWM value = MotorCurrentSetting * 255 / range
  1253. #define MOTOR_CURRENT_PWM_RANGE 2000
  1254. #define DEFAULT_PWM_MOTOR_CURRENT {1300, 1300, 1250}
  1255. //arduino pin witch triggers an piezzo beeper
  1256. #define BEEPER 18
  1257. #define LCD_PINS_RS 20
  1258. #define LCD_PINS_ENABLE 15
  1259. #define LCD_PINS_D4 14
  1260. #define LCD_PINS_D5 21
  1261. #define LCD_PINS_D6 5
  1262. #define LCD_PINS_D7 6
  1263. //buttons are directly attached
  1264. #define BTN_EN1 40
  1265. #define BTN_EN2 41
  1266. #define BTN_ENC 19 //the click
  1267. #define BLEN_C 2
  1268. #define BLEN_B 1
  1269. #define BLEN_A 0
  1270. #define SDCARDDETECT 39
  1271. #endif//MOTHERBOARD == 72
  1272. /****************************************************************************************
  1273. * RUMBA pin assignment
  1274. *
  1275. ****************************************************************************************/
  1276. #if MOTHERBOARD == 80
  1277. #define KNOWN_BOARD 1
  1278. #ifndef __AVR_ATmega2560__
  1279. #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
  1280. #endif
  1281. #define X_STEP_PIN 17
  1282. #define X_DIR_PIN 16
  1283. #define X_ENABLE_PIN 48
  1284. #define X_MIN_PIN 37
  1285. #define X_MAX_PIN 36
  1286. #define Y_STEP_PIN 54
  1287. #define Y_DIR_PIN 47
  1288. #define Y_ENABLE_PIN 55
  1289. #define Y_MIN_PIN 35
  1290. #define Y_MAX_PIN 34
  1291. #define Z_STEP_PIN 57
  1292. #define Z_DIR_PIN 56
  1293. #define Z_ENABLE_PIN 62
  1294. #define Z_MIN_PIN 33
  1295. #define Z_MAX_PIN 32
  1296. #define E0_STEP_PIN 23
  1297. #define E0_DIR_PIN 22
  1298. #define E0_ENABLE_PIN 24
  1299. #define E1_STEP_PIN 26
  1300. #define E1_DIR_PIN 25
  1301. #define E1_ENABLE_PIN 27
  1302. #define E2_STEP_PIN 29
  1303. #define E2_DIR_PIN 28
  1304. #define E2_ENABLE_PIN 39
  1305. #define LED_PIN 13
  1306. #define FAN_PIN 7
  1307. //additional FAN1 PIN (e.g. useful for electronics fan or light on/off) on PIN 8
  1308. #define PS_ON_PIN 45
  1309. #define KILL_PIN 46
  1310. #if (TEMP_SENSOR_0==0)
  1311. #define TEMP_0_PIN -1
  1312. #define HEATER_0_PIN -1
  1313. #else
  1314. #define HEATER_0_PIN 2 // EXTRUDER 1
  1315. #if (TEMP_SENSOR_0==-1)
  1316. #define TEMP_0_PIN 6 // ANALOG NUMBERING - connector *K1* on RUMBA thermocouple ADD ON is used
  1317. #else
  1318. #define TEMP_0_PIN 15 // ANALOG NUMBERING - default connector for thermistor *T0* on rumba board is used
  1319. #endif
  1320. #endif
  1321. #if (TEMP_SENSOR_1==0)
  1322. #define TEMP_1_PIN -1
  1323. #define HEATER_1_PIN -1
  1324. #else
  1325. #define HEATER_1_PIN 3 // EXTRUDER 2
  1326. #if (TEMP_SENSOR_1==-1)
  1327. #define TEMP_1_PIN 5 // ANALOG NUMBERING - connector *K2* on RUMBA thermocouple ADD ON is used
  1328. #else
  1329. #define TEMP_1_PIN 14 // ANALOG NUMBERING - default connector for thermistor *T1* on rumba board is used
  1330. #endif
  1331. #endif
  1332. #if (TEMP_SENSOR_2==0)
  1333. #define TEMP_2_PIN -1
  1334. #define HEATER_2_PIN -1
  1335. #else
  1336. #define HEATER_2_PIN 6 // EXTRUDER 3
  1337. #if (TEMP_SENSOR_2==-1)
  1338. #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
  1339. #else
  1340. #define TEMP_2_PIN 13 // ANALOG NUMBERING - default connector for thermistor *T2* on rumba board is used
  1341. #endif
  1342. #endif
  1343. //optional for extruder 4 or chamber: #define TEMP_X_PIN 12 // ANALOG NUMBERING - default connector for thermistor *T3* on rumba board is used
  1344. //optional FAN1 can be used as 4th heater output: #define HEATER_3_PIN 8 // EXTRUDER 4
  1345. #if (TEMP_SENSOR_BED==0)
  1346. #define TEMP_BED_PIN -1
  1347. #define HEATER_BED_PIN -1
  1348. #else
  1349. #define HEATER_BED_PIN 9 // BED
  1350. #if (TEMP_SENSOR_BED==-1)
  1351. #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
  1352. #else
  1353. #define TEMP_BED_PIN 11 // ANALOG NUMBERING - default connector for thermistor *THB* on rumba board is used
  1354. #endif
  1355. #endif
  1356. #define SDPOWER -1
  1357. #define SDSS 53
  1358. #define SDCARDDETECT 49
  1359. #define BEEPER 44
  1360. #define LCD_PINS_RS 19
  1361. #define LCD_PINS_ENABLE 42
  1362. #define LCD_PINS_D4 18
  1363. #define LCD_PINS_D5 38
  1364. #define LCD_PINS_D6 41
  1365. #define LCD_PINS_D7 40
  1366. #define BTN_EN1 11
  1367. #define BTN_EN2 12
  1368. #define BTN_ENC 43
  1369. #endif //MOTHERBOARD==80
  1370. /****************************************************************************************
  1371. * Teensylu 0.7 / Printrboard pin assignments (AT90USB1286)
  1372. * Requires the Teensyduino software with Teensy++ 2.0 selected in Arduino IDE!
  1373. http://www.pjrc.com/teensy/teensyduino.html
  1374. * See http://reprap.org/wiki/Printrboard for more info
  1375. ****************************************************************************************/
  1376. #if MOTHERBOARD == 8 || MOTHERBOARD == 81
  1377. #define KNOWN_BOARD 1
  1378. #define AT90USB 1286 // Disable MarlinSerial etc.
  1379. #ifndef __AVR_AT90USB1286__
  1380. #error Oops! Make sure you have 'Teensy++ 2.0' selected from the 'Tools -> Boards' menu.
  1381. #endif
  1382. #ifdef AT90USBxx_TEENSYPP_ASSIGNMENTS // use Teensyduino Teensy++2.0 pin assignments instead of Marlin traditional.
  1383. #error These Teensylu/Printrboard assignments depend on traditional Marlin assignments, not AT90USBxx_TEENSYPP_ASSIGNMENTS in fastio.h
  1384. #endif
  1385. #define LARGE_FLASH true
  1386. #define X_STEP_PIN 0
  1387. #define X_DIR_PIN 1
  1388. #define X_ENABLE_PIN 39
  1389. #define Y_STEP_PIN 2
  1390. #define Y_DIR_PIN 3
  1391. #define Y_ENABLE_PIN 38
  1392. #define Z_STEP_PIN 4
  1393. #define Z_DIR_PIN 5
  1394. #define Z_ENABLE_PIN 23
  1395. #define E0_STEP_PIN 6
  1396. #define E0_DIR_PIN 7
  1397. #define E0_ENABLE_PIN 19
  1398. #define HEATER_0_PIN 21 // Extruder
  1399. #define HEATER_1_PIN -1
  1400. #define HEATER_2_PIN -1
  1401. #define HEATER_BED_PIN 20 // Bed
  1402. #define FAN_PIN 22 // Fan
  1403. // You may need to change FAN_PIN to 16 because Marlin isn't using fastio.h
  1404. // for the fan and Teensyduino uses a different pin mapping.
  1405. #if MOTHERBOARD == 8 // Teensylu
  1406. #define X_STOP_PIN 13
  1407. #define Y_STOP_PIN 14
  1408. #define Z_STOP_PIN 15
  1409. #define TEMP_0_PIN 7 // Extruder / Analog pin numbering
  1410. #define TEMP_BED_PIN 6 // Bed / Analog pin numbering
  1411. #else // Printrboard
  1412. #define X_STOP_PIN 35
  1413. #define Y_STOP_PIN 8
  1414. #define Z_STOP_PIN 36
  1415. #define TEMP_0_PIN 1 // Extruder / Analog pin numbering
  1416. #define TEMP_BED_PIN 0 // Bed / Analog pin numbering
  1417. #ifdef FILAMENT_SENSOR
  1418. #define FILWIDTH_PIN 2
  1419. #endif //FILAMENT_SENSOR
  1420. #endif
  1421. #define TEMP_1_PIN -1
  1422. #define TEMP_2_PIN -1
  1423. #define SDPOWER -1
  1424. #define SDSS 8
  1425. #define LED_PIN -1
  1426. #define PS_ON_PIN -1
  1427. #define KILL_PIN -1
  1428. #define ALARM_PIN -1
  1429. #ifndef SDSUPPORT
  1430. // these pins are defined in the SD library if building with SD support
  1431. #define SCK_PIN 9
  1432. #define MISO_PIN 11
  1433. #define MOSI_PIN 10
  1434. #endif
  1435. #endif // MOTHERBOARD == 8 (Teensylu) or 81 (Printrboard)
  1436. /****************************************************************************************
  1437. * Brainwave 1.0 pin assignments (AT90USB646)
  1438. * Requires hardware bundle for Arduino:
  1439. https://github.com/unrepentantgeek/brainwave-arduino
  1440. ****************************************************************************************/
  1441. #if MOTHERBOARD == 82
  1442. #define KNOWN_BOARD 1
  1443. #define AT90USB 646 // Disable MarlinSerial etc.
  1444. #ifndef __AVR_AT90USB646__
  1445. #error Oops! Make sure you have 'Brainwave' selected from the 'Tools -> Boards' menu.
  1446. #endif
  1447. #define X_STEP_PIN 27
  1448. #define X_DIR_PIN 29
  1449. #define X_ENABLE_PIN 28
  1450. #define X_STOP_PIN 7
  1451. #define X_ATT_PIN 26
  1452. #define Y_STEP_PIN 31
  1453. #define Y_DIR_PIN 33
  1454. #define Y_ENABLE_PIN 32
  1455. #define Y_STOP_PIN 6
  1456. #define Y_ATT_PIN 30
  1457. #define Z_STEP_PIN 17
  1458. #define Z_DIR_PIN 19
  1459. #define Z_ENABLE_PIN 18
  1460. #define Z_STOP_PIN 5
  1461. #define Z_ATT_PIN 16
  1462. #define E0_STEP_PIN 21
  1463. #define E0_DIR_PIN 23
  1464. #define E0_ENABLE_PIN 22
  1465. #define E0_ATT_PIN 20
  1466. #define HEATER_0_PIN 4 // Extruder
  1467. #define HEATER_1_PIN -1
  1468. #define HEATER_2_PIN -1
  1469. #define HEATER_BED_PIN 38 // Bed
  1470. #define FAN_PIN 3 // Fan
  1471. #define TEMP_0_PIN 7 // Extruder / Analog pin numbering
  1472. #define TEMP_1_PIN -1
  1473. #define TEMP_2_PIN -1
  1474. #define TEMP_BED_PIN 6 // Bed / Analog pin numbering
  1475. #define SDPOWER -1
  1476. #define SDSS -1
  1477. #define LED_PIN 39
  1478. #define PS_ON_PIN -1
  1479. #define KILL_PIN -1
  1480. #define ALARM_PIN -1
  1481. #ifndef SDSUPPORT
  1482. // these pins are defined in the SD library if building with SD support
  1483. #define SCK_PIN 9
  1484. #define MISO_PIN 11
  1485. #define MOSI_PIN 10
  1486. #endif
  1487. #endif // MOTHERBOARD == 82 (Brainwave)
  1488. //
  1489. // SAV Mk-I
  1490. // -----------------------------------------------------------------------------------
  1491. /****************************************************************************************
  1492. * SAV MkI pin assignments (AT90USB1286)
  1493. * Requires the Teensyduino software with Teensy++ 2.0 selected in Arduino IDE!
  1494. http://www.pjrc.com/teensy/teensyduino.html
  1495. RepRap Clone Wars project board.
  1496. ****************************************************************************************/
  1497. #if MOTHERBOARD == 83 // SAV Mk-I
  1498. #define KNOWN_BOARD 1
  1499. #define AT90USB 1286 // Disable MarlinSerial etc.
  1500. #ifndef __AVR_AT90USB1286__
  1501. #error Oops! Make sure you have 'Teensy++ 2.0' selected from the 'Tools -> Boards' menu.
  1502. #endif
  1503. #define LARGE_FLASH true
  1504. #define X_STEP_PIN 0
  1505. #define X_DIR_PIN 1
  1506. #define X_ENABLE_PIN 39
  1507. #define Y_STEP_PIN 2
  1508. #define Y_DIR_PIN 3
  1509. #define Y_ENABLE_PIN 38
  1510. #define Z_STEP_PIN 4
  1511. #define Z_DIR_PIN 5
  1512. #define Z_ENABLE_PIN 23
  1513. #define E0_STEP_PIN 6
  1514. #define E0_DIR_PIN 7
  1515. #define E0_ENABLE_PIN 19
  1516. #define HEATER_0_PIN 21 // Extruder
  1517. #define HEATER_1_PIN -1
  1518. #define HEATER_2_PIN -1
  1519. #define HEATER_BED_PIN 20 // Bed
  1520. #define FAN_PIN 16 // Fan -- from Teensyduino environment.
  1521. // For the fan and Teensyduino uses a different pin mapping.
  1522. #define X_STOP_PIN 13
  1523. #define Y_STOP_PIN 14
  1524. #define Z_STOP_PIN 15
  1525. #define TEMP_0_PIN 7 // Extruder / Analog pin numbering
  1526. #define TEMP_BED_PIN 6 // Bed / Analog pin numbering
  1527. #define TEMP_1_PIN -1
  1528. #define TEMP_2_PIN -1
  1529. #define SDPOWER -1
  1530. #define SDSS 20 // PB0 - 8 in marlin env.
  1531. #define LED_PIN -1
  1532. #define PS_ON_PIN -1
  1533. #define KILL_PIN -1
  1534. #define ALARM_PIN -1
  1535. #define SDCARDDETECT -1
  1536. #ifndef SDSUPPORT
  1537. // these pins are defined in the SD library if building with SD support
  1538. #define SCK_PIN 9
  1539. #define MISO_PIN 11
  1540. #define MOSI_PIN 10
  1541. #endif
  1542. #define BEEPER -1
  1543. #define LCD_PINS_RS -1
  1544. #define LCD_PINS_ENABLE -1
  1545. #define LCD_PINS_D4 -1
  1546. #define LCD_PINS_D5 -1
  1547. #define LCD_PINS_D6 -1
  1548. #define LCD_PINS_D7 -1
  1549. #define BTN_EN1 -1
  1550. #define BTN_EN2 -1
  1551. #define BTN_ENC -1
  1552. // For LCD SHIFT register LCD
  1553. #define SR_DATA_PIN 0
  1554. #define SR_CLK_PIN 1
  1555. #endif // MOTHERBOARD == 83
  1556. /****************************************************************************************
  1557. * Teensy++ 2.0 Breadboard pin assignments (AT90USB1286)
  1558. * Requires the Teensyduino software with Teensy++ 2.0 selected in Arduino IDE!
  1559. http://www.pjrc.com/teensy/teensyduino.html
  1560. * See http://reprap.org/wiki/Printrboard for more info
  1561. * CLI build: DEFINES=AT90USBxx_TEENSYPP_ASSIGNMENTS HARDWARE_MOTHERBOARD=84 make
  1562. *
  1563. ****************************************************************************************/
  1564. #if MOTHERBOARD == 84
  1565. #define KNOWN_BOARD 1
  1566. #define AT90USB 1286 // Disable MarlinSerial etc.
  1567. #ifndef __AVR_AT90USB1286__
  1568. #error Oops! Make sure you have 'Teensy++ 2.0' selected from the 'Tools -> Boards' menu.
  1569. #endif
  1570. #define LARGE_FLASH true
  1571. /*
  1572. DaveX plan for Teensylu/printrboard-type pinouts (ref teensylu & sprinter) for a TeensyBreadboard:
  1573. USB
  1574. GND GND |-----#####-----| +5V ATX +5SB
  1575. ATX PS_ON PWM 27 |b7 ##### b6| 26 PWM* Stepper Enable
  1576. PWM 0 |d0 b5| 25 PWM*
  1577. PWM 1 |d1 b4| 24 PWM
  1578. X_MIN 2 |d2 b3| 23 MISO_PIN
  1579. Y_MIN 3 |d3 b2| 22 MOSI_PIN
  1580. Z_MIN 4 |d4 * * b1| 21 SCK_PIN
  1581. 5 |d5 e e b0| 20 SDSS
  1582. LED 6 |d6 5 4 e7| 19
  1583. 7 |d7 e6| 18
  1584. LCD RS 8 |e0 | GND
  1585. LCD EN 9 |e1 a4 a0 R| AREF
  1586. LCD D4 10 |c0 a5 a1 f0| 38 A0 ENC_1
  1587. LCD D5 11 |c1 a6 a2 f1| 39 A1 ENC_2
  1588. LCD D6 12 |c2 a7 a3 f2| 40 A2 ENC_CLK
  1589. LCD D6 13 |c3 f3| 41 A3
  1590. Bed Heat PWM 14 |c4 V G R f4| 42 A4
  1591. Extruder Heat PWM 15 |c5 c n S f5| 43 A5
  1592. Fan PWM 16 |c6 c d T f6| 44 A6 Bed TC
  1593. 17 |c7 * * * f7| 45 A7 Extruder TC * 4.7k * +5
  1594. -----------------
  1595. Interior E4: 36, INT4
  1596. Interior E5: 37, INT5
  1597. Interior PA0-7: 28-35 -- Printrboard and Teensylu use these pins for step & direction:
  1598. T++ PA Signal Marlin
  1599. Z STEP 32 a4 a0 28 X STEP
  1600. Z DIR 33 a5 a1 29 X DIR
  1601. E STEP 34 a6 a2 30 Y STEP
  1602. E DIR 35 a7 a3 31 Y DIR
  1603. */
  1604. #ifndef AT90USBxx_TEENSYPP_ASSIGNMENTS // use Teensyduino Teensy++2.0 pin assignments instead of Marlin alphabetical.
  1605. #error Uncomment #define AT90USBxx_TEENSYPP_ASSIGNMENTS in fastio.h for this config
  1606. // or build from command line with: DEFINES=AT90USBxx_TEENSYPP_ASSIGNMENTS HARDWARE_MOTHERBOARD=84 make
  1607. #endif
  1608. #define X_STEP_PIN 28 // 0 Marlin
  1609. #define X_DIR_PIN 29 // 1 Marlin
  1610. #define X_ENABLE_PIN 26
  1611. #define Y_STEP_PIN 30 // 2 Marlin
  1612. #define Y_DIR_PIN 31 // 3
  1613. #define Y_ENABLE_PIN 26 // Shared w/x
  1614. #define Z_STEP_PIN 32 // 4
  1615. #define Z_DIR_PIN 33 // 5
  1616. #define Z_ENABLE_PIN 26 // Shared w/x
  1617. #define E0_STEP_PIN 34 // 6
  1618. #define E0_DIR_PIN 35 // 7
  1619. #define E0_ENABLE_PIN 26 // Shared w/x
  1620. #define HEATER_0_PIN 15 // 21 // Extruder
  1621. #define HEATER_1_PIN -1
  1622. #define HEATER_2_PIN -1
  1623. #define HEATER_BED_PIN 14 // 20 // Bed
  1624. #define FAN_PIN 16 // 22 // Fan
  1625. #define X_STOP_PIN 2
  1626. #define Y_STOP_PIN 3
  1627. #define Z_STOP_PIN 4
  1628. #define TEMP_0_PIN 7 // Extruder / Analog pin numbering
  1629. #define TEMP_BED_PIN 6 // Bed / Analog pin numbering
  1630. #define TEMP_1_PIN -1
  1631. #define TEMP_2_PIN -1
  1632. #define SDPOWER -1
  1633. #define SDCARDDETECT -1
  1634. #define SDSS 20 // 8
  1635. #define LED_PIN 6
  1636. #define PS_ON_PIN 27
  1637. #define KILL_PIN -1
  1638. #define ALARM_PIN -1
  1639. #ifndef SDSUPPORT
  1640. // these pins are defined in the SD library if building with SD support
  1641. #define SCK_PIN 21 // 9
  1642. #define MISO_PIN 23 // 11
  1643. #define MOSI_PIN 22 // 10
  1644. #endif
  1645. #ifdef ULTIPANEL
  1646. #define LCD_PINS_RS 8
  1647. #define LCD_PINS_ENABLE 9
  1648. #define LCD_PINS_D4 10
  1649. #define LCD_PINS_D5 11
  1650. #define LCD_PINS_D6 12
  1651. #define LCD_PINS_D7 13
  1652. #define BTN_EN1 38
  1653. #define BTN_EN2 39
  1654. #define BTN_ENC 40
  1655. #endif
  1656. #endif // MOTHERBOARD == 84 (Teensy++2.0 Breadboard)
  1657. /****************************************************************************************
  1658. * Gen3+ pin assignment
  1659. *
  1660. ****************************************************************************************/
  1661. #if MOTHERBOARD == 9
  1662. #define MOTHERBOARD 6 /*TODO: Figure out, Why is this done?*/
  1663. #define KNOWN_BOARD 1
  1664. #ifndef __AVR_ATmega644P__
  1665. #ifndef __AVR_ATmega1284P__
  1666. #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
  1667. #endif
  1668. #endif
  1669. #define X_STEP_PIN 15
  1670. #define X_DIR_PIN 18
  1671. #define X_STOP_PIN 20
  1672. #define Y_STEP_PIN 23
  1673. #define Y_DIR_PIN 22
  1674. #define Y_STOP_PIN 25
  1675. #define Z_STEP_PIN 27
  1676. #define Z_DIR_PIN 28
  1677. #define Z_STOP_PIN 30
  1678. #define E0_STEP_PIN 17
  1679. #define E0_DIR_PIN 21
  1680. #define LED_PIN -1
  1681. #define FAN_PIN -1
  1682. #define PS_ON_PIN 14
  1683. #define KILL_PIN -1
  1684. #define HEATER_0_PIN 12 // (extruder)
  1685. #define HEATER_BED_PIN 16 // (bed)
  1686. #define X_ENABLE_PIN 19
  1687. #define Y_ENABLE_PIN 24
  1688. #define Z_ENABLE_PIN 29
  1689. #define E0_ENABLE_PIN 13
  1690. #define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 33 extruder)
  1691. #define TEMP_1_PIN -1
  1692. #define TEMP_2_PIN -1
  1693. #define TEMP_BED_PIN 5 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed)
  1694. #define SDPOWER -1
  1695. #define SDSS 4
  1696. #define HEATER_2_PIN -1
  1697. #endif
  1698. /****************************************************************************************
  1699. * Gen3 Monolithic Electronics
  1700. *
  1701. ****************************************************************************************/
  1702. #if MOTHERBOARD == 22
  1703. #define KNOWN_BOARD 1
  1704. #ifndef __AVR_ATmega644P__
  1705. #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
  1706. #endif
  1707. #define DEBUG_PIN 0
  1708. // x axis
  1709. #define X_STEP_PIN 15
  1710. #define X_DIR_PIN 18
  1711. #define X_MIN_PIN 20
  1712. //Alex Checar #define X_STOP_PIN 20
  1713. #define X_ENABLE_PIN 24 //actually uses Y_enable_pin
  1714. #define X_MAX_PIN -1
  1715. // y axes
  1716. #define Y_STEP_PIN 23
  1717. #define Y_DIR_PIN 22
  1718. #define Y_MIN_PIN 25
  1719. //Alex Checar #define Y_STOP_PIN 25
  1720. #define Y_ENABLE_PIN 24 //shared with X_enable_pin
  1721. #define Y_MAX_PIN -1
  1722. // z axes
  1723. #define Z_STEP_PIN 27
  1724. #define Z_DIR_PIN 28
  1725. #define Z_MIN_PIN 30
  1726. //Alex Checar #define Z_STOP_PIN 30
  1727. #define Z_ENABLE_PIN 29
  1728. #define Z_MAX_PIN -1
  1729. //extruder pins
  1730. #define E0_STEP_PIN 12
  1731. #define E0_DIR_PIN 17
  1732. #define E0_ENABLE_PIN 3
  1733. #define HEATER_0_PIN 16
  1734. #define TEMP_0_PIN 0
  1735. #define FAN_PIN -1
  1736. //bed pins
  1737. #define HEATER_BED_PIN -1
  1738. #define TEMP_BED_PIN -1
  1739. #define SDSS -1
  1740. #define SDPOWER -1
  1741. #define LED_PIN -1
  1742. //pin for controlling the PSU.
  1743. #define PS_ON_PIN 14 //Alex, Do this work on the card?
  1744. //Alex extras from Gen3+
  1745. #define KILL_PIN -1
  1746. #define TEMP_1_PIN -1
  1747. #define TEMP_2_PIN -1
  1748. #define HEATER_2_PIN -1
  1749. #endif
  1750. /****************************************************************************************
  1751. * Open Motion controller with enable based extruders
  1752. *
  1753. * ATMega644
  1754. *
  1755. * +---\/---+
  1756. * (D 0) PB0 1| |40 PA0 (AI 0 / D31)
  1757. * (D 1) PB1 2| |39 PA1 (AI 1 / D30)
  1758. * INT2 (D 2) PB2 3| |38 PA2 (AI 2 / D29)
  1759. * PWM (D 3) PB3 4| |37 PA3 (AI 3 / D28)
  1760. * PWM (D 4) PB4 5| |36 PA4 (AI 4 / D27)
  1761. * MOSI (D 5) PB5 6| |35 PA5 (AI 5 / D26)
  1762. * MISO (D 6) PB6 7| |34 PA6 (AI 6 / D25)
  1763. * SCK (D 7) PB7 8| |33 PA7 (AI 7 / D24)
  1764. * RST 9| |32 AREF
  1765. * VCC 10| |31 GND
  1766. * GND 11| |30 AVCC
  1767. * XTAL2 12| |29 PC7 (D 23)
  1768. * XTAL1 13| |28 PC6 (D 22)
  1769. * RX0 (D 8) PD0 14| |27 PC5 (D 21) TDI
  1770. * TX0 (D 9) PD1 15| |26 PC4 (D 20) TDO
  1771. * INT0 RX1 (D 10) PD2 16| |25 PC3 (D 19) TMS
  1772. * INT1 TX1 (D 11) PD3 17| |24 PC2 (D 18) TCK
  1773. * PWM (D 12) PD4 18| |23 PC1 (D 17) SDA
  1774. * PWM (D 13) PD5 19| |22 PC0 (D 16) SCL
  1775. * PWM (D 14) PD6 20| |21 PD7 (D 15) PWM
  1776. * +--------+
  1777. *
  1778. ****************************************************************************************/
  1779. #if MOTHERBOARD == 90 //Alpha OMCA board
  1780. #define KNOWN_BOARD 1
  1781. #ifndef __AVR_ATmega644__
  1782. #error Oops! Make sure you have 'SanguinoA' selected from the 'Tools -> Boards' menu.
  1783. #endif
  1784. #define X_STEP_PIN 21
  1785. #define X_DIR_PIN 20
  1786. #define X_ENABLE_PIN 24
  1787. #define X_STOP_PIN 0
  1788. #define Y_STEP_PIN 23
  1789. #define Y_DIR_PIN 22
  1790. #define Y_ENABLE_PIN 24
  1791. #define Y_STOP_PIN 1
  1792. #define Z_STEP_PIN 26
  1793. #define Z_DIR_PIN 25
  1794. #define Z_ENABLE_PIN 24
  1795. #define Z_STOP_PIN 2
  1796. #define E0_STEP_PIN 28
  1797. #define E0_DIR_PIN 27
  1798. #define E0_ENABLE_PIN 24
  1799. #define E1_STEP_PIN -1 // 19
  1800. #define E1_DIR_PIN -1 // 18
  1801. #define E1_ENABLE_PIN 24
  1802. #define E2_STEP_PIN -1 // 17
  1803. #define E2_DIR_PIN -1 // 16
  1804. #define E2_ENABLE_PIN 24
  1805. #define SDPOWER -1
  1806. #define SDSS 11
  1807. #define SDCARDDETECT -1 // 10 optional also used as mode pin
  1808. #define LED_PIN -1
  1809. #define FAN_PIN 3
  1810. #define PS_ON_PIN -1
  1811. #define KILL_PIN -1
  1812. #define HEATER_0_PIN 4
  1813. #define HEATER_1_PIN -1 // 12
  1814. #define HEATER_2_PIN -1 // 13
  1815. #define TEMP_0_PIN 0 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
  1816. #define TEMP_1_PIN -1 // 1
  1817. #define TEMP_2_PIN -1 // 2
  1818. #define HEATER_BED_PIN -1 // 14/15
  1819. #define TEMP_BED_PIN -1 // 1,2 or I2C
  1820. /* 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) */
  1821. #endif
  1822. #if MOTHERBOARD == 91 // Final OMCA board -- REF http://sanguino.cc/hardware
  1823. #define KNOWN_BOARD 1
  1824. #if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__)
  1825. #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. (Final OMCA board)
  1826. #endif
  1827. #define X_STEP_PIN 26
  1828. #define X_DIR_PIN 25
  1829. #define X_ENABLE_PIN 10
  1830. #define X_STOP_PIN 0
  1831. #define Y_STEP_PIN 28
  1832. #define Y_DIR_PIN 27
  1833. #define Y_ENABLE_PIN 10
  1834. #define Y_STOP_PIN 1
  1835. #define Z_STEP_PIN 23
  1836. #define Z_DIR_PIN 22
  1837. #define Z_ENABLE_PIN 10
  1838. #define Z_STOP_PIN 2
  1839. #define E0_STEP_PIN 24
  1840. #define E0_DIR_PIN 21
  1841. #define E0_ENABLE_PIN 10
  1842. /* future proofing */
  1843. #define __FS 20
  1844. #define __FD 19
  1845. #define __GS 18
  1846. #define __GD 13
  1847. #define UNUSED_PWM 14 /* PWM on LEFT connector */
  1848. #define E1_STEP_PIN -1 // 21
  1849. #define E1_DIR_PIN -1 // 20
  1850. #define E1_ENABLE_PIN -1 // 19
  1851. #define E2_STEP_PIN -1 // 21
  1852. #define E2_DIR_PIN -1 // 20
  1853. #define E2_ENABLE_PIN -1 // 18
  1854. #define SDPOWER -1
  1855. #define SDSS 11
  1856. #define SDCARDDETECT -1 // 10 optional also used as mode pin
  1857. #define LED_PIN -1
  1858. #define FAN_PIN 14 /* PWM on MIDDLE connector */
  1859. #define PS_ON_PIN -1
  1860. #define KILL_PIN -1
  1861. #define HEATER_0_PIN 3 /*DONE PWM on RIGHT connector */
  1862. #define HEATER_1_PIN -1
  1863. #define HEATER_2_PIN -1
  1864. #define HEATER_1_PIN -1
  1865. #define HEATER_2_PIN -1
  1866. #define TEMP_0_PIN 0 // ANALOG INPUT NUMBERING
  1867. #define TEMP_1_PIN 1 // ANALOG
  1868. #define TEMP_2_PIN -1 // 2
  1869. #define HEATER_BED_PIN 4
  1870. #define TEMP_BED_PIN 2 // 1,2 or I2C
  1871. #define I2C_SCL 16
  1872. #define I2C_SDA 17
  1873. #endif
  1874. #if MOTHERBOARD == 301
  1875. #define KNOWN_BOARD
  1876. /*****************************************************************
  1877. * Rambo Pin Assignments
  1878. ******************************************************************/
  1879. #ifndef __AVR_ATmega2560__
  1880. #error Oops! Make sure you have 'Arduino Mega 2560' selected from the 'Tools -> Boards' menu.
  1881. #endif
  1882. #define LARGE_FLASH true
  1883. #define X_STEP_PIN 37
  1884. #define X_DIR_PIN 48
  1885. #define X_MIN_PIN 12
  1886. #define X_MAX_PIN 24
  1887. #define X_ENABLE_PIN 29
  1888. #define X_MS1_PIN 40
  1889. #define X_MS2_PIN 41
  1890. #define Y_STEP_PIN 36
  1891. #define Y_DIR_PIN 49
  1892. #define Y_MIN_PIN 11
  1893. #define Y_MAX_PIN 23
  1894. #define Y_ENABLE_PIN 28
  1895. #define Y_MS1_PIN 69
  1896. #define Y_MS2_PIN 39
  1897. #define Z_STEP_PIN 35
  1898. #define Z_DIR_PIN 47
  1899. #define Z_MIN_PIN 10
  1900. #define Z_MAX_PIN 30
  1901. #define Z_ENABLE_PIN 27
  1902. #define Z_MS1_PIN 68
  1903. #define Z_MS2_PIN 67
  1904. #define HEATER_BED_PIN 3
  1905. #define TEMP_BED_PIN 2
  1906. #define HEATER_0_PIN 9
  1907. #define TEMP_0_PIN 0
  1908. #define HEATER_1_PIN 7
  1909. #define TEMP_1_PIN 1
  1910. #ifdef BARICUDA
  1911. #define HEATER_2_PIN 6
  1912. #else
  1913. #define HEATER_2_PIN -1
  1914. #endif
  1915. #define TEMP_2_PIN -1
  1916. #define E0_STEP_PIN 34
  1917. #define E0_DIR_PIN 43
  1918. #define E0_ENABLE_PIN 26
  1919. #define E0_MS1_PIN 65
  1920. #define E0_MS2_PIN 66
  1921. #define E1_STEP_PIN 33
  1922. #define E1_DIR_PIN 42
  1923. #define E1_ENABLE_PIN 25
  1924. #define E1_MS1_PIN 63
  1925. #define E1_MS2_PIN 64
  1926. #define DIGIPOTSS_PIN 38
  1927. #define DIGIPOT_CHANNELS {4,5,3,0,1} // X Y Z E0 E1 digipot channels to stepper driver mapping
  1928. #define SDPOWER -1
  1929. #define SDSS 53
  1930. #define LED_PIN 13
  1931. #define FAN_PIN 8
  1932. #define PS_ON_PIN 4
  1933. #define KILL_PIN -1 //80 with Smart Controller LCD
  1934. #define SUICIDE_PIN -1 //PIN that has to be turned on right after start, to keep power flowing.
  1935. #ifdef ULTRA_LCD
  1936. #define KILL_PIN 80
  1937. #ifdef NEWPANEL
  1938. //arduino pin which triggers an piezzo beeper
  1939. #define BEEPER 79 // Beeper on AUX-4
  1940. #define LCD_PINS_RS 70
  1941. #define LCD_PINS_ENABLE 71
  1942. #define LCD_PINS_D4 72
  1943. #define LCD_PINS_D5 73
  1944. #define LCD_PINS_D6 74
  1945. #define LCD_PINS_D7 75
  1946. //buttons are directly attached using AUX-2
  1947. #define BTN_EN1 76
  1948. #define BTN_EN2 77
  1949. #define BTN_ENC 78 //the click
  1950. #define BLEN_C 2
  1951. #define BLEN_B 1
  1952. #define BLEN_A 0
  1953. #define SDCARDDETECT 81 // Ramps does not use this port
  1954. //encoder rotation values
  1955. #define encrot0 0
  1956. #define encrot1 2
  1957. #define encrot2 3
  1958. #define encrot3 1
  1959. #else //old style panel with shift register
  1960. //arduino pin witch triggers an piezzo beeper
  1961. #define BEEPER 33 No Beeper added
  1962. //buttons are attached to a shift register
  1963. // Not wired this yet
  1964. // #define SHIFT_CLK 38
  1965. // #define SHIFT_LD 42
  1966. // #define SHIFT_OUT 40
  1967. // #define SHIFT_EN 17
  1968. #define LCD_PINS_RS 75
  1969. #define LCD_PINS_ENABLE 17
  1970. #define LCD_PINS_D4 23
  1971. #define LCD_PINS_D5 25
  1972. #define LCD_PINS_D6 27
  1973. #define LCD_PINS_D7 29
  1974. //encoder rotation values
  1975. #define encrot0 0
  1976. #define encrot1 2
  1977. #define encrot2 3
  1978. #define encrot3 1
  1979. //bits in the shift register that carry the buttons for:
  1980. // left up center down right red
  1981. #define BL_LE 7
  1982. #define BL_UP 6
  1983. #define BL_MI 5
  1984. #define BL_DW 4
  1985. #define BL_RI 3
  1986. #define BL_ST 2
  1987. #define BLEN_B 1
  1988. #define BLEN_A 0
  1989. #endif
  1990. #endif //ULTRA_LCD
  1991. #ifdef FILAMENT_SENSOR
  1992. //Filip added pin for Filament sensor analog input
  1993. #define FILWIDTH_PIN 3
  1994. #endif //FILAMENT_SENSOR
  1995. #endif
  1996. /****************************************************************************************
  1997. * MegaTronics
  1998. *
  1999. ****************************************************************************************/
  2000. #if MOTHERBOARD == 70
  2001. #define KNOWN_BOARD 1
  2002. #ifndef __AVR_ATmega2560__
  2003. #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
  2004. #endif
  2005. #define LARGE_FLASH true
  2006. #define X_STEP_PIN 26
  2007. #define X_DIR_PIN 28
  2008. #define X_ENABLE_PIN 24
  2009. #define X_MIN_PIN 41
  2010. #define X_MAX_PIN 37
  2011. #define Y_STEP_PIN 60 // A6
  2012. #define Y_DIR_PIN 61 // A7
  2013. #define Y_ENABLE_PIN 22
  2014. #define Y_MIN_PIN 14
  2015. #define Y_MAX_PIN 15
  2016. #define Z_STEP_PIN 54 // A0
  2017. #define Z_DIR_PIN 55 // A1
  2018. #define Z_ENABLE_PIN 56 // A2
  2019. #define Z_MIN_PIN 18
  2020. #define Z_MAX_PIN 19
  2021. #define E0_STEP_PIN 31
  2022. #define E0_DIR_PIN 32
  2023. #define E0_ENABLE_PIN 38
  2024. #define E1_STEP_PIN 34
  2025. #define E1_DIR_PIN 36
  2026. #define E1_ENABLE_PIN 30
  2027. #define SDPOWER -1
  2028. #define SDSS 53
  2029. #define LED_PIN 13
  2030. #define FAN_PIN 7 // IO pin. Buffer needed
  2031. #define PS_ON_PIN 12
  2032. #define KILL_PIN -1
  2033. #define HEATER_0_PIN 9 // EXTRUDER 1
  2034. #define HEATER_1_PIN 8 // EXTRUDER 2 (FAN On Sprinter)
  2035. #define HEATER_2_PIN -1
  2036. #if TEMP_SENSOR_0 == -1
  2037. #define TEMP_0_PIN 8 // ANALOG NUMBERING
  2038. #else
  2039. #define TEMP_0_PIN 13 // ANALOG NUMBERING
  2040. #endif
  2041. #define TEMP_1_PIN 15 // ANALOG NUMBERING
  2042. #define TEMP_2_PIN -1 // ANALOG NUMBERING
  2043. #define HEATER_BED_PIN 10 // BED
  2044. #define TEMP_BED_PIN 14 // ANALOG NUMBERING
  2045. #define BEEPER 33 // Beeper on AUX-4
  2046. #ifdef ULTRA_LCD
  2047. #ifdef NEWPANEL
  2048. //arduino pin which triggers an piezzo beeper
  2049. #define LCD_PINS_RS 16
  2050. #define LCD_PINS_ENABLE 17
  2051. #define LCD_PINS_D4 23
  2052. #define LCD_PINS_D5 25
  2053. #define LCD_PINS_D6 27
  2054. #define LCD_PINS_D7 29
  2055. //buttons are directly attached using AUX-2
  2056. #define BTN_EN1 59
  2057. #define BTN_EN2 64
  2058. #define BTN_ENC 43 //the click
  2059. #define BLEN_C 2
  2060. #define BLEN_B 1
  2061. #define BLEN_A 0
  2062. #define SDCARDDETECT -1 // Ramps does not use this port
  2063. //encoder rotation values
  2064. #define encrot0 0
  2065. #define encrot1 2
  2066. #define encrot2 3
  2067. #define encrot3 1
  2068. #endif
  2069. #endif //ULTRA_LCD
  2070. #endif
  2071. /****************************************************************************************
  2072. * MegaTronics v2.0
  2073. *
  2074. ****************************************************************************************/
  2075. #if MOTHERBOARD == 701
  2076. #define KNOWN_BOARD 1
  2077. #ifndef __AVR_ATmega2560__
  2078. #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
  2079. #endif
  2080. #define LARGE_FLASH true
  2081. #define X_STEP_PIN 26
  2082. #define X_DIR_PIN 27
  2083. #define X_ENABLE_PIN 25
  2084. #define X_MIN_PIN 37
  2085. #define X_MAX_PIN 40 //2 //Max endstops default to disabled "-1", set to commented value to enable.
  2086. #define Y_STEP_PIN 4 // A6
  2087. #define Y_DIR_PIN 54 // A0
  2088. #define Y_ENABLE_PIN 5
  2089. #define Y_MIN_PIN 41
  2090. #define Y_MAX_PIN 38 //15
  2091. #define Z_STEP_PIN 56 // A2
  2092. #define Z_DIR_PIN 60 // A6
  2093. #define Z_ENABLE_PIN 55 // A1
  2094. #define Z_MIN_PIN 18
  2095. #define Z_MAX_PIN 19
  2096. #define E0_STEP_PIN 35
  2097. #define E0_DIR_PIN 36
  2098. #define E0_ENABLE_PIN 34
  2099. #define E1_STEP_PIN 29
  2100. #define E1_DIR_PIN 39
  2101. #define E1_ENABLE_PIN 28
  2102. #define E2_STEP_PIN 23
  2103. #define E2_DIR_PIN 24
  2104. #define E2_ENABLE_PIN 22
  2105. #define SDPOWER -1
  2106. #define SDSS 53
  2107. #define LED_PIN 13
  2108. #define FAN_PIN 7
  2109. #define FAN2_PIN 6
  2110. #define PS_ON_PIN 12
  2111. #define KILL_PIN -1
  2112. #define HEATER_0_PIN 9 // EXTRUDER 1
  2113. #define HEATER_1_PIN 8 // EXTRUDER 2
  2114. #define HEATER_2_PIN -1
  2115. #if TEMP_SENSOR_0 == -1
  2116. #define TEMP_0_PIN 4 // ANALOG NUMBERING
  2117. #else
  2118. #define TEMP_0_PIN 13 // ANALOG NUMBERING
  2119. #endif
  2120. #if TEMP_SENSOR_1 == -1
  2121. #define TEMP_1_PIN 8 // ANALOG NUMBERING
  2122. #else
  2123. #define TEMP_1_PIN 15 // ANALOG NUMBERING
  2124. #endif
  2125. #define TEMP_2_PIN -1 // ANALOG NUMBERING
  2126. #define HEATER_BED_PIN 10 // BED
  2127. #if TEMP_SENSOR_BED == -1
  2128. #define TEMP_BED_PIN 8 // ANALOG NUMBERING
  2129. #else
  2130. #define TEMP_BED_PIN 14 // ANALOG NUMBERING
  2131. #endif
  2132. #define BEEPER 64
  2133. #define LCD_PINS_RS 14
  2134. #define LCD_PINS_ENABLE 15
  2135. #define LCD_PINS_D4 30
  2136. #define LCD_PINS_D5 31
  2137. #define LCD_PINS_D6 32
  2138. #define LCD_PINS_D7 33
  2139. //buttons are directly attached using keypad
  2140. #define BTN_EN1 61
  2141. #define BTN_EN2 59
  2142. #define BTN_ENC 43 //the click
  2143. #define BLEN_C 2
  2144. #define BLEN_B 1
  2145. #define BLEN_A 0
  2146. #define SDCARDDETECT -1 // Megatronics does not use this port
  2147. //encoder rotation values
  2148. #define encrot0 0
  2149. #define encrot1 2
  2150. #define encrot2 3
  2151. #define encrot3 1
  2152. #endif
  2153. /****************************************************************************************
  2154. * Minitronics v1.0
  2155. *
  2156. ****************************************************************************************/
  2157. #if MOTHERBOARD == 702
  2158. #define KNOWN_BOARD 1
  2159. #ifndef __AVR_ATmega1281__
  2160. #error Oops! Make sure you have 'Minitronics ' selected from the 'Tools -> Boards' menu.
  2161. #endif
  2162. #define LARGE_FLASH true
  2163. #define X_STEP_PIN 48
  2164. #define X_DIR_PIN 47
  2165. #define X_ENABLE_PIN 49
  2166. #define X_MIN_PIN 5
  2167. #define X_MAX_PIN -1 //2 //Max endstops default to disabled "-1", set to commented value to enable.
  2168. #define Y_STEP_PIN 39 // A6
  2169. #define Y_DIR_PIN 40 // A0
  2170. #define Y_ENABLE_PIN 38
  2171. #define Y_MIN_PIN 2
  2172. #define Y_MAX_PIN -1 //15
  2173. #define Z_STEP_PIN 42 // A2
  2174. #define Z_DIR_PIN 43 // A6
  2175. #define Z_ENABLE_PIN 41 // A1
  2176. #define Z_MIN_PIN 6
  2177. #define Z_MAX_PIN -1
  2178. #define E0_STEP_PIN 45
  2179. #define E0_DIR_PIN 44
  2180. #define E0_ENABLE_PIN 27
  2181. #define E1_STEP_PIN 36
  2182. #define E1_DIR_PIN 35
  2183. #define E1_ENABLE_PIN 37
  2184. #define E2_STEP_PIN -1
  2185. #define E2_DIR_PIN -1
  2186. #define E2_ENABLE_PIN -1
  2187. #define SDPOWER -1
  2188. #define SDSS 16
  2189. #define LED_PIN 46
  2190. #define FAN_PIN 9
  2191. #define FAN2_PIN -1
  2192. #define PS_ON_PIN -1
  2193. #define KILL_PIN -1
  2194. #define HEATER_0_PIN 7 // EXTRUDER 1
  2195. #define HEATER_1_PIN 8 // EXTRUDER 2
  2196. #define HEATER_2_PIN -1
  2197. #define TEMP_0_PIN 7 // ANALOG NUMBERING
  2198. #define TEMP_1_PIN 6 // ANALOG NUMBERING
  2199. #define TEMP_2_PIN -1 // ANALOG NUMBERING
  2200. #define HEATER_BED_PIN 3 // BED
  2201. #define TEMP_BED_PIN 6 // ANALOG NUMBERING
  2202. #define BEEPER -1
  2203. #define LCD_PINS_RS -1
  2204. #define LCD_PINS_ENABLE -1
  2205. #define LCD_PINS_D4 -1
  2206. #define LCD_PINS_D5 -1
  2207. #define LCD_PINS_D6 -1
  2208. #define LCD_PINS_D7 -1
  2209. //buttons are directly attached using keypad
  2210. #define BTN_EN1 -1
  2211. #define BTN_EN2 -1
  2212. #define BTN_ENC -1 //the click
  2213. #define BLEN_C 2
  2214. #define BLEN_B 1
  2215. #define BLEN_A 0
  2216. #define SDCARDDETECT -1 // Megatronics does not use this port
  2217. //encoder rotation values
  2218. #define encrot0 0
  2219. #define encrot1 2
  2220. #define encrot2 3
  2221. #define encrot3 1
  2222. #endif
  2223. /****************************************************************************************
  2224. * Cheaptronic v1.0
  2225. *
  2226. ****************************************************************************************/
  2227. #if MOTHERBOARD == 2
  2228. #define KNOWN_BOARD 1
  2229. #ifndef __AVR_ATmega2560__
  2230. #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu.
  2231. #endif
  2232. #define LARGE_FLASH true
  2233. //X motor stepper
  2234. #define X_STEP_PIN 14
  2235. #define X_DIR_PIN 15
  2236. #define X_ENABLE_PIN 24
  2237. //X endstop
  2238. #define X_MIN_PIN 3
  2239. #define X_MAX_PIN -1
  2240. //Y motor stepper
  2241. #define Y_STEP_PIN 35
  2242. #define Y_DIR_PIN 36
  2243. #define Y_ENABLE_PIN 31
  2244. //Y endstop
  2245. #define Y_MIN_PIN 2
  2246. #define Y_MAX_PIN -1
  2247. //Z motor stepper
  2248. #define Z_STEP_PIN 40
  2249. #define Z_DIR_PIN 41
  2250. #define Z_ENABLE_PIN 37
  2251. //Z endstop
  2252. #define Z_MIN_PIN 5
  2253. #define Z_MAX_PIN -1
  2254. //Extruder 0 stepper
  2255. #define E0_STEP_PIN 26
  2256. #define E0_DIR_PIN 28
  2257. #define E0_ENABLE_PIN 25
  2258. //Extruder 1 stepper
  2259. #define E1_STEP_PIN 33
  2260. #define E1_DIR_PIN 34
  2261. #define E1_ENABLE_PIN 30
  2262. #define SDPOWER -1
  2263. #define SDSS -1
  2264. #define LED_PIN -1
  2265. //FAN
  2266. #define FAN_PIN -1
  2267. #define PS_ON_PIN -1
  2268. #define KILL_PIN -1
  2269. #define HEATER_0_PIN 19 // EXTRUDER 1
  2270. #define HEATER_1_PIN 23 // EXTRUDER 2
  2271. //HeatedBad
  2272. #define HEATER_BED_PIN 22
  2273. //Cheaptronic v1.0 hasent EXTRUDER 3
  2274. #define HEATER_2_PIN -1
  2275. //Temperature sensors
  2276. #define TEMP_0_PIN 15
  2277. #define TEMP_1_PIN 14
  2278. #define TEMP_2_PIN -1
  2279. #define TEMP_BED_PIN 13
  2280. //Cheaptronic v1.0 dont support LCD
  2281. #define LCD_PINS_RS -1
  2282. #define LCD_PINS_ENABLE -1
  2283. #define LCD_PINS_D4 -1
  2284. #define LCD_PINS_D5 -1
  2285. #define LCD_PINS_D6 -1
  2286. #define LCD_PINS_D7 -1
  2287. //Cheaptronic v1.0 dont support keypad
  2288. #define BTN_EN1 -1
  2289. #define BTN_EN2 -1
  2290. #define BTN_ENC -1
  2291. #define BLEN_C 2
  2292. #define BLEN_B 1
  2293. #define BLEN_A 0
  2294. //Cheaptronic v1.0 does not use this port
  2295. #define SDCARDDETECT -1
  2296. //encoder rotation values
  2297. #define encrot0 0
  2298. #define encrot1 2
  2299. #define encrot2 3
  2300. #define encrot3 1
  2301. #endif
  2302. #ifndef KNOWN_BOARD
  2303. #error Unknown MOTHERBOARD value in configuration.h
  2304. #endif
  2305. //List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those!
  2306. #define _E0_PINS E0_STEP_PIN, E0_DIR_PIN, E0_ENABLE_PIN, HEATER_0_PIN,
  2307. #if EXTRUDERS > 1
  2308. #define _E1_PINS E1_STEP_PIN, E1_DIR_PIN, E1_ENABLE_PIN, HEATER_1_PIN,
  2309. #else
  2310. #define _E1_PINS
  2311. #endif
  2312. #if EXTRUDERS > 2
  2313. #define _E2_PINS E2_STEP_PIN, E2_DIR_PIN, E2_ENABLE_PIN, HEATER_2_PIN,
  2314. #else
  2315. #define _E2_PINS
  2316. #endif
  2317. #ifdef X_STOP_PIN
  2318. #if X_HOME_DIR < 0
  2319. #define X_MIN_PIN X_STOP_PIN
  2320. #define X_MAX_PIN -1
  2321. #else
  2322. #define X_MIN_PIN -1
  2323. #define X_MAX_PIN X_STOP_PIN
  2324. #endif
  2325. #endif
  2326. #ifdef Y_STOP_PIN
  2327. #if Y_HOME_DIR < 0
  2328. #define Y_MIN_PIN Y_STOP_PIN
  2329. #define Y_MAX_PIN -1
  2330. #else
  2331. #define Y_MIN_PIN -1
  2332. #define Y_MAX_PIN Y_STOP_PIN
  2333. #endif
  2334. #endif
  2335. #ifdef Z_STOP_PIN
  2336. #if Z_HOME_DIR < 0
  2337. #define Z_MIN_PIN Z_STOP_PIN
  2338. #define Z_MAX_PIN -1
  2339. #else
  2340. #define Z_MIN_PIN -1
  2341. #define Z_MAX_PIN Z_STOP_PIN
  2342. #endif
  2343. #endif
  2344. #ifdef DISABLE_MAX_ENDSTOPS
  2345. #define X_MAX_PIN -1
  2346. #define Y_MAX_PIN -1
  2347. #define Z_MAX_PIN -1
  2348. #endif
  2349. #ifdef DISABLE_MIN_ENDSTOPS
  2350. #define X_MIN_PIN -1
  2351. #define Y_MIN_PIN -1
  2352. #define Z_MIN_PIN -1
  2353. #endif
  2354. #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, \
  2355. HEATER_BED_PIN, FAN_PIN, \
  2356. _E0_PINS _E1_PINS _E2_PINS \
  2357. analogInputToDigitalPin(TEMP_0_PIN), analogInputToDigitalPin(TEMP_1_PIN), analogInputToDigitalPin(TEMP_2_PIN), analogInputToDigitalPin(TEMP_BED_PIN) }
  2358. #endif