diff --git a/Firmware/Configuration.h b/Firmware/Configuration.h index 4a902ddc1..355ad57e3 100644 --- a/Firmware/Configuration.h +++ b/Firmware/Configuration.h @@ -4,8 +4,14 @@ #include "boards.h" #include "Configuration_prusa.h" +// Stringize helpers +#define XSTR(s) #s +#define STR(s) XSTR(s) + // Firmware version #define FW_version "3.1.0" +#define FW_local_variant 3 +#define FW_report_version FW_version " r" STR(FW_local_variant) #define FW_PRUSA3D_MAGIC "PRUSA3DFW" #define FW_PRUSA3D_MAGIC_LEN 10 diff --git a/Firmware/ultralcd.cpp b/Firmware/ultralcd.cpp index 88266737f..1b7454ad8 100644 --- a/Firmware/ultralcd.cpp +++ b/Firmware/ultralcd.cpp @@ -1484,6 +1484,9 @@ static void lcd_support_menu() MENU_ITEM(back, MSG_MAIN, lcd_main_menu); + MENU_ITEM(back, PSTR("Firmware:"), lcd_main_menu); + MENU_ITEM(back, PSTR(" " FW_report_version), lcd_main_menu); +#if 0 // Ideally this block would be optimized out by the compiler. const uint8_t fw_string_len = strlen_P(FW_VERSION_STR_P()); if (fw_string_len < 6) { @@ -1491,7 +1494,7 @@ static void lcd_support_menu() } else { MENU_ITEM(back, PSTR("FW - " FW_version), lcd_main_menu); } - +#endif MENU_ITEM(back, MSG_PRUSA3D, lcd_main_menu); MENU_ITEM(back, MSG_PRUSA3D_FORUM, lcd_main_menu); MENU_ITEM(back, MSG_PRUSA3D_HOWTO, lcd_main_menu);