Commit Graph

248 Commits

Author SHA1 Message Date
jiangkai.zhao 17771d0fbf ENH: Add gaps in the outer wall of the wipe_tower
and modify the path of travel to the wipe_tower after flushing

jira:none

Change-Id: Id4b0571fd12372c59cf522c13e256c7cc4ac3565
2025-03-23 20:15:00 +08:00
zhimin.zeng ae62f7b8e4 ENH: add timelapse gcode for multi_extruder
and add most used_extruder for print by object
jira:none

Change-Id: I021069e865992828b098d73c0d704ba7edbd55d8
2025-03-23 20:14:41 +08:00
zhimin.zeng 8a6b9851db ENH: wipe tower add solid infill for support filament
jira: none

Change-Id: I438e06b5e50259d5a9caefbc0d8580187c2b7051
2025-03-23 20:14:41 +08:00
xun.zhang c75285002a FIX: some filament group related bugs
1. Ignore machine filaments without enougn info

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I8973645555ae1d0986f90838797652258c4b57ac
2025-03-23 20:14:29 +08:00
xun.zhang f1445ff047 ENH: enhance extruder unprintable area detection
1. Detect unprintable area for extruder when slicing
2. Always do filament map again if object pos changed

jira:STUDIO-9473

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ic01b8be8e3b08ba6b34efb2d3c451c9e985a03e8
2025-03-23 20:14:28 +08:00
xun.zhang 759d78dd2b ENH: save filament change count in gcode result
1.Save filament change count per filament

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I26e7963c0b5fdcca7c7d0ec5590c3f40c1fc5eed
2025-03-22 22:18:39 +08:00
zhimin.zeng bb2b81dc99 FIX: fix the error travel and wipe path of wipe tower
jira: none
Change-Id: Ib195cfc87a08f367e5d722b4af85cd33b1d1efdc
2025-03-22 22:14:56 +08:00
zhimin.zeng 1fe49fb2d1 FIX: some gcode path errors of wipe tower
jira: none
Change-Id: Ic669e95ecc32a232676c86e89fa1a6fe092efa36
2025-03-22 22:13:32 +08:00
zhimin.zeng 7d44a8bdca ENH: support circle speed compensation
Jira: none

Change-Id: I05f31ff26463cdf6fd900f8f1ca6cf0e0b283925
2025-03-22 22:13:31 +08:00
zhimin.zeng 620b6053d8 FIX: crash in new wiper tower
jira: none
Change-Id: I3d9b59b15ab93da201e07670155af28b7596081c
2025-03-22 22:12:07 +08:00
xun.zhang 95e49986f3 ENH: seperate statitics for auto for flush mode
1.Compare stats of AutoForFlush with other filament map modes
2.Refine the function signature of filament group

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iec2aff069d8c44343df8b82f045c61354c7d1c2a
2025-03-22 22:10:53 +08:00
xun.zhang 414a2105c9 ENH: refactor filament group
1.Seperate min flush max flow solver
2.Add "best match" mode for filament map
3.Refine code strucuture

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If4ba09a0320366b862cec59f8ed1f22c392c53b9
2025-03-22 22:10:53 +08:00
xun.zhang e45f8c6dc2 ENH: filament map params switch to global param
1.Add more filament map modes
2.Filament map and mode are set as project config
3.Plate filament map is only valid when plate filament mode is
manual

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I33b2f853e0b77b9d605be1f2f1172b44df43da15
2025-03-22 22:10:52 +08:00
xun.zhang cfa669c2cb FIX: pre cooling crash with change gcode
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I26a1d7ef1114c2c3aaa2bb95465da3d5b15c3a90
(cherry picked from commit c4beb3887366965ad653661da1a7c361b3426bf8)
2025-03-22 22:10:52 +08:00
zhimin.zeng 64aa4e63fe FIX: the speed of wipe tower wall is incorrect
after nozzle change gcode(for old wipe tower)
jira: none

Change-Id: Ifa4d27d112c180ab9fb9c6ef39f95b28a5f8c55a
2025-03-22 22:10:52 +08:00
qing.zhang e7b9e81e84 ENH: smoothing z direction speed
Jira: none

get z direction continuous info
smoothing speed based on the max speed of the loop
rewite the pipeline
set perset param to enable z smoothing function

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ib0e6a6a353c92a441a0c99a8d3d7902f7aeae6df
2025-03-22 22:09:16 +08:00
zhimin.zeng c6e117fef0 FIX: the wipe tower is not show when enable smooth timelapse
jira:none

Change-Id: Iab7994e1ba15d09effe9ad57aebbe9520459f7cd
2025-03-22 21:57:56 +08:00
zhimin.zeng e1e0de6efb ENH: wipe tower support filaments that do not adhere to each other
jira:none

Change-Id: Ia52340f4e8bdb34791cb2019e9763bddfbc8dc5f
2025-03-22 21:57:56 +08:00
zhimin.zeng 78de72137e FIX: the error offset of nozzle change gcode
jira: STUDIO-9133
Change-Id: Ibc56d6d735a24cf2e18b7c87f91c83bdff30228b
2025-03-22 21:54:20 +08:00
zhou.xu 7cc21b5e97 NEW:add "obj preview thumnailData" function
jira: none

Change-Id: I688c2f05bf85fca376418115acddb5066ef980eb
(cherry picked from commit 16f2b2bcb5fd157f25aa7012dabd99a8d31aec07)
2025-03-22 21:54:20 +08:00
zhimin.zeng 04d7c3485a FIX: the speed override not recover
jira: none
Change-Id: I322206768435942dccd4ad233ad09aeaad080a1a
2025-03-22 21:54:20 +08:00
zhimin.zeng 7cc564fcc9 FIX: fix build error
jira: none
Change-Id: Ie732916565536fc86b8dbf19b24ea99541f54772
2025-03-22 21:35:57 +08:00
zhimin.zeng 0d55524fca FIX: fix the error retract of nozzle change
jira: none
Change-Id: I4773307263cbbca0955dd44bbf046e45d91f1b5f
2025-03-22 21:35:24 +08:00
xun.zhang 6cf0e2451e FIX: support pre heating without wipetower
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibcd3aacb9eede8bc054669f8fff98ea25f8e5d09
2025-03-22 21:35:24 +08:00
xun.zhang f625202c2b FIX: remove file exception
1.Use boost::nowide::remove instead of std::remove

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ic674ea0791342d77418d1a0de3289d6027f967b1
2025-03-22 21:35:24 +08:00
qing.zhang 666e49e299 ENH: get first filaments & non support filament
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I9370e48b634f21a2d3fd11d437f699b5cdb5ce43
2025-03-22 21:32:41 +08:00
qing.zhang e0508a9e51 ENH: get most used extruder id
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I9c498cefb07b3bdf89a17bfd75a3075c2294c934
2025-03-22 21:22:25 +08:00
xun.zhang b104e138dd ENH: pre cooling and heating
1.Rely on nozzle change tag instead of T command to detect
extruder free range
2.Support enhance cooling for TPU filaments
3.Fix a negative temperature issue
4.M104 commands add params to specify that command is generated
by slicer

jira: NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I2d157e5a84da75e656d3281cf38eea8697bd897a
2025-03-22 21:12:54 +08:00
zhimin.zeng 78eea0a36f FIX: the wipe tower is not correct for tpu
jira: none
Change-Id: I79ed204638602013d73525e23a2b74af2c0efff2
2025-03-22 21:11:22 +08:00
lane.wei 43773d7701 ENH: buildvolume: add logic to support extruder_printable_height
jira: no-jira
Change-Id: I962c4aed8c536c0fd8b89ae090cd0463c5d645db
2025-03-22 21:11:22 +08:00
zhimin.zeng 00810d685d ENH: add print_outer_first for wipe tower
and modify the min_depth_per_height
jira: none

Change-Id: I4860df661b4dd1f66677112d14e60560bc4a73be
2025-03-22 21:10:13 +08:00
xun.zhang 7b5818fe6c ENH: seperate reorder from toolorder construct
1.Only do reorder if requseted.In by object mode,we only need
to collect the filaments in the object for filament grouping

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id88f2449c6d3c5d45b9ff87513308d997fa72da1
2025-03-22 21:10:13 +08:00
zhimin.zeng 933adbaaf0 ENH: Add extruder_printable_height
to support different printable height of multi_extruder
jira:none

Change-Id: I265c65e15fc8f598c3456556557bb6977b5de820
2025-03-22 21:09:55 +08:00
xun.zhang 242554557b FIX: filament group crash in cli mode
1.Always do filament group to get correct filament map

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie4e61c310f6c0cfeacb2a49c4f065f9674b6a35f
2025-03-22 21:09:55 +08:00
zhimin.zeng 02c2fb6f6c FIX: fix crash of slice
jira: none
Change-Id: I68b1557d5a361d175abdff99a0542ca105b76f7f
2025-03-22 21:09:55 +08:00
zhimin.zeng 50b3d0097e ENH: enhance for wipe tower
1. modify the start position of wall
2. modify the overlap of wall and infill
3. print wall first
jira:none

Change-Id: I1b3f4a8cb198f84b81aba638cc722dedf84a164c
2025-03-22 21:09:20 +08:00
xun.zhang 8616784886 ENH: use physical extruder map to get ext id
jira: NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibfaacfc31863404153a80289bd5cb47d72418060
2025-03-22 21:09:19 +08:00
zhimin.zeng 83681128e0 FIX: slice crash with incorrect filament_map of single printer
jira: none
Change-Id: I49bdcf03fc8abb24e41e0545e2d9cd3c55941df4
2025-03-22 21:09:19 +08:00
xun.zhang d3c1c36a68 ENH: preheat extruder before filament change
1. Pre cooling extruder after the extruder used
2. Pre heating before the extruder used
3. Refine the structure of finalize function

jira: NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I98c92763c006fc9564db45a4a5d542b891ea1aa2
2025-03-22 21:09:15 +08:00
xun.zhang a289370b19 ENH: save filament sequences in gcode result
jira: NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I79c2eb4002c72568d487df417c914ab0b8a14a67
2025-03-22 20:58:37 +08:00
xun.zhang c6ddd329e3 FIX: disable unprintable logic for single ext
1.Disable unprintable logic for single extruder printers

jira: NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iecb4cc80455288925d3acb5688b81aa9ef1c3a8a
2025-03-22 20:58:36 +08:00
zhimin.zeng acd6016fc8 FIX: add object id for gcode check
and display plater limit error individually
jira: none

Change-Id: Ie6105642667530901be494b344ce853e728ae5fa
2025-03-22 20:58:36 +08:00
xun.zhang e3f4496adf ENH: modify filament group strategy
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iac837beeb7a5c4684aea38c3e3925a67cd916fe8
2025-03-22 20:58:14 +08:00
xun.zhang 21379e1336 ENH: do not consider empty filament
1. Do not consider empty filament when selecting group for ams
2. Function "collect_filaments_in_groups" is frequently called,
optimize memory allocation to speed up.

jira: NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iad8c9a257bc2dd832c77e650f8c052fb9d8379a0
2025-03-22 20:58:13 +08:00
xun.zhang 13df1ee7ba FIX: invalid pop up when changing machine profile
1. Machine with multi extruder should set length of extruder offset
to extruder num
2. Register retract_restart_extra

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ic3eb324cb91dc70b091c8922936d2709c361cc38
2025-03-22 20:58:13 +08:00
xun.zhang 48023e4c15 FIX: empty filament map
1.Caused by uninitialized filament map in mapping for AMS

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I71ce6001fc6f2e72eb9303fcaba0bac16ad70dc9
2025-03-22 20:58:13 +08:00
xun.zhang 3cfb49a1b9 ENH: refine filament group algorithm
1.Use max flow network to handle limit
2.Support setting master extruder id
3.Fix the issue in the KMedoids algorithm where data is overwritten
after each retry.

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Idd2bedf39f61e7a65eb4199852f60b8fbebe0a7d
2025-03-22 20:58:12 +08:00
zhimin.zeng d715353fa6 FIX: fix the crash bug when slicing
jira: none
Change-Id: Ieaec4fda4c653e6595322356bd16226640d2e932
2025-03-22 20:54:17 +08:00
zhimin.zeng 20837717d4 FIX: When the printer is inconsistent with the current preset
when the ams is 0/0, should not consider the print connect status
jira:none

Change-Id: I2288ff15894d5c734a98b830df6678cab2bd12fc
2025-03-22 20:54:17 +08:00
xun.zhang b34395358b ENH: support virtual G1
1.We need virtual G1 command for statistics

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I0db0f7f0f0c2d61e43582154e0bd76bd0097c8da
2025-03-22 20:54:16 +08:00