FIX: support set temp to 65 for some devices

jira: [STUDIO-9412]
Change-Id: I530a8c18ae4b4133526b3e9d91153a7b26512f38
(cherry picked from commit c23f1233db2be6475a434de575fe93c9c08fae75)
This commit is contained in:
xin.zhang
2024-12-30 11:54:27 +08:00
committed by Noisyfox
parent b62fa12339
commit c569a3a4ff
4 changed files with 15 additions and 3 deletions

View File

@@ -39,6 +39,7 @@
"support_ai_monitoring": true,
"support_first_layer_inspect": true,
"support_chamber_temp_edit": true,
"support_chamber_temp_edit_range": [20, 60],
"support_extrusion_cali": false,
"support_user_preset": false,
"bed_temperature_limit": 110,

View File

@@ -3230,6 +3230,13 @@ int MachineObject::parse_json(std::string payload, bool key_field_only)
if (jj["support_chamber_temp_edit"].is_boolean()) {
is_support_chamber_edit = jj["support_chamber_temp_edit"].get<bool>();
}
const auto& support_champer_range = jj["support_chamber_temp_edit_range"];
if (support_champer_range.is_array() && !support_champer_range.empty())
{
chamber_temp_edit_min = support_champer_range[0];
chamber_temp_edit_max = support_champer_range[1];
}
}
if (jj.contains("support_extrusion_cali")) {

View File

@@ -497,6 +497,7 @@ private:
// type, time stamp, delay
std::vector<std::tuple<std::string, uint64_t, uint64_t>> message_delay;
public:
typedef std::function<void(const json &)> CommandCallBack;
@@ -733,6 +734,8 @@ public:
float bed_temp_target;
float chamber_temp;
float chamber_temp_target;
float chamber_temp_edit_min = 0;
float chamber_temp_edit_max = 60;
float frame_temp;
/* cooling */

View File

@@ -36,7 +36,6 @@ static const wxFont SWITCH_FONT = Label::Body_10;
/* const values */
static const int bed_temp_range[2] = {20, 120};
static const int nozzle_chamber_range[2] = {20, 60};
/* colors */
static const wxColour STATUS_PANEL_BG = wxColour(238, 238, 238);
@@ -1480,8 +1479,8 @@ wxBoxSizer *StatusBasePanel::create_temp_control(wxWindow *parent)
m_tempCtrl_chamber = new TempInput(parent, frame_id, TEMP_BLANK_STR, TempInputType::TEMP_OF_NORMAL_TYPE, TEMP_BLANK_STR, wxString("monitor_frame_temp"),
wxString("monitor_frame_temp_active"), wxDefaultPosition, wxDefaultSize, wxALIGN_CENTER);
m_tempCtrl_chamber->SetReadOnly(true);
m_tempCtrl_chamber->SetMinTemp(nozzle_chamber_range[0]);
m_tempCtrl_chamber->SetMaxTemp(nozzle_chamber_range[1]);
m_tempCtrl_chamber->SetMinTemp(obj->chamber_temp_edit_min);
m_tempCtrl_chamber->SetMaxTemp(obj->chamber_temp_edit_max);
m_tempCtrl_chamber->SetMinSize(TEMP_CTRL_MIN_SIZE_OF_SINGLE_NOZZLE);
m_tempCtrl_chamber->SetBorderWidth(FromDIP(2));
m_tempCtrl_chamber->SetTextColor(tempinput_text_colour);
@@ -2626,6 +2625,8 @@ void StatusPanel::update(MachineObject *obj)
if (obj->is_support_chamber_edit) {
m_tempCtrl_chamber->SetReadOnly(false);
m_tempCtrl_chamber->Enable();
m_tempCtrl_chamber->SetMinTemp(obj->chamber_temp_edit_min);
m_tempCtrl_chamber->SetMaxTemp(obj->chamber_temp_edit_max);
wxCursor cursor(wxCURSOR_IBEAM);
m_tempCtrl_chamber->GetTextCtrl()->SetCursor(cursor);
} else {