mirror of
https://github.com/QIDITECH/QIDI_Q1_Pro.git
synced 2026-01-30 15:38:43 +03:00
Compare commits
1 Commits
V4.4.21
...
V4.4.19_be
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bb8598ec34 |
Binary file not shown.
Binary file not shown.
@@ -35,10 +35,17 @@ gcode:
|
||||
{% set z = printer.save_variables.variables.z_offset %}
|
||||
SET_GCODE_OFFSET Z={z} MOVE=0
|
||||
|
||||
[gcode_macro CLEAR_NOZZLE]
|
||||
[gcode_macro CLEAR_NOZZLE_PLR]
|
||||
gcode:
|
||||
{% set hotendtemp = params.HOTEND|int %}
|
||||
G1 Z60 F600
|
||||
{% set hotendtemp = params.HOTEND|default(250)|int %}
|
||||
{% if (printer.gcode_move.position.z ) < 35 %}
|
||||
G90
|
||||
G1 Z35 F900
|
||||
{% else %}
|
||||
G91
|
||||
G1 Z5 F900
|
||||
G90
|
||||
{% endif %}
|
||||
G1 X97 F9000
|
||||
G1 Y254 F9000
|
||||
|
||||
@@ -47,6 +54,43 @@ gcode:
|
||||
G92 E0
|
||||
G1 E80 F400
|
||||
M106 S255
|
||||
|
||||
G1 X98 F500
|
||||
G1 X85 F2000
|
||||
G1 X98 F2000
|
||||
G1 X85 F2000
|
||||
G1 X98 F2000
|
||||
G1 X85 F2000
|
||||
G1 X98 F2000
|
||||
G1 X85 F2000
|
||||
G1 X98 F2000
|
||||
G1 X85 F2000
|
||||
G1 X98 F2000
|
||||
G1 X85 F2000
|
||||
G1 X98 F2000
|
||||
G1 Y240 F9000
|
||||
|
||||
|
||||
|
||||
[gcode_macro CLEAR_NOZZLE]
|
||||
gcode:
|
||||
{% set hotendtemp = params.HOTEND|int %}
|
||||
{% if (printer.gcode_move.position.z ) < 35 %}
|
||||
G1 Z35 F900
|
||||
{% else %}
|
||||
G91
|
||||
G1 Z5 F900
|
||||
G90
|
||||
{% endif %}
|
||||
G1 X97 F9000
|
||||
G1 Y254 F9000
|
||||
|
||||
M109 S{hotendtemp}
|
||||
|
||||
G92 E0
|
||||
G1 E80 F400
|
||||
M106 S255
|
||||
M400
|
||||
M106 P2 S0
|
||||
M104 S0
|
||||
TEMPERATURE_WAIT SENSOR=extruder MAXIMUM={hotendtemp-30}
|
||||
@@ -120,7 +164,7 @@ gcode:
|
||||
CLEAR_NOZZLE HOTEND={hotendtemp}
|
||||
|
||||
M190 S{bedtemp}
|
||||
Z_TILT_ADJUST
|
||||
# Z_TILT_ADJUST
|
||||
G29
|
||||
G0 Z50 F600
|
||||
G0 X0 Y0 F6000
|
||||
@@ -129,11 +173,21 @@ gcode:
|
||||
M109 S{hotendtemp}
|
||||
M204 S10000
|
||||
|
||||
ENABLE_ALL_SENSOR
|
||||
save_last_file
|
||||
|
||||
[gcode_macro ENABLE_ALL_SENSOR]
|
||||
gcode:
|
||||
ENABLE_FILAMENT_WIDTH_SENSOR
|
||||
RESET_FILAMENT_WIDTH_SENSOR
|
||||
query_filament_width
|
||||
SET_FILAMENT_SENSOR SENSOR=fila ENABLE=1
|
||||
save_last_file
|
||||
|
||||
[gcode_macro DISABLE_ALL_SENSOR]
|
||||
gcode:
|
||||
SET_FILAMENT_SENSOR SENSOR=fila ENABLE=0
|
||||
DISABLE_FILAMENT_WIDTH_SENSOR
|
||||
|
||||
|
||||
[gcode_macro AUTOTUNE_SHAPERS]
|
||||
variable_autotune_shapers: 'ei'
|
||||
@@ -214,9 +268,9 @@ gcode:
|
||||
{% if params.Z is undefined %}
|
||||
SET_KINEMATIC_POSITION X=0
|
||||
SET_KINEMATIC_POSITION Y=0
|
||||
SET_KINEMATIC_POSITION Z={printer.toolhead.axis_maximum.z-5}
|
||||
SET_KINEMATIC_POSITION Z={printer.toolhead.axis_maximum.z-10}
|
||||
G91
|
||||
G1 Z5 F600
|
||||
G1 Z7 F600
|
||||
G1 X10 F2400
|
||||
G1 Y10 F2400
|
||||
G4 P2000
|
||||
@@ -239,7 +293,7 @@ gcode:
|
||||
BEEP I=1 DUR=100
|
||||
G1 X10 F1200
|
||||
|
||||
SET_KINEMATIC_POSITION Z={printer.toolhead.axis_maximum.z-5}
|
||||
SET_KINEMATIC_POSITION Z={printer.toolhead.axis_maximum.z-10}
|
||||
|
||||
G90
|
||||
G1 X120 Y120 F7800
|
||||
@@ -282,8 +336,7 @@ gcode:
|
||||
SET_STEPPER_ENABLE STEPPER=stepper_z1 enable=1
|
||||
SET_STEPPER_ENABLE STEPPER=extruder enable=0
|
||||
|
||||
SET_FILAMENT_SENSOR SENSOR=fila ENABLE=0
|
||||
DISABLE_FILAMENT_WIDTH_SENSOR
|
||||
DISABLE_ALL_SENSOR
|
||||
SET_GCODE_OFFSET Z=0 MOVE=0
|
||||
BED_MESH_CLEAR
|
||||
G31
|
||||
@@ -321,8 +374,7 @@ gcode:
|
||||
SET_STEPPER_ENABLE STEPPER=stepper_z1 enable=1
|
||||
SET_STEPPER_ENABLE STEPPER=extruder enable=0
|
||||
|
||||
SET_FILAMENT_SENSOR SENSOR=fila ENABLE=0
|
||||
DISABLE_FILAMENT_WIDTH_SENSOR
|
||||
DISABLE_ALL_SENSOR
|
||||
SET_GCODE_OFFSET Z=0 MOVE=0
|
||||
BED_MESH_CLEAR
|
||||
G31
|
||||
@@ -345,6 +397,8 @@ gcode:
|
||||
SET_FILAMENT_SENSOR SENSOR=fila ENABLE=0 ; disable filament sensor
|
||||
SAVE_GCODE_STATE NAME=PAUSE ; save current print position for resume
|
||||
BASE_PAUSE ; pause print
|
||||
G92 E0
|
||||
G1 E-5 F1800
|
||||
{% if (printer.gcode_move.position.z ) < z %}
|
||||
G91 ; relative positioning
|
||||
G1 Z{z} F900 ; raise Z up by z hop amount
|
||||
@@ -554,7 +608,7 @@ gcode:
|
||||
[gcode_macro M4028]
|
||||
gcode:
|
||||
G28
|
||||
Z_TILT_ADJUST
|
||||
# Z_TILT_ADJUST
|
||||
G28
|
||||
get_zoffset
|
||||
M400
|
||||
@@ -569,12 +623,16 @@ gcode:
|
||||
M118 Position init complete
|
||||
|
||||
CLEAR_NOZZLE HOTEND=240
|
||||
Z_TILT_ADJUST
|
||||
# Z_TILT_ADJUST
|
||||
G28
|
||||
get_zoffset
|
||||
|
||||
[gcode_macro M4030]
|
||||
gcode:
|
||||
REVERSE_HOMING
|
||||
G91
|
||||
G1 Z-30
|
||||
G90
|
||||
BED_MESH_CLEAR
|
||||
SET_GCODE_OFFSET Z=0 MOVE=0
|
||||
G28
|
||||
@@ -590,7 +648,7 @@ gcode:
|
||||
G0 E15 F400
|
||||
G4 P1000
|
||||
G92 E0
|
||||
G1 E-80 F800
|
||||
G1 E-90 F800
|
||||
M400
|
||||
M118 Unload finish
|
||||
|
||||
@@ -603,7 +661,7 @@ gcode:
|
||||
M118 Load finish
|
||||
|
||||
[output_pin sound]
|
||||
pin: U_1:PA13
|
||||
pin: gpio8
|
||||
value:0
|
||||
|
||||
[gcode_macro beep_on]
|
||||
|
||||
@@ -10,6 +10,8 @@
|
||||
# modify: delete comments
|
||||
# add time_update macro
|
||||
# [bed_mesh] 6,6 ->8,8
|
||||
#V4.4.19 2024-4-16
|
||||
# modify: add [chamber_fan chamber_fan]
|
||||
[include timelapse.cfg]
|
||||
[include Adaptive_Mesh.cfg]
|
||||
[include gcode_macro.cfg]
|
||||
@@ -180,13 +182,17 @@ microsteps: 128
|
||||
rotation_distance: 4
|
||||
full_steps_per_rotation: 200
|
||||
endstop_pin:probe:z_virtual_endstop #U_1:PC3 for Z-max
|
||||
endstop_pin_reverse:tmc2209_stepper_z:virtual_endstop
|
||||
position_endstop:-0.2
|
||||
position_endstop_reverse:248
|
||||
position_max:248
|
||||
position_min: -6
|
||||
position_min: -4
|
||||
homing_speed: 8
|
||||
homing_speed_reverse: 8
|
||||
second_homing_speed: 10
|
||||
homing_retract_dist: 5.0
|
||||
homing_positive_dir:false
|
||||
homing_positive_dir_reverse:true
|
||||
step_pulse_duration:0.0000001
|
||||
|
||||
[stepper_z1]
|
||||
@@ -197,6 +203,7 @@ microsteps: 128
|
||||
rotation_distance: 4
|
||||
full_steps_per_rotation: 200
|
||||
step_pulse_duration:0.0000001
|
||||
endstop_pin_reverse:tmc2209_stepper_z1:virtual_endstop
|
||||
|
||||
[z_tilt]
|
||||
z_positions:
|
||||
@@ -244,6 +251,8 @@ run_current: 0.6
|
||||
#hold_current: 0.17
|
||||
interpolate: True
|
||||
stealthchop_threshold: 9999999999
|
||||
diag_pin:^U_1:PC12
|
||||
driver_SGTHRS:140
|
||||
|
||||
[tmc2209 stepper_z1]
|
||||
uart_pin:U_1: PB7
|
||||
@@ -251,6 +260,8 @@ run_current: 0.6
|
||||
#hold_current: 0.17
|
||||
interpolate: True
|
||||
stealthchop_threshold: 9999999999
|
||||
diag_pin:^U_1:PA13
|
||||
driver_SGTHRS:140
|
||||
|
||||
[heater_bed]
|
||||
heater_pin: U_1:PB10
|
||||
@@ -312,15 +323,16 @@ hardware_pwm: false
|
||||
kick_start_time: 0.100
|
||||
off_below: 0.0
|
||||
|
||||
[heater_fan chamber_fan]
|
||||
[chamber_fan chamber_fan]
|
||||
pin:U_1:PA4
|
||||
max_power: 1.0
|
||||
shutdown_speed: 0
|
||||
kick_start_time: 0.5
|
||||
heater: chamber
|
||||
heater_temp: 35
|
||||
heater:chamber
|
||||
fan_speed: 1.0
|
||||
off_below: 0
|
||||
idle_timeout:60
|
||||
idle_speed:1.0
|
||||
|
||||
[heater_fan hotend_fan]
|
||||
pin:gpio25
|
||||
|
||||
@@ -255,4 +255,6 @@ void refresh_page_auto_unload();
|
||||
int get_mks_ethernet();
|
||||
void set_mks_ethernet(int target);
|
||||
|
||||
std::string hex_to_utf8(const std::string& hex);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -420,6 +420,13 @@
|
||||
|
||||
#define TJC_PAGE_INSTALLING 90
|
||||
|
||||
#define TJC_PAGE_AUTO_WARNING 91
|
||||
#define TJC_PAGE_AUTO_WARNING_YES 0x00
|
||||
|
||||
#define TJC_PAGE_CALIBRATE_WARNING 92
|
||||
#define TJC_PAGE_CALIBRATE_WARNING_NEXT 0x00
|
||||
#define TJC_PAGE_CALIBRATE_WARNING_BACK 0x01
|
||||
|
||||
void parse_cmd_msg_from_tjc_screen(char *cmd);
|
||||
void page_to(int page_id);
|
||||
void tjc_event_clicked_handler(int page_id, int widget_id, int type_id);
|
||||
|
||||
2
main.cpp
2
main.cpp
@@ -240,7 +240,7 @@ int main(int argc, char** argv) {
|
||||
mks_get_version();
|
||||
sleep(3);
|
||||
|
||||
send_cmd_val(tty_fd, "logo.version", "18"); // CLL 检测UI与SOC版本是否匹配4.4.18版本输出标记数字为18
|
||||
send_cmd_val(tty_fd, "logo.version", "19"); // CLL 检测UI与SOC版本是否匹配4.4.19版本输出标记数字为19
|
||||
if (find_screen_tft_file == false) {
|
||||
previous_page_id = TJC_PAGE_LOGO;
|
||||
if (get_mks_oobe_enabled() == true) {
|
||||
|
||||
@@ -364,6 +364,8 @@ extern std::string thumbnail_path;
|
||||
|
||||
extern bool cache_clicked;
|
||||
|
||||
int unhomed_move_mode = 0; // CLL 用于保存上次按下的移动按钮,当触发需先归位操作时进行移动, 1(x up),2(x down),3(y up),4(y down),5(z up),6(z down)
|
||||
|
||||
// CLL 以下变量用于修复gcode响应函数和refresh函数之间的冲突(gcode响应函数需设置变量在refresh_page_show中统一改变页面,否则会产生冲突)
|
||||
bool jump_to_move_pop_1 = false;
|
||||
bool jump_to_move_pop_2 = false;
|
||||
@@ -404,6 +406,42 @@ void refresh_page_show() {
|
||||
page_to(TJC_PAGE_MOVE_POP_1);
|
||||
}
|
||||
if (jump_to_move_pop_2 == true) {
|
||||
switch (unhomed_move_mode)
|
||||
{
|
||||
case 1: // X_UP
|
||||
ep->Send(json_run_a_gcode("SET_KINEMATIC_POSITION Z=150\nSET_KINEMATIC_POSITION X=150\nSET_KINEMATIC_POSITION Y=150\n"));
|
||||
ep->Send(json_run_a_gcode("G91\nG1 X10 F3000\nG90\nM84\n"));
|
||||
break;
|
||||
|
||||
case 2: // X_DOWN
|
||||
ep->Send(json_run_a_gcode("SET_KINEMATIC_POSITION Z=150\nSET_KINEMATIC_POSITION X=150\nSET_KINEMATIC_POSITION Y=150\n"));
|
||||
ep->Send(json_run_a_gcode("G91\nG1 X-10 F3000\nG90\nM84\n"));
|
||||
break;
|
||||
|
||||
case 3: // Y_UP
|
||||
ep->Send(json_run_a_gcode("SET_KINEMATIC_POSITION Z=150\nSET_KINEMATIC_POSITION X=150\nSET_KINEMATIC_POSITION Y=150\n"));
|
||||
ep->Send(json_run_a_gcode("G91\nG1 Y10 F3000\nG90\nM84\n"));
|
||||
break;
|
||||
|
||||
case 4: // Y_DOWN
|
||||
ep->Send(json_run_a_gcode("SET_KINEMATIC_POSITION Z=150\nSET_KINEMATIC_POSITION X=150\nSET_KINEMATIC_POSITION Y=150\n"));
|
||||
ep->Send(json_run_a_gcode("G91\nG1 Y-10 F3000\nG90\nM84\n"));
|
||||
break;
|
||||
|
||||
case 5: // Z_UP
|
||||
ep->Send(json_run_a_gcode("SET_KINEMATIC_POSITION Z=150\nSET_KINEMATIC_POSITION X=150\nSET_KINEMATIC_POSITION Y=150\n"));
|
||||
ep->Send(json_run_a_gcode("G91\nG1 Z-10 F600\nG90\nM84\n"));
|
||||
break;
|
||||
|
||||
case 6: // Z_DOWN
|
||||
ep->Send(json_run_a_gcode("SET_KINEMATIC_POSITION Z=150\nSET_KINEMATIC_POSITION X=150\nSET_KINEMATIC_POSITION Y=150\n"));
|
||||
ep->Send(json_run_a_gcode("G91\nG1 Z10 F600\nG90\nM84\n"));
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
unhomed_move_mode = 0;
|
||||
jump_to_move_pop_2 = false;
|
||||
page_to(TJC_PAGE_MOVE_POP_2);
|
||||
}
|
||||
@@ -855,6 +893,7 @@ void refresh_page_auto_finish() {
|
||||
}
|
||||
|
||||
void refresh_page_auto_moving() {
|
||||
send_cmd_txt(tty_fd, "t5", "(" + std::to_string(printer_heater_bed_temperature) + "/" + std::to_string(printer_heater_bed_target) + ")");
|
||||
if (step_1 == true) {
|
||||
send_cmd_picc(tty_fd, "q0", "109");
|
||||
send_cmd_pco(tty_fd, "t1", "65535");
|
||||
@@ -1696,26 +1735,32 @@ void move_home() {
|
||||
|
||||
void move_x_decrease() {
|
||||
ep->Send(move(AXIS_X, "-" + std::to_string(printer_move_dist), 130));
|
||||
unhomed_move_mode = 2;
|
||||
}
|
||||
|
||||
void move_x_increase() {
|
||||
ep->Send(move(AXIS_X, "+" + std::to_string(printer_move_dist), 130));
|
||||
unhomed_move_mode = 1;
|
||||
}
|
||||
|
||||
void move_y_decrease() {
|
||||
ep->Send(move(AXIS_Y, "-" + std::to_string(printer_move_dist), 130));
|
||||
unhomed_move_mode = 4;
|
||||
}
|
||||
|
||||
void move_y_increase() {
|
||||
ep->Send(move(AXIS_Y, "+" + std::to_string(printer_move_dist), 130));
|
||||
unhomed_move_mode = 3;
|
||||
}
|
||||
|
||||
void move_z_decrease() {
|
||||
ep->Send(move(AXIS_Z, "-" + std::to_string(printer_move_dist), 10));
|
||||
unhomed_move_mode = 5;
|
||||
}
|
||||
|
||||
void move_z_increase() {
|
||||
ep->Send(move(AXIS_Z, "+" + std::to_string(printer_move_dist), 10));
|
||||
unhomed_move_mode = 6;
|
||||
}
|
||||
|
||||
bool get_filament_detected() {
|
||||
@@ -2115,7 +2160,7 @@ void go_to_network() {
|
||||
scan_ssid_and_show();
|
||||
get_wlan0_status();
|
||||
if (strcmp(status_result.wpa_state, "COMPLETED") == 0) {
|
||||
current_connected_ssid_name = status_result.ssid; // 如果已经连接wifi,获取wifi的名字
|
||||
current_connected_ssid_name = hex_to_utf8(status_result.ssid); // 如果已经连接wifi,获取wifi的名字
|
||||
} else if (strcmp(status_result.wpa_state, "INACTIVE")) {
|
||||
current_connected_ssid_name.clear(); // 如果没连接wifi,清除掉当前已连接wifi的名字
|
||||
}
|
||||
@@ -2143,7 +2188,7 @@ void refresh_page_wifi_list() {
|
||||
if (0 == page_wifi_current_pages) {
|
||||
if (0 == i) {
|
||||
if (strcmp(status_result.wpa_state, "COMPLETED") == 0) {
|
||||
send_cmd_txt(tty_fd, "t" + std::to_string(i+1), status_result.ssid);
|
||||
send_cmd_txt(tty_fd, "t" + std::to_string(i+1), hex_to_utf8(status_result.ssid));
|
||||
} else {
|
||||
send_cmd_txt(tty_fd, "t" + std::to_string(i+1), page_wifi_ssid_list[i]);
|
||||
}
|
||||
@@ -2496,7 +2541,10 @@ void level_mode_printing_print_file() {
|
||||
}
|
||||
|
||||
void update_finished_tips() {
|
||||
page_to(TJC_PAGE_UPDATE_FINISH);
|
||||
// page_to(TJC_PAGE_UPDATE_FINISH);
|
||||
sleep(5);
|
||||
system("sync");
|
||||
system("systemctl restart makerbase-client.service");
|
||||
}
|
||||
|
||||
bool get_mks_oobe_enabled() {
|
||||
@@ -2885,6 +2933,7 @@ void bed_calibrate() {
|
||||
if (manual_count == 4) {
|
||||
bed_offset = 0;
|
||||
printer_idle_timeout_state = "Printing";
|
||||
ep->Send(json_run_a_gcode("ABORT\n"));
|
||||
ep->Send(json_run_a_gcode("M4030"));
|
||||
page_to(TJC_PAGE_BED_MOVING);
|
||||
}else if (manual_count == 3) {
|
||||
@@ -3055,7 +3104,7 @@ void print_log() {
|
||||
system("bash -c 'cp /home/mks/klipper_logs/auto_update.log* /home/mks/gcode_files/sda1/QD_Log/'");
|
||||
system("bash -c 'cp /root/frp/frpc.log* /home/mks/gcode_files/sda1/QD_Log/'");
|
||||
system("bash -c 'cp /root/frp/frpc.*.log /home/mks/gcode_files/sda1/QD_Log/'");
|
||||
system("cp /root/frp/frpc.toml /home/mks/gcode_files/sda1/QD_Log/frpc.toml");
|
||||
system("cp /root/frp/frpc.toml /home/mks/gcode_files/sda1/QD_Log/server.cfg");
|
||||
page_to(TJC_PAGE_PRINT_LOG_S);
|
||||
}
|
||||
}
|
||||
@@ -3228,16 +3277,15 @@ void go_to_showqr() {
|
||||
page_to(TJC_PAGE_SHOW_QR);
|
||||
if (strcmp(status_result.wpa_state, "COMPLETED") == 0 || mks_ethernet) {
|
||||
if (qr_refreshed == false) {
|
||||
send_cmd_cp_close(tty_fd, "cp0");
|
||||
if (open_qr_refreshed == true || access("/home/mks/qrcode/qrcode.jpg", F_OK) == -1)
|
||||
qrmessage = run_python_code("python3 /home/mks/qrcode/qrcode_QD.py 176\n");
|
||||
std::cout << "qrmessage:" << qrmessage << std::endl;
|
||||
if (qrmessage.find("Missing or invalid") != -1) {
|
||||
send_cmd_txt(tty_fd, "t4", qrmessage);
|
||||
send_cmd_vis(tty_fd, "t4", "1");
|
||||
send_cmd_cp_close(tty_fd, "cp0");
|
||||
} else if (qrmessage.find("No") != -1) {
|
||||
send_cmd_vis(tty_fd, "t4", "1");
|
||||
send_cmd_cp_close(tty_fd, "cp0");
|
||||
} else {
|
||||
open_qr_refreshed = true;
|
||||
refresh_files_list_picture("/home/mks/qrcode/qrcode.jpg", 176, 0);
|
||||
@@ -3582,4 +3630,21 @@ void set_mks_ethernet(int target) {
|
||||
mksini_save();
|
||||
mksini_free();
|
||||
mks_ethernet = target;
|
||||
}
|
||||
|
||||
std::string hex_to_utf8(const std::string& hex) {
|
||||
std::ostringstream utf8;
|
||||
size_t i = 0;
|
||||
while (i < hex.size()) {
|
||||
if (i + 3 < hex.size() && hex[i] == '\\' && hex[i + 1] == 'x') {
|
||||
std::string hex_byte = hex.substr(i + 2, 2);
|
||||
int value;
|
||||
std::istringstream(hex_byte) >> std::hex >> value;
|
||||
utf8 << static_cast<char>(value);
|
||||
i += 4;
|
||||
} else {
|
||||
utf8 << hex[i++];
|
||||
}
|
||||
}
|
||||
return utf8.str();
|
||||
}
|
||||
@@ -416,6 +416,8 @@ void start_update()
|
||||
system("systemctl stop moonraker.service\n");
|
||||
system("find /home/mks/gcode_files -maxdepth 1 -type d ! -name sd* -a ! -name '.*' | grep gcode_files/ | xargs rm -rf");
|
||||
system("cp /home/mks/gcode_files/sda1/QD_Update/QD_gcode/*.gcode /home/mks/gcode_files; chmod 777 /home/mks/gcode_files/*.gcode; sync");
|
||||
sleep(3);
|
||||
system("systemctl restart moonraker.service\n");
|
||||
}
|
||||
|
||||
// 检测到UI文件
|
||||
@@ -435,8 +437,7 @@ void start_update()
|
||||
|
||||
if (!factory_mode) {
|
||||
command += "mv " + filePath + " " + filePath + ".bak; ";
|
||||
}
|
||||
|
||||
}
|
||||
command += "sync";
|
||||
system(command.c_str());
|
||||
break; // 每次更新只处理一个UI文件
|
||||
@@ -460,7 +461,7 @@ void start_update()
|
||||
{
|
||||
std::string filename = entry->d_name;
|
||||
if (filename.rfind(".bak") != std::string::npos) continue;
|
||||
if (filename.find("QD_Q1_PATCH") == 0 || filename.find("QD_Q1_SOC") == 0 || filename.find("QD_Mate3_SOC") == 0)
|
||||
if (filename.find("QD_Q1_PATCH") == 0 || filename.find("QD_Q1_SOC") == 0 || filename.find("QD_Mates3_SOC") == 0)
|
||||
{
|
||||
std::string file_path = base_path + filename;
|
||||
std::string command = "mv " + file_path + " " + base_path + "mks.deb; dpkg -i --force-overwrite " + base_path + "mks.deb;";
|
||||
@@ -472,7 +473,6 @@ void start_update()
|
||||
{
|
||||
new_file_name += ".bak";
|
||||
}
|
||||
|
||||
command = "mv " + base_path + "mks.deb " + new_file_name + "; sync";
|
||||
system(command.c_str());
|
||||
}
|
||||
|
||||
61
src/ui.cpp
61
src/ui.cpp
@@ -104,6 +104,8 @@ extern bool mks_file_parse_finished;
|
||||
extern int printer_extruder_temperature;
|
||||
extern int printer_extruder_target;
|
||||
|
||||
extern int printer_heater_bed_target;
|
||||
|
||||
extern std::string printer_webhooks_state;
|
||||
|
||||
extern bool printer_ready;
|
||||
@@ -642,18 +644,30 @@ void tjc_event_clicked_handler(int page_id, int widget_id, int type_id) {
|
||||
switch (widget_id)
|
||||
{
|
||||
case TJC_PAGE_ALL_TO_MAIN:
|
||||
page_to(TJC_PAGE_MAIN);
|
||||
if (printer_print_stats_state == "printing" || printer_print_stats_state == "paused") {
|
||||
page_to(TJC_PAGE_PRINTING);
|
||||
jump_to_print = false;
|
||||
} else
|
||||
page_to(TJC_PAGE_MAIN);
|
||||
break;
|
||||
|
||||
case TJC_PAGE_ALL_TO_FILE_LIST:
|
||||
break;
|
||||
|
||||
case TJC_PAGE_ALL_TO_ADJUST:
|
||||
go_to_adjust();
|
||||
if (printer_print_stats_state == "printing" || printer_print_stats_state == "paused") {
|
||||
page_to(TJC_PAGE_PRINTING);
|
||||
jump_to_print = false;
|
||||
} else
|
||||
go_to_adjust();
|
||||
break;
|
||||
|
||||
case TJC_PAGE_ALL_TO_SETTING:
|
||||
go_to_setting();
|
||||
if (printer_print_stats_state == "printing" || printer_print_stats_state == "paused") {
|
||||
page_to(TJC_PAGE_PRINTING);
|
||||
jump_to_print = false;
|
||||
} else
|
||||
go_to_setting();
|
||||
break;
|
||||
|
||||
case TJC_PAGE_PREVIEW_BACK:
|
||||
@@ -699,6 +713,11 @@ void tjc_event_clicked_handler(int page_id, int widget_id, int type_id) {
|
||||
break;
|
||||
|
||||
case TJC_PAGE_PREVIEW_BED_LEVELING:
|
||||
if (printer_print_stats_state == "printing" || printer_print_stats_state == "paused") {
|
||||
page_to(TJC_PAGE_PRINTING);
|
||||
jump_to_print = false;
|
||||
break;
|
||||
}
|
||||
if (printer_bed_leveling == true) {
|
||||
printer_bed_leveling = false;
|
||||
}else {
|
||||
@@ -1369,8 +1388,7 @@ void tjc_event_clicked_handler(int page_id, int widget_id, int type_id) {
|
||||
break;
|
||||
|
||||
case TJC_PAGE_LEVEL_MODE_BED_CALIBRATION:
|
||||
manual_count = 4;
|
||||
bed_calibrate();
|
||||
page_to(TJC_PAGE_CALIBRATE_WARNING);
|
||||
break;
|
||||
|
||||
case TJC_PAGE_LEVEL_MODE_TO_COMMON_SETTING:
|
||||
@@ -1419,6 +1437,10 @@ void tjc_event_clicked_handler(int page_id, int widget_id, int type_id) {
|
||||
break;
|
||||
|
||||
case TJC_PAGE_AUTO_HEATERBED_NEXT:
|
||||
if (printer_heater_bed_target < 35) {
|
||||
page_to(TJC_PAGE_AUTO_WARNING);
|
||||
break;
|
||||
}
|
||||
auto_level_button_enabled = true;
|
||||
printer_idle_timeout_state = "Printing";
|
||||
start_auto_level();
|
||||
@@ -2346,6 +2368,35 @@ void tjc_event_clicked_handler(int page_id, int widget_id, int type_id) {
|
||||
}
|
||||
break;
|
||||
|
||||
case TJC_PAGE_AUTO_WARNING:
|
||||
switch (widget_id)
|
||||
{
|
||||
case TJC_PAGE_AUTO_WARNING_YES:
|
||||
page_to(TJC_PAGE_AUTO_HEATERBED);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case TJC_PAGE_CALIBRATE_WARNING:
|
||||
switch (widget_id)
|
||||
{
|
||||
case TJC_PAGE_CALIBRATE_WARNING_NEXT:
|
||||
manual_count = 4;
|
||||
bed_calibrate();
|
||||
break;
|
||||
|
||||
case TJC_PAGE_CALIBRATE_WARNING_BACK:
|
||||
page_to(TJC_PAGE_LEVEL_MODE);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user