dual_extrusion_printer.json 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311
  1. {
  2. "version": 1,
  3. "id": "dual_extrusion",
  4. "name": "Dual Extrusion Base File",
  5. "file_formats": "text/x-gcode;application/x-stl-ascii;application/x-stl-binary;application/x-wavefront-obj;application/x3g",
  6. "inherits": "fdmprinter.json",
  7. "visible": false,
  8. "machine_extruder_trains": {
  9. "0": {
  10. "extruder_nr": { "default": 0 },
  11. "machine_nozzle_offset_x": { "default": 0.0 },
  12. "machine_nozzle_offset_y": { "default": 0.0 }
  13. },
  14. "1": {
  15. "extruder_nr": { "default": 1 }
  16. }
  17. },
  18. "machine_settings": {
  19. "machine_use_extruder_offset_to_offset_coords": { "default": false },
  20. "machine_nozzle_offset_x": { "default": 0, "SEE_machine_extruder_trains": true },
  21. "machine_nozzle_offset_y": { "default": 0, "SEE_machine_extruder_trains": true },
  22. "machine_extruder_start_code": { "default": "", "SEE_machine_extruder_trains": true },
  23. "machine_extruder_start_pos_abs": { "default": false, "SEE_machine_extruder_trains": true },
  24. "machine_extruder_start_pos_x": { "default": 0, "SEE_machine_extruder_trains": true },
  25. "machine_extruder_start_pos_y": { "default": 0, "SEE_machine_extruder_trains": true },
  26. "machine_extruder_end_pos_abs": { "default": false, "SEE_machine_extruder_trains": true },
  27. "machine_extruder_end_pos_x": { "default": 0, "SEE_machine_extruder_trains": true },
  28. "machine_extruder_end_pos_y": { "default": 0, "SEE_machine_extruder_trains": true },
  29. "machine_extruder_end_code": { "default": "", "SEE_machine_extruder_trains": true }
  30. },
  31. "overrides": {
  32. "speed_print": {
  33. "children": {
  34. "speed_prime_tower": {
  35. "label": "Prime Tower Speed",
  36. "description": "The speed at which the prime tower is printed. Printing the prime tower slower can make it more stable when the adhesion between the different filaments is suboptimal.",
  37. "unit": "mm/s",
  38. "type": "float",
  39. "min_value": "0.1",
  40. "max_value_warning": "150",
  41. "default": 60,
  42. "visible": false,
  43. "enabled": "prime_tower_enable",
  44. "global_only": true
  45. }
  46. }
  47. },
  48. "line_width": {
  49. "children": {
  50. "prime_tower_line_width": {
  51. "label": "Prime Tower Line Width",
  52. "description": "Width of a single prime tower line.",
  53. "unit": "mm",
  54. "min_value": "0.0001",
  55. "min_value_warning": "0.2",
  56. "max_value_warning": "5",
  57. "default": 0.4,
  58. "type": "float",
  59. "visible": false,
  60. "enabled": "prime_tower_enable",
  61. "global_only": true
  62. }
  63. }
  64. }
  65. },
  66. "categories": {
  67. "dual": {
  68. "label": "Dual Extrusion",
  69. "visible": true,
  70. "icon": "category_dual",
  71. "settings": {
  72. "extruder_nr": {
  73. "label": "Extruder",
  74. "description": "The extruder train used for printing. This is used in multi-extrusion.",
  75. "type": "int",
  76. "default": 0,
  77. "min_value": "0",
  78. "max_value": "machine_extruder_count - 1",
  79. "always_visible": true
  80. },
  81. "adhesion_extruder_nr": {
  82. "label": "Platform Adhesion Extruder",
  83. "description": "The extruder train to use for printing the skirt/brim/raft. This is used in multi-extrusion.",
  84. "type": "int",
  85. "default": 0,
  86. "min_value": "0",
  87. "max_value": "machine_extruder_count - 1",
  88. "global_only": true
  89. },
  90. "support_extruder_nr": {
  91. "label": "Support Extruder",
  92. "description": "The extruder train to use for printing the support. This is used in multi-extrusion.",
  93. "type": "int",
  94. "default": 0,
  95. "min_value": "0",
  96. "max_value": "machine_extruder_count - 1",
  97. "global_only": true,
  98. "children": {
  99. "support_infill_extruder_nr": {
  100. "label": "Support Infill Extruder",
  101. "description": "The extruder train to use for printing the infill of the support. This is used in multi-extrusion.",
  102. "type": "int",
  103. "default": 0,
  104. "min_value": "0",
  105. "max_value": "machine_extruder_count - 1",
  106. "global_only": true
  107. },
  108. "support_extruder_nr_layer_0": {
  109. "label": "First Layer Support Extruder",
  110. "description": "The extruder train to use for printing the first layer of support infill. This is used in multi-extrusion.",
  111. "type": "int",
  112. "default": 0,
  113. "min_value": "0",
  114. "max_value": "machine_extruder_count - 1",
  115. "global_only": true
  116. },
  117. "support_roof_extruder_nr": {
  118. "label": "Support Roof Extruder",
  119. "description": "The extruder train to use for printing the roof of the support. This is used in multi-extrusion.",
  120. "type": "int",
  121. "default": 0,
  122. "min_value": "0",
  123. "max_value": "machine_extruder_count - 1",
  124. "enabled": "support_roof_enable",
  125. "global_only": true
  126. }
  127. }
  128. },
  129. "prime_tower_enable": {
  130. "label": "Enable Prime Tower",
  131. "description": "Print a tower next to the print which serves to prime the material after each nozzle switch.",
  132. "type": "boolean",
  133. "visible": true,
  134. "default": false,
  135. "global_only": true
  136. },
  137. "prime_tower_size": {
  138. "label": "Prime Tower Size",
  139. "description": "The width of the prime tower.",
  140. "visible": false,
  141. "type": "float",
  142. "unit": "mm",
  143. "default": 15,
  144. "min_value": "0",
  145. "max_value_warning": "20",
  146. "inherit_function": "15 if prime_tower_enable else 0",
  147. "enabled": "prime_tower_enable",
  148. "global_only": true
  149. },
  150. "prime_tower_position_x": {
  151. "label": "Prime Tower X Position",
  152. "description": "The x position of the prime tower.",
  153. "visible": false,
  154. "type": "float",
  155. "unit": "mm",
  156. "default": 200,
  157. "min_value_warning": "-1000",
  158. "max_value_warning": "1000",
  159. "enabled": "prime_tower_enable",
  160. "global_only": true
  161. },
  162. "prime_tower_position_y": {
  163. "label": "Prime Tower Y Position",
  164. "description": "The y position of the prime tower.",
  165. "visible": false,
  166. "type": "float",
  167. "unit": "mm",
  168. "default": 200,
  169. "min_value_warning": "-1000",
  170. "max_value_warning": "1000",
  171. "enabled": "prime_tower_enable",
  172. "global_only": true
  173. },
  174. "prime_tower_flow": {
  175. "label": "Prime Tower Flow",
  176. "description": "Flow compensation: the amount of material extruded is multiplied by this value.",
  177. "visible": false,
  178. "unit": "%",
  179. "default": 100,
  180. "type": "float",
  181. "min_value": "5",
  182. "min_value_warning": "50",
  183. "max_value_warning": "150",
  184. "enabled": "prime_tower_enable",
  185. "global_only": true
  186. },
  187. "prime_tower_wipe_enabled": {
  188. "label": "Wipe Nozzle on Prime tower",
  189. "description": "After printing the prime tower with the one nozzle, wipe the oozed material from the other nozzle off on the prime tower.",
  190. "type": "boolean",
  191. "default": false,
  192. "enabled": "prime_tower_enable",
  193. "global_only": true
  194. },
  195. "multiple_mesh_overlap": {
  196. "label": "Dual Extrusion Overlap",
  197. "description": "Make the objects printed with different extruder trains overlap a bit. This makes the different materials bond together better.",
  198. "visible": false,
  199. "type": "float",
  200. "unit": "mm",
  201. "default": 0.15,
  202. "min_value": "0",
  203. "max_value_warning": "1.0",
  204. "global_only": true
  205. },
  206. "ooze_shield_enabled": {
  207. "label": "Enable Ooze Shield",
  208. "description": "Enable exterior ooze shield. This will create a shell around the object which is likely to wipe a second nozzle if it's at the same height as the first nozzle.",
  209. "type": "boolean",
  210. "default": false,
  211. "global_only": true
  212. },
  213. "ooze_shield_angle": {
  214. "label": "Ooze Shield Angle",
  215. "description": "The maximum angle a part in the ooze shield will have. With 0 degrees being vertical, and 90 degrees being horizontal. A smaller angle leads to less failed ooze shields, but more material.",
  216. "unit": "°",
  217. "type": "float",
  218. "min_value": "0",
  219. "max_value": "90",
  220. "default": 60,
  221. "visible": false,
  222. "enabled": "ooze_shield_enabled",
  223. "global_only": true
  224. },
  225. "ooze_shield_dist": {
  226. "label": "Ooze Shields Distance",
  227. "description": "Distance of the ooze shield from the print, in the X/Y directions.",
  228. "unit": "mm",
  229. "type": "float",
  230. "min_value": "0",
  231. "max_value_warning": "30",
  232. "default": 2,
  233. "visible": false,
  234. "enabled": "ooze_shield_enabled",
  235. "global_only": true
  236. }
  237. }
  238. },
  239. "material": {
  240. "settings": {
  241. "material_standby_temperature": {
  242. "label": "Standby Temperature",
  243. "description": "The temperature of the nozzle when another nozzle is currently used for printing.",
  244. "unit": "°C",
  245. "type": "float",
  246. "default": 150,
  247. "min_value": "0",
  248. "max_value_warning": "260",
  249. "global_only": "True",
  250. "visible": false
  251. },
  252. "switch_extruder_retraction_amount": {
  253. "label": "Nozzle Switch Retraction Distance",
  254. "description": "The amount of retraction: Set at 0 for no retraction at all. This should generally be the same as the length of the heat zone.",
  255. "unit": "mm",
  256. "type": "float",
  257. "default": 20,
  258. "min_value_warning": "0",
  259. "max_value_warning": "100",
  260. "visible": false,
  261. "inherit_function": "machine_heat_zone_length",
  262. "enabled": "retraction_enable",
  263. "global_only": true
  264. },
  265. "switch_extruder_retraction_speeds": {
  266. "label": "Nozzle Switch Retraction Speed",
  267. "description": "The speed at which the filament is retracted. A higher retraction speed works better, but a very high retraction speed can lead to filament grinding.",
  268. "unit": "mm/s",
  269. "type": "float",
  270. "default": 20,
  271. "min_value": "0.1",
  272. "max_value_warning": "300",
  273. "visible": false,
  274. "inherit": false,
  275. "enabled": "retraction_enable",
  276. "global_only": true,
  277. "children": {
  278. "switch_extruder_retraction_speed": {
  279. "label": "Nozzle Switch Retract Speed",
  280. "description": "The speed at which the filament is retracted during a nozzle switch retract. ",
  281. "unit": "mm/s",
  282. "type": "float",
  283. "default": 20,
  284. "min_value": "0.1",
  285. "max_value_warning": "300",
  286. "visible": false,
  287. "enabled": "retraction_enable",
  288. "global_only": true
  289. },
  290. "switch_extruder_prime_speed": {
  291. "label": "Nozzle Switch Prime Speed",
  292. "description": "The speed at which the filament is pushed back after a nozzle switch retraction.",
  293. "unit": "mm/s",
  294. "type": "float",
  295. "default": 20,
  296. "min_value": "0.1",
  297. "max_value_warning": "300",
  298. "visible": false,
  299. "enabled": "retraction_enable",
  300. "global_only": true
  301. }
  302. }
  303. }
  304. }
  305. }
  306. }
  307. }