mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-07-10 08:17:51 -06:00
ENH: compatible with old firmware in mqtt keep alive
Change-Id: Iaee3401d8dd26553169da7a9a627b31357c3d302 Signed-off-by: Stone Li <stone.li@bambulab.com>
This commit is contained in:
parent
6ea3259d05
commit
030b3f0c58
2 changed files with 35 additions and 3 deletions
|
@ -1362,6 +1362,16 @@ void MachineObject::parse_version_func()
|
|||
local_use_ssl_for_mqtt = ota_version->second.sw_ver.compare("01.03.01.04") >= 0;
|
||||
}
|
||||
|
||||
if (lifecycle == PrinterFirmwareType::FIRMWARE_TYPE_PRODUCTION) {
|
||||
is_support_mqtt_alive = ota_version->second.sw_ver.compare("01.05.06.05") >= 0;
|
||||
}
|
||||
else if (lifecycle == PrinterFirmwareType::FIRMWARE_TYPE_ENGINEER) {
|
||||
is_support_mqtt_alive = ota_version->second.sw_ver.compare("00.03.10.05") >= 0;
|
||||
}
|
||||
else {
|
||||
is_support_mqtt_alive = ota_version->second.sw_ver.compare("01.05.06.05") >= 0;
|
||||
}
|
||||
|
||||
is_support_remote_tunnel = true;
|
||||
is_support_tunnel_mqtt = (ota_version->second.sw_ver.compare("01.04.01.04") >= 0
|
||||
|| (rv1126_version != module_vers.end() && rv1126_version->second.sw_ver.compare("00.00.20.30") >= 0));
|
||||
|
@ -1381,11 +1391,32 @@ void MachineObject::parse_version_func()
|
|||
if (esp32_version != module_vers.end()) {
|
||||
ams_support_auto_switch_filament_flag = esp32_version->second.sw_ver.compare("00.03.11.50") >= 0;
|
||||
}
|
||||
|
||||
if (lifecycle == PrinterFirmwareType::FIRMWARE_TYPE_PRODUCTION) {
|
||||
is_support_mqtt_alive = ota_version->second.sw_ver.compare("01.03.50.01") >= 0;
|
||||
}
|
||||
else if (lifecycle == PrinterFirmwareType::FIRMWARE_TYPE_ENGINEER) {
|
||||
is_support_mqtt_alive = ota_version->second.sw_ver.compare("00.06.03.51") >= 0;
|
||||
}
|
||||
else {
|
||||
is_support_mqtt_alive = ota_version->second.sw_ver.compare("01.03.50.01") >= 0;
|
||||
}
|
||||
|
||||
} else if (printer_type == "C12") {
|
||||
is_support_ai_monitoring = true;
|
||||
is_cloud_print_only = true;
|
||||
is_support_remote_tunnel = true;
|
||||
local_camera_proto = 1;
|
||||
|
||||
if (lifecycle == PrinterFirmwareType::FIRMWARE_TYPE_PRODUCTION) {
|
||||
is_support_mqtt_alive = ota_version->second.sw_ver.compare("01.03.50.01") >= 0;
|
||||
}
|
||||
else if (lifecycle == PrinterFirmwareType::FIRMWARE_TYPE_ENGINEER) {
|
||||
is_support_mqtt_alive = ota_version->second.sw_ver.compare("00.06.03.51") >= 0;
|
||||
}
|
||||
else {
|
||||
is_support_mqtt_alive = ota_version->second.sw_ver.compare("01.03.50.01") >= 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -4139,7 +4170,7 @@ void DeviceManager::set_agent(NetworkAgent* agent)
|
|||
void DeviceManager::check_pushing()
|
||||
{
|
||||
MachineObject* obj = this->get_selected_machine();
|
||||
if (obj) {
|
||||
if (obj && !obj->is_support_mqtt_alive) {
|
||||
std::chrono::system_clock::time_point start = std::chrono::system_clock::now();
|
||||
auto internal = std::chrono::duration_cast<std::chrono::milliseconds>(start - obj->last_update_time);
|
||||
if (internal.count() > TIMEOUT_FOR_STRAT && internal.count() < 1000 * 60 * 60 * 300) {
|
||||
|
|
|
@ -607,7 +607,7 @@ public:
|
|||
int upgrade_display_state = 0; // 0 : upgrade unavailable, 1: upgrade idle, 2: upgrading, 3: upgrade_finished
|
||||
int upgrade_display_hold_count = 0;
|
||||
PrinterFirmwareType firmware_type; // engineer|production
|
||||
PrinterFirmwareType lifecycle;
|
||||
PrinterFirmwareType lifecycle { PrinterFirmwareType::FIRMEARE_TYPE_UKNOWN };
|
||||
std::string upgrade_progress;
|
||||
std::string upgrade_message;
|
||||
std::string upgrade_status;
|
||||
|
@ -720,6 +720,7 @@ public:
|
|||
bool is_support_ams_humidity {true};
|
||||
bool is_support_filament_edit_virtual_tray {true};
|
||||
bool is_cloud_print_only {false};
|
||||
bool is_support_mqtt_alive {false};
|
||||
|
||||
/* sdcard */
|
||||
MachineObject::SdcardState sdcard_state { NO_SDCARD };
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue