MarlinFirmware / Marlin

Marlin is an optimized firmware for RepRap 3D printers based on the Arduino platform. Many commercial 3D printers come with Marlin installed. Check with your vendor if you need source code for your specific machine.
https://marlinfw.org
GNU General Public License v3.0
16.29k stars 19.24k forks source link

[BUG] (related issue) #22294

Closed prophetmaster closed 3 years ago

prophetmaster commented 3 years ago

Did you test the latest bugfix-2.0.x code?

Yes, and the problem still exists.

Bug Description

hard coded string in english line 297: "Stow Probe" for "deploy probe" and line 298: "Stow Probe"

my personal correction is replacing "Stow Probe" by var ds_str

Bug Timeline

i don't know

Expected behavior

No response

Actual behavior

No response

Steps to Reproduce

No response

Version of Marlin Firmware

2.0.9.1

Printer model

custom delta

Electronics

mks sbase

Add-ons

No response

Your Slicer

Prusa Slicer

Host Software

OctoPrint

Additional information & file uploads

No response

ellensp commented 3 years ago

Please update (bug summary) to related issue

skruppy commented 3 years ago

Looking into the code I found some more strings which could probably be replaced by translated strings. But I have no idea where (Serial, UI, Ext UI, Host Promt) translations should happen and where the output should be English only. But maybe I could at least help with a janky script finding those strings:

#!/usr/bin/env python3

import re
import os
import sys
from pathlib import Path

strings = set()
str_pattern = re.compile(r'"(?:[^"\\]|\\.)*"')
with open('Marlin/src/lcd/language/language_en.h') as f:
    for line in f:
        for match in str_pattern.finditer(line):
            strings.add(match[0])

pathes = []
for root, dirs, files in os.walk('.', topdown=True):
    dirs[:] = [d for d in dirs if not (d.startswith('.') or d == 'language')]
    for file in files:
        path = Path(root, file)
        if path.suffix.lower() in ['.h', '.c', '.cpp']:
            pathes.append(path)

for path in sorted(pathes):
    try:
        with open(path) as f:
            for i, line in enumerate(f):
                line = line.strip().split('//', 1)[0]
                for match in str_pattern.finditer(line):
                    if match[0] in strings:
                        print(f'{path}:{i+1}: {line}')
    except UnicodeDecodeError as ex:
        print(f'ERROR: {path}: {ex}', file=sys.stderr)
ellensp commented 3 years ago

python does not use marlin C language files

skruppy commented 3 years ago

Sorry, I should have given more explanations: TL;DR: Execute this script in the Marlin project root directory. You will get an output of all source file locations (like grep) containings strings also defined in the English Marlin "translation".

Long read: I was about to make a small pull request fixing this issues and started digging around in the code and found some more places with untranslated strings. I wrote this script to find some more untranslated strings. But I also found some places where I noticed I have no idea how for example the ExtUI API works, since for example the anycubic_chiron module compares the messages with its own hard coded messages. Hence I stopped creating a PR.

Output of the script Marlin/Configuration.h:924: * "Jerk" specifies the minimum speed change that requires acceleration. Marlin/Configuration_adv.h:757: * Note: If the probe is not deploying, do a "Reset" and "Self-Test" and then check the Marlin/Configuration_adv.h:757: * Note: If the probe is not deploying, do a "Reset" and "Self-Test" and then check the Marlin/Configuration_adv.h:3076: * ; This macro send the string "Marlin" to the slave device with address 0x63 (99) Marlin/src/HAL/AVR/math.h:81: : [longIn1] "d" (longIn1), Marlin/src/HAL/AVR/math.h:82: [longIn2] "d" (longIn2) Marlin/src/HAL/AVR/math.h:108: : [charIn1] "d" (charIn1), Marlin/src/HAL/AVR/math.h:109: [intIn2] "d" (intIn2) Marlin/src/core/language.h:191: #define STR_ERR_HOTEND_TOO_COLD "Hotend too cold" Marlin/src/core/language.h:245: #define STR_ERR_PROBING_FAILED "Probing Failed" Marlin/src/core/language.h:246: #define STR_ZPROBE_OUT_SER "Z Probe Past Bed" Marlin/src/core/language.h:263: #define STR_PASSWORD_SET "Password is " Marlin/src/core/language.h:345: #define AXIS4_STR "V" Marlin/src/core/language.h:379: #define AXIS5_STR "V" Marlin/src/core/language.h:413: #define AXIS6_STR "V" Marlin/src/core/macros.h:91: #define A(CODE) " " CODE "\n\t" Marlin/src/core/serial.cpp:41: PGMSTR(SP_I_STR, " " AXIS4_STR); PGMSTR(SP_J_STR, " " AXIS5_STR); PGMSTR(SP_K_STR, " " AXIS6_STR); Marlin/src/core/serial.cpp:41: PGMSTR(SP_I_STR, " " AXIS4_STR); PGMSTR(SP_J_STR, " " AXIS5_STR); PGMSTR(SP_K_STR, " " AXIS6_STR); Marlin/src/core/serial.cpp:41: PGMSTR(SP_I_STR, " " AXIS4_STR); PGMSTR(SP_J_STR, " " AXIS5_STR); PGMSTR(SP_K_STR, " " AXIS6_STR); Marlin/src/core/serial.cpp:42: PGMSTR(SP_I_LBL, " " AXIS4_STR ":"); PGMSTR(SP_J_LBL, " " AXIS5_STR ":"); PGMSTR(SP_K_LBL, " " AXIS6_STR ":"); Marlin/src/core/serial.cpp:42: PGMSTR(SP_I_LBL, " " AXIS4_STR ":"); PGMSTR(SP_J_LBL, " " AXIS5_STR ":"); PGMSTR(SP_K_LBL, " " AXIS6_STR ":"); Marlin/src/core/serial.cpp:42: PGMSTR(SP_I_LBL, " " AXIS4_STR ":"); PGMSTR(SP_J_LBL, " " AXIS5_STR ":"); PGMSTR(SP_K_LBL, " " AXIS6_STR ":"); Marlin/src/feature/bedlevel/ubl/ubl.cpp:46: void unified_bed_leveling::echo_name() { SERIAL_ECHOPGM("Unified Bed Leveling"); } Marlin/src/feature/bedlevel/ubl/ubl.cpp:62: SERIAL_ECHO_TERNARY(planner.leveling_active, " System v" UBL_VERSION " ", "", "in", "active\n"); Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp:1064: SERIAL_ECHOLNPGM("Done Editing Mesh"); Marlin/src/feature/host_actions.cpp:71: PGMSTR(CONTINUE_STR, "Continue"); Marlin/src/feature/hotend_idle.cpp:79: SERIAL_ECHOLNPGM("Hotend Idle Timeout"); Marlin/src/feature/meatpack.cpp:173: SERIAL_ECHOPGM(MeatPack_ProtocolVersion " "); Marlin/src/feature/mmu/mmu2.cpp:274: DEBUG_ECHOLNPAIR("MMU <= F", filament, " ", cmd_arg); Marlin/src/feature/pause.cpp:168: * - Show "Purge more" / "Continue" menu Marlin/src/feature/pause.cpp:168: * - Show "Purge more" / "Continue" menu Marlin/src/feature/pause.cpp:169: * - Return when "Continue" is selected Marlin/src/feature/pause.cpp:199: TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired_P(PSTR("Load Filament"))); Marlin/src/feature/powerloss.cpp:592: DEBUG_ECHOLNPAIR("zraise: ", info.zraise, " ", info.flag.raised ? "(before)" : ""); Marlin/src/feature/powerloss.cpp:624: LOOP_L_N(i, EXTRUDERS) DEBUG_ECHOLNPAIR(" ", info.filament_size[i]); Marlin/src/feature/probe_temp_comp.cpp:76: SERIAL_ECHOPGM_P(s == TSI_BED ? PSTR("Bed") : Marlin/src/feature/probe_temp_comp.cpp:78: s == TSI_EXT ? PSTR("Extruder") : Marlin/src/feature/runout.cpp:122: SERIAL_ECHOPGM(" " ACTION_REASON_ON_FILAMENT_RUNOUT " "); Marlin/src/feature/runout.cpp:122: SERIAL_ECHOPGM(" " ACTION_REASON_ON_FILAMENT_RUNOUT " "); Marlin/src/gcode/bedlevel/G35.cpp:141: SERIAL_ECHOPAIR(" ", (screw_thread & 1) == (adjust > 0) ? "CCW" : "CW", " by ", abs(full_turns), " turns"); Marlin/src/gcode/calibrate/M852.cpp:85: SERIAL_ECHOLNPGM(STR_SKEW_MIN " " STRINGIFY(SKEW_FACTOR_MIN) " " STR_SKEW_MAX " " STRINGIFY(SKEW_FACTOR_MAX)); Marlin/src/gcode/calibrate/M852.cpp:85: SERIAL_ECHOLNPGM(STR_SKEW_MIN " " STRINGIFY(SKEW_FACTOR_MIN) " " STR_SKEW_MAX " " STRINGIFY(SKEW_FACTOR_MAX)); Marlin/src/gcode/calibrate/M852.cpp:85: SERIAL_ECHOLNPGM(STR_SKEW_MIN " " STRINGIFY(SKEW_FACTOR_MIN) " " STR_SKEW_MAX " " STRINGIFY(SKEW_FACTOR_MAX)); Marlin/src/gcode/control/M211.cpp:42: print_pos(l_soft_min, PSTR(STR_SOFT_MIN), PSTR(" ")); Marlin/src/gcode/control/M80_M81.cpp:112: LCD_MESSAGEPGM_P(PSTR(MACHINE_NAME " " STR_OFF ".")); Marlin/src/gcode/feature/L6470/M916-918.cpp:107: char temp_axis_string[] = " "; Marlin/src/gcode/feature/L6470/M916-918.cpp:246: char temp_axis_string[] = " "; Marlin/src/gcode/feature/L6470/M916-918.cpp:605: char temp_axis_string[2] = " "; Marlin/src/gcode/feature/advance/M900.cpp:134: SERIAL_ECHOPGM("Advance K"); Marlin/src/gcode/feature/controllerfan/M710.cpp:38: " ", (int(controllerFan.settings.idle_speed) * 100) / 255, "%)" Marlin/src/gcode/feature/power_monitor/M430.cpp:61: "Voltage: ", power_monitor.getVolts(), "V" Marlin/src/gcode/gcode.cpp:115: SERIAL_ECHOLNPAIR(" " STR_INVALID_EXTRUDER " ", e); Marlin/src/gcode/gcode.cpp:115: SERIAL_ECHOLNPAIR(" " STR_INVALID_EXTRUDER " ", e); Marlin/src/gcode/gcode.cpp:132: SERIAL_ECHOLNPGM(" " STR_E_STEPPER_NOT_SPECIFIED); Marlin/src/gcode/gcode.cpp:134: SERIAL_ECHOLNPAIR(" " STR_INVALID_E_STEPPER " ", e); Marlin/src/gcode/gcode.cpp:134: SERIAL_ECHOLNPAIR(" " STR_INVALID_E_STEPPER " ", e); Marlin/src/gcode/host/M115.cpp:52: "FIRMWARE_NAME:Marlin " DETAILED_BUILD_VERSION " (" __DATE__ " " __TIME__ ") " Marlin/src/gcode/host/M115.cpp:53: "SOURCE_CODE_URL:" SOURCE_CODE_URL " " Marlin/src/gcode/host/M115.cpp:54: "PROTOCOL_VERSION:" PROTOCOL_VERSION " " Marlin/src/gcode/host/M115.cpp:55: "MACHINE_TYPE:" MACHINE_NAME " " Marlin/src/gcode/host/M115.cpp:56: "EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " " Marlin/src/gcode/host/M360.cpp:57: PGMSTR(JERK_STR, "Jerk"); Marlin/src/gcode/host/M360.cpp:104: PGMSTR(SPEED_STR, "Speed"); Marlin/src/gcode/host/M360.cpp:178: config_line_e(e, PSTR("Acceleration"), planner.settings.max_acceleration_mm_per_s2[E_AXIS_N(e)]); Marlin/src/gcode/motion/M290.cpp:45: SERIAL_ECHO_MSG(STR_PROBE_OFFSET " " STR_Z, probe.offset.z); Marlin/src/gcode/motion/M290.cpp:94: SERIAL_ECHOLNPAIR(STR_PROBE_OFFSET " " STR_Z, probe.offset.z); Marlin/src/gcode/motion/M290.cpp:121: PSTR("Babystep X"), babystep.axis_total[X_AXIS] Marlin/src/gcode/motion/M290.cpp:125: PSTR("Babystep Z") Marlin/src/lcd/HD44780/marlinui_HD44780.cpp:470: logo_lines(PSTR(" " SHORT_BUILD_VERSION)); Marlin/src/lcd/HD44780/marlinui_HD44780.cpp:595: lcd_put_u8str(" "); Marlin/src/lcd/TFTGLCD/marlinui_TFTGLCD.cpp:394: lcd.setCursor(indent, 1); lcd.write(LR); lcd_put_u8str_P(PSTR("Marlin")); lcd.write(LR); Marlin/src/lcd/dwin/e3v2/dwin.cpp:227: DWIN_Draw_String(false, true, size, Color_White, bColor, x - 6, y, F(" ")); Marlin/src/lcd/dwin/e3v2/dwin.cpp:656: DWIN_Draw_Label(MBASE(row), F("Preheat " PREHEAT_1_LABEL)); Marlin/src/lcd/dwin/e3v2/dwin.cpp:671: DWIN_Draw_Label(MBASE(row), F("Preheat " PREHEAT_2_LABEL)); Marlin/src/lcd/dwin/e3v2/dwin.cpp:1094: DWIN_Draw_String(false, true, font8x16, Popup_Text_Color, Color_Bg_Window, (272 - 8 * (parking ? 7 : 10)) / 2, 230, parking ? F("Parking") : F("Homing XYZ")); Marlin/src/lcd/dwin/e3v2/dwin.cpp:1713: DWIN_Draw_String(false, true, font8x16, Color_White, Color_Bg_Black, 205, 419, F(" ")); Marlin/src/lcd/dwin/e3v2/dwin.cpp:1856: DWIN_Draw_String(false, false, font16x32, Color_Yellow, Color_Bg_Red, ((DWIN_WIDTH) - 8 * 16) / 2, MBASE(3), F("No Media")); Marlin/src/lcd/dwin/e3v2/dwin.cpp:1948: DWIN_Draw_String(false, true, font8x16, Color_White, Color_Bg_Black, 205, 419, F(" ")); Marlin/src/lcd/dwin/e3v2/dwin.cpp:2907: DWIN_Draw_Label(MBASE(PREHEAT_CASE_BED), F("Bed Temp")); Marlin/src/lcd/dwin/e3v2/dwin.cpp:2986: DWIN_Draw_Label(MBASE(PREHEAT_CASE_BED), F("Bed Temp")); Marlin/src/lcd/dwin/e3v2/dwin.cpp:4131: DWIN_Draw_String(false,true,font8x16,Select_Color,bcolor,x+4,y,F(mode ? "x" : " ")); Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.cpp:120: DEBUG_ECHOLNPAIR("CI:", currentindex, " FD:", currentfolderdepth, " N:", skip, " ", filelist.longFilename()); Marlin/src/lcd/extui/anycubic_chiron/FileNavigator.cpp:251: DEBUG_ECHOLNPAIR("/", currentfoldername, "", filelist.shortFilename(), " ", filelist.longFilename()); Marlin/src/lcd/extui/anycubic_chiron/chiron_tft.cpp:363: SERIAL_ECHOLNPAIR("Tpos:", pos, " ", c); Marlin/src/lcd/extui/anycubic_chiron/chiron_tft_defs.h:102: #define MARLIN_msg_probing_failed PSTR("Probing Failed") Marlin/src/lcd/extui/anycubic_chiron/chiron_tft_defs.h:103: #define MARLIN_msg_ready PSTR(" Ready.") Marlin/src/lcd/extui/anycubic_chiron/chiron_tft_defs.h:104: #define MARLIN_msg_print_paused PSTR("Print Paused") Marlin/src/lcd/extui/anycubic_chiron/chiron_tft_defs.h:105: #define MARLIN_msg_print_aborted PSTR("Print Aborted") Marlin/src/lcd/extui/anycubic_chiron/chiron_tft_defs.h:107: #define MARLIN_msg_bed_heating PSTR("Bed Heating...") Marlin/src/lcd/extui/anycubic_chiron/chiron_tft_defs.h:108: #define MARLIN_msg_EEPROM_version PSTR("EEPROM Version Error") Marlin/src/lcd/extui/anycubic_chiron/chiron_tft_defs.h:109: #define MARLIN_msg_nozzle_parked PSTR("Nozzle Parked") Marlin/src/lcd/extui/anycubic_chiron/chiron_tft_defs.h:110: #define MARLIN_msg_heater_timeout PSTR("Heater Timeout") Marlin/src/lcd/extui/anycubic_chiron/chiron_tft_defs.h:111: #define MARLIN_msg_reheating PSTR("Reheating...") Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp:173: * "Nozzle Parked" Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp:174: * "Load Filament" Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp:181: if (strcmp_P(msg, PSTR("Nozzle Parked")) == 0) { Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp:187: else if (strcmp_P(msg, PSTR("Load Filament")) == 0) { Marlin/src/lcd/extui/anycubic_i3mega/anycubic_i3mega_lcd.cpp:953: SERIAL_ECHOPGM(" "); Marlin/src/lcd/extui/dgus/DGUSDisplay.cpp:188: DEBUG_ECHOPAIR(" ", receivedbyte); Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp:544: const char level_buf_en1[] = "Next Point"; Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp:556: const char level_buf_en2[] = "Next Point"; Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp:1528: const char Print_buf_en[] = "Print"; Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp:1546: const char TemperatureConfig_buf_en[] = "Temperature"; Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp:1552: const char Filament_buf_en[] = "Extrude"; Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp:1677: const char Speed_buf_en[] = "Speed"; Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp:1713: const char Info_PrinfFinsh_1_buf_en[] = "Print Done"; Marlin/src/lcd/extui/ftdi_eve_touch_ui/bioprinter/printing_dialog_box.cpp:48: .text(BTN_POS(1,1), BTN_SIZE(2,2), isPrinting() ? F("Printing...") : F("Finished.")) Marlin/src/lcd/extui/ftdi_eve_touch_ui/bioprinter/printing_dialog_box.cpp:81: .button(BTN_POS(2,9), BTN_SIZE(1,1), isPrinting() ? F("Cancel") : F("Back")); Marlin/src/lcd/extui/ftdi_eve_touch_ui/bioprinter/printing_dialog_box.cpp:81: .button(BTN_POS(2,9), BTN_SIZE(1,1), isPrinting() ? F("Cancel") : F("Back")); Marlin/src/lcd/extui/ftdi_eve_touch_ui/cocoa_press/preheat_screen.cpp:99: strcat_P(str, PSTR(" ")); Marlin/src/lcd/extui/ftdi_eve_touch_ui/ftdi_eve_lib/extended/adjuster_widget.cpp:41: strcat_P(str, PSTR(" ")); Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/base_numeric_adjustment_screen.cpp:262: strcat_P(b, PSTR(" ")); Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/developer_menu.cpp:69: .button(BTN_POS(1,10), BTN_SIZE(1,1), F("Back")); Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/developer_menu.cpp:84: .button(BTN_POS(1,6), BTN_SIZE(2,1), F("Back")); Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/nudge_nozzle_screen.cpp:71: strcat(str, " "); Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/string_format.cpp:91: strcat_P(str, PSTR(" ")); Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/touch_registers_screen.cpp:71: .tag(1).button(BTN_POS(2,7), BTN_SIZE(1,1), F("Back")); Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/widget_demo_screen.cpp:78: .button (BTN_POS(1, 8), BTN_SIZE(1,1), F("Back")); Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/widget_demo_screen.cpp:104: .button (BTN_POS(1, 8), BTN_SIZE(2,1), F("Back")); Marlin/src/lcd/extui/malyan/malyan.cpp:102: write_to_lcd_P(PSTR(" ")); Marlin/src/lcd/extui/mks_ui/draw_error_message.cpp:40: disp_string((TFT_WIDTH - strlen("PRINTER HALTED") * 16) / 2, 140, "PRINTER HALTED", 0xFFFF, 0x0000); Marlin/src/lcd/extui/mks_ui/draw_error_message.cpp:40: disp_string((TFT_WIDTH - strlen("PRINTER HALTED") * 16) / 2, 140, "PRINTER HALTED", 0xFFFF, 0x0000); Marlin/src/lcd/extui/mks_ui/draw_error_message.cpp:41: disp_string((TFT_WIDTH - strlen("Please Reset") * 16) / 2, 180, "Please Reset", 0xFFFF, 0x0000); Marlin/src/lcd/extui/mks_ui/draw_error_message.cpp:41: disp_string((TFT_WIDTH - strlen("Please Reset") * 16) / 2, 180, "Please Reset", 0xFFFF, 0x0000); Marlin/src/lcd/extui/mks_ui/draw_keyboard.cpp:38: "ABC", "a", "s", "d", "f", "g", "h", "j", "k", "l", LV_SYMBOL_NEW_LINE, "\n", Marlin/src/lcd/extui/mks_ui/draw_keyboard.cpp:38: "ABC", "a", "s", "d", "f", "g", "h", "j", "k", "l", LV_SYMBOL_NEW_LINE, "\n", Marlin/src/lcd/extui/mks_ui/draw_keyboard.cpp:39: "_", "-", "z", "x", "c", "v", "b", "n", "m", ".", ",", ":", "\n", Marlin/src/lcd/extui/mks_ui/draw_keyboard.cpp:40: LV_SYMBOL_CLOSE, LV_SYMBOL_LEFT, " ", LV_SYMBOL_RIGHT, LV_SYMBOL_OK, ""}; Marlin/src/lcd/extui/mks_ui/draw_keyboard.cpp:50: "_", "-", "Z", "X", "C", "V", "B", "N", "M", ".", ",", ":", "\n", Marlin/src/lcd/extui/mks_ui/draw_keyboard.cpp:51: LV_SYMBOL_CLOSE, LV_SYMBOL_LEFT, " ", LV_SYMBOL_RIGHT, LV_SYMBOL_OK, ""}; Marlin/src/lcd/extui/mks_ui/draw_keyboard.cpp:62: LV_SYMBOL_CLOSE, LV_SYMBOL_LEFT, " ", LV_SYMBOL_RIGHT, LV_SYMBOL_OK, ""}; Marlin/src/lcd/extui/mks_ui/draw_ready_print.cpp:167: lv_label_set_text(limit_info, " "); Marlin/src/lcd/extui/mks_ui/draw_ready_print.cpp:178: lv_label_set_text(det_info, " "); Marlin/src/lcd/extui/mks_ui/draw_ready_print.cpp:186: lv_obj_t *buttonExt1 = lv_big_button_create(scr, "F:/bmp_ext1_state.bin", " ", 55, ICON_POS_Y, event_handler, ID_INFO_EXT); Marlin/src/lcd/extui/mks_ui/draw_ready_print.cpp:188: lv_obj_t *buttonExt2 = lv_big_button_create(scr, "F:/bmp_ext2_state.bin", " ", 163, ICON_POS_Y, event_handler, ID_INFO_EXT); Marlin/src/lcd/extui/mks_ui/draw_ready_print.cpp:190: lv_obj_t *buttonBedstate = lv_big_button_create(scr, "F:/bmp_bed_state.bin", " ", 271, ICON_POS_Y, event_handler, ID_INFO_BED); Marlin/src/lcd/extui/mks_ui/draw_ready_print.cpp:194: lv_obj_t *buttonBedstate = lv_big_button_create(scr, "F:/bmp_bed_state.bin", " ", 210, ICON_POS_Y, event_handler, ID_INFO_BED); Marlin/src/lcd/extui/mks_ui/draw_ready_print.cpp:198: lv_obj_t *buttonFanstate = lv_big_button_create(scr, "F:/bmp_fan_state.bin", " ", 380, ICON_POS_Y, event_handler, ID_INFO_FAN); Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:27: #define NEXT_EN "Next" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:29: #define DEFAULT_EN "Default" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:31: #define KEY_REST_EN "Reset" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:115: #define ENABLE_EN "YES" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:116: #define DISABLE_EN "NO" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:215: #define INVERT_P_EN "YES" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:216: #define INVERT_N_EN "NO" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:295: #define BACK_TEXT_EN "Back" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:303: #define TOOL_FILAMENT_EN "Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:344: #define BREAK_POINT_TEXT_EN "Continue" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:345: #define FILAMENT_TEXT_EN "Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:386: #define FILAMENT_STOP_TEXT_EN "Stop" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:388: #define FILAMENT_TIPS3_TEXT_EN "Loading..." Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:391: #define FILAMENT_TIPS6_TEXT_EN "Completed" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:405: #define PRE_HEAT_BED_TEXT_EN "Bed" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:424: #define PRINTING_CHANGESPEED_EN "Speed" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:426: #define PRINTING_STOP_EN "Stop" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:452: #define TITLE_FILAMENT_EN "Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:457: #define TITLE_CHANGESPEED_EN "Speed" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:466: #define DIALOG_CANCLE_EN "Cancel" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:468: #define DIALOG_RESET_EN "Reset" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:474: #define DIALOG_STOP_EN "Stop" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:508: #define MAIN_FILAMENT_EN "Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:532: #define BUILD_SD_CARD_EN "SD Card" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:536: #define SD_CARD_TITLE_EN "SD Card" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:600: #define FILAMENT_PLA_LOAD_TITLE_EN "Load Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:601: #define FILAMENT_PLA_UNLOAD_TITLE_EN "Unload Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:602: #define FILAMENT_MODEL_PLA_LOAD_EN "Load Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:603: #define FILAMENT_MODEL_PLA_UNLOAD_EN "Unload Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:610: #define FILAMENT_HEATING_LOAD_TITLE_EN "Load Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:611: #define FILAMENT_HEATING_UNLOAD_TITLE_EN "Unload Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:617: #define ROTATE_LEFT_LOAD_TITLE_EN "Load Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:618: #define ROTATE_LEFT_UNLOAD_TITLE_EN "Unload Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:626: #define HANG_SPOOL_TITLE_EN "Load Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:634: #define FEED_FILAMENT_TITLE_EN "Load Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:642: #define ROTATE_UP_TITLE_EN "Load Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:650: #define FEED_BEGIN_TITLE_EN "Load Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:657: #define FEED_FINISH_TITLE_EN "Load Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:663: #define REMOVE_SPOOL_TITLE_EN "Unload Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:710: #define MESSAGE_PAUSING_EN "Parking..." Marlin/src/lcd/extui/mks_ui/tft_Language_en.h:722: #define MESSAGE_CONTINUE_PRINT_EN "Print" Marlin/src/lcd/extui/mks_ui/tft_Language_fr.h:30: #define EXTRUDE_TEXT_FR "Extruder" Marlin/src/lcd/extui/mks_ui/tft_Language_fr.h:46: #define CLOSE_TEXT_FR "Off" Marlin/src/lcd/extui/mks_ui/tft_Language_fr.h:51: #define TOOL_EXTRUDE_FR "Extruder" Marlin/src/lcd/extui/mks_ui/tft_Language_fr.h:56: #define TOOL_FILAMENT_FR "Filament" Marlin/src/lcd/extui/mks_ui/tft_Language_fr.h:159: #define PRE_HEAT_BED_TEXT_FR "Bed" Marlin/src/lcd/extui/mks_ui/tft_Language_fr.h:177: #define PRINTING_CHANGESPEED_FR "Speed" Marlin/src/lcd/extui/mks_ui/tft_Language_fr.h:179: #define PRINTING_STOP_FR "Stop" Marlin/src/lcd/extui/mks_ui/tft_Language_fr.h:181: #define PRINTING_EXTRUDER_FR "Extruder" Marlin/src/lcd/extui/mks_ui/tft_Language_fr.h:184: #define EXTRUDER_SPEED_FR "Extruder" Marlin/src/lcd/extui/mks_ui/tft_Language_fr.h:196: #define TITLE_EXTRUDE_FR "Extruder" Marlin/src/lcd/extui/mks_ui/tft_Language_fr.h:241: #define MESSAGE_PAUSING_FR "Parking..." Marlin/src/lcd/extui/mks_ui/tft_Language_it.h:72: #define HOME_ALL_TEXT_IT "All" Marlin/src/lcd/extui/mks_ui/tft_Language_it.h:139: #define FILAMENT_STOP_TEXT_IT "Stop" Marlin/src/lcd/extui/mks_ui/tft_Language_it.h:178: #define PRINTING_STOP_IT "Stop" Marlin/src/lcd/extui/mks_ui/tft_Language_it.h:225: #define DIALOG_STOP_IT "Stop" Marlin/src/lcd/extui/mks_ui/tft_Language_sp.h:230: #define DIALOG_STOP_SP "Stop" Marlin/src/lcd/extui/mks_ui/tft_multi_language.h:795: #define LANGUAGE_EN "English" Marlin/src/lcd/extui/mks_ui/tft_multi_language.h:809: #define HOME_ALL_TEXT "All" Marlin/src/lcd/extui/mks_ui/tft_multi_language.h:836: #define DIALOG_UPLOAD_SPEED_EN "Speed" Marlin/src/lcd/extui/nextion/nextion_tft_defs.h:55: #define msg_welcome MACHINE_NAME " Ready." Marlin/src/lcd/menu/menu_filament.cpp:106: * "Change Filament" submenu Marlin/src/lcd/menu/menu_info.cpp:76: STATIC_ITEM_P(PSTR(SERVICE_NAME_1 " "), SS_LEFT, buffer); Marlin/src/lcd/menu/menu_info.cpp:81: STATIC_ITEM_P(PSTR(SERVICE_NAME_2 " "), SS_LEFT, buffer); Marlin/src/lcd/menu/menu_info.cpp:86: STATIC_ITEM_P(PSTR(SERVICE_NAME_3 " "), SS_LEFT, buffer); ERROR: Marlin/src/lcd/tft/fontdata/profont_22.cpp: 'utf-8' codec can't decode byte 0xd1 in position 63: invalid continuation byte Marlin/src/libs/L64XX/L64XX_Marlin.cpp:42: str_I[] PROGMEM = AXIS4_STR " ", str_J[] PROGMEM = AXIS5_STR " ", str_K[] PROGMEM = AXIS6_STR " " Marlin/src/libs/L64XX/L64XX_Marlin.cpp:42: str_I[] PROGMEM = AXIS4_STR " ", str_J[] PROGMEM = AXIS5_STR " ", str_K[] PROGMEM = AXIS6_STR " " Marlin/src/libs/L64XX/L64XX_Marlin.cpp:42: str_I[] PROGMEM = AXIS4_STR " ", str_J[] PROGMEM = AXIS5_STR " ", str_K[] PROGMEM = AXIS6_STR " " Marlin/src/module/endstops.cpp:432: SERIAL_ECHOPAIR(" " STRINGIFY(A) ":", planner.triggered_position_mm(_AXIS(A))); _SET_STOP_CHAR(A,C); }while(0) Marlin/src/module/planner.cpp:3163: limit_and_warn(inMaxAccelMMS2, axis, PSTR("Acceleration"), max_acc_edit_scaled); Marlin/src/module/planner.cpp:3209: limit_and_warn(inMaxJerkMMS, axis, PSTR("Jerk"), max_jerk_edit); Marlin/src/module/printcounter.cpp:146: if (data.nextService1 == 0) doBuzz = _service_warn(PSTR(" " SERVICE_NAME_1)); Marlin/src/module/printcounter.cpp:149: if (data.nextService2 == 0) doBuzz = _service_warn(PSTR(" " SERVICE_NAME_2)); Marlin/src/module/printcounter.cpp:152: if (data.nextService3 == 0) doBuzz = _service_warn(PSTR(" " SERVICE_NAME_3)); Marlin/src/module/probe.cpp:137: TERN_(HOST_PROMPT_SUPPORT, host_prompt_do(PROMPT_USER_CONTINUE, PSTR("Deploy TouchMI"), CONTINUE_STR)); Marlin/src/module/stepper.cpp:3614: #define MS_LINE(A) do{ SERIAL_ECHOPGM(" " STRINGIFY(A) ":"); PIN_CHAR(A##_MS1); PIN_CHAR(A##_MS2); }while(0) Marlin/src/module/temperature.cpp:3914: SERIAL_ECHOLN(wants_to_cool ? PSTR("Cooldown") : PSTR("Heatup")); Marlin/src/pins/stm32f4/pins_STEVAL_3DP001V1.h:134: * resistors (R11 - R17) and change the "V" to "0" for the Marlin/src/sd/cardreader.cpp:520: * Used by M22, "Release Media", manage_media. Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.cpp:222: SERIAL_ECHOLNPGM("Waiting for media"); Marlin/src/sd/usb_flashdrive/Sd2Card_FlashDrive.cpp:236: SERIAL_ECHOLNPGM("USB device removed"); Marlin/src/sd/usb_flashdrive/lib-uhs2/hexdump.h:60: E_Notify(PSTR(" "), 0x80); Marlin/src/sd/usb_flashdrive/lib-uhs2/masstorage.cpp:774: Notify(PSTR(" "), 0x80); Marlin/src/sd/usb_flashdrive/lib-uhs2/masstorage.cpp:1107: Notify(PSTR(" "), 0x80); Marlin/src/sd/usb_flashdrive/lib-uhs3/UHS_host/UHS_BULK_STORAGE/UHS_BULK_STORAGE_INLINE.h:767: Notify(PSTR(" "), 0x80); Marlin/src/sd/usb_flashdrive/lib-uhs3/UHS_host/UHS_BULK_STORAGE/UHS_BULK_STORAGE_INLINE.h:1128: Notify(PSTR(" "), 0x80); Marlin/src/sd/usb_flashdrive/lib-uhs3/UHS_host/UHS_hexdump.h:60: E_Notify(PSTR(" "), 0x80);
thisiskeithb commented 3 years ago

Marlin doesn't translate serial strings because it'd be a nightmare for host software to deal with.

github-actions[bot] commented 3 years ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.