xun.zhang
ad65cdb909
ENH: add filament saved by multi extruder
...
1.Add filament flush,filament change count reduced by multi
extruder
NTOE: cases when printing by object haven't been handled
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iaaea5f8ffae2345df5a6f1dc605342d835974d48
2025-03-22 20:40:25 +08:00
lane.wei
3a55a3a1ee
FIX: context: fix the .gcode.3mf not shown issue
...
filament_self_index difference caused
JIRA: no-jira
Change-Id: Ia70fe8a8095b8067fe13bbfc9e5c39d9f3ee05d3
2025-03-22 20:40:25 +08:00
xun.zhang
3167e34e60
ENH: add greedy algorithm for filament reorder
...
1.When n becomes large,the original algorithm to get best filament
sequence will cost too much time and memory.Use a greedy algorithm
instead.Always select the next filament with fewest flush
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iabc924e1bdb0a07af0a6ef0bbdd62e54ce54f052
2025-03-22 20:32:28 +08:00
xun.zhang
adf208dbb9
FIX: multi extruder percent param
...
jira: NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I98d2f1df419bbf815efa5a2f0f48656a71ef15ab
2025-03-22 20:32:28 +08:00
lane.wei
f122c4f4ef
ENH: config: refine some small logic
...
1. always resize filament count when not matched in full_fff_print
2. remove no-use codes in Preset::normalize
jira: no-jira
Change-Id: Ie15a5977d28f28e0f63ba84f27f98f77d16665c0
2025-03-22 20:32:28 +08:00
xun.zhang
7ce2bb70df
FIX: mistake in profiles
...
1.Spelling mistake in long retraction
2.Some params length change to 4
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I8952df7a1bbf060471e24a19eaeddde017d17d82
2025-03-22 20:32:28 +08:00
chunmao.guo
1745657e22
FIX: filament variant index & override nil value
...
Change-Id: I828fff09df39a60d59af516c969466d9b09e503f
Jira: none
2025-03-22 20:32:28 +08:00
xun.zhang
e95179427f
FIX: unable to custom first layer filament order
...
jira:NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I0107ebf6a85ea0deba93ff558835138981365670
2025-03-22 20:32:28 +08:00
xun.zhang
16cadec565
ENH: add grab length
...
1.During the filament change, the extruder will extrude an extra length
of grap_length for the corresponding detection, so the purge volume can
reduce this length.
jira:NEW
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I14f55a3200c1dd48b1603e50280d0c29e1319ebe
2025-03-22 20:32:27 +08:00
xun.zhang
887ca8f45f
ENH: enable long retraction for multi_extruder
...
jira:NEW
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I41daa7a5f1eabf0a805a86d72d00544c8f4edb4a
2025-03-22 20:32:27 +08:00
zhimin.zeng
da32b878b3
ENH: add extruder_ams_count behavior
...
1. save to appconfig and project setting
2. use it to group
jira: none
Change-Id: Id4048fc1b47f6904b2e9c0154aaa3a2b03590437
2025-03-22 20:32:27 +08:00
zhimin.zeng
67f67d7688
NEW: Add FilamentMapDialog
...
support drag drop to modify the filament map
jira: none
Change-Id: I0ed3180a0fa8e95e7c871bb039eb844faccd1344
2025-03-22 20:32:27 +08:00
xun.zhang
cffb4a8564
ENH: optimize filament group algorithm
...
1.When filament <10, do the reorder with next layer.This can reduce
10% flush in some cases
2.Support custom filament seq
3.Use caches to speed the algorithm
jira:NEW
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie1af9841f7165802d350eae962efe8febafbb357
2025-03-22 20:32:27 +08:00
xun.zhang
cddf8cae27
ENH: add filament group strategy
...
1.When capacity is greater than the num of filaments, always choose the
map result that can be accommodated
2.In BestFit strategy,always try to fill up the existing capacity
3.In BestCost strategy, just try the group with fewest flush
jira:NEW
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ifd6d64b77774039e57ffff26cf2243a4d3f89054
2025-03-22 20:32:26 +08:00
zhimin.zeng
8232a716e6
FIX: fix bug when delete filament
...
update filament of HeightRange
jira: none
Change-Id: I62cb21a65ecdfc36e8bc7d0915a85ecba578e49f
2025-03-22 20:32:26 +08:00
zhimin.zeng
ed98163973
FIX: save filament_maps to slice_info
...
and fix bug when switching printer preset between single-nozzle and double-nozzle, prompt the modification of extruder_count
jira:none
Change-Id: I1d5f0b2f002493378d2f482d08cfd5a72b35b99f
2025-03-22 20:32:26 +08:00
lane.wei
3179fd416e
ENH: config: add logic to apply params to object/region config with multi-extruder
...
JIRA: no-jira
Change-Id: Ieab98cd8d031e5ca82a3aad2d0b89d8ae4a794f1
2025-03-22 20:32:26 +08:00
xun.zhang
cc81e57ac9
FIX: compatible with one extruder reorder
...
jira:NEW
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I7e350ba8728ac4b3dd34093ff4e9647d0a2ba671
2025-03-22 20:32:26 +08:00
xun.zhang
7128e2925a
FIX: logic error in filament change
...
jira:NEW
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I7e2b1333d4b82e4495375fcf4daec3aea08be445
2025-03-22 20:32:26 +08:00
lane.wei
0434853bf3
ENH: config: remove unused custome_defined logic
...
also improve project_embedded
1. remove unused is_custom_defined
2. improve project_embedded to support multi-extruder diff
jira: no-jira
Change-Id: I1db28c3cfd59ccc31c6855af30305396c71c4e9a
2025-03-22 20:32:26 +08:00
zhimin.zeng
ad03fae1eb
FIX: Clean up the code
...
1. Refactor recommended code for print by object
2. Calibration adaptation sends print command
jira: none
Change-Id: I24fd92d6aca07a7067e09bb200854e5bec72a324
2025-03-22 20:32:26 +08:00
xun.zhang
1ab2964ee3
ENH: alternate multi-head printing sequence
...
jira:NEW
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I739438e8c411b638571d5291f3e5ad3d54650a73
2025-03-22 20:32:26 +08:00
xun.zhang
f1b0805ed1
FIX: wrong flush logic
...
1.Fix flush calc logic
2.Rename m_extruder in GCodeWriter
jira:NEW
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I38f023fbad983305632ca62cbfb3909759013c25
2025-03-22 20:32:25 +08:00
xun.zhang
9ec276d3d7
ENH: new filament group algorithm
...
1.When n<10, calc all case cost
2.When n>10, first k-medoids algorithm first
3.Enable setting group size
jira:NEW
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I625f47e0235c70e440c6d489b052a156fbffca3f
2025-03-22 20:32:25 +08:00
zhimin.zeng
326d7d28b4
FIX: fix build error
...
jira: none
Change-Id: I97df69b728fc3871b7c33e1fd3ba068e741d51c7
2025-03-22 20:32:25 +08:00
zhimin.zeng
21e6271e59
ENH: calib support multi_extruder
...
1. backend support multi_extrude data structure
2. Compatible with third-party calibration
3. fix bug when get extruder in gocde export process
Change-Id: I5dac9abdd9907a521a1ba9b480f9e05640591bc1
2025-03-22 20:32:25 +08:00
lane.wei
7b7ebf1b95
ENH: config: add the extruder variant apply logic in Print::Apply()
...
we need to keep the original values and update after pre-slice
jira: no-jira
Change-Id: I232d3c43340b4a23bc42121bd05380746e736f20
2025-03-22 20:32:25 +08:00
lane.wei
4086ec60c2
ENH: config: add some miss codes
...
previous commit 'ENH: config: add nill load/save logic for user config' jira: no-jira
Change-Id: I91ab326e533d54846518d11b457db0b0afe4d499
2025-03-22 20:31:45 +08:00
lane.wei
603f93d97f
ENH: config: add nill load/save logic for user config
...
Change-Id: I8da6c5b345cc088862f2c720aeb742b9617ff3e7
2025-03-22 20:31:45 +08:00
xun.zhang
3c32b2c5a6
ENH: enable params with silent mode
...
jira:NEW
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id46fa5de3a58e0fd3c3b0aa28524a03ca9a38f1a
2025-03-22 20:31:45 +08:00
chunmao.guo
7e7e872366
FIX: config deep compare & plate config extruder switch
...
Change-Id: Iae1716e6511e252f131ab4355f9521d7611d7133
2025-03-22 20:31:45 +08:00
chunmao.guo
582b2d470f
ENH: edit object config variant value
...
Change-Id: I97490f555a8a2848ccea78f74d79f71b0e93b36d
2025-03-22 20:31:44 +08:00
zhimin.zeng
b42d94e1d0
ENH: support recommended filament map when print by object
...
1. support recommended filament map when print by object
2. placeholder_parser support function filament_change
3. extruder_id of filament_map is start from 1
Change-Id: Ide8019cd4a165a25972f22706ff685c3005aa031
2025-03-22 20:31:44 +08:00
lane.wei
5defd2b7c3
ENH: config: add extrudrer variant check logic
...
when load config from 3mf
Change-Id: I946ba777853e479418fcd1b49209f75ed41f33f3
2025-03-22 20:31:44 +08:00
zhimin.zeng
dcd9fd5013
FIX: backend get the extruder id based on filament_map
...
Change-Id: Ib7679c0fc67336e462467dab9f5b4d4684d6eb19
2025-03-22 20:31:44 +08:00
zhimin.zeng
366a14d8f7
FIX: parameters modify of printer preset
...
Ensure correct behavior when modifying parameters of printer preset
Change-Id: Ic627a8e202bf4224b742336cc43ac611ddc5c997
2025-03-22 20:31:43 +08:00
zhimin.zeng
8c8c9a967b
ENH: Add recommend filament maps method
...
Change-Id: I3945a8b9f0a57e10a1d230003f21c9877cc5f342
2025-03-22 20:31:43 +08:00
lane.wei
e770043c4d
ENH: add stride in get_index_for_extruder
...
JIRA: no-jira
Change-Id: If529296bf6d35edc35aee3ff497184dce70332d1
2025-03-22 20:31:43 +08:00
lane.wei
bbc4d701bf
ENH: add check logic of filament_map when Print::Apply
...
Change-Id: Ibab353c4b16183611d63d75bcdf5f370cb578f21
2025-03-22 20:31:43 +08:00
lane.wei
e9081ba8d4
ENH: filament: delete filament_extruder_id related logic
...
jira: no jira
Change-Id: Ie0d8e31a6a3eef0400b3ba6238f817bad4daca24
2025-03-22 20:31:43 +08:00
zhimin.zeng
5b0d525957
ENH: Display and modification of printer presets
...
Change-Id: I6a38704864fd4994a845686a299bec67f1b9b9b3
2025-03-22 20:31:43 +08:00
lane.wei
b0e3ab037e
ENH: config: add filament_maps in partplate
...
Change-Id: I1183830788e703f1d33a8a4b620b58b822283dd4
2025-03-22 20:31:43 +08:00
zhimin.zeng
f3d67a98ac
ENH: support delete any filament id
...
Change-Id: I71bcd54985b3f9e19a19d04327d00b402ec22380
2025-03-22 20:31:42 +08:00
zhimin.zeng
6fbad9ed33
ENH: flush_volume support multi_extruder and fix bug
...
Change-Id: Id6b041f71ee6e55e68a6937f24ce791caac8e708
2025-03-22 20:31:42 +08:00
zhimin.zeng
8b2544df41
FIX: Use the same api to get the extruder id
...
jira: none
Change-Id: I05b3040b176374deee3e95bc52364fe7b33bb257
2025-03-22 20:31:42 +08:00
qing.zhang
8af6f6d13b
ENH: implement mult extruder params
...
Jira: none
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I906b106aa4c73272a418528db0e964d9130b0dd7
2025-03-22 20:31:42 +08:00
lane.wei
03058ba29d
NEW: config: add logic in config system to support multiple extruder
...
1. add nozzle_volume_type
2. add extruder_variant_list
3. add printer_extruder_variant,print_extruder_variant, filament_extruder_variant
4. construct backend fullprintconfig
Change-Id: I50659634e2cde363112ff5ded6c199d7548c6f2f
2025-03-22 20:31:42 +08:00
zhimin.zeng
e1d1d3e8ca
FIX: support more than 16 extruders
...
jira: none
Change-Id: I169f672b99088b0a0a0132265d958e3239051744
2025-03-22 20:30:23 +08:00
zhimin.zeng
6b09cfee71
FIX: modify parameter type of process preset
...
jira: none
Change-Id: I5c973a29e5b983e3f480d55aeeb2b14d13e950ee
2025-03-22 20:30:22 +08:00
qing.zhang
7da565f058
ENH: remove the appended T cmd after change filament
...
Jira: none
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Id5da64626b7343a71dcb38c06f5b5caf43ec40e2
2025-03-22 20:28:08 +08:00