Wrong Bed temperature during auto-leveling #96

Closed
opened 2026-07-19 17:12:23 +02:00 by Blaim · 2 comments

Description

When using OrcaSlicer with KX-Bridge, the printer's auto-leveling sequence forces the Cold Plate bed temperature to 35°C, even though the slicer's first-layer bed temperature is set to 30°C and the G-code correctly outputs G9111 bedTemp=30.

This override does not happen when sending prints via Anycubic Slicer Next (where it correctly stays at 30°C during leveling). This suggests KX-Bridge may be incorrectly parsing the temperature metadata to start the print, causing it to send a fallback of 35°C instead of the requested 30°C.

Steps to Reproduce

  1. In OrcaSlicer, set the first-layer bed temperature to 30°C for the Cold Plate.
  2. Slice a model and verify the start G-code outputs G9111 bedTemp=30.
  3. Send the print job to the printer via KX-Bridge.
  4. Observe the bed temperature on the printer display during the auto-leveling phase.

Expected Behavior

The printer should heat to and maintain exactly 30°C during the leveling sequence, matching the G-code and replicating the behavior of Anycubic Slicer Next.

Actual Behavior

The bed temperature is overridden to 35°C during the auto-leveling phase.
After the auto-leveling phase is done, the bed temperature is adjusted down to 30°C.

Environment

  • KX-Bridge Version: v0.9.27
  • OrcaSlicer Version: OrcaSlicer-KX v2.4.1-kx1
  • Moonraker/Klipper Version: N/A (Anycubic Native Firmware)
  • Operating System: Linux
  • Installation: Binary

Logs

Jul 19 17:07:47 kxbridge kx-bridge[7251]: [17:07:47] INFO  bridge: AMS-Slots empfangen: 4, loaded_slot=-1
Jul 19 17:07:47 kxbridge kx-bridge[7251]: [17:07:47] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:47 +0200] "GET /api/state HTTP/1.1" 200 4598 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
Jul 19 17:07:48 kxbridge kx-bridge[7251]: [17:07:48] INFO  kobrax.mqtt: RX tempature/report           nozzle=51°C/250°C  bed=30°C/35°C
Jul 19 17:07:48 kxbridge kx-bridge[7251]: [17:07:48] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:48 +0200] "GET /api/state HTTP/1.1" 200 4598 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
Jul 19 17:07:49 kxbridge kx-bridge[7251]: [17:07:49] INFO  bridge: Vorschaubild empfangen: 1948 Zeichen base64
Jul 19 17:07:49 kxbridge kx-bridge[7251]: [17:07:49] INFO  bridge: Skip objects for Optional - Try my example settings(02)_PLA_0.2_13m44s.gcode: 1 (with SVG)
Jul 19 17:07:49 kxbridge kx-bridge[7251]: [17:07:49] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:49 +0200] "GET /api/state HTTP/1.1" 200 4598 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
Jul 19 17:07:49 kxbridge kx-bridge[7251]: [17:07:49] INFO  kobrax.mqtt: RX tempature/report           nozzle=59°C/250°C  bed=30°C/35°C
Jul 19 17:07:50 kxbridge kx-bridge[7251]: [17:07:50] INFO  kobrax.mqtt: RX info/report                state=done          data={"aux_fan_speed_pct": 100, "fan_speed_pct": 0, "features": {"auto_leveling_support": true, "camera_timelapse_support": true, "delete>
Jul 19 17:07:50 kxbridge kx-bridge[7251]: [17:07:50] INFO  bridge: AMS-Slots empfangen: 4, loaded_slot=-1
Jul 19 17:07:50 kxbridge kx-bridge[7251]: [17:07:50] INFO  kobrax.mqtt: RX tempature/report           nozzle=67°C/250°C  bed=30°C/35°C
Jul 19 17:07:50 kxbridge kx-bridge[7251]: [17:07:50] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:50 +0200] "GET /api/state HTTP/1.1" 200 4598 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO  kobrax.mqtt: TX print/request              action=stop          data={"taskid": "-1"}
Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:51 +0200] "GET /api/state HTTP/1.1" 200 4598 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:51 +0200] "POST /printer/print/cancel HTTP/1.1" 200 207 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHT>
Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:51 +0200] "GET /api/state HTTP/1.1" 200 4598 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO  kobrax.mqtt: RX print/report               state=stopping      progress=0%  layer=0/19
Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO  kobrax.mqtt: RX print/report               state=stoped        progress=0%  layer=0/19
Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO  kobrax.mqtt: RX status/report              state=free          data=null
Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO  kobrax.mqtt: RX tempature/report           nozzle=79°C/0°C  bed=31°C/0°C
Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO  kobrax.mqtt: RX print/report               state=updated       progress=0%  layer=0/19
Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO  kobrax.mqtt: RX fan/report                 state=done          data={"fan_speed_pct": 0}
Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO  kobrax.mqtt: RX tempature/report           nozzle=79°C/0°C  bed=31°C/0°C
Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO  bridge: AMS-Slots empfangen: 4, loaded_slot=-1
Jul 19 17:07:52 kxbridge kx-bridge[7251]: [17:07:52] INFO  kobrax.mqtt: RX tempature/report           nozzle=88°C/0°C  bed=31°C/0°C
Jul 19 17:07:52 kxbridge kx-bridge[7251]: [17:07:52] INFO  kobrax.mqtt: RX fan/report                 state=done          data={"fan_speed_pct": 0, "taskid": ""}
Jul 19 17:07:52 kxbridge kx-bridge[7251]: [17:07:52] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:52 +0200] "GET /api/state HTTP/1.1" 200 4590 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
Jul 19 17:07:53 kxbridge kx-bridge[7251]: [17:07:53] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:53 +0200] "GET /api/state HTTP/1.1" 200 4590 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
Jul 19 17:07:53 kxbridge kx-bridge[7251]: [17:07:53] INFO  kobrax.mqtt: RX info/report                state=done          data={"aux_fan_speed_pct": 100, "fan_speed_pct": 0, "features": {"auto_leveling_support": true, "camera_timelapse_support": true, "delete>
Jul 19 17:07:53 kxbridge kx-bridge[7251]: [17:07:53] INFO  bridge: AMS-Slots empfangen: 4, loaded_slot=-1
Jul 19 17:07:53 kxbridge kx-bridge[7251]: [17:07:53] INFO  kobrax.mqtt: RX tempature/report           nozzle=98°C/0°C  bed=32°C/0°C
Jul 19 17:07:54 kxbridge kx-bridge[7251]: [17:07:54] INFO  kobrax.mqtt: RX tempature/report           nozzle=102°C/0°C  bed=32°C/0°C
Jul 19 17:07:54 kxbridge kx-bridge[7251]: [17:07:54] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:54 +0200] "GET /api/state HTTP/1.1" 200 4588 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
Jul 19 17:07:55 kxbridge kx-bridge[7251]: [17:07:55] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:55 +0200] "GET /api/state HTTP/1.1" 200 4588 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
Jul 19 17:07:56 kxbridge kx-bridge[7251]: [17:07:56] INFO  kobrax.mqtt: RX info/report                state=done          data={"aux_fan_speed_pct": 100, "fan_speed_pct": 0, "features": {"auto_leveling_support": true, "camera_timelapse_support": true, "delete>
Jul 19 17:07:56 kxbridge kx-bridge[7251]: [17:07:56] INFO  bridge: AMS-Slots empfangen: 4, loaded_slot=-1
Jul 19 17:07:56 kxbridge kx-bridge[7251]: [17:07:56] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:56 +0200] "GET /api/state HTTP/1.1" 200 4588 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
Jul 19 17:07:57 kxbridge kx-bridge[7251]: [17:07:57] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:57 +0200] "GET /api/state HTTP/1.1" 200 4588 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
Jul 19 17:07:58 kxbridge kx-bridge[7251]: [17:07:58] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:58 +0200] "GET /api/state HTTP/1.1" 200 4588 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
Jul 19 17:07:59 kxbridge kx-bridge[7251]: [17:07:59] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:59 +0200] "GET /api/state HTTP/1.1" 200 4588 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
Jul 19 17:07:59 kxbridge kx-bridge[7251]: [17:07:59] INFO  kobrax.mqtt: RX info/report                state=done          data={"aux_fan_speed_pct": 100, "fan_speed_pct": 0, "features": {"auto_leveling_support": true, "camera_timelapse_support": true, "delete>
Jul 19 17:07:59 kxbridge kx-bridge[7251]: [17:07:59] INFO  kobrax.mqtt: RX tempature/report           nozzle=102°C/0°C  bed=34°C/0°C
Jul 19 17:07:59 kxbridge kx-bridge[7251]: [17:07:59] INFO  bridge: AMS-Slots empfangen: 4, loaded_slot=-1
Jul 19 17:08:00 kxbridge kx-bridge[7251]: [17:08:00] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:08:00 +0200] "GET /api/state HTTP/1.1" 200 4588 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
Jul 19 17:08:01 kxbridge kx-bridge[7251]: [17:08:01] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:08:01 +0200] "GET /api/state HTTP/1.1" 200 4588 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
Jul 19 17:08:02 kxbridge kx-bridge[7251]: [17:08:02] INFO  kobrax.mqtt: RX tempature/report           nozzle=98°C/0°C  bed=34°C/0°C
Jul 19 17:08:02 kxbridge kx-bridge[7251]: [17:08:02] INFO  kobrax.mqtt: RX info/report                state=done          data={"aux_fan_speed_pct": 100, "fan_speed_pct": 0, "features": {"auto_leveling_support": true, "camera_timelapse_support": true, "delete>
Jul 19 17:08:02 kxbridge kx-bridge[7251]: [17:08:02] INFO  bridge: AMS-Slots empfangen: 4, loaded_slot=-1
Jul 19 17:08:02 kxbridge kx-bridge[7251]: [17:08:02] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:08:02 +0200] "GET /api/state HTTP/1.1" 200 4587 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
Jul 19 17:08:03 kxbridge kx-bridge[7251]: [17:08:03] INFO  aiohttp.access: 192.168.2.181 [19/Jul/2026:17:08:03 +0200] "GET /api/state HTTP/1.1" 200 4587 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge>
## Description When using OrcaSlicer with KX-Bridge, the printer's auto-leveling sequence forces the Cold Plate bed temperature to 35°C, even though the slicer's first-layer bed temperature is set to 30°C and the G-code correctly outputs `G9111 bedTemp=30`. This override does *not* happen when sending prints via Anycubic Slicer Next (where it correctly stays at 30°C during leveling). This suggests KX-Bridge may be incorrectly parsing the temperature metadata to start the print, causing it to send a fallback of 35°C instead of the requested 30°C. ## Steps to Reproduce 1. In OrcaSlicer, set the first-layer bed temperature to 30°C for the Cold Plate. 2. Slice a model and verify the start G-code outputs `G9111 bedTemp=30`. 3. Send the print job to the printer via KX-Bridge. 4. Observe the bed temperature on the printer display during the auto-leveling phase. ## Expected Behavior The printer should heat to and maintain exactly 30°C during the leveling sequence, matching the G-code and replicating the behavior of Anycubic Slicer Next. ## Actual Behavior The bed temperature is overridden to 35°C during the auto-leveling phase. After the auto-leveling phase is done, the bed temperature is adjusted down to 30°C. ## Environment - KX-Bridge Version: v0.9.27 - OrcaSlicer Version: OrcaSlicer-KX v2.4.1-kx1 - Moonraker/Klipper Version: N/A (Anycubic Native Firmware) - Operating System: Linux - Installation: Binary ## Logs ``` Jul 19 17:07:47 kxbridge kx-bridge[7251]: [17:07:47] INFO bridge: AMS-Slots empfangen: 4, loaded_slot=-1 Jul 19 17:07:47 kxbridge kx-bridge[7251]: [17:07:47] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:47 +0200] "GET /api/state HTTP/1.1" 200 4598 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> Jul 19 17:07:48 kxbridge kx-bridge[7251]: [17:07:48] INFO kobrax.mqtt: RX tempature/report nozzle=51°C/250°C bed=30°C/35°C Jul 19 17:07:48 kxbridge kx-bridge[7251]: [17:07:48] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:48 +0200] "GET /api/state HTTP/1.1" 200 4598 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> Jul 19 17:07:49 kxbridge kx-bridge[7251]: [17:07:49] INFO bridge: Vorschaubild empfangen: 1948 Zeichen base64 Jul 19 17:07:49 kxbridge kx-bridge[7251]: [17:07:49] INFO bridge: Skip objects for Optional - Try my example settings(02)_PLA_0.2_13m44s.gcode: 1 (with SVG) Jul 19 17:07:49 kxbridge kx-bridge[7251]: [17:07:49] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:49 +0200] "GET /api/state HTTP/1.1" 200 4598 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> Jul 19 17:07:49 kxbridge kx-bridge[7251]: [17:07:49] INFO kobrax.mqtt: RX tempature/report nozzle=59°C/250°C bed=30°C/35°C Jul 19 17:07:50 kxbridge kx-bridge[7251]: [17:07:50] INFO kobrax.mqtt: RX info/report state=done data={"aux_fan_speed_pct": 100, "fan_speed_pct": 0, "features": {"auto_leveling_support": true, "camera_timelapse_support": true, "delete> Jul 19 17:07:50 kxbridge kx-bridge[7251]: [17:07:50] INFO bridge: AMS-Slots empfangen: 4, loaded_slot=-1 Jul 19 17:07:50 kxbridge kx-bridge[7251]: [17:07:50] INFO kobrax.mqtt: RX tempature/report nozzle=67°C/250°C bed=30°C/35°C Jul 19 17:07:50 kxbridge kx-bridge[7251]: [17:07:50] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:50 +0200] "GET /api/state HTTP/1.1" 200 4598 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO kobrax.mqtt: TX print/request action=stop data={"taskid": "-1"} Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:51 +0200] "GET /api/state HTTP/1.1" 200 4598 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:51 +0200] "POST /printer/print/cancel HTTP/1.1" 200 207 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHT> Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:51 +0200] "GET /api/state HTTP/1.1" 200 4598 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO kobrax.mqtt: RX print/report state=stopping progress=0% layer=0/19 Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO kobrax.mqtt: RX print/report state=stoped progress=0% layer=0/19 Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO kobrax.mqtt: RX status/report state=free data=null Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO kobrax.mqtt: RX tempature/report nozzle=79°C/0°C bed=31°C/0°C Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO kobrax.mqtt: RX print/report state=updated progress=0% layer=0/19 Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO kobrax.mqtt: RX fan/report state=done data={"fan_speed_pct": 0} Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO kobrax.mqtt: RX tempature/report nozzle=79°C/0°C bed=31°C/0°C Jul 19 17:07:51 kxbridge kx-bridge[7251]: [17:07:51] INFO bridge: AMS-Slots empfangen: 4, loaded_slot=-1 Jul 19 17:07:52 kxbridge kx-bridge[7251]: [17:07:52] INFO kobrax.mqtt: RX tempature/report nozzle=88°C/0°C bed=31°C/0°C Jul 19 17:07:52 kxbridge kx-bridge[7251]: [17:07:52] INFO kobrax.mqtt: RX fan/report state=done data={"fan_speed_pct": 0, "taskid": ""} Jul 19 17:07:52 kxbridge kx-bridge[7251]: [17:07:52] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:52 +0200] "GET /api/state HTTP/1.1" 200 4590 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> Jul 19 17:07:53 kxbridge kx-bridge[7251]: [17:07:53] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:53 +0200] "GET /api/state HTTP/1.1" 200 4590 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> Jul 19 17:07:53 kxbridge kx-bridge[7251]: [17:07:53] INFO kobrax.mqtt: RX info/report state=done data={"aux_fan_speed_pct": 100, "fan_speed_pct": 0, "features": {"auto_leveling_support": true, "camera_timelapse_support": true, "delete> Jul 19 17:07:53 kxbridge kx-bridge[7251]: [17:07:53] INFO bridge: AMS-Slots empfangen: 4, loaded_slot=-1 Jul 19 17:07:53 kxbridge kx-bridge[7251]: [17:07:53] INFO kobrax.mqtt: RX tempature/report nozzle=98°C/0°C bed=32°C/0°C Jul 19 17:07:54 kxbridge kx-bridge[7251]: [17:07:54] INFO kobrax.mqtt: RX tempature/report nozzle=102°C/0°C bed=32°C/0°C Jul 19 17:07:54 kxbridge kx-bridge[7251]: [17:07:54] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:54 +0200] "GET /api/state HTTP/1.1" 200 4588 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> Jul 19 17:07:55 kxbridge kx-bridge[7251]: [17:07:55] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:55 +0200] "GET /api/state HTTP/1.1" 200 4588 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> Jul 19 17:07:56 kxbridge kx-bridge[7251]: [17:07:56] INFO kobrax.mqtt: RX info/report state=done data={"aux_fan_speed_pct": 100, "fan_speed_pct": 0, "features": {"auto_leveling_support": true, "camera_timelapse_support": true, "delete> Jul 19 17:07:56 kxbridge kx-bridge[7251]: [17:07:56] INFO bridge: AMS-Slots empfangen: 4, loaded_slot=-1 Jul 19 17:07:56 kxbridge kx-bridge[7251]: [17:07:56] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:56 +0200] "GET /api/state HTTP/1.1" 200 4588 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> Jul 19 17:07:57 kxbridge kx-bridge[7251]: [17:07:57] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:57 +0200] "GET /api/state HTTP/1.1" 200 4588 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> Jul 19 17:07:58 kxbridge kx-bridge[7251]: [17:07:58] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:58 +0200] "GET /api/state HTTP/1.1" 200 4588 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> Jul 19 17:07:59 kxbridge kx-bridge[7251]: [17:07:59] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:07:59 +0200] "GET /api/state HTTP/1.1" 200 4588 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> Jul 19 17:07:59 kxbridge kx-bridge[7251]: [17:07:59] INFO kobrax.mqtt: RX info/report state=done data={"aux_fan_speed_pct": 100, "fan_speed_pct": 0, "features": {"auto_leveling_support": true, "camera_timelapse_support": true, "delete> Jul 19 17:07:59 kxbridge kx-bridge[7251]: [17:07:59] INFO kobrax.mqtt: RX tempature/report nozzle=102°C/0°C bed=34°C/0°C Jul 19 17:07:59 kxbridge kx-bridge[7251]: [17:07:59] INFO bridge: AMS-Slots empfangen: 4, loaded_slot=-1 Jul 19 17:08:00 kxbridge kx-bridge[7251]: [17:08:00] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:08:00 +0200] "GET /api/state HTTP/1.1" 200 4588 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> Jul 19 17:08:01 kxbridge kx-bridge[7251]: [17:08:01] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:08:01 +0200] "GET /api/state HTTP/1.1" 200 4588 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> Jul 19 17:08:02 kxbridge kx-bridge[7251]: [17:08:02] INFO kobrax.mqtt: RX tempature/report nozzle=98°C/0°C bed=34°C/0°C Jul 19 17:08:02 kxbridge kx-bridge[7251]: [17:08:02] INFO kobrax.mqtt: RX info/report state=done data={"aux_fan_speed_pct": 100, "fan_speed_pct": 0, "features": {"auto_leveling_support": true, "camera_timelapse_support": true, "delete> Jul 19 17:08:02 kxbridge kx-bridge[7251]: [17:08:02] INFO bridge: AMS-Slots empfangen: 4, loaded_slot=-1 Jul 19 17:08:02 kxbridge kx-bridge[7251]: [17:08:02] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:08:02 +0200] "GET /api/state HTTP/1.1" 200 4587 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> Jul 19 17:08:03 kxbridge kx-bridge[7251]: [17:08:03] INFO aiohttp.access: 192.168.2.181 [19/Jul/2026:17:08:03 +0200] "GET /api/state HTTP/1.1" 200 4587 "http://192.168.2.190:7125/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Ge> ```
Blaim added the
bug
label 2026-07-19 17:12:23 +02:00
Owner

Thanks for the detailed report and logs, @Blaim.

I traced this through KX-Bridge's code (gcode upload path, MQTT print/start payload builder) and confirmed the bridge never touches bed temperature at all — it uploads the gcode file as sliced and doesn't parse or rewrite any temperature values. So this isn't a bridge bug.

The actual cause is in the OrcaSlicer-KX Kobra X machine profile: the machine_start_gcode uses G9111 bedTemp=[first_layer_bed_temperature] ..., a fused Anycubic macro that heats the bed and does auto-leveling in one step. OrcaSlicer resolves [first_layer_bed_temperature] using its bed_temperature_formula setting, which defaults to "highest temp across all filaments in the project" rather than the temp of the filament actually being printed — and the Kobra X profile never overrides this default. The later M140 command in the gcode body uses the correct per-filament value, which is why the bed corrects down after leveling finishes.

I opened OrcaSlicer-KX#4 with the full root cause and a concrete one-line profile fix. Following up there — closing this one as "not a KX-Bridge issue" once the profile fix lands, but leaving it open for now for visibility/cross-reference.

Thanks for the detailed report and logs, @Blaim. I traced this through KX-Bridge's code (gcode upload path, MQTT print/start payload builder) and confirmed the bridge never touches bed temperature at all — it uploads the gcode file as sliced and doesn't parse or rewrite any temperature values. So this isn't a bridge bug. The actual cause is in the OrcaSlicer-KX Kobra X machine profile: the `machine_start_gcode` uses `G9111 bedTemp=[first_layer_bed_temperature] ...`, a fused Anycubic macro that heats the bed and does auto-leveling in one step. OrcaSlicer resolves `[first_layer_bed_temperature]` using its `bed_temperature_formula` setting, which defaults to "highest temp across all filaments in the project" rather than the temp of the filament actually being printed — and the Kobra X profile never overrides this default. The later `M140` command in the gcode body uses the correct per-filament value, which is why the bed corrects down after leveling finishes. I opened [OrcaSlicer-KX#4](https://gitea.it-drui.de/viewit/OrcaSlicer-KX/issues/4) with the full root cause and a concrete one-line profile fix. Following up there — closing this one as "not a KX-Bridge issue" once the profile fix lands, but leaving it open for now for visibility/cross-reference.
Owner

Root cause identified and fixed in OrcaSlicer-KX v2.4.2-kx1 — this is not a KX-Bridge bug.

The issue is in the Kobra X machine profile in OrcaSlicer. The machine_start_gcode uses G9111 bedTemp=[first_layer_bed_temperature], but [first_layer_bed_temperature] was resolving to the highest bed temperature across all filaments in the project (the default by_highest_temp formula), not the temperature of the filament actually being printed.

The fix: added "bed_temperature_formula": "by_first_filament" to the Anycubic Kobra X machine profile. This makes [first_layer_bed_temperature] resolve to the active filament’s bed temperature, so G9111 and the subsequent M140 command now agree.

Fixed in: https://gitea.it-drui.de/viewit/OrcaSlicer-KX/releases/tag/v2.4.2-kx1
Tracked in: viewit/OrcaSlicer-KX#4

Root cause identified and fixed in **OrcaSlicer-KX v2.4.2-kx1** — this is not a KX-Bridge bug. The issue is in the Kobra X machine profile in OrcaSlicer. The `machine_start_gcode` uses `G9111 bedTemp=[first_layer_bed_temperature]`, but `[first_layer_bed_temperature]` was resolving to the **highest bed temperature across all filaments in the project** (the default `by_highest_temp` formula), not the temperature of the filament actually being printed. The fix: added `"bed_temperature_formula": "by_first_filament"` to the Anycubic Kobra X machine profile. This makes `[first_layer_bed_temperature]` resolve to the active filament’s bed temperature, so G9111 and the subsequent `M140` command now agree. Fixed in: https://gitea.it-drui.de/viewit/OrcaSlicer-KX/releases/tag/v2.4.2-kx1 Tracked in: viewit/OrcaSlicer-KX#4
Sign in to join this conversation.
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: viewit/KX-Bridge-Release#96
No description provided.