filament_fields.json 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625
  1. {
  2. "version": "1.0.0",
  3. "description": "Filament preset field definitions for Bambu Lab printers",
  4. "fields": [
  5. {
  6. "key": "filament_vendor",
  7. "label": "Vendor",
  8. "type": "text",
  9. "category": "basic",
  10. "description": "Filament manufacturer name"
  11. },
  12. {
  13. "key": "filament_type",
  14. "label": "Filament Type",
  15. "type": "select",
  16. "category": "basic",
  17. "description": "Material type",
  18. "options": [
  19. {"value": "PLA", "label": "PLA"},
  20. {"value": "ABS", "label": "ABS"},
  21. {"value": "PETG", "label": "PETG"},
  22. {"value": "TPU", "label": "TPU"},
  23. {"value": "PA", "label": "PA (Nylon)"},
  24. {"value": "PA-CF", "label": "PA-CF"},
  25. {"value": "PET-CF", "label": "PET-CF"},
  26. {"value": "PC", "label": "PC"},
  27. {"value": "ASA", "label": "ASA"},
  28. {"value": "PVA", "label": "PVA"},
  29. {"value": "HIPS", "label": "HIPS"}
  30. ]
  31. },
  32. {
  33. "key": "filament_cost",
  34. "label": "Filament Cost",
  35. "type": "number",
  36. "category": "basic",
  37. "description": "Cost per kg",
  38. "unit": "$/kg"
  39. },
  40. {
  41. "key": "filament_density",
  42. "label": "Density",
  43. "type": "number",
  44. "category": "basic",
  45. "description": "Material density",
  46. "unit": "g/cm³",
  47. "step": 0.01
  48. },
  49. {
  50. "key": "filament_diameter",
  51. "label": "Filament Diameter",
  52. "type": "number",
  53. "category": "basic",
  54. "description": "Filament diameter",
  55. "unit": "mm",
  56. "step": 0.01,
  57. "min": 1.5,
  58. "max": 3.0
  59. },
  60. {
  61. "key": "nozzle_temperature",
  62. "label": "Nozzle Temperature",
  63. "type": "text",
  64. "category": "temperature",
  65. "description": "Printing temperature (comma-separated: normal,first layer)",
  66. "unit": "°C"
  67. },
  68. {
  69. "key": "nozzle_temperature_initial_layer",
  70. "label": "Initial Layer Nozzle Temp",
  71. "type": "text",
  72. "category": "temperature",
  73. "description": "First layer nozzle temperature",
  74. "unit": "°C"
  75. },
  76. {
  77. "key": "nozzle_temperature_range_low",
  78. "label": "Min Nozzle Temp",
  79. "type": "number",
  80. "category": "temperature",
  81. "description": "Minimum recommended nozzle temperature",
  82. "unit": "°C",
  83. "min": 150,
  84. "max": 350
  85. },
  86. {
  87. "key": "nozzle_temperature_range_high",
  88. "label": "Max Nozzle Temp",
  89. "type": "number",
  90. "category": "temperature",
  91. "description": "Maximum recommended nozzle temperature",
  92. "unit": "°C",
  93. "min": 150,
  94. "max": 350
  95. },
  96. {
  97. "key": "hot_plate_temp",
  98. "label": "Bed Temperature (Hot Plate)",
  99. "type": "number",
  100. "category": "temperature",
  101. "description": "Bed temperature for standard plate",
  102. "unit": "°C",
  103. "min": 0,
  104. "max": 120
  105. },
  106. {
  107. "key": "hot_plate_temp_initial_layer",
  108. "label": "Initial Layer Bed Temp (Hot Plate)",
  109. "type": "number",
  110. "category": "temperature",
  111. "description": "First layer bed temperature for standard plate",
  112. "unit": "°C",
  113. "min": 0,
  114. "max": 120
  115. },
  116. {
  117. "key": "cool_plate_temp",
  118. "label": "Bed Temperature (Cool Plate)",
  119. "type": "number",
  120. "category": "temperature",
  121. "description": "Bed temperature for cool plate",
  122. "unit": "°C",
  123. "min": 0,
  124. "max": 120
  125. },
  126. {
  127. "key": "cool_plate_temp_initial_layer",
  128. "label": "Initial Layer Bed Temp (Cool Plate)",
  129. "type": "number",
  130. "category": "temperature",
  131. "description": "First layer bed temperature for cool plate",
  132. "unit": "°C",
  133. "min": 0,
  134. "max": 120
  135. },
  136. {
  137. "key": "eng_plate_temp",
  138. "label": "Bed Temperature (Engineering Plate)",
  139. "type": "number",
  140. "category": "temperature",
  141. "description": "Bed temperature for engineering plate",
  142. "unit": "°C",
  143. "min": 0,
  144. "max": 120
  145. },
  146. {
  147. "key": "eng_plate_temp_initial_layer",
  148. "label": "Initial Layer Bed Temp (Eng Plate)",
  149. "type": "number",
  150. "category": "temperature",
  151. "description": "First layer bed temperature for engineering plate",
  152. "unit": "°C",
  153. "min": 0,
  154. "max": 120
  155. },
  156. {
  157. "key": "textured_plate_temp",
  158. "label": "Bed Temperature (Textured Plate)",
  159. "type": "number",
  160. "category": "temperature",
  161. "description": "Bed temperature for textured plate",
  162. "unit": "°C",
  163. "min": 0,
  164. "max": 120
  165. },
  166. {
  167. "key": "textured_plate_temp_initial_layer",
  168. "label": "Initial Layer Bed Temp (Textured)",
  169. "type": "number",
  170. "category": "temperature",
  171. "description": "First layer bed temperature for textured plate",
  172. "unit": "°C",
  173. "min": 0,
  174. "max": 120
  175. },
  176. {
  177. "key": "temperature_vitrification",
  178. "label": "Glass Transition Temperature",
  179. "type": "number",
  180. "category": "temperature",
  181. "description": "Glass transition temperature of material",
  182. "unit": "°C"
  183. },
  184. {
  185. "key": "pressure_advance",
  186. "label": "Pressure Advance",
  187. "type": "number",
  188. "category": "flow",
  189. "description": "Pressure advance value for linear advance",
  190. "step": 0.001,
  191. "min": 0,
  192. "max": 0.2
  193. },
  194. {
  195. "key": "enable_pressure_advance",
  196. "label": "Enable Pressure Advance",
  197. "type": "boolean",
  198. "category": "flow",
  199. "description": "Enable pressure advance compensation"
  200. },
  201. {
  202. "key": "filament_flow_ratio",
  203. "label": "Flow Ratio",
  204. "type": "number",
  205. "category": "flow",
  206. "description": "Flow rate multiplier",
  207. "step": 0.01,
  208. "min": 0.8,
  209. "max": 1.2
  210. },
  211. {
  212. "key": "filament_max_volumetric_speed",
  213. "label": "Max Volumetric Speed",
  214. "type": "text",
  215. "category": "flow",
  216. "description": "Maximum volumetric flow rate (comma-separated values)",
  217. "unit": "mm³/s"
  218. },
  219. {
  220. "key": "fan_min_speed",
  221. "label": "Min Fan Speed",
  222. "type": "number",
  223. "category": "cooling",
  224. "description": "Minimum part cooling fan speed",
  225. "unit": "%",
  226. "min": 0,
  227. "max": 100
  228. },
  229. {
  230. "key": "fan_max_speed",
  231. "label": "Max Fan Speed",
  232. "type": "number",
  233. "category": "cooling",
  234. "description": "Maximum part cooling fan speed",
  235. "unit": "%",
  236. "min": 0,
  237. "max": 100
  238. },
  239. {
  240. "key": "fan_cooling_layer_time",
  241. "label": "Fan Cooling Layer Time",
  242. "type": "number",
  243. "category": "cooling",
  244. "description": "Layer time threshold for max fan",
  245. "unit": "s",
  246. "min": 0,
  247. "max": 120
  248. },
  249. {
  250. "key": "slow_down_layer_time",
  251. "label": "Slow Down Layer Time",
  252. "type": "number",
  253. "category": "cooling",
  254. "description": "Minimum layer time before slowing down",
  255. "unit": "s",
  256. "min": 0,
  257. "max": 60
  258. },
  259. {
  260. "key": "slow_down_min_speed",
  261. "label": "Slow Down Min Speed",
  262. "type": "number",
  263. "category": "cooling",
  264. "description": "Minimum speed when slowing down for cooling",
  265. "unit": "mm/s",
  266. "min": 5,
  267. "max": 100
  268. },
  269. {
  270. "key": "close_fan_the_first_x_layers",
  271. "label": "Disable Fan First Layers",
  272. "type": "number",
  273. "category": "cooling",
  274. "description": "Number of initial layers without fan",
  275. "min": 0,
  276. "max": 10
  277. },
  278. {
  279. "key": "overhang_fan_threshold",
  280. "label": "Overhang Fan Threshold",
  281. "type": "text",
  282. "category": "cooling",
  283. "description": "Overhang angle to trigger fan boost"
  284. },
  285. {
  286. "key": "overhang_fan_speed",
  287. "label": "Overhang Fan Speed",
  288. "type": "number",
  289. "category": "cooling",
  290. "description": "Fan speed for overhangs",
  291. "unit": "%",
  292. "min": 0,
  293. "max": 100
  294. },
  295. {
  296. "key": "reduce_fan_stop_start_freq",
  297. "label": "Reduce Fan Stop/Start Frequency",
  298. "type": "boolean",
  299. "category": "cooling",
  300. "description": "Prevent frequent fan speed changes"
  301. },
  302. {
  303. "key": "activate_air_filtration",
  304. "label": "Activate Air Filtration",
  305. "type": "boolean",
  306. "category": "chamber",
  307. "description": "Enable chamber air filtration during print"
  308. },
  309. {
  310. "key": "during_print_exhaust_fan_speed",
  311. "label": "Exhaust Fan Speed (During Print)",
  312. "type": "number",
  313. "category": "chamber",
  314. "description": "Exhaust fan speed during printing",
  315. "unit": "%",
  316. "min": 0,
  317. "max": 100
  318. },
  319. {
  320. "key": "complete_print_exhaust_fan_speed",
  321. "label": "Exhaust Fan Speed (After Print)",
  322. "type": "number",
  323. "category": "chamber",
  324. "description": "Exhaust fan speed after print completes",
  325. "unit": "%",
  326. "min": 0,
  327. "max": 100
  328. },
  329. {
  330. "key": "activate_chamber_temp_control",
  331. "label": "Chamber Temp Control",
  332. "type": "boolean",
  333. "category": "chamber",
  334. "description": "Enable active chamber temperature control"
  335. },
  336. {
  337. "key": "chamber_temperature",
  338. "label": "Chamber Temperature",
  339. "type": "number",
  340. "category": "chamber",
  341. "description": "Target chamber temperature",
  342. "unit": "°C",
  343. "min": 0,
  344. "max": 60
  345. },
  346. {
  347. "key": "filament_retraction_length",
  348. "label": "Retraction Length",
  349. "type": "number",
  350. "category": "retraction",
  351. "description": "Length of filament to retract",
  352. "unit": "mm",
  353. "step": 0.1,
  354. "min": 0,
  355. "max": 10
  356. },
  357. {
  358. "key": "filament_retract_before_wipe",
  359. "label": "Retract Before Wipe",
  360. "type": "number",
  361. "category": "retraction",
  362. "description": "Percentage of retraction before wipe",
  363. "unit": "%",
  364. "min": 0,
  365. "max": 100
  366. },
  367. {
  368. "key": "filament_retraction_speed",
  369. "label": "Retraction Speed",
  370. "type": "number",
  371. "category": "retraction",
  372. "description": "Speed for retraction moves",
  373. "unit": "mm/s",
  374. "min": 10,
  375. "max": 120
  376. },
  377. {
  378. "key": "filament_deretraction_speed",
  379. "label": "Deretraction Speed",
  380. "type": "number",
  381. "category": "retraction",
  382. "description": "Speed for priming after retraction",
  383. "unit": "mm/s",
  384. "min": 10,
  385. "max": 120
  386. },
  387. {
  388. "key": "filament_retract_restart_extra",
  389. "label": "Extra Length on Restart",
  390. "type": "number",
  391. "category": "retraction",
  392. "description": "Extra filament to prime after retraction",
  393. "unit": "mm",
  394. "step": 0.01
  395. },
  396. {
  397. "key": "filament_retract_when_changing_layer",
  398. "label": "Retract on Layer Change",
  399. "type": "boolean",
  400. "category": "retraction",
  401. "description": "Force retraction when changing layers"
  402. },
  403. {
  404. "key": "filament_wipe",
  405. "label": "Enable Wipe",
  406. "type": "boolean",
  407. "category": "retraction",
  408. "description": "Enable nozzle wipe during retraction"
  409. },
  410. {
  411. "key": "filament_wipe_distance",
  412. "label": "Wipe Distance",
  413. "type": "number",
  414. "category": "retraction",
  415. "description": "Distance to wipe while retracting",
  416. "unit": "mm",
  417. "step": 0.1
  418. },
  419. {
  420. "key": "filament_z_hop",
  421. "label": "Z Hop Height",
  422. "type": "number",
  423. "category": "retraction",
  424. "description": "Lift height during travel moves",
  425. "unit": "mm",
  426. "step": 0.1,
  427. "min": 0,
  428. "max": 2
  429. },
  430. {
  431. "key": "filament_z_hop_types",
  432. "label": "Z Hop Type",
  433. "type": "select",
  434. "category": "retraction",
  435. "description": "Type of Z hop motion",
  436. "options": [
  437. {"value": "Normal Lift", "label": "Normal Lift"},
  438. {"value": "Slope Lift", "label": "Slope Lift"},
  439. {"value": "Spiral Lift", "label": "Spiral Lift"}
  440. ]
  441. },
  442. {
  443. "key": "filament_retraction_minimum_travel",
  444. "label": "Min Travel After Retraction",
  445. "type": "number",
  446. "category": "retraction",
  447. "description": "Minimum travel distance to trigger retraction",
  448. "unit": "mm",
  449. "step": 0.1
  450. },
  451. {
  452. "key": "filament_retract_layer_change",
  453. "label": "Retract on Layer Change",
  454. "type": "boolean",
  455. "category": "retraction",
  456. "description": "Retract when layer changes"
  457. },
  458. {
  459. "key": "filament_colour",
  460. "label": "Filament Color",
  461. "type": "text",
  462. "category": "appearance",
  463. "description": "Filament color (hex format #RRGGBB)"
  464. },
  465. {
  466. "key": "default_filament_colour",
  467. "label": "Default Filament Color",
  468. "type": "text",
  469. "category": "appearance",
  470. "description": "Default color for this filament type"
  471. },
  472. {
  473. "key": "filament_is_support",
  474. "label": "Is Support Material",
  475. "type": "boolean",
  476. "category": "advanced",
  477. "description": "Mark as support material filament"
  478. },
  479. {
  480. "key": "filament_soluble",
  481. "label": "Soluble Material",
  482. "type": "boolean",
  483. "category": "advanced",
  484. "description": "Material dissolves in liquid"
  485. },
  486. {
  487. "key": "required_nozzle_HRC",
  488. "label": "Required Nozzle HRC",
  489. "type": "number",
  490. "category": "advanced",
  491. "description": "Minimum nozzle hardness required",
  492. "min": 0,
  493. "max": 100
  494. },
  495. {
  496. "key": "filament_start_gcode",
  497. "label": "Filament Start G-code",
  498. "type": "text",
  499. "category": "gcode",
  500. "description": "G-code executed when switching to this filament"
  501. },
  502. {
  503. "key": "filament_end_gcode",
  504. "label": "Filament End G-code",
  505. "type": "text",
  506. "category": "gcode",
  507. "description": "G-code executed when switching from this filament"
  508. },
  509. {
  510. "key": "filament_loading_speed",
  511. "label": "Loading Speed",
  512. "type": "number",
  513. "category": "ams",
  514. "description": "Speed for loading filament",
  515. "unit": "mm/s"
  516. },
  517. {
  518. "key": "filament_loading_speed_start",
  519. "label": "Loading Start Speed",
  520. "type": "number",
  521. "category": "ams",
  522. "description": "Initial speed when loading filament",
  523. "unit": "mm/s"
  524. },
  525. {
  526. "key": "filament_unloading_speed",
  527. "label": "Unloading Speed",
  528. "type": "number",
  529. "category": "ams",
  530. "description": "Speed for unloading filament",
  531. "unit": "mm/s"
  532. },
  533. {
  534. "key": "filament_unloading_speed_start",
  535. "label": "Unloading Start Speed",
  536. "type": "number",
  537. "category": "ams",
  538. "description": "Initial speed when unloading filament",
  539. "unit": "mm/s"
  540. },
  541. {
  542. "key": "filament_toolchange_delay",
  543. "label": "Toolchange Delay",
  544. "type": "number",
  545. "category": "ams",
  546. "description": "Delay after tool change",
  547. "unit": "s"
  548. },
  549. {
  550. "key": "filament_cooling_moves",
  551. "label": "Cooling Moves",
  552. "type": "number",
  553. "category": "ams",
  554. "description": "Number of cooling moves during unload"
  555. },
  556. {
  557. "key": "filament_cooling_initial_speed",
  558. "label": "Cooling Initial Speed",
  559. "type": "number",
  560. "category": "ams",
  561. "description": "Initial speed for tip shaping cooling moves",
  562. "unit": "mm/s"
  563. },
  564. {
  565. "key": "filament_cooling_final_speed",
  566. "label": "Cooling Final Speed",
  567. "type": "number",
  568. "category": "ams",
  569. "description": "Final speed for tip shaping cooling moves",
  570. "unit": "mm/s"
  571. },
  572. {
  573. "key": "filament_ramming_parameters",
  574. "label": "Ramming Parameters",
  575. "type": "text",
  576. "category": "ams",
  577. "description": "Ramming sequence parameters"
  578. },
  579. {
  580. "key": "filament_minimal_purge_on_wipe_tower",
  581. "label": "Min Purge on Wipe Tower",
  582. "type": "number",
  583. "category": "ams",
  584. "description": "Minimum purge volume on wipe tower",
  585. "unit": "mm³"
  586. },
  587. {
  588. "key": "filament_multitool_ramming",
  589. "label": "Multitool Ramming",
  590. "type": "boolean",
  591. "category": "ams",
  592. "description": "Enable ramming for multi-tool"
  593. },
  594. {
  595. "key": "filament_multitool_ramming_volume",
  596. "label": "Multitool Ramming Volume",
  597. "type": "number",
  598. "category": "ams",
  599. "description": "Volume to ram during multi-tool change",
  600. "unit": "mm³"
  601. },
  602. {
  603. "key": "filament_multitool_ramming_flow",
  604. "label": "Multitool Ramming Flow",
  605. "type": "number",
  606. "category": "ams",
  607. "description": "Flow rate during multi-tool ramming",
  608. "unit": "mm³/s"
  609. },
  610. {
  611. "key": "filament_long_retractions_when_cut",
  612. "label": "Long Retractions When Cut",
  613. "type": "boolean",
  614. "category": "ams",
  615. "description": "Use long retraction when cutting filament"
  616. },
  617. {
  618. "key": "filament_retraction_distances_when_cut",
  619. "label": "Retraction Distance When Cut",
  620. "type": "text",
  621. "category": "ams",
  622. "description": "Retraction distance during filament cut"
  623. }
  624. ]
  625. }