2026-05-06 23:18:48,828 WARNING [backend.app.api.routes.cloud] Failed to get cloud preset P193c1da (API ID: P193c1da): Failed to get setting detail: 400 2026-05-06 23:19:06,170 INFO [backend.app.api.routes.websocket] WebSocket client disconnected normally 2026-05-06 23:19:06,171 INFO [backend.app.api.routes.camera] Chamber image stream cancelled (stream_id=1-59c5dc86) 2026-05-06 23:19:06,171 INFO [backend.app.api.routes.camera] Stream 1-59c5dc86 cancelled 2026-05-06 23:20:48,908 INFO [backend.app.main] Recorded 1 AMS sensor history entries 2026-05-06 23:25:48,912 INFO [backend.app.main] Recorded 1 AMS sensor history entries 2026-05-06 23:29:47,618 INFO [backend.app.services.homeassistant] Turned OFF HA entity 'plug_1' (switch.shelly2_switch_0) 2026-05-06 23:29:47,619 INFO [backend.app.services.smart_plug_manager] Turned off plug 1 after time delay 2026-05-06 23:29:47,629 INFO [backend.app.services.smart_plug_manager] Auto-off executed and disabled for plug 1 2026-05-06 23:29:47,630 INFO [backend.app.services.printer_manager] Marking printer 1 as offline (smart plug power off) 2026-05-06 23:30:36,955 WARNING [backend.app.services.bambu_mqtt] [[SERIAL]] MQTT disconnected: rc=Unspecified error, flags=DisconnectFlags(is_disconnect_packet_from_server=False) 2026-05-06 23:30:38,807 WARNING [backend.app.services.bambu_mqtt] [[SERIAL]] AMS unit 0: serial number not available in version info 2026-05-06 23:30:38,808 WARNING [backend.app.services.bambu_mqtt] [[SERIAL]] AMS unit 0: firmware version not available in version info 2026-05-06 23:30:39,210 INFO [backend.app.main] [Printer 1] Broadcasting AMS change via WebSocket 2026-05-06 23:30:40,706 INFO [backend.app.main] [Printer 1] Broadcasting AMS change via WebSocket 2026-05-06 23:30:40,715 INFO [backend.app.main] [SNAPSHOT] Capturing fresh frame for printer 1 2026-05-06 23:30:40,716 INFO [backend.app.services.camera] Capturing camera frame bytes from [IP] using chamber image protocol (model: A1) 2026-05-06 23:30:40,719 INFO [backend.app.main] Auto-unlink: spool 1 AMS0-T1 — fingerprint mismatch (cur=00000000/ fp=FEC600FF/PLA spool=FEC600FF/PLA) 2026-05-06 23:30:40,720 INFO [backend.app.main] Auto-unlinked 1 stale spool assignments for printer 1 2026-05-06 23:30:40,724 ERROR [backend.app.services.camera] Chamber image: connection refused by [IP]:6000 2026-05-06 23:30:44,967 INFO [backend.app.services.bambu_mqtt] [[SERIAL]] PRINT COMPLETE detected - state: FAILED, status: failed, file: Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf, subtask: Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf, was_running: True, timelapse_during_print: False 2026-05-06 23:30:44,969 INFO [backend.app.main] [Printer 1] Broadcasting AMS change via WebSocket 2026-05-06 23:30:44,971 INFO [backend.app.main] [CALLBACK] on_print_complete started for printer 1 2026-05-06 23:30:44,972 INFO [backend.app.main] [TIMING] WebSocket send_print_complete: 0.001s elapsed 2026-05-06 23:30:44,973 INFO [backend.app.main] Print complete - filename: Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf, subtask: Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf, status: failed 2026-05-06 23:30:44,973 INFO [backend.app.main] Looking for archive in _active_prints, keys to try: [(1, 'Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf.3mf'), (1, 'Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf.gcode.3mf'), (1, 'Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf'), (1, 'Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf'), (1, 'Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf')]... 2026-05-06 23:30:44,973 INFO [backend.app.main] Current _active_prints: [(1, 'Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf'), (1, 'Self-hydrating_cat_grass_cup_自动补水无土猫草杯.3mf')] 2026-05-06 23:30:44,973 INFO [backend.app.main] Found archive 19 with key (1, 'Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf') 2026-05-06 23:30:44,978 INFO [backend.app.main] [SNAPSHOT] Capturing fresh frame for printer 1 2026-05-06 23:30:44,978 INFO [backend.app.services.camera] Capturing camera frame bytes from [IP] using chamber image protocol (model: A1) 2026-05-06 23:30:45,004 INFO [backend.app.services.spool_tag_matcher] Auto-assigned spool 1 to printer 1 AMS0-T1 (RFID match) 2026-05-06 23:30:45,004 INFO [backend.app.main] RFID auto-assigned spool 1 to printer 1 AMS0-T1 2026-05-06 23:30:46,268 INFO [backend.app.services.bambu_ftp] FTP connected successfully to [IP] (model=A1, prot_c=False) 2026-05-06 23:30:46,279 WARNING [backend.app.services.bambu_ftp] Failed to delete /Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf.3mf: 550 2026-05-06 23:30:46,426 INFO [backend.app.services.smart_plug_manager] Captured 1 energy snapshot(s) 2026-05-06 23:30:47,872 INFO [backend.app.main] [SNAPSHOT] Fresh camera frame: 102131 bytes 2026-05-06 23:30:47,877 INFO [backend.app.main] [HMS] Sent notification for 1 error(s) on printer 1 2026-05-06 23:30:48,156 INFO [backend.app.main] [Printer 1] Broadcasting AMS change via WebSocket 2026-05-06 23:30:48,919 INFO [backend.app.main] Recorded 1 AMS sensor history entries 2026-05-06 23:30:49,107 INFO [backend.app.services.bambu_ftp] FTP connected successfully to [IP] (model=A1, prot_c=False) 2026-05-06 23:30:49,119 WARNING [backend.app.services.bambu_ftp] Failed to delete /Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf.3mf: 550 2026-05-06 23:30:51,973 INFO [backend.app.services.bambu_ftp] FTP connected successfully to [IP] (model=A1, prot_c=False) 2026-05-06 23:30:51,984 WARNING [backend.app.services.bambu_ftp] Failed to delete /Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf.3mf: 550 2026-05-06 23:30:51,993 WARNING [backend.app.main] SD card cleanup failed after 3 attempts for /Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf.3mf (file may linger on SD card) 2026-05-06 23:30:52,799 INFO [backend.app.services.bambu_ftp] FTP connected successfully to [IP] (model=A1, prot_c=False) 2026-05-06 23:30:52,810 WARNING [backend.app.services.bambu_ftp] Failed to delete /Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf.gcode: 550 2026-05-06 23:30:55,649 INFO [backend.app.services.bambu_ftp] FTP connected successfully to [IP] (model=A1, prot_c=False) 2026-05-06 23:30:55,660 WARNING [backend.app.services.bambu_ftp] Failed to delete /Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf.gcode: 550 2026-05-06 23:30:58,512 INFO [backend.app.services.bambu_ftp] FTP connected successfully to [IP] (model=A1, prot_c=False) 2026-05-06 23:30:58,526 WARNING [backend.app.services.bambu_ftp] Failed to delete /Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf.gcode: 550 2026-05-06 23:30:58,531 WARNING [backend.app.main] SD card cleanup failed after 3 attempts for /Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf.gcode (file may linger on SD card) 2026-05-06 23:30:58,531 INFO [backend.app.main] [TIMING] SD card cleanup: 13.559s elapsed 2026-05-06 23:30:58,532 INFO [backend.app.main] [TIMING] Queue item update: 13.561s elapsed 2026-05-06 23:30:58,534 INFO [backend.app.services.usage_tracker] [UsageTracker] on_print_complete: printer=1, archive=19, session=yes, ams_mapping=None 2026-05-06 23:30:58,534 INFO [backend.app.services.usage_tracker] [UsageTracker] PRINT COMPLETE printer 1: mapping=None, tray_now=3, last_loaded_tray=3 2026-05-06 23:30:58,536 INFO [backend.app.services.usage_tracker] [UsageTracker] 3MF: archive 19, filament_usage=[{'slot_id': 4, 'used_g': 37.16, 'type': 'PLA', 'color': '#BCBCBC'}] 2026-05-06 23:30:58,538 INFO [backend.app.services.usage_tracker] [UsageTracker] Color-matched slot_to_tray: [-1, -1, -1, 3] 2026-05-06 23:30:58,538 INFO [backend.app.services.usage_tracker] [UsageTracker] 3MF: slot_to_tray=[-1, -1, -1, 3] (source: color_match) 2026-05-06 23:30:58,538 INFO [backend.app.services.usage_tracker] [UsageTracker] 3MF: using last_progress=22.0 (firmware reset current to 0) 2026-05-06 23:31:02,143 INFO [backend.app.services.usage_tracker] [UsageTracker] 3MF: slot_id=4 -> global_tray=3 -> AMS0-T3 (used_g=37.2, tray_now_override=None) 2026-05-06 23:31:02,144 INFO [backend.app.services.usage_tracker] [UsageTracker] 3MF: no spool assignment at printer 1 AMS0-T3 2026-05-06 23:31:02,146 INFO [backend.app.main] [TIMING] Filament usage tracking: 17.174s elapsed 2026-05-06 23:31:02,146 INFO [backend.app.main] [TIMING] Archive lookup: 17.175s elapsed 2026-05-06 23:31:02,146 INFO [backend.app.main] [ARCHIVE] Updating archive 19 status... 2026-05-06 23:31:02,146 INFO [backend.app.main] [ARCHIVE] HMS errors at failure: [{'code': '0x10002', 'attr': 83886848, 'module': 5, 'severity': 3}, {'code': '0x400c', 'attr': 50348044, 'module': 3, 'severity': 3}] 2026-05-06 23:31:02,146 INFO [backend.app.main] [ARCHIVE] Detected failure_reason from HMS: Clogged nozzle 2026-05-06 23:31:02,149 INFO [backend.app.main] [ARCHIVE] Archive 19 status updated to failed, failure_reason=Clogged nozzle 2026-05-06 23:31:02,149 INFO [backend.app.main] [ARCHIVE] WebSocket notification sent for archive 19 2026-05-06 23:31:02,150 INFO [backend.app.main] [TIMING] Archive status update: 17.178s elapsed 2026-05-06 23:31:02,152 INFO [backend.app.main] [PRINT_LOG] Log entry written for archive 19 2026-05-06 23:31:02,152 INFO [backend.app.main] [TIMING] Print log entry: 17.181s elapsed 2026-05-06 23:31:02,152 INFO [backend.app.main] [TIMING] Background tasks scheduled (energy, photo): 17.181s elapsed 2026-05-06 23:31:02,152 INFO [backend.app.main] [TIMING] All background tasks scheduled: 17.181s elapsed 2026-05-06 23:31:02,152 INFO [backend.app.main] [CALLBACK] on_print_complete finished for printer 1, archive 19 2026-05-06 23:31:02,152 INFO [backend.app.main] [ENERGY-BG] Starting energy calculation for archive 19 2026-05-06 23:31:02,153 INFO [backend.app.main] [PHOTO-BG] Starting finish photo capture for archive 19 2026-05-06 23:31:02,153 INFO [backend.app.main] [AUTO-OFF-BG] Starting smart plug automation for printer 1 2026-05-06 23:31:02,153 INFO [backend.app.services.smart_plug_manager] Print on printer 1 ended with status 'failed', skipping auto-off to allow investigation 2026-05-06 23:31:02,153 INFO [backend.app.main] [AUTO-OFF-BG] Completed 2026-05-06 23:31:02,154 INFO [backend.app.main] [LAYER-TL] Cancelled layer timelapse for printer 1 (status: failed) 2026-05-06 23:31:02,157 INFO [backend.app.services.camera] Capturing camera frame bytes from [IP] using chamber image protocol (model: A1) 2026-05-06 23:31:02,172 INFO [backend.app.main] [ENERGY-BG] Energy response: {'power': 22.3, 'voltage': None, 'current': None, 'today': None, 'total': 96.058838, 'yesterday': None, 'factor': None, 'apparent_power': None, 'reactive_power': None} 2026-05-06 23:31:02,172 INFO [backend.app.main] [ENERGY-BG] Per-print energy: 0.0279 kWh 2026-05-06 23:31:02,174 INFO [backend.app.main] [ENERGY-BG] Saved: 0.0279 kWh, cost=0.01 2026-05-06 23:31:04,817 INFO [backend.app.services.camera] Saved camera frame to: /opt/[user]/archive/1/20260506_230705_Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode/photos/finish_20260506_233102_d63cd376.jpg 2026-05-06 23:31:04,818 INFO [backend.app.services.camera] Finish photo saved: finish_20260506_233102_d63cd376.jpg 2026-05-06 23:31:04,824 INFO [backend.app.main] [PHOTO-BG] Saved: finish_20260506_233102_d63cd376.jpg 2026-05-06 23:31:04,825 INFO [backend.app.main] [PHOTO-NOTIFY] Photo task returned: finish_20260506_233102_d63cd376.jpg 2026-05-06 23:31:04,825 INFO [backend.app.main] [NOTIFY-BG] Starting notifications for printer 1, photo=finish_20260506_233102_d63cd376.jpg 2026-05-06 23:31:04,838 INFO [backend.app.main] [NOTIFY-BG] Loaded finish photo bytes: 115775 bytes 2026-05-06 23:31:04,838 INFO [backend.app.services.notification_service] on_print_complete called for printer 1 ([PRINTER]), status=failed 2026-05-06 23:31:04,842 INFO [backend.app.services.notification_service] No notification providers configured for on_print_failed event on printer 1 2026-05-06 23:31:04,843 INFO [backend.app.main] [NOTIFY-BG] Completed 2026-05-06 23:32:24,701 INFO [backend.app.api.routes.camera] Using chamber image protocol for A1 2026-05-06 23:32:24,701 INFO [backend.app.api.routes.camera] Starting chamber image stream for [IP] (stream_id=1-a194da40, model=A1) 2026-05-06 23:32:24,813 INFO [backend.app.api.routes.websocket] WebSocket client connecting... 2026-05-06 23:32:24,814 INFO [backend.app.api.routes.websocket] WebSocket client connected 2026-05-06 23:32:24,816 INFO [backend.app.api.routes.websocket] Sent initial status for 1 printers 2026-05-06 23:32:24,934 INFO [backend.app.api.routes.camera] Using chamber image protocol for A1 2026-05-06 23:32:24,935 INFO [backend.app.api.routes.camera] Starting chamber image stream for [IP] (stream_id=1-efae625f, model=A1) 2026-05-06 23:32:26,524 INFO [backend.app.services.camera] Chamber image: connected to [IP]:6000 2026-05-06 23:32:26,546 INFO [backend.app.api.routes.cloud] get_filament_info called with 4 IDs: ['P5b1ce36', 'GFA00', 'P395ad6e', 'P193c1da'] 2026-05-06 23:32:26,648 INFO [backend.app.services.camera] Chamber image: connected to [IP]:6000 2026-05-06 23:32:26,756 WARNING [backend.app.api.routes.cloud] Failed to get cloud preset P5b1ce36 (API ID: P5b1ce36): Failed to get setting detail: 400 2026-05-06 23:32:27,096 WARNING [backend.app.api.routes.cloud] Failed to get cloud preset P395ad6e (API ID: P395ad6e): Failed to get setting detail: 400 2026-05-06 23:32:27,265 WARNING [backend.app.api.routes.cloud] Failed to get cloud preset P193c1da (API ID: P193c1da): Failed to get setting detail: 400 2026-05-06 23:32:29,907 INFO [backend.app.api.routes.camera] Chamber image stream cancelled (stream_id=1-a194da40) 2026-05-06 23:32:29,908 INFO [backend.app.api.routes.camera] Stream 1-a194da40 cancelled 2026-05-06 23:32:32,455 INFO [backend.app.api.routes.camera] Closed chamber image connection for stream 1-efae625f 2026-05-06 23:32:32,455 INFO [backend.app.api.routes.camera] Stopped 1 camera stream(s) for printer 1 2026-05-06 23:32:33,976 WARNING [backend.app.services.camera] Chamber image: connection closed by printer 2026-05-06 23:32:33,978 WARNING [backend.app.api.routes.camera] Chamber image stream ended for 1-efae625f 2026-05-06 23:32:33,985 INFO [backend.app.api.routes.camera] Chamber image stream stopped for [IP] (stream_id=1-efae625f) 2026-05-06 23:33:08,274 INFO [backend.app.api.routes.smart_plugs] Updated smart plug '3D-Drucker' 2026-05-06 23:34:07,014 INFO [backend.app.api.routes.smart_plugs] Updated smart plug '3D-Drucker' 2026-05-06 23:34:07,215 INFO [backend.app.api.routes.smart_plugs] Updated smart plug '3D-Drucker' 2026-05-06 23:34:07,773 INFO [backend.app.api.routes.smart_plugs] Updated smart plug '3D-Drucker' 2026-05-06 23:34:09,792 INFO [backend.app.api.routes.smart_plugs] Updated smart plug '3D-Drucker' 2026-05-06 23:34:16,547 INFO [backend.app.api.routes.camera] Using chamber image protocol for A1 2026-05-06 23:34:16,547 INFO [backend.app.api.routes.camera] Starting chamber image stream for [IP] (stream_id=1-028242df, model=A1) 2026-05-06 23:34:17,319 INFO [backend.app.services.camera] Chamber image: connected to [IP]:6000 2026-05-06 23:34:29,482 INFO [backend.app.api.routes.camera] Chamber image stream cancelled (stream_id=1-028242df) 2026-05-06 23:34:29,482 INFO [backend.app.api.routes.camera] Stream 1-028242df cancelled 2026-05-06 23:34:29,492 INFO [backend.app.api.routes.camera] Stopped 0 camera stream(s) for printer 1 2026-05-06 23:35:13,019 INFO [backend.app.api.routes.archives] Dispatched reprint archive 19 for printer 1 (dispatch_job_id=1, dispatch_position=1) 2026-05-06 23:35:13,831 INFO [backend.app.services.bambu_ftp] FTP connected successfully to [IP] (model=A1, prot_c=False) 2026-05-06 23:35:13,841 WARNING [backend.app.services.bambu_ftp] Failed to delete /Self-hydrating_cat_grass_cup_自动补水无土猫草杯.3mf: 550 2026-05-06 23:35:13,850 INFO [backend.app.services.bambu_ftp] FTP connecting to [IP] for upload (model=A1, mode=prot_p, socket_timeout=30.0s)... 2026-05-06 23:35:14,630 INFO [backend.app.services.bambu_ftp] FTP connected successfully to [IP] (model=A1, prot_c=False) 2026-05-06 23:35:14,631 INFO [backend.app.services.bambu_ftp] FTP connected to [IP] 2026-05-06 23:35:14,631 INFO [backend.app.services.bambu_ftp] FTP uploading /opt/[user]/archive/1/20260506_230705_Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode/Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf (1604613 bytes) to /Self-hydrating_cat_grass_cup_自动补水无土猫草杯.3mf 2026-05-06 23:35:14,710 INFO [backend.app.services.bambu_ftp] FTP data channel ready in 0.1s (PASV + TLS handshake) 2026-05-06 23:35:20,919 INFO [backend.app.api.routes.camera] Using chamber image protocol for A1 2026-05-06 23:35:20,921 INFO [backend.app.api.routes.camera] Starting chamber image stream for [IP] (stream_id=1-7482321e, model=A1) 2026-05-06 23:35:22,475 INFO [backend.app.services.camera] Chamber image: connected to [IP]:6000 2026-05-06 23:35:23,964 INFO [backend.app.services.bambu_ftp] FTP STOR confirmed for /Self-hydrating_cat_grass_cup_自动补水无土猫草杯.3mf: 226 2026-05-06 23:35:23,964 INFO [backend.app.services.bambu_ftp] FTP upload complete: /Self-hydrating_cat_grass_cup_自动补水无土猫草杯.3mf (1604613 bytes in 9.3s, 168 KB/s) 2026-05-06 23:35:23,965 INFO [backend.app.services.bambu_ftp] FTP mode cached for [IP]: prot_p 2026-05-06 23:35:23,980 INFO [backend.app.main] Registered expected print: printer=1, file=Self-hydrating_cat_grass_cup_自动补水无土猫草杯.3mf, archive=19, ams_mapping=[-1, -1, -1, 3] 2026-05-06 23:35:23,986 INFO [backend.app.services.printer_manager] PRINT COMMAND: printer=1, file=Self-hydrating_cat_grass_cup_自动补水无土猫草杯.3mf, caller=background_dispatch.py:539:_process_job 2026-05-06 23:35:23,987 INFO [backend.app.services.bambu_mqtt] [[SERIAL]] Sending print command: {"print": {"sequence_id": "20000", "command": "project_file", "param": "Metadata/plate_2.gcode", "url": "ftp://Self-hydrating_cat_grass_cup_\u81ea\u52a8\u8865\u6c34\u65e0\u571f\u732b\u8349\u676f.3mf", "file": "Self-hydrating_cat_grass_cup_\u81ea\u52a8\u8865\u6c34\u65e0\u571f\u732b\u8349\u676f.3mf", "md5": "", "bed_type": "auto", "timelapse": false, "bed_leveling": true, "auto_bed_leveling": 1, "flow_cali": false, "vibration_cali": true, "layer_inspect": true, "use_ams": true, "cfg": "0", "extrude_cali_flag": 0, "extrude_cali_manual_mode": 0, "nozzle_offset_cali": 2, "subtask_name": "Self-hydrating_cat_grass_cup_\u81ea\u52a8\u8865\u6c34\u65e0\u571f\u732b\u8349\u676f", "profile_id": "0", "project_id": "2134347918", "subtask_id": "2134347918", "task_id": "2134347918", "ams_mapping": [-1, -1, -1, 3], "ams_mapping2": [{"ams_id": 255, "slot_id": 255}, {"ams_id": 255, "slot_id": 255}, {"ams_id": 255, "slot_id": 255}, {"ams_id": 0, "slot_id": 3}]}} 2026-05-06 23:35:38,988 WARNING [backend.app.services.background_dispatch] Printer [PRINTER] (1) did not respond to print command within 15s (state still FAILED) — printer may need restart 2026-05-06 23:35:38,989 WARNING [backend.app.services.bambu_mqtt] [[SERIAL]] Forcing MQTT reconnect: print command unacknowledged after 15s (state still FAILED) 2026-05-06 23:35:40,061 INFO [backend.app.services.bambu_mqtt] [[SERIAL]] Disconnect callback after stale reconnect (expected), rc=Unspecified error 2026-05-06 23:35:41,974 WARNING [backend.app.services.bambu_mqtt] [[SERIAL]] AMS unit 0: serial number not available in version info 2026-05-06 23:35:41,975 WARNING [backend.app.services.bambu_mqtt] [[SERIAL]] AMS unit 0: firmware version not available in version info 2026-05-06 23:35:44,741 INFO [backend.app.main] [Printer 1] Broadcasting AMS change via WebSocket 2026-05-06 23:35:48,908 INFO [backend.app.services.bambu_mqtt] [[SERIAL]] PRINT START detected - file: Self-hydrating_cat_grass_cup_自动补水无土猫草杯.3mf, subtask: Self-hydrating_cat_grass_cup_自动补水无土猫草杯, is_new: True, is_file_change: False 2026-05-06 23:35:48,909 INFO [backend.app.main] [Printer 1] Broadcasting AMS change via WebSocket 2026-05-06 23:35:48,912 INFO [backend.app.main] [CALLBACK] on_print_start called for printer 1, data keys: ['filename', 'subtask_name', 'remaining_time', 'raw_data', 'ams_mapping'] 2026-05-06 23:35:48,920 INFO [backend.app.services.usage_tracker] [UsageTracker] PRINT START printer 1: mapping=None, tray_now=3, last_loaded_tray=3 2026-05-06 23:35:48,920 INFO [backend.app.services.usage_tracker] [UsageTracker] PRINT START printer 1: mapping-related keys: {'ams_extruder_map': {'0': 0}} 2026-05-06 23:35:48,921 INFO [backend.app.services.usage_tracker] [UsageTracker] PRINT START printer 1 AMS 0: T0(type=PLA, color=0085D5FF, now=?, tar=?), T1(type=PLA, color=FEC600FF, now=?, tar=?), T2(type=PLA, color=EF7749FF, now=?, tar=?), T3(type=PLA, color=BCBCBCFF, now=?, tar=?) 2026-05-06 23:35:48,928 INFO [backend.app.services.usage_tracker] [UsageTracker] Snapshotted 1 spool assignments for printer 1: {'0-1': 1} 2026-05-06 23:35:48,928 INFO [backend.app.services.usage_tracker] [UsageTracker] Captured start remain% for printer 1 (5 trays): {'0-0': 100, '0-1': 100, '0-2': 100, '0-3': 100, '255-0': 0} 2026-05-06 23:35:48,939 INFO [backend.app.main] [PLATE CHECK] printer_id=1, plate_detection_enabled=False 2026-05-06 23:35:48,939 INFO [backend.app.main] [CALLBACK] Print start detected - filename: Self-hydrating_cat_grass_cup_自动补水无土猫草杯.3mf, subtask: Self-hydrating_cat_grass_cup_自动补水无土猫草杯 2026-05-06 23:35:48,939 INFO [backend.app.main] Using expected archive 19 for print (skipping duplicate) 2026-05-06 23:35:48,940 INFO [backend.app.main] Recorded 1 AMS sensor history entries 2026-05-06 23:35:48,979 INFO [backend.app.api.routes.printers] Trying to download cover for 'Self-hydrating_cat_grass_cup_自动补水无土猫草杯' from [IP] (trying 8 paths) 2026-05-06 23:35:49,100 INFO [backend.app.main] [CALLBACK] Injected ams_mapping into usage tracker session: [-1, -1, -1, 3] 2026-05-06 23:35:49,133 INFO [backend.app.main] [ENERGY] Recorded starting energy (expected-print) for archive 19: 96.060346 kWh 2026-05-06 23:35:49,135 INFO [backend.app.main] [SNAPSHOT] Using buffered frame for printer 1: 135938 bytes 2026-05-06 23:35:49,135 INFO [backend.app.services.notification_service] on_print_start called for printer 1 ([PRINTER]) 2026-05-06 23:35:49,136 INFO [backend.app.services.notification_service] No notification providers configured for print_start event on printer 1 2026-05-06 23:35:49,137 INFO [backend.app.main] Loaded 3 printable objects for printer 1 2026-05-06 23:35:49,778 INFO [backend.app.services.bambu_ftp] FTP connected successfully to [IP] (model=A1, prot_c=False) 2026-05-06 23:36:16,907 INFO [backend.app.services.bambu_ftp] Successfully downloaded /Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf to /opt/[user]/archive/temp/cover_1_Self-hydrating_cat_grass_cup_自动补水无土猫草杯.gcode.3mf (1604613 bytes) 2026-05-06 23:36:16,917 INFO [backend.app.api.routes.printers] Downloaded file size: 1604613 bytes 2026-05-06 23:36:24,207 INFO [backend.app.api.routes.camera] Chamber image stream cancelled (stream_id=1-7482321e) 2026-05-06 23:36:24,207 INFO [backend.app.api.routes.camera] Stream 1-7482321e cancelled 2026-05-06 23:36:24,218 INFO [backend.app.api.routes.camera] Stopped 0 camera stream(s) for printer 1 2026-05-06 23:36:28,043 INFO [backend.app.api.routes.camera] Using chamber image protocol for A1 2026-05-06 23:36:28,044 INFO [backend.app.api.routes.camera] Starting chamber image stream for [IP] (stream_id=1-d7e14441, model=A1) 2026-05-06 23:36:28,881 INFO [backend.app.services.camera] Chamber image: connected to [IP]:6000 2026-05-06 23:36:50,609 INFO [backend.app.api.routes.camera] Closed chamber image connection for stream 1-d7e14441 2026-05-06 23:36:50,610 INFO [backend.app.api.routes.camera] Stopped 1 camera stream(s) for printer 1 2026-05-06 23:36:50,614 WARNING [backend.app.services.camera] Chamber image: connection closed by printer 2026-05-06 23:36:50,614 WARNING [backend.app.api.routes.camera] Chamber image stream ended for 1-d7e14441 2026-05-06 23:36:50,614 INFO [backend.app.api.routes.camera] Chamber image stream stopped for [IP] (stream_id=1-d7e14441) 2026-05-06 23:37:01,123 INFO [backend.app.api.routes.camera] Using chamber image protocol for A1 2026-05-06 23:37:01,123 INFO [backend.app.api.routes.camera] Starting chamber image stream for [IP] (stream_id=1-d3abd6f5, model=A1) 2026-05-06 23:37:01,922 INFO [backend.app.services.camera] Chamber image: connected to [IP]:6000 2026-05-06 23:40:48,947 INFO [backend.app.main] Recorded 1 AMS sensor history entries 2026-05-06 23:45:48,954 INFO [backend.app.main] Recorded 1 AMS sensor history entries 2026-05-06 23:46:13,483 INFO [backend.app.main] [SNAPSHOT] Using buffered frame for printer 1: 107597 bytes 2026-05-06 23:50:41,069 INFO [backend.app.api.routes.support] Log level changed to DEBUG 2026-05-06 23:50:41,069 INFO [backend.app.api.routes.bug_report] Bug report: enabled debug logging 2026-05-06 23:50:41,070 DEBUG [backend.app.services.bambu_mqtt] [[SERIAL]] Requesting status update (pushall) 2026-05-06 23:50:41,685 DEBUG [backend.app.services.bambu_mqtt] [[SERIAL]] Received command response: push_status 2026-05-06 23:50:41,686 DEBUG [backend.app.services.bambu_mqtt] [[SERIAL]] wifi_signal received: -57dBm 2026-05-06 23:50:43,760 DEBUG [backend.app.services.bambu_mqtt] [[SERIAL]] Received command response: push_status 2026-05-06 23:50:43,761 DEBUG [backend.app.services.bambu_mqtt] [[SERIAL]] wifi_signal received: -59dBm 2026-05-06 23:50:45,811 DEBUG [backend.app.services.bambu_mqtt] [[SERIAL]] Received command response: push_status 2026-05-06 23:50:45,812 DEBUG [backend.app.services.bambu_mqtt] [[SERIAL]] wifi_signal received: -55dBm 2026-05-06 23:50:47,888 DEBUG [backend.app.services.bambu_mqtt] [[SERIAL]] Received command response: push_status 2026-05-06 23:50:47,889 DEBUG [backend.app.services.bambu_mqtt] [[SERIAL]] wifi_signal received: -60dBm 2026-05-06 23:50:48,975 INFO [backend.app.main] Recorded 1 AMS sensor history entries 2026-05-06 23:50:49,934 DEBUG [backend.app.services.bambu_mqtt] [[SERIAL]] Received command response: push_status 2026-05-06 23:50:49,935 DEBUG [backend.app.services.bambu_mqtt] [[SERIAL]] wifi_signal received: -59dBm