Files
OrcaSlicer/src/slic3r/GUI
Lam Wei Lun adcc470cff feat: add filament mapping and AMS capability gates for the orca printer agent
Parse connector-scope capabilities from get_capabilities: supported_features, capabilities.protocol.features and supported_commands are read for orca devices even when the reply has no flags block, reset before each parse, and left untouched for Bambu.

Gate macro-backed AMS commands on fms plus the advertised command (change filament, select tray, control, user settings, RFID, drying stop); gate slot metadata writes on filament_slots. Unknown capability is not support.

Serialize PrintParams::ams_mapping2 into print.gcode_file.filament_mapping with the array position as filament_index and {255,255} dropped. The field is omitted when empty, so an unmapped print stays byte-identical. A mapped print is refused visibly while ORCA_FILAMENT_MAPPING_CORRELATION_VERIFIED is false or the connector did not advertise filament_mapping; the GUI predicate shares the serializer's definition so both gates agree. Refuse a partially mapped print that leaves a used filament without a target.

Return a non-success result from start_local_print_with_record so PrintJob falls back to start_print instead of treating an unsent print as success.

Tests cover serializer keying and omission, GUI/agent gate agreement, payload shape, the with_record result, capability parsing, and the per-command AMS gate.
2026-09-26 22:50:58 +08:00
..
2026-09-18 17:24:47 +08:00
…
2026-09-18 19:07:03 +08:00
2026-09-18 19:07:03 +08:00
2026-07-29 19:37:17 +08:00
2025-10-05 16:02:17 +08:00
2026-09-14 14:16:02 +08:00
2026-08-21 18:36:30 +08:00
2026-06-07 13:12:51 +08:00
2026-07-18 03:15:11 +08:00
…
2026-08-31 18:01:15 +08:00
2026-08-31 18:01:15 +08:00
2026-09-22 20:50:18 -03:00
2026-08-31 18:01:15 +08:00
2026-08-23 22:11:49 +08:00
2026-06-18 09:13:51 -03:00
2026-09-18 19:07:03 +08:00
2026-09-18 19:07:03 +08:00
…
2026-07-24 09:41:24 -03:00
2025-10-28 15:29:56 +08:00
2025-10-28 15:29:56 +08:00
…
2026-08-23 22:11:48 +08:00
2026-09-11 15:46:20 +08:00
2026-07-02 17:49:36 +08:00
2026-07-02 17:49:36 +08:00
2026-08-06 06:08:02 +08:00
2026-06-18 09:13:51 -03:00
2026-09-18 15:59:00 +08:00
2026-09-18 19:07:03 +08:00
2026-09-18 19:07:03 +08:00
2026-02-04 11:40:02 +00:00
2026-01-23 17:05:56 +08:00
2026-07-02 17:49:36 +08:00
2026-07-02 17:49:36 +08:00
2025-10-28 15:30:06 +08:00
2026-09-18 15:59:00 +08:00
2025-10-28 15:29:56 +08:00
2026-08-23 22:11:48 +08:00