diff --git a/src/slic3r/Utils/MoonrakerPrinterAgent.cpp b/src/slic3r/Utils/MoonrakerPrinterAgent.cpp index 2624bc038e9..ff18d98a818 100644 --- a/src/slic3r/Utils/MoonrakerPrinterAgent.cpp +++ b/src/slic3r/Utils/MoonrakerPrinterAgent.cpp @@ -874,7 +874,22 @@ bool MoonrakerPrinterAgent::fetch_moonraker_filament_data(std::vectorfilaments.get_presets()) { + if (p.is_compatible && p.filament_id == tray.tray_info_idx) { + idx_has_compatible_preset = true; + break; + } + } + } + + if (bundle && !tray.filament_vendor.empty() && (tray.tray_info_idx.empty() || !idx_has_compatible_preset)) { std::string mid = find_closest_color_preset_by_vendor_and_type( bundle->filaments, tray.filament_vendor, tray.tray_type, tray.tray_color); if (!mid.empty()) tray.tray_info_idx = mid;