SoftFever
7cc572be47
Add PA-profile sharing toggle to the device send dialog
2026-07-16 02:47:47 +08:00
SoftFever
d591d50ca0
Show the print-failure snapshot in the device error dialog
...
When a print fails, DeviceErrorDialog now fetches the printer's captured camera
frame of the failure and shows it in place of the generic HMS illustration,
falling back to the local image and a drawn placeholder on older plugins or errors.
- Agent: add get_hms_snapshot through NetworkAgent / IPrinterAgent (BBL calls the
bound plugin symbol; other agents no-op, so old plugins degrade gracefully).
- DeviceManager: parse and clear m_print_error_img_id from the print-error message.
- Dialog: tiered cloud/local/placeholder image reusing the single image widget,
with a liveness-guarded async callback decoded on the UI thread.
2026-07-16 01:44:43 +08:00
Noisyfox
246f2d32bf
Merge branch 'main' into dev/ams-heat
...
# Conflicts:
# src/libslic3r/Preset.cpp
# src/libslic3r/PrintConfig.hpp
# src/slic3r/GUI/DeviceCore/CMakeLists.txt
# src/slic3r/GUI/DeviceCore/DevDefs.h
# src/slic3r/GUI/DeviceCore/DevFilaSystem.cpp
# src/slic3r/GUI/DeviceCore/DevFilaSystem.h
# src/slic3r/GUI/DeviceCore/DevUtilBackend.cpp
# src/slic3r/GUI/DeviceCore/DevUtilBackend.h
# src/slic3r/GUI/DeviceManager.cpp
# src/slic3r/GUI/DeviceManager.hpp
# src/slic3r/GUI/SelectMachine.cpp
# src/slic3r/GUI/SelectMachine.hpp
2026-07-14 10:10:19 +08:00
SoftFever
0d31325df0
feat: Filament Track Switch (H2-series O2L-FTS) support
...
The Filament Track Switch (H2-series accessory, product code O2L-FTS) feeds
every AMS to both extruders through a two-track switch. Port full support
across the device layer, project config, and GUI.
Device / config:
- Model the switch-aware AMS binding (the set of extruders an AMS can feed
and which input track A/B feeds it), switch readiness, the O2L-FTS firmware
module, and the fun2 capability bit for checking a slice against installed
hardware.
- Register has_filament_switcher and enable_filament_dynamic_map as project
config that persists with the project and restores from a saved 3mf, and
force both back to false on every project/printer/CLI load path. Live
device sync is the only thing that sets them true.
GUI:
- Sidebar sync activates the switch from live device state, attributes each
AMS to the extruder its input track feeds, shows a floating status icon
(ready / not-calibrated), and surfaces a one-time tip / not-calibrated
warning.
- Send dialog gains a non-blocking slice-vs-hardware mismatch warning and a
blocking error when a slice needs dynamic nozzle mapping but the switch is
missing or not set up.
- AMS load/unload guards, AMS-view routing glyph + un-calibrated banner +
hidden external-spool road, and mapping-popup external-spool lockout.
- Filament pickers collapse the per-extruder split into a single deduplicated
"AMS filaments" group with a smart-assign toggle when the switch is ready.
- Firmware-upgrade panel lists the O2L-FTS accessory and its version.
- Device-provided filament-change steps (ams.cfs) drive the change-step
display when firmware sends them, including the three switch steps.
- "Load current filament" asks which extruder to feed via a
FeedDirectionDialog when the switch is calibrated.
Inert without the accessory: every path is gated on the switch being
installed (MQTT aux bit 29, default off) or ready, both project flags default
false, and the per-extruder AMS attribution is byte-identical, so AMS state,
the send/load UI, and sliced g-code are unchanged for every printer that does
not report a Filament Track Switch.
2026-07-09 18:57:05 +08:00
SoftFever
28b7127150
feat(gui): multi-nozzle UI for H2C/A2L
...
Multi-nozzle sync widget, AMS rack-nozzle mapping popup, calibration rework, send-dialog nozzle mapping and extruder-count UI. Includes the fix to persist the AMS sync badge on filament cards (H2C/A2L and direct-sync printers).
2026-07-09 01:16:26 +08:00
Noisyfox
922af972c7
refactor: convert m_fila_system from raw pointer to shared_ptr
...
Matches BambuStudio commit c8f70c6ca. DevFilaSystem* m_fila_system
becomes std::shared_ptr<DevFilaSystem>, enabling proper shared ownership
for the AMS drying control feature without no-op deleter hacks.
- DeviceManager.hpp: m_fila_system and GetFilaSystem() use shared_ptr
- DeviceManager.cpp: std::make_shared allocation, remove manual delete,
add .get() to ParseV1_0 calls
- MoonrakerPrinterAgent.cpp: add .get() to GetFilaSystem() in ParseV1_0
2026-07-07 17:29:10 +08:00
Noisyfox
f713c7ae49
Make sure codes uses same structure/naming/position as BambuStudio
...
for easier code comparasion & porting in the future
2026-07-07 17:07:40 +08:00
Noisyfox
dd5b755f60
feat: add drying status JSON parsing and DevAms helper methods
...
Parse dry_status, dry_sub_status, dry_fan statuses,
dry_settings, and dry_cannot_reasons from printer JSON.
Implement IsSupportRemoteDry, AmsIsDrying, get_ams_drying_preset.
Co-Authored-By: Claude <noreply@anthropic.com >
2026-07-07 13:09:32 +08:00
Francesco Palmarini
d614917d1d
Fix H2D LAN print job routing ( #13662 )
2026-05-16 01:09:31 +08:00
Noisyfox
fb1f4a7d24
Automatically select external spool if it's the only installed filament ( #13356 )
...
* Clean up code
* Filament mapping select ext slot automatically when no AMS filament inserted (OrcaSlicer/OrcaSlicer#13103 )
* Show warning if external filament type does not match the one in sliced file
2026-05-09 13:14:27 +08:00
SoftFever
978e3b79b5
refactor
2026-01-26 19:34:14 +08:00
SoftFever
9703a6b4d7
init
2026-01-23 17:05:56 +08:00
Maciej Wilczyński
a4d4bfff27
Allow selecting specific network plugin versions
2025-12-14 14:26:16 +01:00
milk
ffab04262d
ENH:Add thermal precondition
...
jira:[STUDIO-13970][STUDIO-13904]
Change-Id: I4b4fa27da1a65e0019c5f4c1dcc099c92189bf50
(cherry picked from commit 92dbde8385fec9719e0e9cfde764421793decd4d)
2025-10-28 15:30:05 +08:00
hemai
104cbb7b9b
ENH: support E3D print parts display
...
Jira: [STUDIO-14908]
Change-Id: Ie8273eb6f74a3e7508f440d2092bb48f2e1dbb10
(cherry picked from commit a4218e991e6367e3f1ee3802e785802df2ad6d41)
2025-10-28 15:30:00 +08:00
xin.zhang
c382a8a9c3
ENH: support_clump_position_calibration
...
jira: [STUDIO-14896]
Change-Id: I2913a1e4022686889aaa94ee31b787930200d02d
(cherry picked from commit 14370c8910878c2182189b42e013c1323615c310)
2025-10-28 15:30:00 +08:00
hemai
4a51ef7f91
FIX: update proceed action ack param
...
Jira: [STUDIO-14689]
Change-Id: If424997b9ed05ab95f048424b8950f927ea9b608
(cherry picked from commit 8c712f49caf7a7f0d0fcef7a7c392170ae699ba4)
2025-10-28 15:29:57 +08:00
haolin.tian
aa75c444aa
NEW: print with emmc
...
jira: [STUDIO-14427]
Change-Id: I8b0c56ce1c2b7b90949b72c49acfdbb31c876df1
(cherry picked from commit 76e45bde2540ee418719e00b999c5fd724baec71)
2025-10-28 15:29:57 +08:00
xin.zhang
491100a9d2
ENH: support AMS switching for A series; clean class AMSSetting
...
jira: [STUDIO-14068] [STUDIO-14330]
Change-Id: I6281fbf56f3bf406ef28103998790a2a98c3f5c0
(cherry picked from commit 8ee02ec73076691c482ea6d089a49ea1c99ad10c)
2025-10-28 15:29:55 +08:00
milk
7608195e17
FIX:add idel heating protection
...
jira:[STUDIO-14359][STUDIO-14431]
Change-Id: I2ecb6c78c4b28d6f14c45dbb1f905b95a9d8c4ab
(cherry picked from commit f6eee61915b47321c1cb44e3ff2306875c32466b)
2025-10-28 15:29:54 +08:00
xin.zhang
8863631c92
FIX: filament loading steps
...
jira: [STUDIO-14428]
Change-Id: I68612346ef9cb50e302323daa47421c22a87be97
(cherry picked from commit 9fb4b9b6a3a16b08d9dc52a4d6dbc15044275dcf)
2025-10-28 15:29:51 +08:00
hemai
9360733661
ENH: support proceed action
...
Jira: [STUDIO-13620]
Change-Id: I4ec96fc3adab517196b9725a54241575288c3bbf
(cherry picked from commit 240e26147917c32749427f31ebe7623500334ed6)
2025-10-28 15:29:50 +08:00
xin.zhang
fedcfc4ea5
ENH: support extension tool; support check extension tool
...
JIRA: [STUDIO-14122] [STUDIO-14162]
Change-Id: I147d335420fcc7c9a190f570863e38e138cdadcf
(cherry picked from commit db83b9fb6c6399d917b27b74cc573d668737c705)
2025-10-28 15:29:47 +08:00
hemai
a397a7378a
ENH: refresh nozzle info from studio
...
Jira: [STUDIO-13650]
Change-Id: I12dc26d5730c761ccc91d3a4a5f120d422d8a0ff
(cherry picked from commit 2bd7cd9a6a4d9c3370491fb4323a1aabe9a45578)
2025-10-28 15:29:47 +08:00
xin.zhang
1494731eab
FIX: check with internal filament type
...
jira: [STUDIO-14216]
Change-Id: I89e0d62b572872d7e2ea8e6e57ac662b64baf92b
(cherry picked from commit 6767c2334bbfcffa41d4d020ee4f2e183a327cee)
2025-10-28 15:29:47 +08:00
Noisyfox
b2047ba563
Merge branch 'main' into dev/h2d-2
...
# Conflicts:
# localization/i18n/list.txt
# src/slic3r/GUI/CalibrationWizardPresetPage.cpp
# src/slic3r/GUI/DeviceManager.cpp
# src/slic3r/GUI/DeviceManager.hpp
# src/slic3r/GUI/Printer/PrinterFileSystem.cpp
# src/slic3r/GUI/Printer/PrinterFileSystem.h
# src/slic3r/GUI/SelectMachine.hpp
# src/slic3r/GUI/SendToPrinter.cpp
# src/slic3r/GUI/SendToPrinter.hpp
# src/slic3r/GUI/StatusPanel.hpp
# src/slic3r/GUI/Widgets/AnimaController.cpp
2025-10-24 09:59:00 +08:00
zhimin.zeng
2d273b43b6
FIX: the display name of auto cali is incorrect
...
jira: none
Change-Id: I873a6a74babe63ad05bc7f74eaa698b08987d375
(cherry picked from commit 316829c8de708b8b555fd1ca176aae834253cd65)
2025-10-05 00:07:30 +08:00
haolin.tian
90830ab2ea
FIX: Sync AMS settings after device certificate installation
...
jira: STUDIO-14191
Change-Id: If4a02ed6f2c5ef111f0c7086b138e3dabc8ed1dd
(cherry picked from commit 172824c4b93f6b3eb197481efc38a262774ef313)
2025-10-05 00:03:56 +08:00
xin.zhang
eb1eb7e81a
ENH: add new part: extinguish
...
JIRA: [STUDIO-11578]
Change-Id: I39dc15fe022f38d8c775c2675120bbbce05f95f3
(cherry picked from commit 25dc4e37e3681a840df9af7d98bbb134082492ab)
2025-10-03 21:45:14 +08:00
haolin.tian
6121a420f1
ENH: add text to specify active tunnel
...
JIRA: [STUDIO-13803]
Change-Id: Ia6af5ba881c93a1d284295b244d19b39aee2ae91
(cherry picked from commit cb6c6afeee3e519aca87ac82eacc4b85fda63f65)
2025-10-02 13:46:23 +08:00
xin.zhang
ac4b3696ab
FIX: check axis at home
...
jira: [STUDIO-13678]
Change-Id: If9363485ce2ccd434f5c22c0484c6420bbfb67c8
(cherry picked from commit 04e7e8d00f885fbe4ce4ff86ea2897c61e909881)
2025-10-02 10:00:13 +08:00
xin.zhang
4a787f6ff8
ENH: clean codes about device
...
JIRA: [STUDIO-13609]
Change-Id: I591de7033360b9570600006cfbce2148a8d031d5
(cherry picked from commit e9c774be8f4c89b8dafa14ef56913612fb68bd0c)
2025-10-02 09:30:48 +08:00
haolin.tian
e17c8bfb80
FIX: remove legacy MQTT optimizations; disconnect previous printer on switch
...
jira: STUDIO-13455
Change-Id: I88f48801f443b3830fbd2bccbc53577f615e6d96
(cherry picked from commit 562ac1a3e7e75e1cab5e42ab09cec719bf698184)
(cherry picked from commit 5143086c5efb4d974e27ba4f55bd82752ded0a93)
2025-10-01 23:32:08 +08:00
zhimin.zeng
1ccdf7b43b
ENH: add wrapping detection
...
jira: STUDIO-13192
Change-Id: I0fb5692b18cdb3b7af624a831dcfb0f635b165f0
(cherry picked from commit 89a8b6ea5e34340cba3750416ce3100dcc39f5c2)
(cherry picked from commit 50bc8c10a7b4ddc0b2dfe9cbab438b9d307b7fc0)
2025-09-30 15:32:44 +08:00
xin.zhang
a5c6450cc5
ENH: support command error dialog; support clean print error; support stop ams drying
...
JIRA: [STUDIO-12441] [STUDIO-13123] [STUDIO-12372]
Change-Id: I87170f1f51c1e24f6eee61deb07d06ff6b53a884
(cherry picked from commit 1ec5382f14ebf06d8f3ed128e377243665434ca6)
2025-09-30 11:27:16 +08:00
haolin.tian
d6e87fc0b7
ENH: delete useless function, delay start_device_subscribe after mqtt_connect called
...
jira: [STUDIO-13135]
Change-Id: Ibce80b043d08f6c1c7baa6611c3cfa2f0c85f2f5
(cherry picked from commit c2ff073525937fb571ea8d3bfae55231adaa691d)
2025-09-30 09:11:39 +08:00
zhimin.zeng
7f71c59490
FIX: Upgraded P1P to P1S shows up again as a P1P
...
jira: STUDIO-12944
Change-Id: If234cbd96cffa547e9cae47a71875efd1b097a25
(cherry picked from commit 2fa053dadef5750d1888743866ebca2867c85f7a)
2025-09-29 23:46:13 +08:00
hemai
a7ad18e66e
ENH: support multi-color with external
...
Jira: [STUDIO-12520]
Change-Id: I34c88b6a84514a0e56e65723f91d1a2940128e8d
(cherry picked from commit b8879ec648e038080628190fc363251229bbd5ee)
2025-09-28 17:13:54 +08:00
xin.zhang
fcbad94b91
FIX: check filament type instead of filament id
...
jira: [STUDIO-12954]
Change-Id: Iab008c698e6c71a6df2ac4a81801681eb4b94d6c
(cherry picked from commit 295a6d51ab2f59bfeef84e9ff33dac3c0aea1d93)
2025-09-28 14:57:48 +08:00
milk
7a59122f7a
ENH:refine printer function option
...
jira:[STUDIO-12357]
Change-Id: Ie48fb2302279795f41f8b65856bd64b64d2b14f3
(cherry picked from commit 1af87a5309a311e1c2d2c96d757ed7723bd373fb)
2025-09-28 11:39:53 +08:00
xin.zhang
1e9febbe4d
ENH: add some support for fan control
...
jira: [STUDIO-12076] [STUDIO-12373]
Change-Id: I04e23acc802987dc7a657274074abb961f692896
(cherry picked from commit 359d52c9139b7a1aae59b990dc03f45ce4a1bc89)
(cherry picked from commit 9e16d9a4a6ce059dc134ffd388b753490dff0946)
(cherry picked from commit 4cdd1937fea90c3dd1cf0c73a7cd5172346abb40)
2025-09-28 11:35:50 +08:00
hemai
5bc21568cf
ENH: advance part skip dialog
...
Jira: [STUDIO-12687]
Change-Id: Ie6805c57f478ae5a10f81b49dc5a4e45fb40dbc7
(cherry picked from commit 8ed17efc32f8c635dc50e27bf7146fd2eb70941d)
2025-09-26 14:25:55 +08:00
hemai
df5bf0ae29
ENH: support parts skipping function
...
Jira: STUDIO-12687
Change-Id: I244cb611954590bd5e741f0d2701f359426a33a2
(cherry picked from commit e7e90e0f8ca0106a51d18d83efa0de56b332ddc0)
2025-09-26 10:55:19 +08:00
milk
10428f71c0
ENH:Optimization of File Transfer System Part2
...
jira: [STUDIO-11777]
Change-Id: I12744db7d2e3b53425454d632533768c54524677
(cherry picked from commit 4358e9ce351c5784e392a75d1ffcf2f54e1916ec)
2025-09-26 10:55:19 +08:00
milk
32c055ca7a
ENH: Optimization of File Transfer System Part1
...
jira: [STUDIO-11777]
Change-Id: I733fd3532caa19546763ab8a72eb7667d5ffec53
(cherry picked from commit aa52c99076a78e2c8fd8d4e4b0b64de0bc761469)
2025-09-26 10:55:19 +08:00
Kunlong Ma
70c0b116fc
FIX: fix some issue in sending files to external storage through cloud
...
JIRA: STUDIO-9372 STUDIO-9374 STUDIO-9368
If the printer version does not support uploading, the original protocol
will be used
Change-Id: I3d47ac2567c2c6709a5b983ff1ad552d9a8606d4
(cherry picked from commit b8dde8ae7f4f5883fc163c57bb607a08ecdabf2b)
2025-09-26 10:55:19 +08:00
noisyfox
69d5b4ae48
Fix build error when PCH is not used
2025-09-25 20:33:50 +08:00
xin.zhang
8f943486a1
ENH: add wiki for replacing nozzle
...
jira: [STUDIO-12864]
Change-Id: I3804d3599eb8746902f23b59626fe8c04e949dca
(cherry picked from commit b9428cd32ff8c1c748377cab1e5539fed911177d)
2025-09-25 17:21:47 +08:00
xin.zhang
2d23db7890
ENH: support mqtt control
...
jira: [STUDIO-12442]
Change-Id: I51e43692c692c910e94d4e67349a70377b057d1c
(cherry picked from commit 5c4c3c7f953a980aebfaed5120a65e81ba79b56f)
2025-09-25 17:18:25 +08:00
xin.zhang
a339677d08
NEW: add some filament check supports for printers
...
JIRA: [STUDIO-12604]
Change-Id: Ic0e7b517319621907c3c6b8ad82dbcf881c780e8
(cherry picked from commit 55a8c98e9125cdacc801ecebfd82acdcc3e8e7f7)
2025-09-25 16:38:56 +08:00