diff --git a/src/slic3r/GUI/DeviceManager.cpp b/src/slic3r/GUI/DeviceManager.cpp index 9392c0f82..b1314ed09 100644 --- a/src/slic3r/GUI/DeviceManager.cpp +++ b/src/slic3r/GUI/DeviceManager.cpp @@ -2075,6 +2075,7 @@ void MachineObject::reset() last_mc_print_stage = -1; m_new_ver_list_exist = false; extruder_axis_status = LOAD; + nozzle_diameter = 0.0f; vt_tray.reset(); @@ -2661,6 +2662,19 @@ int MachineObject::parse_json(std::string payload) } #pragma endregion + try { + if (jj.contains("nozzle_diameter")) { + if (jj["nozzle_diameter"].is_number_float()) { + nozzle_diameter = jj["nozzle_diameter"].get(); + } else if (jj["nozzle_diameter"].is_string()) { + nozzle_diameter = stof(jj["nozzle_diameter"].get().c_str()); + } + } + } + catch(...) { + ; + } + #pragma region upgrade try { if (jj.contains("upgrade_state")) { diff --git a/src/slic3r/GUI/DeviceManager.hpp b/src/slic3r/GUI/DeviceManager.hpp index a2e4ca8e0..60328a0e2 100644 --- a/src/slic3r/GUI/DeviceManager.hpp +++ b/src/slic3r/GUI/DeviceManager.hpp @@ -405,6 +405,7 @@ public: std::string dev_ip; std::string dev_id; bool local_use_ssl { false }; + float nozzle_diameter { 0.0f }; std::string dev_connection_type; /* lan | cloud */ std::string connection_type() { return dev_connection_type; } void set_dev_ip(std::string ip) {dev_ip = ip;};