Advertisement
Guest User

Untitled

a guest
Apr 19th, 2018
209
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.54 KB | None | 0 0
  1. /**
  2. * **************How to use this firmware - READ THIS*********************************
  3. *
  4. * Uncomment means removing the 2 // in front of #define.
  5. *
  6. * If you have EZABL uncomment #define EZABL_ENABLE and then uncommend the mount
  7. * you are using with the printer.
  8. *
  9. * If you have a custom/unsupported mount uncomment #define CUSTOM_MOUNT
  10. * and enter your offsets below in the CUSTOM MOUNT section.
  11. *
  12. * There are other features in the TH3D Extras section so look there for V6 Hotend,
  13. * Bootscreen settings, Titan Extruder and more. You only need to edit this file.
  14. *
  15. * For the Tornado, TAZ5, and CR-10S select Tools > Board > Arduino Mega 2560
  16. * For the Ender 2 and CR-10 select Tools > Board > Sanguino(1284P Boards)
  17. * For the ANET Printers select Tools > Board > ANET V1.0
  18. *
  19. * Then select the COM port your printer is on from the Tools menu.
  20. *
  21. * Once you have your settings click the arrow in the upper left to upload to the board.
  22. *
  23. * Thats it!
  24. *
  25. * !!!!!!!CAUTION!!!!!!!
  26. * After updating be sure to either send M502 then M500 to reset your EEPROM or on the printer
  27. * LCD go to Control > Initialize EEPROM to clear out the EEPROM to defaults.
  28. *
  29. * ONLY UNCOMMENT ONE PRINTER TYPE. IF YOU UNCOMMENT MORE THAN ONE YOU WILL GET ERRORS.
  30. * If you get errors flashing READ the message it gives you and double check that you selected
  31. * the correct board from the Tools menu in Arduino.
  32. */
  33.  
  34. #ifndef CONFIGURATION_H
  35. #define CONFIGURATION_H
  36. #define CONFIGURATION_H_VERSION 010110
  37.  
  38. //===========================================================================
  39. //============================ TH3D Configuration ===========================
  40. //===========================================================================
  41.  
  42. // ONLY UNCOMMENT THINGS IN ONE PRINTER SECTION!!! IF YOU DO NOT FOLLOW THIS THEN YOU WILL GET ERRORS.
  43.  
  44. //===========================================================================
  45. // Creality CR-10 Options - Select Sanguino(1284P) from Tools > Board
  46. //===========================================================================
  47. #define CR10
  48. //#define CR10_MINI
  49. //#define CR10_S4
  50. //#define CR10_S5
  51.  
  52. // If you are using our EZOut filament sensor kit please follow the install guide
  53. // and then uncomment the #define EZOUT_ENABLE line below.
  54. //#define EZOUT_ENABLE
  55.  
  56. // EZABL Settings - Uncomment #define EZABL_ENABLE and uncomment your mount
  57. // type you are using to enable EZABL Bed Leveing features
  58. #define EZABL_ENABLE
  59.  
  60. // Probe Mounts
  61. //#define CR10_VOLCANO
  62. //#define CR10_V6HEAVYDUTY
  63. #define CR10_OEM
  64. //#define CR10_FANG
  65. //#define TM3DAERO
  66. //#define CUSTOM_PROBE
  67.  
  68. //===========================================================================
  69. // Creality CR-10S Options - Select Arduino Mega 2560 from Tools > Board
  70. //===========================================================================
  71. //#define CR10S
  72. //#define CR10S_MINI
  73. //#define CR10S_S4
  74. //#define CR10S_S5
  75.  
  76. // If you are having issues with your stock CR-10S filament sensor uncomment
  77. // the below line to disable it in the firmware. We sell EZOUT kits to replace this.
  78. // DO NOT ENABLE THIS IF YOU ARE REPLACING OR ADDING THE EZOUT.
  79. //#define CR10S_NOFILAMENTSENSOR
  80.  
  81. // If you want to use the CR-10 LCD with the CR-10S board uncomment the below line
  82. // then connect the LCD cable to EXP1 on the CR-10S board but rotate it 180 degrees.
  83. // You will have to force it in but it will fit and work. If you also have an EZOUT
  84. // this makes rotating the cable painless since the EZOut is not keyed.
  85. //#define CR10LCD_CR10S
  86.  
  87. // If you are using our EZOut filament sensor kit please follow the install guide
  88. // and then uncomment the #define EZOUT_ENABLE line below. Connect to the EXP1 LCD
  89. // connection on the CR-10S board. This will override the stock Creality sensor if you have one
  90. // DO NOT EVER PLUG THE EZOUT SENSOR INTO THE ENDSTOP CONNECTIONS ON THE CR-10S BOARD
  91. // THE EZOUT SENSOR MUST ALWAYS CONNECT TO THE EZOUT BOARD. SEE INSTALL GUIDE FOR DETAILS.
  92. //#define EZOUT_ENABLE
  93.  
  94. // EZABL Settings - Uncomment #define EZABL_ENABLE and uncomment your mount
  95. // type you are using to enable EZABL Bed Leveing features
  96. //#define EZABL_ENABLE
  97.  
  98. // Probe Mounts
  99. //#define CR10_VOLCANO
  100. //#define CR10_V6HEAVYDUTY
  101. //#define CR10_OEM
  102. //#define CR10_FANG
  103. //#define TM3DAERO
  104. //#define CUSTOM_PROBE
  105.  
  106. //===========================================================================
  107. // Creality Ender 2 Options - Select Sanguino(1284P) from Tools > Board
  108. //===========================================================================
  109. //#define ENDER2
  110.  
  111. // EZABL Settings - Uncomment #define EZABL_ENABLE and uncomment your mount
  112. // type you are using to enable EZABL Bed Leveing features
  113. //#define EZABL_ENABLE
  114.  
  115. // Probe Mounts
  116. //#define ENDER2_OEM
  117. //#define ENDER2_V6
  118. //#define TM3DAERO
  119. //#define CUSTOM_PROBE
  120.  
  121. //===========================================================================
  122. // TEVO Tornado Options - Select Arduino Mega 2560 from Tools > Board
  123. //===========================================================================
  124. //#define TORNADO
  125.  
  126. // EZABL Settings - Uncomment #define EZABL_ENABLE and uncomment your mount
  127. // type you are using to enable EZABL Bed Leveing features
  128. //#define EZABL_ENABLE
  129.  
  130. // Probe Mounts
  131. //#define TORNADO_OEM
  132. //#define TORNADO_VOLCANO
  133. //#define TORNADO_V6HEAVYDUTY
  134. //#define TM3DAERO
  135. //#define CUSTOM_PROBE
  136.  
  137. // Use Tornado Bootscreen instead of TH3D
  138. //#define TORNADO_BOOT
  139.  
  140. //===========================================================================
  141. // Lulzbot TAZ5 Options - Select Arduino Mega 2560 from Tools > Board
  142. //===========================================================================
  143. //#define TAZ5
  144.  
  145. // EZABL Settings - Uncomment #define EZABL_ENABLE and uncomment your mount
  146. // type you are using to enable EZABL Bed Leveing features
  147. //#define EZABL_ENABLE
  148.  
  149. // Probe Mounts
  150. //#define TAZ5_OEM
  151. //#define CUSTOM_PROBE
  152.  
  153. //===========================================================================
  154. // ANET Printers Options - Select ANET 1.0 from Tools > Board
  155. //===========================================================================
  156.  
  157. // Uncomment the ANET Model you are using
  158. //#define ANET_A2 //** please see option below to choose bed size for the A2 only!!
  159. //#define ANET_A6
  160. //#define ANET_A8
  161. //#define ANET_E10
  162. //#define ANET_E12
  163.  
  164. // Choose bed size for A2 only
  165. // IGNORE THESE OPTIONS FOR MACHINES OTHER THAN THE A2
  166. //#define A2_SMALL_BED //(220x220)
  167. //#define A2_LARGE_BED //(220x270)
  168.  
  169. // Choose which type of LCD you have (Select One option)
  170. //#define ANET_LCD12864 //This is the larger LCD with the rotary controller found on most ANET machines
  171. //#define ANET_LCD2004 //This is the LCD with the 5 button keypad usually found on A8 and some A2 machines
  172.  
  173. // EZABL Settings - Uncomment #define EZABL_ENABLE and uncomment your mount
  174. // type you are using to enable EZABL Bed Leveing features
  175. //#define EZABL_ENABLE
  176.  
  177. // Probe Mounts
  178. //#define ANET_OEM
  179. //#define CUSTOM_PROBE
  180.  
  181. //===========================================================================
  182. // Wanhao i3 Options - Select Sanguino(1284P) from Tools > Board
  183. //===========================================================================
  184.  
  185. // Uncomment the Wanhao Model you are using
  186. //#define WANHAO_I3
  187.  
  188. // If your thermistor temperatures are off please uncomment the 10K option below (some older
  189. // boards use a 10K pullup instead of a 4.7K pullup) to fix temps being off
  190. //#define WANHAO_10K_THERMISTOR
  191.  
  192. // EZABL Settings - Uncomment #define EZABL_ENABLE and uncomment your mount
  193. // type you are using to enable EZABL Bed Leveing features
  194. //#define EZABL_ENABLE
  195.  
  196. // Probe Mounts
  197. //#define WANHAO_I3_OEM
  198. //#define WANHAO_I3_DIIICOOLER
  199. //#define CUSTOM_PROBE
  200.  
  201. //===========================================================================
  202. // EZABL Advanced Settings
  203. //===========================================================================
  204.  
  205. // If you want more or less EZABL probe points change the number below
  206. // Default is 4 which gives you 4x4 grid. Do not go over 10 here.
  207. // Ender 2 will be best with a 3x3 grid, change to a 3 for Ender 2
  208. // DO NOT DISABLE THIS. LEAVE UNCOMMENTED EVEN IF NOT USING EZABL.
  209. #define EZABL_POINTS 4
  210.  
  211. // If you want to probe in on the bed more than 15mm change this below. Do not
  212. // use 30mm for the Standard CR-10/s or the S4 as you will be on the bed screws.
  213. // Try 50mm to avoid the binder clips if you use them. Do NOT go under 15mm here.
  214. // You can do down to 10mm on the Wanhao i3 since it cannot print on the entire bed.
  215. #define EZABL_PROBE_EDGE 15
  216.  
  217. // If you want to speed up the probing process you can try using the Fast Probe option
  218. // DO NOTE: Not all machines will be accurate at the quicker speeds. If you are noticing
  219. // that after enabling this option your Z height is not as consistent as before then
  220. // do not use this on your machine.
  221. //#define EZABL_FASTPROBE
  222.  
  223. // This can help if you have a shaky Z axis. This will add a 500MS delay before the probe starts
  224. //#define EZABL_STABILIZE
  225.  
  226. // If you are having leveling issues with the EZABL try uncommenting the below
  227. // line. This will change the leveling type from bilinear to linear. Some printers
  228. // do better with linear leveling instead of bilinear.
  229. //#define LINEAR_LEVELING
  230.  
  231. //===========================================================================
  232. // TH3D EXTRAS
  233. //===========================================================================
  234.  
  235. // If you want to change the esteps for your printer you can uncomment this and set to what you want
  236. // For example the Tornado is 400, Creality & ANET Machines are 95
  237. // USE WHOLE NUMBERS ONLY
  238. //#define CUSTOM_ESTEPS 95
  239.  
  240. // If you are using a V6 Hotend with the V6 Thermistor
  241. // uncomment the below line to set the correct thermistor settings
  242. //#define V6_HOTEND
  243.  
  244. // If you are using an AC bed with a standalone controller (like the Keenovo heaters)
  245. // uncomment the below line to disable the heated bed control in the firmware
  246. //#define AC_BED
  247.  
  248. // If you are using the Keenovo bed with a SSR and the Keenovo temperature sensor uncomment
  249. // the below line to enable the changes to use the Keenovo thermistor
  250. //#define KEENOVO_TEMPSENSOR
  251.  
  252. // If you are using the TH3D 5015 High Flow Layer Fan enable this to allow the firmware
  253. // to properly control the fan speed. If this is not enabled then the fan may not spin at low speeds.
  254. //#define FAN_KICKSTART
  255.  
  256. // If you are using an E3D or TH3D Titan Extruder uncomment the below line
  257. // to setup the firmware to the correct steps and direction
  258. //#define TITAN_EXTRUDER
  259. // If your titan uses steps/mm other than 463 change it below, this works for most Titans
  260. // DO NOT DISABLE THIS. ONLY USED IF YOU ENABLE TITAN_EXTRUDER.
  261. #define TITAN_EXTRUDER_STEPS 463
  262.  
  263. // Use TinyMachines Bootscreen instead of TH3D
  264. //#define TM3D_BOOT
  265.  
  266. // Use your own printer name
  267. //#define USER_PRINTER_NAME "Change Me"
  268.  
  269. // If you want to keep your heaters ON during probing uncomment the below line. We do NOT recommend doing this on AC beds.
  270. //#define HEATERS_ON_DURING_PROBING
  271.  
  272. // If your bed pulsing from PID is causing your lights to dim (mainly with AC beds)or you want slightly quicker bed
  273. // heat up times uncomment below to switch back to the old "bang-bang" method that cycles it on and off slower.
  274. //#define PIDBED_DISABLE
  275.  
  276. // Allow bed to pause probing to recover heat during probing - will slow down probing but make it more accurate
  277. //#define HEATER_RECOVERY
  278.  
  279. // If you are using a NC sensor instead of NO (EZABL Default) enable this option
  280. //#define NC_SENSOR
  281.  
  282. // If you want to use manual mesh leveling you can enable the below option. TH3D does NOT provide free support
  283. // to help you use this feature. This is for generating a MANUAL mesh WITHOUT a probe. See the link below for more details.
  284. // Mesh Bed Leveling Documentation: http://marlinfw.org/docs/gcode/G029-mbl.html
  285. //#define MANUAL_MESH_LEVELING
  286.  
  287. //===========================================================================
  288. // IF YOU HAVE A CUSTOM PROBE MOUNT OR ONE THAT IS NOT PRE-SUPPORTED
  289. // UNCOMMENT THE CUSTOM_PROBE OPTION AND ENTER YOUR PROBE LOCATION BELOW
  290. //===========================================================================
  291. //#if ENABLED(CUSTOM_PROBE)
  292. /**
  293. * Z Probe to nozzle (X,Y) offset, relative to (0, 0).
  294. * X and Y offsets must be integers.
  295. *
  296. * In the following example the X and Y offsets are both positive:
  297. * #define X_PROBE_OFFSET_FROM_EXTRUDER 10
  298. * #define Y_PROBE_OFFSET_FROM_EXTRUDER 10
  299. *
  300. * +-- BACK ---+
  301. * | |
  302. * L | (+) P | R <-- probe (10,10)
  303. * E | | I
  304. * F | (-) N (+) | G <-- nozzle (0,0)
  305. * T | | H
  306. * | (-) | T
  307. * | |
  308. * O-- FRONT --+
  309. * (0,0)
  310. */
  311. //#define X_PROBE_OFFSET_FROM_EXTRUDER 10 // X offset: -left +right [of the nozzle]
  312. //#define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle]
  313. //#endif
  314.  
  315. //===========================================================================
  316. // Language
  317. //===========================================================================
  318.  
  319. /**
  320. * LCD LANGUAGE
  321. *
  322. * Select the language to display on the LCD. These languages are available:
  323. *
  324. * en, an, bg, ca, cn, cz, cz_utf8, de, el, el-gr, es, eu, fi, fr, fr_utf8, gl,
  325. * hr, it, kana, kana_utf8, nl, pl, pt, pt_utf8, pt-br, pt-br_utf8, ru, sk_utf8,
  326. * tr, uk, zh_CN, zh_TW, test
  327. */
  328.  
  329. #define LCD_LANGUAGE en
  330.  
  331. //===========================================================================
  332. // Bed Skew Setup
  333. //===========================================================================
  334.  
  335. /**
  336. * Bed Skew Compensation
  337. *
  338. * This feature corrects for misalignment in the XYZ axes.
  339. *
  340. * Take the following steps to get the bed skew in the XY plane:
  341. * 1. Print a test square (e.g., https://www.thingiverse.com/thing:2563185)
  342. * 2. For XY_DIAG_AC measure the diagonal A to C
  343. * 3. For XY_DIAG_BD measure the diagonal B to D
  344. * 4. For XY_SIDE_AD measure the edge A to D
  345. *
  346. * Marlin automatically computes skew factors from these measurements.
  347. * Skew factors may also be computed and set manually:
  348. *
  349. * - Compute AB : SQRT(2*AC*AC+2*BD*BD-4*AD*AD)/2
  350. * - XY_SKEW_FACTOR : TAN(PI/2-ACOS((AC*AC-AB*AB-AD*AD)/(2*AB*AD)))
  351. *
  352. * If desired, follow the same procedure for XZ and YZ.
  353. * Use these diagrams for reference:
  354. *
  355. * Y Z Z
  356. * ^ B-------C ^ B-------C ^ B-------C
  357. * | / / | / / | / /
  358. * | / / | / / | / /
  359. * | A-------D | A-------D | A-------D
  360. * +-------------->X +-------------->X +-------------->Y
  361. * XY_SKEW_FACTOR XZ_SKEW_FACTOR YZ_SKEW_FACTOR
  362. */
  363. //#define SKEW_CORRECTION
  364.  
  365. #if ENABLED(SKEW_CORRECTION)
  366. // Input all length measurements here:
  367. #define XY_DIAG_AC 282.8427124746
  368. #define XY_DIAG_BD 282.8427124746
  369. #define XY_SIDE_AD 200
  370.  
  371. // Or, set the default skew factors directly here
  372. // to override the above measurements:
  373. //#define XY_SKEW_FACTOR 0.0
  374.  
  375. //#define SKEW_CORRECTION_FOR_Z
  376. #if ENABLED(SKEW_CORRECTION_FOR_Z)
  377. #define XZ_DIAG_AC 282.8427124746
  378. #define XZ_DIAG_BD 282.8427124746
  379. #define YZ_DIAG_AC 282.8427124746
  380. #define YZ_DIAG_BD 282.8427124746
  381. #define YZ_SIDE_AD 200
  382. #define XZ_SKEW_FACTOR 0.0
  383. #define YZ_SKEW_FACTOR 0.0
  384. #endif
  385.  
  386. // Enable this option for M852 to set skew at runtime
  387. #define SKEW_CORRECTION_GCODE
  388. #endif
  389.  
  390. #include "Configuration_backend.h"
  391.  
  392. #endif // CONFIGURATION_H
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement