From a8e6020238c4c88a0d9a78e70ae22788af625bb9 Mon Sep 17 00:00:00 2001 From: Alex Voinea Date: Mon, 16 Dec 2019 15:21:55 +0200 Subject: [PATCH 01/25] Fix VERBOSITY --- Firmware/Marlin_main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Firmware/Marlin_main.cpp b/Firmware/Marlin_main.cpp index 4970091ea..a08b3aa34 100755 --- a/Firmware/Marlin_main.cpp +++ b/Firmware/Marlin_main.cpp @@ -4840,7 +4840,7 @@ if(eSoundMode!=e_SOUND_MODE_SILENT) #ifdef SUPPORT_VERBOSITY if (verbosity_level >= 1) { - clamped = world2machine_clamp(current_position[X_AXIS], current_position[Y_AXIS]); + bool clamped = world2machine_clamp(current_position[X_AXIS], current_position[Y_AXIS]); SERIAL_PROTOCOL(mesh_point); clamped ? SERIAL_PROTOCOLPGM(": xy clamped.\n") : SERIAL_PROTOCOLPGM(": no xy clamping\n"); } From 857f9d8d9e6f707b41888be0d221de5a80cae697 Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Fri, 31 Jan 2020 14:47:44 +0100 Subject: [PATCH 02/25] Hard reset and readded change --- Firmware/language.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Firmware/language.h b/Firmware/language.h index 36c18dba9..1e4137bf3 100644 --- a/Firmware/language.h +++ b/Firmware/language.h @@ -6,7 +6,9 @@ #include "config.h" #include -//#include +#ifdef DEBUG_SEC_LANG + #include +#endif //DEBUG_SEC_LANG #define PROTOCOL_VERSION "1.0" From f1618bfbd687e40147d382fb5c0e83a2899d1f04 Mon Sep 17 00:00:00 2001 From: Yuri D'Elia Date: Thu, 6 Feb 2020 22:41:47 +0100 Subject: [PATCH 03/25] Initialize current_position correctly during startup Just after setting up the w2m matrix, call "clamp_to_software_endstops" on the current_position (initially [0,0,0]) to move it to the effective minimal position, which is usually [0,0,non-zero] due to MIN_Z and the negative probe offset. This is required to calculate correctly the first relative move: planning X+10 would unexpectedly calculate a Z shift otherwise. --- Firmware/Marlin_main.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Firmware/Marlin_main.cpp b/Firmware/Marlin_main.cpp index 43e3081fe..e33ad37c6 100755 --- a/Firmware/Marlin_main.cpp +++ b/Firmware/Marlin_main.cpp @@ -1310,10 +1310,17 @@ void setup() setup_photpin(); servo_init(); + // Reset the machine correction matrix. // It does not make sense to load the correction matrix until the machine is homed. world2machine_reset(); - + + // Initialize current_position accounting for software endstops to + // avoid unexpected initial shifts on the first move + clamp_to_software_endstops(current_position); + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], + current_position[Z_AXIS], current_position[E_AXIS]); + #ifdef FILAMENT_SENSOR fsensor_init(); #endif //FILAMENT_SENSOR From f234ef2104cbf7808a8aa21bfa745165ce42e3d1 Mon Sep 17 00:00:00 2001 From: DRracer Date: Fri, 14 Feb 2020 09:09:15 +0100 Subject: [PATCH 04/25] Use combined creation/modification file time stamps for sorting --- Firmware/cardreader.cpp | 29 +++++++++++++++++++---------- Firmware/cardreader.h | 4 +++- 2 files changed, 22 insertions(+), 11 deletions(-) diff --git a/Firmware/cardreader.cpp b/Firmware/cardreader.cpp index 545316d39..1c2cbf3c5 100644 --- a/Firmware/cardreader.cpp +++ b/Firmware/cardreader.cpp @@ -136,8 +136,17 @@ void CardReader::lsDive(const char *prepend, SdFile parent, const char * const m SERIAL_ECHOPGM("Access date: "); MYSERIAL.println(p.lastAccessDate); SERIAL_ECHOLNPGM("");*/ - modificationDate = p.lastWriteDate; - modificationTime = p.lastWriteTime; + crmodDate = p.lastWriteDate; + crmodTime = p.lastWriteTime; + // There are scenarios when simple modification time is not enough (on MS Windows) + // For example - extract an old g-code from an archive onto the SD card. + // In such case the creation time is current time (which is correct), but the modification time + // stays the same - i.e. old. + // Therefore let's pick the most recent timestamp from both creation and modification timestamps + if( crmodDate < p.creationDate || ( crmodDate == p.creationDate && crmodTime < p.creationTime ) ){ + crmodDate = p.creationDate; + crmodTime = p.creationTime; + } //writeDate = p.lastAccessDate; if (match != NULL) { if (strcasecmp(match, filename) == 0) return; @@ -773,8 +782,8 @@ void CardReader::presort() { // retaining only two filenames at a time. This is very // slow but is safest and uses minimal RAM. char name1[LONG_FILENAME_LENGTH + 1]; - uint16_t modification_time_bckp; - uint16_t modification_date_bckp; + uint16_t crmod_time_bckp; + uint16_t crmod_date_bckp; #endif position = 0; @@ -800,8 +809,8 @@ void CardReader::presort() { #else // Copy filenames into the static array strcpy(sortnames[i], LONGEST_FILENAME); - modification_time[i] = modificationTime; - modification_date[i] = modificationDate; + modification_time[i] = crmodTime; + modification_date[i] = crmodDate; #if SDSORT_CACHE_NAMES strcpy(sortshort[i], filename); #endif @@ -830,8 +839,8 @@ void CardReader::presort() { (modification_date[o1] < modification_date [o2])) #else #define _SORT_CMP_NODIR() (strcasecmp(name1, name2) > 0) //true if lowercase(name1) > lowercase(name2) - #define _SORT_CMP_TIME_NODIR() (((modification_date_bckp == modificationDate) && (modification_time_bckp > modificationTime)) || \ - (modification_date_bckp > modificationDate)) + #define _SORT_CMP_TIME_NODIR() (((crmod_date_bckp == crmodDate) && (crmod_time_bckp > crmodTime)) || \ + (crmod_date_bckp > crmodDate)) #endif @@ -882,8 +891,8 @@ void CardReader::presort() { counter++; getfilename_simple(positions[o1]); strcpy(name1, LONGEST_FILENAME); // save (or getfilename below will trounce it) - modification_date_bckp = modificationDate; - modification_time_bckp = modificationTime; + crmod_date_bckp = crmodDate; + crmod_time_bckp = crmodTime; #if HAS_FOLDER_SORTING bool dir1 = filenameIsDir; #endif diff --git a/Firmware/cardreader.h b/Firmware/cardreader.h index 9a7d0f697..12e83d969 100644 --- a/Firmware/cardreader.h +++ b/Firmware/cardreader.h @@ -75,7 +75,9 @@ public: bool sdprinting ; bool cardOK ; char filename[13]; - uint16_t modificationTime, modificationDate; + // There are scenarios when simple modification time is not enough (on MS Windows) + // Therefore these timestamps hold the most recent one of creation/modification date/times + uint16_t crmodTime, crmodDate; uint32_t cluster, position; char longFilename[LONG_FILENAME_LENGTH]; bool filenameIsDir; From 2818316366f424a04f22ea522141f7cc2fc472d7 Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Thu, 12 Mar 2020 12:34:33 +0100 Subject: [PATCH 05/25] Started EEPROM Table doxygen documentation --- Firmware/Marlin_main.cpp | 4 +- Firmware/eeprom.h | 114 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 116 insertions(+), 2 deletions(-) diff --git a/Firmware/Marlin_main.cpp b/Firmware/Marlin_main.cpp index 1dcb89389..d0a4122f4 100755 --- a/Firmware/Marlin_main.cpp +++ b/Firmware/Marlin_main.cpp @@ -9124,8 +9124,8 @@ Sigma_Exit: #### End of D-Codes */ - /** @defgroup GCodes G-Code List - */ +/** @defgroup GCodes G-Code List +*/ // --------------------------------------------------- diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index f0544f395..7f431d247 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -1,3 +1,11 @@ + +/** + * @file + */ + /** \ingroup eeprom_table */ + //! _This is a EEPROM table of currently implemented in Prusa firmware (dynamically generated from doxygen)._ + + #ifndef EEPROM_H #define EEPROM_H @@ -26,6 +34,110 @@ typedef struct #ifdef __cplusplus static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEPROM_SHEETS_SIZEOF."); #endif +/** @defgroup eeprom_table EEPROM Table + * + + --------------------------------------------------------------------------------- + EEPROM 8-bit Empty value = 0xFFh 255 + + EEPROM 16-bit Empty value = 0xFFFFh 65535 + + --------------------------------------------------------------------------------- + How can you use the debug codes? + - Serial terminal like Putty. + - Octoprint does support D-codes + - _Pronterface_ does not support D-codes + + + --------------------------------------------------------------------------------- + + + +
EEPROM Table
Adress begin Bit/Type Name Valid values Default/FactoryResetDescription Debug code +
0x0FFFh 4095ucharEEPROM_SILENT 00h 0 ??? TMC Stealth mode off / miniRambo Power mode D3 Ax0fff C1 +
01h 1 TMC Stealth mode on / miniRambo Silent mode +
02h 2 Auto mode +
0x0FFEh 4094ucharEEPROM_LANG 00h 0 00h 0 English / LANG_ID_PRI D3 Ax0ffe C1 +
01h 1 Other language LANG_ID_SEC +
0x0FFCh 4092 uint16 EEPROM_BABYSTEP_X ??? ffh 255 Babystep for X axis _unsued_ D3 Ax0ffc C2 +
0x0FFAh 4090 uint16 EEPROM_BABYSTEP_Y ??? ffh 222 Babystep for Y axis _unsued_ D3 Ax0ffa C2 +
0x0FF8h 4088uint16EEPROM_BABYSTEP_Z ??? ffh 255 Babystep for Z axis _lagacy_ D3 Ax0ff8 C2 +
multiple values stored now in EEPROM_Sheets_base +
0x0FF7h 4087uint8EEPROM_CALIBRATION_STATUS 00h 0 ffh 255 Unknown D3 Ax0ff7 C1 +
01h 1 Calibrated +
E6h 230 needs Live Z adjustment +
F0h 240 needs Z calibration +
FAh 250 needs XYZ calibration +
FFh 255 Assbemled _default_ +
0x0FF5h 4085 uint16 EEPROM_BABYSTEP_Z0 ??? ??? Babystep for Z ??? D3 Ax0ff5 C2 +
0x0FF1h 4081 uint32 EEPROM_FILAMENTUSED ??? 00h 0 Filament used in meters D3 Ax0ff1 C4 +
0x0FEDh 4077 uint32 EEPROM_TOTALTIME ??? 00h 0 Total print time D3 Ax0fed C4 +
0x0FE5h 4069floatEEPROM_BED_CALIBRATION_CENTER ??? ??? ??? D3 Ax0fe5 C8 +
??? +
0x0FDDh 4061floatEEPROM_BED_CALIBRATION_VEC_X ??? ??? ??? D3 Ax0fdd C8 +
??? +
0x0FD5h 4053floatEEPROM_BED_CALIBRATION_VEC_Y ??? ??? ??? D3 Ax0fd5 C8 +
??? +
0x0FC5h 4037int16EEPROM_BED_CALIBRATION_Z_JITTER??? ??? ??? D3 Ax0fc5 C16 +
??? +
??? +
??? +
??? +
??? +
??? +
??? +
0x0FC4h 4036boolEEPROM_FARM_MODE 00h 0 00h 0 Prusa farm mode off D3 Ax0fc4 C1 +
ffh 255 Prusa farm mode on +
0x0FC1h 4033 int16 EEPROM_FARM_NUMBER ??? ff ff ffh Prusa farm number D3 Ax0fc1 C3 +
0x0FC0h 4032boolEEPROM_BED_CORRECTION_VALID 00h 0 00h 0 Bed correction invalid D3 Ax0fc0 C1 +
ffh 255 Bed correction valid +
0x0FBFh 4031charEEPROM_BED_CORRECTION_LEFT 00h FFh 00h 0 Bed manual correction left D3 Ax0fbf C1 +
At this moment limited to +-100um +
0x0FBEh 4030charEEPROM_BED_CORRECTION_RIGHT 00h FFh 00h 0 Bed manual correction right D3 Ax0fbe C1 +
At this moment limited to +-100um +
0x0FBDh 4029charEEPROM_BED_CORRECTION_FRONT 00h FFh 00h 0 Bed manual correction front D3 Ax0fbd C1 +
At this moment limited to +-100um +
0x0FBCh 4028charEEPROM_BED_CORRECTION_BACK 00h FFh 00h 0 Bed manual correction back D3 Ax0fbc C1 +
At this moment limited to +-100um +
0x0FBBh 4027boolEEPROM_TOSHIBA_FLASH_AIR_COMPATIBLITY 00h 0 00h 0 Toshiba Air off D3 Ax0fbb C1 +
ffh 255 Toshiba Air oon +
0x0FBAh 4026 uchar EEPROM_PRINT_FLAG ??? ??? _unsued_ D3 Ax0fba C1 +
0x0FB0h 4016int16EEPROM_PROBE_TEMP_SHIFT ??? ??? ??? D3 Ax0fb0 C10 +
??? +
??? +
??? +
??? +
0x0FAFh 4015boolEEPROM_TEMP_CAL_ACTIVE 00h 0 00h 0 PINDA Temp cal. inactive D3 Ax0faf C1 +
FFh 255 PINDA Temp cal. active +
0x0FA7h 4007uint32EEPROM_BOWDEN_LENGTH ??? ff 00 ff ffh Bowden length D3 Ax0fae C8 +
ff ff ff ffh +
0x0FA6h 4006uint8EEPROM_CALIBRATION_STATUS_PINDA 00h 0 ffh 255 PINDA Temp not calibrated D3 Ax0fa6 C1 +
01h 1 PINDA Temp calibrated +
0x0FA5h 4005uint8EEPROM_UVLO 00h 0 ffh 255 Power Panic flag inactive D3 Ax0fa5 C1 +
01h 1 Power Panic flag active +
02h 2 Power Panic flag ??? +
0x0F9Dh 3997floatEEPROM_UVLO_CURRENT_POSITION ??? ffh 255 Power Panic position D3 Ax0f9d C8 +
??? +
0x0F95h 3989charEEPROM_FILENAME ??? ffh 255 Power Panic Filename D3 Ax0f95 C8 +
??? +
??? +
??? +
??? +
??? +
??? +
??? +
0x0F91h 39851 unit32 EEPROM_FILE_POSITION ??? ff ff ff ffh Power Panic File Postion D3 Ax0f91 C4 +
0x0F8Dh 3981 float EEPROM_UVLO_CURRENT_POSITION_Z ??? ff ff ff ffh Power Panic Z Position D3 Ax0f8d C4 +
0x0F8Ch 3980???EEPROM_UVLO_UNUSED_001 ??? ffh 255 Power Panic UNUSED D3 Ax0f8c C1 +
0x0F8Bh 3979uint8EEPROM_UVLO_TARGET_BED ??? ffh 255 Power Panic Bed temperature D3 Ax0f8b C1 +
0x0F89h 3977uint16EEPROM_UVLO_FEEDRATE ??? ff ffh 65535 Power Panic Feedrate D3 Ax0f89 C2 +
0x0F88h 3976uint8EEPROM_UVLO_FAN_SPEED ??? ffh 255 Power Panic Fan speed D3 Ax0f88 C1 +
0x0F87h 3975uint8EEPROM_FAN_CHECK_ENABLED 00h 0 Fan Check disabled D3 Ax0f87 C1 +
01h 1 ffh 255 Fan Check enabled (exception ffh=01h) + + +
+*/ #define EEPROM_EMPTY_VALUE 0xFF #define EEPROM_EMPTY_VALUE16 0xFFFF @@ -230,6 +342,7 @@ static Sheets * const EEPROM_Sheets_base = (Sheets*)(EEPROM_SHEETS_BASE); // Magic string, indicating that the current or the previous firmware running was the Prusa3D firmware. #define EEPROM_FIRMWARE_PRUSA_MAGIC 0 + #ifdef __cplusplus #include "ConfigurationStore.h" static_assert(EEPROM_FIRMWARE_VERSION_END < 20, "Firmware version EEPROM address conflicts with EEPROM_M500_base"); @@ -256,3 +369,4 @@ void eeprom_switch_to_next_sheet(); #endif #endif // EEPROM_H + From 4d40ed67f67bda91ab1c8e87266191ffeece9ef3 Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Thu, 12 Mar 2020 12:36:48 +0100 Subject: [PATCH 06/25] remove LF --- Firmware/eeprom.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index 7f431d247..07cb2a9c1 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -342,7 +342,6 @@ static Sheets * const EEPROM_Sheets_base = (Sheets*)(EEPROM_SHEETS_BASE); // Magic string, indicating that the current or the previous firmware running was the Prusa3D firmware. #define EEPROM_FIRMWARE_PRUSA_MAGIC 0 - #ifdef __cplusplus #include "ConfigurationStore.h" static_assert(EEPROM_FIRMWARE_VERSION_END < 20, "Firmware version EEPROM address conflicts with EEPROM_M500_base"); @@ -369,4 +368,3 @@ void eeprom_switch_to_next_sheet(); #endif #endif // EEPROM_H - From c8fc5b2fed52a813532c3f469162bc966216f685 Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Fri, 20 Mar 2020 10:44:12 +0100 Subject: [PATCH 07/25] Simpler tabel syntax --- Firmware/eeprom.h | 172 +++++++++++++++++++++++----------------------- 1 file changed, 85 insertions(+), 87 deletions(-) diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index 07cb2a9c1..9322ca0f7 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -50,95 +50,93 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP --------------------------------------------------------------------------------- - - - -
EEPROM Table
Adress begin Bit/Type Name Valid values Default/FactoryResetDescription Debug code -
0x0FFFh 4095ucharEEPROM_SILENT 00h 0 ??? TMC Stealth mode off / miniRambo Power mode D3 Ax0fff C1 -
01h 1 TMC Stealth mode on / miniRambo Silent mode -
02h 2 Auto mode -
0x0FFEh 4094ucharEEPROM_LANG 00h 0 00h 0 English / LANG_ID_PRI D3 Ax0ffe C1 -
01h 1 Other language LANG_ID_SEC -
0x0FFCh 4092 uint16 EEPROM_BABYSTEP_X ??? ffh 255 Babystep for X axis _unsued_ D3 Ax0ffc C2 -
0x0FFAh 4090 uint16 EEPROM_BABYSTEP_Y ??? ffh 222 Babystep for Y axis _unsued_ D3 Ax0ffa C2 -
0x0FF8h 4088uint16EEPROM_BABYSTEP_Z ??? ffh 255 Babystep for Z axis _lagacy_ D3 Ax0ff8 C2 -
multiple values stored now in EEPROM_Sheets_base -
0x0FF7h 4087uint8EEPROM_CALIBRATION_STATUS 00h 0 ffh 255 Unknown D3 Ax0ff7 C1 -
01h 1 Calibrated -
E6h 230 needs Live Z adjustment -
F0h 240 needs Z calibration -
FAh 250 needs XYZ calibration -
FFh 255 Assbemled _default_ -
0x0FF5h 4085 uint16 EEPROM_BABYSTEP_Z0 ??? ??? Babystep for Z ??? D3 Ax0ff5 C2 -
0x0FF1h 4081 uint32 EEPROM_FILAMENTUSED ??? 00h 0 Filament used in meters D3 Ax0ff1 C4 -
0x0FEDh 4077 uint32 EEPROM_TOTALTIME ??? 00h 0 Total print time D3 Ax0fed C4 -
0x0FE5h 4069floatEEPROM_BED_CALIBRATION_CENTER ??? ??? ??? D3 Ax0fe5 C8 -
??? -
0x0FDDh 4061floatEEPROM_BED_CALIBRATION_VEC_X ??? ??? ??? D3 Ax0fdd C8 -
??? -
0x0FD5h 4053floatEEPROM_BED_CALIBRATION_VEC_Y ??? ??? ??? D3 Ax0fd5 C8 -
??? -
0x0FC5h 4037int16EEPROM_BED_CALIBRATION_Z_JITTER??? ??? ??? D3 Ax0fc5 C16 -
??? -
??? -
??? -
??? -
??? -
??? -
??? -
0x0FC4h 4036boolEEPROM_FARM_MODE 00h 0 00h 0 Prusa farm mode off D3 Ax0fc4 C1 -
ffh 255 Prusa farm mode on -
0x0FC1h 4033 int16 EEPROM_FARM_NUMBER ??? ff ff ffh Prusa farm number D3 Ax0fc1 C3 -
0x0FC0h 4032boolEEPROM_BED_CORRECTION_VALID 00h 0 00h 0 Bed correction invalid D3 Ax0fc0 C1 -
ffh 255 Bed correction valid -
0x0FBFh 4031charEEPROM_BED_CORRECTION_LEFT 00h FFh 00h 0 Bed manual correction left D3 Ax0fbf C1 -
At this moment limited to +-100um -
0x0FBEh 4030charEEPROM_BED_CORRECTION_RIGHT 00h FFh 00h 0 Bed manual correction right D3 Ax0fbe C1 -
At this moment limited to +-100um -
0x0FBDh 4029charEEPROM_BED_CORRECTION_FRONT 00h FFh 00h 0 Bed manual correction front D3 Ax0fbd C1 -
At this moment limited to +-100um -
0x0FBCh 4028charEEPROM_BED_CORRECTION_BACK 00h FFh 00h 0 Bed manual correction back D3 Ax0fbc C1 -
At this moment limited to +-100um -
0x0FBBh 4027boolEEPROM_TOSHIBA_FLASH_AIR_COMPATIBLITY 00h 0 00h 0 Toshiba Air off D3 Ax0fbb C1 -
ffh 255 Toshiba Air oon -
0x0FBAh 4026 uchar EEPROM_PRINT_FLAG ??? ??? _unsued_ D3 Ax0fba C1 -
0x0FB0h 4016int16EEPROM_PROBE_TEMP_SHIFT ??? ??? ??? D3 Ax0fb0 C10 -
??? -
??? -
??? -
??? -
0x0FAFh 4015boolEEPROM_TEMP_CAL_ACTIVE 00h 0 00h 0 PINDA Temp cal. inactive D3 Ax0faf C1 -
FFh 255 PINDA Temp cal. active -
0x0FA7h 4007uint32EEPROM_BOWDEN_LENGTH ??? ff 00 ff ffh Bowden length D3 Ax0fae C8 -
ff ff ff ffh -
0x0FA6h 4006uint8EEPROM_CALIBRATION_STATUS_PINDA 00h 0 ffh 255 PINDA Temp not calibrated D3 Ax0fa6 C1 -
01h 1 PINDA Temp calibrated -
0x0FA5h 4005uint8EEPROM_UVLO 00h 0 ffh 255 Power Panic flag inactive D3 Ax0fa5 C1 -
01h 1 Power Panic flag active -
02h 2 Power Panic flag ??? -
0x0F9Dh 3997floatEEPROM_UVLO_CURRENT_POSITION ??? ffh 255 Power Panic position D3 Ax0f9d C8 -
??? -
0x0F95h 3989charEEPROM_FILENAME ??? ffh 255 Power Panic Filename D3 Ax0f95 C8 -
??? -
??? -
??? -
??? -
??? -
??? -
??? -
0x0F91h 39851 unit32 EEPROM_FILE_POSITION ??? ff ff ff ffh Power Panic File Postion D3 Ax0f91 C4 -
0x0F8Dh 3981 float EEPROM_UVLO_CURRENT_POSITION_Z ??? ff ff ff ffh Power Panic Z Position D3 Ax0f8d C4 -
0x0F8Ch 3980???EEPROM_UVLO_UNUSED_001 ??? ffh 255 Power Panic UNUSED D3 Ax0f8c C1 -
0x0F8Bh 3979uint8EEPROM_UVLO_TARGET_BED ??? ffh 255 Power Panic Bed temperature D3 Ax0f8b C1 -
0x0F89h 3977uint16EEPROM_UVLO_FEEDRATE ??? ff ffh 65535 Power Panic Feedrate D3 Ax0f89 C2 -
0x0F88h 3976uint8EEPROM_UVLO_FAN_SPEED ??? ffh 255 Power Panic Fan speed D3 Ax0f88 C1 -
0x0F87h 3975uint8EEPROM_FAN_CHECK_ENABLED 00h 0 Fan Check disabled D3 Ax0f87 C1 -
01h 1 ffh 255 Fan Check enabled (exception ffh=01h) + + ## EEPROM Tabel + +| Adress begin | Bit/Type | Name | Valid values | Default/FactoryReset | Description | Debug code +| :--: | :--: | :--: | :--: | :--: | :--: | :--: +| 0x0FFFh 4095 | uchar | EEPROM_SILENT | 00h 0 | ffh 255 | TMC Stealth mode off / miniRambo Power mode | D3 Ax0fff C1 +| ^ | ^ | ^ | 01h 1 | ^ | TMC Stealth mode on / miniRambo Silent mode | ^ +| 0x0FFEh 4094 | uchar | EEPROM_LANG | 00h 0 | ffh 255 | English / LANG_ID_PRI | D3 Ax0ffe C1 +| ^ | ^ | ^ | 01h 1 | ^ | Other language LANG_ID_SEC | ^ +| 0x0FFCh 4092 | uint16 | EEPROM_BABYSTEP_X | ??? | ffh 255 | Babystep for X axis _unsued_ | D3 Ax0ffc C2 +| 0x0FFAh 4090 | uint16 | EEPROM_BABYSTEP_Y | ??? | ffh 255 | Babystep for Y axis _unsued_ | D3 Ax0ffa C2 +| 0x0FF8h 4088 | uint16 | EEPROM_BABYSTEP_Z | ??? | ffh 255 | Babystep for Z axis _lagacy_ | D3 Ax0ff8 C2 +| ^ | ^ | ^ | ^ | ^ | multiple values stored now in EEPROM_Sheets_base | ^ +| 0x0FF7h 4087 | uint8 | EEPROM_CALIBRATION_STATUS | 00h 0 | ffh 255 | Unknown | D3 Ax0ff7 C1 +| ^ | ^ | ^ | 01h 1 | ^ | Calibrated | ^ +| ^ | ^ | ^ | E6h 230 | ^ | needs Live Z adjustment | ^ +| ^ | ^ | ^ | F0h 240 | ^ | needs Z calibration | ^ +| ^ | ^ | ^ | FAh 250 | ^ | needs XYZ calibration | ^ +| ^ | ^ | ^ | FFh 255 | ^ | Assbemled _default_ | ^ +| 0x0FF5h 4085 | uint16 | EEPROM_BABYSTEP_Z0 | ??? | ??? | Babystep for Z ??? | D3 Ax0ff5 C2 +| 0x0FF1h 4081 | uint32 | EEPROM_FILAMENTUSED | ??? | 00h 0 | Filament used in meters | D3 Ax0ff1 C4 +| 0x0FEDh 4077 | uint32 | EEPROM_TOTALTIME | ??? | 00h 0 | Total print time | D3 Ax0fed C4 +| 0x0FE5h 4069 | float | EEPROM_BED_CALIBRATION_CENTER | ??? | ??? | ??? | D3 Ax0fe5 C8 +| ^ | ^ | ^ | ??? | ??? | ??? | ^ +| 0x0FDDh 4061 | float | EEPROM_BED_CALIBRATION_VEC_X | ??? | ??? | ??? | D3 Ax0fdd C8 +| ^ | ^ | ^ | ??? | ??? | ??? | ^ +| 0x0FD5h 4053 | float | EEPROM_BED_CALIBRATION_VEC_Y | ??? | ??? | ??? | D3 Ax0fd5 C8 +| ^ | ^ | ^ | ??? | ??? | ??? | ^ +| 0x0FC5h 4037 | int16 | EEPROM_BED_CALIBRATION_Z_JITTER | ??? | ??? | ??? | D3 Ax0fc5 C16 +| ^ | ^ | ^ | ??? | ??? | ??? | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ +| 0x0FC4h 4036 | bool | EEPROM_FARM_MODE | 00h 0 | 00h 0 | Prusa farm mode off | D3 Ax0fc4 C1 +| ^ | ^ | ^ | ??? | ffh 255 | Prusa farm mode on | ^ +| 0x0FC1h 4033 | int16 | EEPROM_FARM_NUMBER | ??? | ff ff ffh | Prusa farm number | D3 Ax0fc1 C3 +| 0x0FC0h 4032 | bool | EEPROM_BED_CORRECTION_VALID | 00h 0 | 00h 0 | Bed correction invalid | D3 Ax0fc0 C1 +| ^ | ^ | ^ | ffh 255 | | Bed correction valid ^ | ^ +| 0x0FBFh 4031 | char | EEPROM_BED_CORRECTION_LEFT | 00h FFh | 00h 0 | Bed manual correction left | D3 Ax0fbf C1 +| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | ^ +| 0x0FBEh 4030 | char | EEPROM_BED_CORRECTION_RIGHT | 00h FFh | 00h 0 | Bed manual correction right | D3 Ax0fbe C1 +| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | ^ +| 0x0FBDh 4029 | char | EEPROM_BED_CORRECTION_FRONT | 00h FFh | 00h 0 | Bed manual correction front | D3 Ax0fbd C1 +| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | ^ +| 0x0FBCh 4028 | char | EEPROM_BED_CORRECTION_BACK | 00h FFh | 00h 0 | Bed manual correction back | D3 Ax0fbc C1 +| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | ^ +| 0x0FBBh 4027 | bool | EEPROM_TOSHIBA_FLASH_AIR_COMPATIBLITY | 00h 0 | 00h 0 | Toshiba Air off | D3 Ax0fbb C1 +| ^ | ^ | ^ | ??? | ffh 255 | Toshiba Air oon | ^ +| 0x0FBAh 4026 | uchar | EEPROM_PRINT_FLAG | ??? | ??? | _unsued_ | D3 Ax0fba C1 +| 0x0FB0h 4016 | int16 | EEPROM_PROBE_TEMP_SHIFT | ??? | ??? | ??? | D3 Ax0fb0 C10 +| ^ | ^ | ^ | ??? | ??? | ??? | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ +| 0x0FAFh 4015 | bool | EEPROM_TEMP_CAL_ACTIVE | 00h 0 | 00h 0 | PINDA Temp cal. inactive | D3 Ax0faf C1 +| ^ | ^ | ^ | ffh 255 | ^ | PINDA Temp cal. active | ^ +| 0x0FA7h 4007 | uint32 | EEPROM_BOWDEN_LENGTH | ??? | ff 00 ff ffh | Bowden length | D3 Ax0fae C8 +| ^ | ^ | ^ | ??? | ff ff ff ffh | ^ | ^ +| 0x0FA6h 4006 | uint8 | EEPROM_CALIBRATION_STATUS_PINDA | 00h 0 | ffh 255 | PINDA Temp not calibrated | D3 Ax0fa6 C1 +| ^ | ^ | ^ | 01h 1 | ^ | PINDA Temp calibrated | ^ +| 0x0FA5h 4005 | uint8 | EEPROM_UVLO | 00h 0 | ffh 255 | Power Panic flag inactive | D3 Ax0fa5 C1 +| ^ | ^ | ^ | 01h 1 | ^ | Power Panic flag active | ^ +| ^ | ^ | ^ | 02h 2 | ^ | Power Panic flag ??? | ^ +| 0x0F9Dh 3997 | float | EEPROM_UVLO_CURRENT_POSITION | ??? | ffh 255 | Power Panic position | D3 Ax0f9d C8 +| ^ | ^ | ^ | ??? | ^ | ^ | ^ +| 0x0F95h 3989 | char | EEPROM_FILENAME | ??? | ffh 255 | Power Panic Filename | D3 Ax0f95 C8 +| ^ | ^ | ^ | ??? | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ +| 0x0F91h 39851 | unit32 | EEPROM_FILE_POSITION | ??? | ff ff ff ffh | Power Panic File Postion | D3 Ax0f91 C4 +| 0x0F8Dh 3981 | float | EEPROM_UVLO_CURRENT_POSITION_Z | ??? | ff ff ff ffh | Power Panic Z Position | D3 Ax0f8d C4 +| 0x0F8Ch 3980 | ??? | EEPROM_UVLO_UNUSED_001 | ??? | ffh 255 | Power Panic UNUSED | D3 Ax0f8c C1 +| 0x0F8Bh 3979 | uint8 | EEPROM_UVLO_TARGET_BED | ??? | ffh 255 | Power Panic Bed temperature | D3 Ax0f8b C1 +| 0x0F89h 3977 | uint16 | EEPROM_UVLO_FEEDRATE | ??? | ff ffh 65535 | Power Panic Feedrate | D3 Ax0f89 C2 +| 0x0F88h 3976 | uint8 | EEPROM_UVLO_FAN_SPEED | ??? | ffh 255 | Power Panic Fan speed | D3 Ax0f88 C1 +| 0x0F87h 3975 | uint8 | EEPROM_FAN_CHECK_ENABLED | 00h 0 | ??? | Fan Check disabled | D3 Ax0f87 C1 +| ^ | ^ | ^ | 01h 1 | ffh 255 | Fan Check enabled (exception ffh=01h) | ^ -
-*/ - + */ #define EEPROM_EMPTY_VALUE 0xFF #define EEPROM_EMPTY_VALUE16 0xFFFF // The total size of the EEPROM is From 2591f8d5931cc722098ae0bee80b1dd0f94ff8fc Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Fri, 20 Mar 2020 12:36:26 +0100 Subject: [PATCH 08/25] Added and tested more... ... have to take a short break --- Firmware/eeprom.h | 202 +++++++++++++++++++++++++++------------------- 1 file changed, 118 insertions(+), 84 deletions(-) diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index 9322ca0f7..d47b0cad4 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -53,90 +53,124 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP ## EEPROM Tabel -| Adress begin | Bit/Type | Name | Valid values | Default/FactoryReset | Description | Debug code -| :--: | :--: | :--: | :--: | :--: | :--: | :--: -| 0x0FFFh 4095 | uchar | EEPROM_SILENT | 00h 0 | ffh 255 | TMC Stealth mode off / miniRambo Power mode | D3 Ax0fff C1 -| ^ | ^ | ^ | 01h 1 | ^ | TMC Stealth mode on / miniRambo Silent mode | ^ -| 0x0FFEh 4094 | uchar | EEPROM_LANG | 00h 0 | ffh 255 | English / LANG_ID_PRI | D3 Ax0ffe C1 -| ^ | ^ | ^ | 01h 1 | ^ | Other language LANG_ID_SEC | ^ -| 0x0FFCh 4092 | uint16 | EEPROM_BABYSTEP_X | ??? | ffh 255 | Babystep for X axis _unsued_ | D3 Ax0ffc C2 -| 0x0FFAh 4090 | uint16 | EEPROM_BABYSTEP_Y | ??? | ffh 255 | Babystep for Y axis _unsued_ | D3 Ax0ffa C2 -| 0x0FF8h 4088 | uint16 | EEPROM_BABYSTEP_Z | ??? | ffh 255 | Babystep for Z axis _lagacy_ | D3 Ax0ff8 C2 -| ^ | ^ | ^ | ^ | ^ | multiple values stored now in EEPROM_Sheets_base | ^ -| 0x0FF7h 4087 | uint8 | EEPROM_CALIBRATION_STATUS | 00h 0 | ffh 255 | Unknown | D3 Ax0ff7 C1 -| ^ | ^ | ^ | 01h 1 | ^ | Calibrated | ^ -| ^ | ^ | ^ | E6h 230 | ^ | needs Live Z adjustment | ^ -| ^ | ^ | ^ | F0h 240 | ^ | needs Z calibration | ^ -| ^ | ^ | ^ | FAh 250 | ^ | needs XYZ calibration | ^ -| ^ | ^ | ^ | FFh 255 | ^ | Assbemled _default_ | ^ -| 0x0FF5h 4085 | uint16 | EEPROM_BABYSTEP_Z0 | ??? | ??? | Babystep for Z ??? | D3 Ax0ff5 C2 -| 0x0FF1h 4081 | uint32 | EEPROM_FILAMENTUSED | ??? | 00h 0 | Filament used in meters | D3 Ax0ff1 C4 -| 0x0FEDh 4077 | uint32 | EEPROM_TOTALTIME | ??? | 00h 0 | Total print time | D3 Ax0fed C4 -| 0x0FE5h 4069 | float | EEPROM_BED_CALIBRATION_CENTER | ??? | ??? | ??? | D3 Ax0fe5 C8 -| ^ | ^ | ^ | ??? | ??? | ??? | ^ -| 0x0FDDh 4061 | float | EEPROM_BED_CALIBRATION_VEC_X | ??? | ??? | ??? | D3 Ax0fdd C8 -| ^ | ^ | ^ | ??? | ??? | ??? | ^ -| 0x0FD5h 4053 | float | EEPROM_BED_CALIBRATION_VEC_Y | ??? | ??? | ??? | D3 Ax0fd5 C8 -| ^ | ^ | ^ | ??? | ??? | ??? | ^ -| 0x0FC5h 4037 | int16 | EEPROM_BED_CALIBRATION_Z_JITTER | ??? | ??? | ??? | D3 Ax0fc5 C16 -| ^ | ^ | ^ | ??? | ??? | ??? | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ -| 0x0FC4h 4036 | bool | EEPROM_FARM_MODE | 00h 0 | 00h 0 | Prusa farm mode off | D3 Ax0fc4 C1 -| ^ | ^ | ^ | ??? | ffh 255 | Prusa farm mode on | ^ -| 0x0FC1h 4033 | int16 | EEPROM_FARM_NUMBER | ??? | ff ff ffh | Prusa farm number | D3 Ax0fc1 C3 -| 0x0FC0h 4032 | bool | EEPROM_BED_CORRECTION_VALID | 00h 0 | 00h 0 | Bed correction invalid | D3 Ax0fc0 C1 -| ^ | ^ | ^ | ffh 255 | | Bed correction valid ^ | ^ -| 0x0FBFh 4031 | char | EEPROM_BED_CORRECTION_LEFT | 00h FFh | 00h 0 | Bed manual correction left | D3 Ax0fbf C1 -| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | ^ -| 0x0FBEh 4030 | char | EEPROM_BED_CORRECTION_RIGHT | 00h FFh | 00h 0 | Bed manual correction right | D3 Ax0fbe C1 -| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | ^ -| 0x0FBDh 4029 | char | EEPROM_BED_CORRECTION_FRONT | 00h FFh | 00h 0 | Bed manual correction front | D3 Ax0fbd C1 -| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | ^ -| 0x0FBCh 4028 | char | EEPROM_BED_CORRECTION_BACK | 00h FFh | 00h 0 | Bed manual correction back | D3 Ax0fbc C1 -| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | ^ -| 0x0FBBh 4027 | bool | EEPROM_TOSHIBA_FLASH_AIR_COMPATIBLITY | 00h 0 | 00h 0 | Toshiba Air off | D3 Ax0fbb C1 -| ^ | ^ | ^ | ??? | ffh 255 | Toshiba Air oon | ^ -| 0x0FBAh 4026 | uchar | EEPROM_PRINT_FLAG | ??? | ??? | _unsued_ | D3 Ax0fba C1 -| 0x0FB0h 4016 | int16 | EEPROM_PROBE_TEMP_SHIFT | ??? | ??? | ??? | D3 Ax0fb0 C10 -| ^ | ^ | ^ | ??? | ??? | ??? | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ -| 0x0FAFh 4015 | bool | EEPROM_TEMP_CAL_ACTIVE | 00h 0 | 00h 0 | PINDA Temp cal. inactive | D3 Ax0faf C1 -| ^ | ^ | ^ | ffh 255 | ^ | PINDA Temp cal. active | ^ -| 0x0FA7h 4007 | uint32 | EEPROM_BOWDEN_LENGTH | ??? | ff 00 ff ffh | Bowden length | D3 Ax0fae C8 -| ^ | ^ | ^ | ??? | ff ff ff ffh | ^ | ^ -| 0x0FA6h 4006 | uint8 | EEPROM_CALIBRATION_STATUS_PINDA | 00h 0 | ffh 255 | PINDA Temp not calibrated | D3 Ax0fa6 C1 -| ^ | ^ | ^ | 01h 1 | ^ | PINDA Temp calibrated | ^ -| 0x0FA5h 4005 | uint8 | EEPROM_UVLO | 00h 0 | ffh 255 | Power Panic flag inactive | D3 Ax0fa5 C1 -| ^ | ^ | ^ | 01h 1 | ^ | Power Panic flag active | ^ -| ^ | ^ | ^ | 02h 2 | ^ | Power Panic flag ??? | ^ -| 0x0F9Dh 3997 | float | EEPROM_UVLO_CURRENT_POSITION | ??? | ffh 255 | Power Panic position | D3 Ax0f9d C8 -| ^ | ^ | ^ | ??? | ^ | ^ | ^ -| 0x0F95h 3989 | char | EEPROM_FILENAME | ??? | ffh 255 | Power Panic Filename | D3 Ax0f95 C8 -| ^ | ^ | ^ | ??? | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ -| 0x0F91h 39851 | unit32 | EEPROM_FILE_POSITION | ??? | ff ff ff ffh | Power Panic File Postion | D3 Ax0f91 C4 -| 0x0F8Dh 3981 | float | EEPROM_UVLO_CURRENT_POSITION_Z | ??? | ff ff ff ffh | Power Panic Z Position | D3 Ax0f8d C4 -| 0x0F8Ch 3980 | ??? | EEPROM_UVLO_UNUSED_001 | ??? | ffh 255 | Power Panic UNUSED | D3 Ax0f8c C1 -| 0x0F8Bh 3979 | uint8 | EEPROM_UVLO_TARGET_BED | ??? | ffh 255 | Power Panic Bed temperature | D3 Ax0f8b C1 -| 0x0F89h 3977 | uint16 | EEPROM_UVLO_FEEDRATE | ??? | ff ffh 65535 | Power Panic Feedrate | D3 Ax0f89 C2 -| 0x0F88h 3976 | uint8 | EEPROM_UVLO_FAN_SPEED | ??? | ffh 255 | Power Panic Fan speed | D3 Ax0f88 C1 -| 0x0F87h 3975 | uint8 | EEPROM_FAN_CHECK_ENABLED | 00h 0 | ??? | Fan Check disabled | D3 Ax0f87 C1 -| ^ | ^ | ^ | 01h 1 | ffh 255 | Fan Check enabled (exception ffh=01h) | ^ - - - */ +| Adress begin | Bit/Type | Name | Valid values | Default/FactoryReset | Description | Gcode/Function| Debug code +| :--: | :--: | :--: | :--: | :--: | :--: | :--: | :--: +| 0x0FFFh 4095 | uchar | EEPROM_SILENT | 00h 0 | ffh 255 | TMC Stealth mode off / miniRambo Power mode | LCD menu | D3 Ax0fff C1 +| ^ | ^ | ^ | 01h 1 | ^ | TMC Stealth mode on / miniRambo Silent mode | ^ | ^ +| 0x0FFEh 4094 | uchar | EEPROM_LANG | 00h 0 | ffh 255 | English / LANG_ID_PRI | LCD menu | D3 Ax0ffe C1 +| ^ | ^ | ^ | 01h 1 | ^ | Other language LANG_ID_SEC | ^ | ^ +| 0x0FFCh 4092 | uint16 | EEPROM_BABYSTEP_X | ??? | ffh 255 | Babystep for X axis _unsued_ | ??? | D3 Ax0ffc C2 +| 0x0FFAh 4090 | uint16 | EEPROM_BABYSTEP_Y | ??? | ffh 255 | Babystep for Y axis _unsued_ | ^ | D3 Ax0ffa C2 +| 0x0FF8h 4088 | uint16 | EEPROM_BABYSTEP_Z | ??? | ffh 255 | Babystep for Z axis _lagacy_ | ^ | D3 Ax0ff8 C2 +| ^ | ^ | ^ | ^ | ^ | multiple values stored now in EEPROM_Sheets_base | ^ | ^ +| 0x0FF7h 4087 | uint8 | EEPROM_CALIBRATION_STATUS | 00h 0 | ffh 255 | Unknown | ??? | D3 Ax0ff7 C1 +| ^ | ^ | ^ | 01h 1 | ^ | Calibrated | ^ | ^ +| ^ | ^ | ^ | E6h 230 | ^ | needs Live Z adjustment | ^ | ^ +| ^ | ^ | ^ | F0h 240 | ^ | needs Z calibration | ^ | ^ +| ^ | ^ | ^ | FAh 250 | ^ | needs XYZ calibration | ^ | ^ +| ^ | ^ | ^ | FFh 255 | ^ | Assbemled _default_ | ^ | ^ +| 0x0FF5h 4085 | uint16 | EEPROM_BABYSTEP_Z0 | ??? | ??? | Babystep for Z ??? | ??? | D3 Ax0ff5 C2 +| 0x0FF1h 4081 | uint32 | EEPROM_FILAMENTUSED | ??? | 00h 0 | Filament used in meters | ??? | D3 Ax0ff1 C4 +| 0x0FEDh 4077 | uint32 | EEPROM_TOTALTIME | ??? | 00h 0 | Total print time | ??? | D3 Ax0fed C4 +| 0x0FE5h 4069 | float | EEPROM_BED_CALIBRATION_CENTER | ??? | ??? | ??? | ??? | D3 Ax0fe5 C8 +| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ +| 0x0FDDh 4061 | float | EEPROM_BED_CALIBRATION_VEC_X | ??? | ??? | ??? | ??? | D3 Ax0fdd C8 +| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ +| 0x0FD5h 4053 | float | EEPROM_BED_CALIBRATION_VEC_Y | ??? | ??? | ??? | ??? | D3 Ax0fd5 C8 +| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ +| 0x0FC5h 4037 | int16 | EEPROM_BED_CALIBRATION_Z_JITTER | ??? | ??? | ??? | ??? | D3 Ax0fc5 C16 +| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ +| 0x0FC4h 4036 | bool | EEPROM_FARM_MODE | 00h 0 | ffh 255 | Prusa farm mode off | G99 | D3 Ax0fc4 C1 +| ^ | ^ | ^ | 01h 1 | ^ | Prusa farm mode on | G98 | ^ +| 0x0FC1h 4033 | int16 | EEPROM_FARM_NUMBER | ??? | ff ff ffh | Prusa farm number | ??? | D3 Ax0fc1 C3 +| 0x0FC0h 4032 | bool | EEPROM_BED_CORRECTION_VALID | 00h 0 | 00h 0 | Bed correction invalid | ??? | D3 Ax0fc0 C1 +| ^ | ^ | ^ | ffh 255 | | Bed correction valid ^ | ??? | ^ +| 0x0FBFh 4031 | char | EEPROM_BED_CORRECTION_LEFT | 00h FFh | 00h 0 | Bed manual correction left | LCD menu | D3 Ax0fbf C1 +| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | ^ | ^ +| 0x0FBEh 4030 | char | EEPROM_BED_CORRECTION_RIGHT | 00h FFh | 00h 0 | Bed manual correction right | LCD menu | D3 Ax0fbe C1 +| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | ^ | ^ +| 0x0FBDh 4029 | char | EEPROM_BED_CORRECTION_FRONT | 00h FFh | 00h 0 | Bed manual correction front | LCD menu | D3 Ax0fbd C1 +| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | ^ | ^ +| 0x0FBCh 4028 | char | EEPROM_BED_CORRECTION_BACK | 00h FFh | 00h 0 | Bed manual correction back | LCD menu | D3 Ax0fbc C1 +| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | ^ | ^ +| 0x0FBBh 4027 | bool | EEPROM_TOSHIBA_FLASH_AIR_COMPATIBLITY | 00h 0 | 00h 0 | Toshiba Air off | LCD menu | D3 Ax0fbb C1 +| ^ | ^ | ^ | ??? | ffh 255 | Toshiba Air oon | ^ | ^ +| 0x0FBAh 4026 | uchar | EEPROM_PRINT_FLAG | ??? | ??? | _unsued_ | ??? | D3 Ax0fba C1 +| 0x0FB0h 4016 | int16 | EEPROM_PROBE_TEMP_SHIFT | ??? | ??? | ??? | ??? | D3 Ax0fb0 C10 +| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ +| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ +| 0x0FAFh 4015 | bool | EEPROM_TEMP_CAL_ACTIVE | 00h 0 | 00h 0 | PINDA Temp cal. inactive | LCD menu | D3 Ax0faf C1 +| ^ | ^ | ^ | ffh 255 | ^ | PINDA Temp cal. active | ^ | ^ +| 0x0FA7h 4007 | uint32 | EEPROM_BOWDEN_LENGTH | ??? | ff 00 ff ffh | Bowden length | ??? | D3 Ax0fae C8 +| ^ | ^ | ^ | ??? | ff ff ff ffh | ^ | ^ | ^ +| 0x0FA6h 4006 | uint8 | EEPROM_CALIBRATION_STATUS_PINDA | 00h 0 | ffh 255 | PINDA Temp not calibrated | ??? | D3 Ax0fa6 C1 +| ^ | ^ | ^ | 01h 1 | ^ | PINDA Temp calibrated | ^ | ^ +| 0x0FA5h 4005 | uint8 | EEPROM_UVLO | 00h 0 | ffh 255 | Power Panic flag inactive | ??? | D3 Ax0fa5 C1 +| ^ | ^ | ^ | 01h 1 | ^ | Power Panic flag active | ^ | ^ +| ^ | ^ | ^ | 02h 2 | ^ | Power Panic flag ??? | ^ | ^ +| 0x0F9Dh 3997 | float | EEPROM_UVLO_CURRENT_POSITION | ??? | ffh 255 | Power Panic position | ??? | D3 Ax0f9d C8 +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| 0x0F95h 3989 | char | EEPROM_FILENAME | ??? | ffh 255 | Power Panic Filename | ??? | D3 Ax0f95 C8 +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| 0x0F91h 39851 | uint32 | EEPROM_FILE_POSITION | ??? | ff ff ff ffh | Power Panic File Postion | ??? | D3 Ax0f91 C4 +| 0x0F8Dh 3981 | float | EEPROM_UVLO_CURRENT_POSITION_Z | ??? | ff ff ff ffh | Power Panic Z Position | ^ | D3 Ax0f8d C4 +| 0x0F8Ch 3980 | ??? | EEPROM_UVLO_UNUSED_001 | ??? | ffh 255 | Power Panic UNUSED | ^ | D3 Ax0f8c C1 +| 0x0F8Bh 3979 | uint8 | EEPROM_UVLO_TARGET_BED | ??? | ffh 255 | Power Panic Bed temperature | ^ | D3 Ax0f8b C1 +| 0x0F89h 3977 | uint16 | EEPROM_UVLO_FEEDRATE | ??? | ff ffh 65535 | Power Panic Feedrate | ^ | D3 Ax0f89 C2 +| 0x0F88h 3976 | uint8 | EEPROM_UVLO_FAN_SPEED | ??? | ffh 255 | Power Panic Fan speed | ^ | D3 Ax0f88 C1 +| 0x0F87h 3975 | uint8 | EEPROM_FAN_CHECK_ENABLED | 00h 0 | ??? | Fan Check disabled | LCD menu | D3 Ax0f87 C1 +| ^ | ^ | ^ | 01h 1 | ffh 255 | Fan Check enabled (exception ffh=01h) | ^ | ^ +| 0x0F75h 3957 | uint16 | EEPROM_UVLO_MESH_BED_LEVELING | ??? | ff ffh 65535 | Power Panic Mesh Bed Leveling | ??? | D3 Ax0f75 C18 +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| 0x0F73h 3955 | uint16 | EEPROM_UVLO_Z_MICROSTEPS | ??? | ff ffh 65535 | Power Panic Z microsteps | ??? | D3 Ax0f73 C2 +| 0x0F72h 3954 | uint8 | EEPROM_UVLO_E_ABS | ??? | ffh 255 | Power Panic ??? position | ??? | D3 Ax0f72 C1 +| 0x0F6Eh 3950 | foat | EEPROM_UVLO_CURRENT_POSITION_E | ??? | ff ff ff ffh | Power Panic E position | ??? | D3 Ax0f6e C4 +| 0x0F69h 3945 | uint8 | EEPROM_CRASH_DET | ffh 255 | ffh 255 | Crash detection enabled | LCD menu | D3 Ax0f69 C5 +| ^ | ^ | ^ | 00h 0 | ^ | Crash detection disabled | LCD menu | ^ +| ^ | ^ | ^ | ??? | ??? | ^ | ??? | ^ +| ^ | ^ | ^ | ??? | ??? | ^ | ??? | ^ +| ^ | ^ | ^ | ??? | ??? | ^ | ??? | ^ +| 0x0F68h 3944 | uint8 | EEPROM_CRASH_COUNT_Y | 00h-ffh 0-255 | ffh 255 | Crashes detected on y axis | ??? | D3 Ax0f68 C1 +| 0x0F67h 3943 | uint8 | EEPROM_FSENSOR | 01h 1 | ffh 255 | Filament sensor enabled | LCD menu | D3 Ax0f67 C1 +| 0x0F65h 3942 | uint8 | EEPROM_CRASH_COUNT_X | 00h-ffh 0-255 | ffh 255 | Crashes detected on x axis | ??? | D3 Ax0f66 C1 +| 0x0F65h 3941 | uint8 | EEPROM_FERROR_COUNT | 00h-ffh 0-255 | ffh 255 | Filament sensor error counter | ??? | D3 Ax0f65 C1 +| 0x0F64h 3940 | uint8 | EEPROM_POWER_COUNT | 00h-ffh 0-255 | ffh 255 | Power failure counter | ??? | D3 Ax0f64 C1 +| 0x0F60h 3936 | float | EEPROM_XYZ_CAL_SKEW | ??? | ff ff ff ffh | XYZ skew value | ??? | D3 Ax0f60 C4 +| 0x0F5Fh 3935 | uint8 | EEPROM_WIZARD_ACTIVE | 00h 0 | ??? | Wizard active | ??? | D3 Ax0f5f C1 +| ^ | ^ | ^ | 01h 1 | ??? | ^ | ^ | ^ +| 0x0F5Dh 3933 | uint16 | EEPROM_BELTSTATUS_X | ??? | ff ffh | X Beltstatus | ??? | D3 Ax0f5d C2 +| 0x0F5Bh 3931 | uint16 | EEPROM_BELTSTATUS_Y | ??? | ff ffh | Y Beltstatus | ??? | D3 Ax0f5b C2 +| 0x0F5Ah 3930 | uint8 | EEPROM_DIR_DEPTH | 00h-ffh 0-255 | ffh 255 | Directory depth | ??? | D3 Ax0f5a C1 +| 0x0F0Ah 3850 | uint8 | EEPROM_DIRS | ??? | ffh 255 | Directories ??? | ??? | D3 Ax0f0a C80 +| 0x0F09h 3849 | uint8 | EEPROM_SD_SORT | 00h 0 | ffh 255 | SD card sort by time | LCD menu | D3 Ax0f09 C1 +| ^ | ^ | ^ | 01h 1 | ^ | SD card sort by alphabet | LCD menu | ^ +| ^ | ^ | ^ | 02h 1 | ^ | SD card not sorted | LCD menu | ^ +| 0x0F08h 3848 | uint8 | EEPROM_SECOND_SERIAL_ACTIVE | 00h 0 | ffh 255 | RPi Port disabled | LCD menu | D3 Ax0f08 C1 +| ^ | ^ | ^ | 01h 1 | ^ | RPi Port enabled | LCD menu | ^ +| 0x0F07h 3847 | uint8 | EEPROM_FSENS_AUTOLOAD_ENABLED | 01h 1 | ffh 255 | Filament autoload enabled | LCD menu | D3 Ax0f07 C1 +| ^ | ^ | ^ | 00h 0 | ^ | Filament autoload disabled | LCD menu | ^ +*/ #define EEPROM_EMPTY_VALUE 0xFF #define EEPROM_EMPTY_VALUE16 0xFFFF // The total size of the EEPROM is From 028a27021baf7bbce9f01ca823434a5073e6114a Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Sun, 22 Mar 2020 14:08:21 +0100 Subject: [PATCH 09/25] All done... hope not I forgot one. I will re-test all `D3 Axyyyy Cz` before creating a PR. --- Firmware/eeprom.h | 168 ++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 162 insertions(+), 6 deletions(-) diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index d47b0cad4..f707ce683 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -48,7 +48,8 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP - Octoprint does support D-codes - _Pronterface_ does not support D-codes - + ### !!! D-codes are case sensitive so please don't use upper case A,C or X in the address you want to read !!! + --------------------------------------------------------------------------------- ## EEPROM Tabel @@ -92,15 +93,15 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | 0x0FC0h 4032 | bool | EEPROM_BED_CORRECTION_VALID | 00h 0 | 00h 0 | Bed correction invalid | ??? | D3 Ax0fc0 C1 | ^ | ^ | ^ | ffh 255 | | Bed correction valid ^ | ??? | ^ | 0x0FBFh 4031 | char | EEPROM_BED_CORRECTION_LEFT | 00h FFh | 00h 0 | Bed manual correction left | LCD menu | D3 Ax0fbf C1 -| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | ^ | ^ +| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | G80 Lxxx | ^ | 0x0FBEh 4030 | char | EEPROM_BED_CORRECTION_RIGHT | 00h FFh | 00h 0 | Bed manual correction right | LCD menu | D3 Ax0fbe C1 -| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | ^ | ^ +| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | G80 Rxxx | ^ | 0x0FBDh 4029 | char | EEPROM_BED_CORRECTION_FRONT | 00h FFh | 00h 0 | Bed manual correction front | LCD menu | D3 Ax0fbd C1 -| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | ^ | ^ +| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | G80 Fxxx | ^ | 0x0FBCh 4028 | char | EEPROM_BED_CORRECTION_BACK | 00h FFh | 00h 0 | Bed manual correction back | LCD menu | D3 Ax0fbc C1 -| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | ^ | ^ +| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | G80 Bxxx | ^ | 0x0FBBh 4027 | bool | EEPROM_TOSHIBA_FLASH_AIR_COMPATIBLITY | 00h 0 | 00h 0 | Toshiba Air off | LCD menu | D3 Ax0fbb C1 -| ^ | ^ | ^ | ??? | ffh 255 | Toshiba Air oon | ^ | ^ +| ^ | ^ | ^ | ??? | ffh 255 | Toshiba Air on | ^ | ^ | 0x0FBAh 4026 | uchar | EEPROM_PRINT_FLAG | ??? | ??? | _unsued_ | ??? | D3 Ax0fba C1 | 0x0FB0h 4016 | int16 | EEPROM_PROBE_TEMP_SHIFT | ??? | ??? | ??? | ??? | D3 Ax0fb0 C10 | ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ @@ -170,7 +171,162 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | ^ | ^ | ^ | 01h 1 | ^ | RPi Port enabled | LCD menu | ^ | 0x0F07h 3847 | uint8 | EEPROM_FSENS_AUTOLOAD_ENABLED | 01h 1 | ffh 255 | Filament autoload enabled | LCD menu | D3 Ax0f07 C1 | ^ | ^ | ^ | 00h 0 | ^ | Filament autoload disabled | LCD menu | ^ +| 0x0F05h 3845 | uint16 | EEPROM_CRASH_COUNT_X_TOT | 0000-fffe | ff ffh | Total charshes on x axis | ??? | D3 Ax0f05 C2 +| 0x0F03h 3843 | uint16 | EEPROM_CRASH_COUNT_Y_TOT | 0000-fffe | ff ffh | Total charshes on y axis | ??? | D3 Ax0f03 C2 +| 0x0F01h 3841 | uint16 | EEPROM_FERROR_COUNT_TOT | 0000-fffe | ff ffh | Total filament sensor errors | ??? | D3 Ax0f01 C2 +| 0x0EFFh 3839 | uint16 | EEPROM_POWER_COUNT_TOT | 0000-fffe | ff ffh | Total power failures | ??? | D3 Ax0eff C2 +| 0x0EFEh 3838 | uint8 | EEPROM_TMC2130_HOME_X_ORIGIN | ??? | ffh 255 | ??? | ??? | D3 Ax0efe C1 +| 0x0EFDh 3837 | uint8 | EEPROM MC2130_HOME_X_BSTEPS | ??? | ffh 255 | ??? | ??? | D3 Ax0efd C1 +| 0x0EFCh 3836 | uint8 | EEPROM_TMC2130_HOME_X_FSTEPS | ??? | ffh 255 | ??? | ??? | D3 Ax0efc C1 +| 0x0EFBh 3835 | uint8 | EEPROM_TMC2130_HOME_Y_ORIGIN | ??? | ffh 255 | ??? | ??? | D3 Ax0efb C1 +| 0x0EFAh 3834 | uint8 | EEPROM_TMC2130_HOME_Y_BSTEPS | ??? | ffh 255 | ??? | ??? | D3 Ax0efa C1 +| 0x0EF9h 3833 | uint8 | EEPROM_TMC2130_HOME_Y_FSTEPS | ??? | ffh 255 | ??? | ??? | D3 Ax0ef9 C1 +| 0x0EF8h 3832 | uint8 | EEPROM_TMC2130_HOME_ENABLED | ??? | ffh 255 | ??? | ??? | D3 Ax0ef8 C1 +| 0x0EF7h 3831 | uint8 | EEPROM_TMC2130_WAVE_X_FAC | ??? | ffh 255 | ??? | ??? | D3 Ax0ef7 C1 +| 0x0EF6h 3830 | uint8 | EEPROM_TMC2130_WAVE_Y_FAC | ??? | ffh 255 | ??? | ??? | D3 Ax0ef6 C1 +| 0x0EF5h 3829 | uint8 | EEPROM_TMC2130_WAVE_Z_FAC | ??? | ffh 255 | ??? | ??? | D3 Ax0ef5 C1 +| 0x0EF4h 3828 | uint8 | EEPROM_TMC2130_WAVE_E_FAC | ??? | ffh 255 | ??? | ??? | D3 Ax0ef4 C1 +| 0x0EF3h 3827 | uint8 | EEPROM_TMC2130_X_MRES | ??? | ffh 255 | ??? | ??? | D3 Ax0ef3 C1 +| 0x0EF2h 3826 | uint8 | EEPROM_TMC2130_Y_MRES | ??? | ffh 255 | ??? | ??? | D3 Ax0ef2 C1 +| 0x0EF1h 3825 | uint8 | EEPROM_TMC2130_Z_MRES | ??? | ffh 255 | ??? | ??? | D3 Ax0ef1 C1 +| 0x0EF0h 3824 | uint8 | EEPROM_TMC2130_E_MRES | ??? | ffh 255 | ??? | ??? | D3 Ax0ef0 C1 +| 0x0EEE 3822 | uint16 | EEPROM_PRINTER_TYPE | ??? | ff ffh 65535 | Printer Type | ??? | D3 Ax0eee C2 +| 0x0EEC 3820 | uint16 | EEPROM_BOARD_TYPE | ??? | ff ffh 65535 | Board Type | ??? | D3 Ax0eec C2 +| 0x0EE8 3816 | float | EEPROM_EXTRUDER_MULTIPLIER_0 | ??? | ff ff ff ffh | Power panic Extruder 0 multiplier | ??? | D3 Ax0ee8 C4 +| 0x0EE4 3812 | float | EEPROM_EXTRUDER_MULTIPLIER_1 | ??? | ff ff ff ffh | Power panic Extruder 1 multiplier | ??? | D3 Ax0ee4 C4 +| 0x0EE0 3808 | float | EEPROM_EXTRUDER_MULTIPLIER_2 | ??? | ff ff ff ffh | Power panic Extruder 2 multiplier | ??? | D3 Ax0ee0 C4 +| 0x0EDE 3806 | uint16 | EEPROM_EXTRUDEMULTIPLY | ??? | ff ffh 65535 | Power panic Extruder multiplier | ??? | D3 Ax0ede C2 +| 0x0EDA 3802 | float | EEPROM_UVLO_TINY_CURRENT_POSITION_Z | ??? | ff ff ff ffh | Power panic Z position | ??? | D3 Ax0eda C4 +| 0x0ED8 3800 | uint16 | EEPROM_UVLO_TARGET_HOTEND | ??? | ff ffh 65535 | Power panic traget Hotend temperature | ??? | D3 Ax0ed8 C2 +| 0x0ED7 3799 | uint8 | EEPROM_SOUND_MODE | 00h 0 | ffh 255 | Sound mode loud | ??? | D3 Ax0ed7 C1 +| ^ | ^ | ^ | 01h 1 | ^ | Sound mode once | ^ | ^ +| ^ | ^ | ^ | 02h 1 | ^ | Sound mode silent | ^ | ^ +| ^ | ^ | ^ | 03h 1 | ^ | Sound mode assist | ^ | ^ +| 0x0ED6 3798 | bool | EEPROM_AUTO_DEPLETE | 01h 1 | ffh 255 | MMU2/s autodeplete on | ??? | D3 Ax0ed6 C1 +| ^ | ^ | ^ | 00h 0 | ^ | MMU2/s autodeplete off | ^ | ^ +| 0x0ED5 3797 | bool | EEPROM_FSENS_OQ_MEASS_ENABLED | ??? | ffh 255 | PAT1925 ??? | ??? | D3 Ax0ed5 C1 +| ^ | ^ | ^ | ??? | ^ | PAT1925 ??? | ^ | ^ +| 0x0ED3 3795 | uint16 | EEPROM_MMU_FAIL_TOT | ??? | ff ffh 65535 | MMU2/s total failures | ??? | D3 Ax0ed3 C2 +| 0x0ED2 3794 | uint8 | EEPROM_MMU_FAIL | ??? | ffh 255 | MMU2/s fails during print | ??? | D3 Ax0ed2 C1 +| 0x0ED0 3792 | uint16 | EEPROM_MMU_LOAD_FAIL_TOT | ??? | ff ffh 65535 | MMU2/s total load failures | ??? | D3 Ax0ed0 C2 +| 0x0ECF 3791 | uint8 | EEPROM_MMU_LOAD_FAIL | ??? | ffh 255 | MMU2/s load failures during print | ??? | D3 Ax0ecf C1 +| 0x0ECE 3790 | uint8 | EEPROM_MMU_CUTTER_ENABLED | 00h 0 | ffh 255 | MMU2/s cutter disabled | LCD menu | D3 Ax0ece C1 +| ^ | ^ | ^ | 01h 1 | ^ | MMU2/s cutter enabled | ^ | ^ +| ^ | ^ | ^ | 02h 2 | ^ | MMU2/s cutter always | ^ | ^ +| 0x0DAE 3502 | uint16 | EEPROM_UVLO_MESH_BED_LEVELING_FULL | ??? | ff ffh 65535 | Power panic Mesh bed leveling points | ??? | D3 Ax0dae C288 +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| 0x0DAD 3501 | uint8 | EEPROM_MBL_TYPE | ??? | ffh 255 | Mesh bed leveling precision _unused atm_ | ??? | D3 Ax0dad C1 +| 0x0DAC 3500 | bool | EEPROM_MBL_MAGNET_ELIMINATION | 01h 1 | ffh 255 | Mesh bed leveling ignore magnets | LCD menu | D3 Ax0dac C1 +| ^ | ^ | ^ | 00h 0 | ^ | Mesh bed leveling NOT ignore magnets | ^ | ^ +| 0x0DAB 3499 | uint8 | EEPROM_MBL_POINTS_NR | 03h 3 | ffh 255 | Mesh bed leveling points 3x3 | LCD menu | D3 Ax0dab C1 +| ^ | ^ | ^ | 07h 7 | ^ | Mesh bed leveling points 7x7 | ^ | ^ +| 0x0DAA 3498 | uint8 | EEPROM_MBL_PROBE_NR | 03h 3 | ffh 255 | MBL 3 times measurements for each point | LCD menu | D3 Ax0daa C1 +| ^ | ^ | ^ | 05h 5 | ^ | MBL 5 times measurements for each point | ^ | ^ +| ^ | ^ | ^ | 01h 1 | ^ | MBL 7 times measurements for each point | ^ | ^ +| 0x0DA9 3497 | uint8 | EEPROM_MMU_STEALTH | 01h 1 | ffh 255 | MMU2/s Silent mode on | ??? | D3 Ax0da9 C1 +| ^ | ^ | ^ | 00h 0 | ^ | MMU2/s Silent mode off | ^ | ^ +| 0x0DA8 3496 | uint8 | EEPROM_CHECK_MODE | 01h 1 | ffh 255 | Check mode for nozzle is warn | LCD menu | D3 Ax0da8 C1 +| ^ | ^ | ^ | 02h 0 | ^ | Check mode for nozzle is strict | ^ | ^ +| ^ | ^ | ^ | 00h 0 | ^ | Check mode for nozzle is none | ^ | ^ +| 0x0DA7 3495 | uint8 | EEPROM_NOZZLE_DIAMETER | 28h 40 | ffh 255 | Nozzle diameter is 40 or 0.40mm | LCD menu | D3 Ax0da7 C1 +| ^ | ^ | ^ | 3ch 60 | ^ | Nozzle diameter is 60 or 0.60mm | ^ | ^ +| ^ | ^ | ^ | 19h 25 | ^ | Nozzle diameter is 25 or 0.25mm | ^ | ^ +| 0x0DA5 3493 | uint16 | EEPROM_NOZZLE_DIAMETER_uM | 9001h | ff ffh 65535 | Nozzle diameter is 400um | LCD menu | D3 Ax0da5 C2 +| ^ | ^ | ^ | 5802h | ^ | Nozzle diameter is 600um | ^ | ^ +| ^ | ^ | ^ | fa00h | ^ | Nozzle diameter is 250um | ^ | ^ +| 0x0DA4 3492 | uint8 | EEPROM_CHECK_MODEL | 01h 1 | ffh 255 | Check mode for printer model is warn | LCD menu | D3 Ax0da4 C1 +| ^ | ^ | ^ | 02h 0 | ^ | Check mode for printer model is strict | ^ | ^ +| ^ | ^ | ^ | 00h 0 | ^ | Check mode for printer model is none | ^ | ^ +| 0x0DA3 3491 | uint8 | EEPROM_CHECK_VERSION | 01h 1 | ffh 255 | Check mode for firmware is warn | LCD menu | D3 Ax0da3 C1 +| ^ | ^ | ^ | 02h 0 | ^ | Check mode for firmware is strict | ^ | ^ +| ^ | ^ | ^ | 00h 0 | ^ | Check mode for firmware is none | ^ | ^ +| 0x0DA2 3490 | uint8 | EEPROM_CHECK_GCODE | 01h 1 | ffh 255 | Check mode for gcode is warn _unused atm_ | LCD menu | D3 Ax0da2 C1 +| ^ | ^ | ^ | 02h 0 | ^ | Check mode for gcode is strict _unused atm_ | ^ | ^ +| ^ | ^ | ^ | 00h 0 | ^ | Check mode for gcode is none _unused atm_ | ^ | ^ +| 0x0D49 3401 | uint16 | EEPROM_SHEETS_BASE | ??? | ffh 255 | ??? | LCD menu | D3 Ax0d49 C89 +| 0x0D49 3401 | char | _1st Sheet block_ | 536d6f6f746831| ffffffffffffff | 1st sheet - Name: _Smooth1_ | ^ | D3 Ax0d49 C7 +| 0x0D50 3408 | uint16 | ^ | 00 00h 0 | ff ffh 65535 | 1st sheet - Z offset | ^ | D3 Ax0d50 C2 +| 0x0D52 3410 | uint8 | ^ | 00h 0 | ffh 255 | 1st sheet - bed temp | ^ | D3 Ax0d52 C1 +| 0x0D53 3411 | uint8 | ^ | 00h 0 | ffh 255 | 1st sheet - PINDA temp | ^ | D3 Ax0d53 C1 +| 0x0D54 3412 | char | _2nd Sheet block_ | 536d6f6f746832| ffffffffffffff | 2nd sheet - Name: _Smooth2_ | ^ | D3 Ax0d54 C7 +| 0x0D5B 3419 | uint16 | ^ | 00 00h 0 | ff ffh 65535 | 2nd sheet - Z offset | ^ | D3 Ax0d5b C2 +| 0x0D5D 3421 | uint8 | ^ | 00h 0 | ffh 255 | 2nd sheet - bed temp | ^ | D3 Ax0d5d C1 +| 0x0D5E 3422 | uint8 | ^ | 00h 0 | ffh 255 | 2nd sheet - PINDA temp | ^ | D3 Ax0d5e C1 +| 0x0D5F 3423 | char | _3rd Sheet block_ | 54657874757231| ffffffffffffff | 3rd sheet - Name: _Textur1_ | ^ | D3 Ax0d5f C7 +| 0x0D66 3430 | uint16 | ^ | 00 00h 0 | ff ffh 65535 | 3rd sheet - Z offset | ^ | D3 Ax0d66 C2 +| 0x0D68 3432 | uint8 | ^ | 00h 0 | ffh 255 | 3rd sheet - bed temp | ^ | D3 Ax0d68 C1 +| 0x0D69 3433 | uint8 | ^ | 00h 0 | ffh 255 | 3rd sheet - PINDA temp | ^ | D3 Ax0d69 C1 +| 0x0D6A 3434 | char | _4th Sheet block_ | 54657874757232| ffffffffffffff | 4th sheet - Name: _Textur2_ | ^ | D3 Ax0d6a C7 +| 0x0D71 3441 | uint16 | ^ | 00 00h 0 | ff ffh 65535 | 4th sheet - Z offset | ^ | D3 Ax0d71 C2 +| 0x0D73 3443 | uint8 | ^ | 00h 0 | ffh 255 | 4th sheet - bed temp | ^ | D3 Ax0d73 C1 +| 0x0D74 3444 | uint8 | ^ | 00h 0 | ffh 255 | 4th sheet - PINDA temp | ^ | D3 Ax0d74 C1 +| 0x0D75 3445 | char | _5th Sheet block_ | 437573746f6d31| ffffffffffffff | 5th sheet - Name: _Custom1_ | ^ | D3 Ax0d75 C7 +| 0x0D7C 3452 | uint16 | ^ | 00 00h 0 | ff ffh 65535 | 5th sheet - Z offset | ^ | D3 Ax0d7c C2 +| 0x0D7E 3454 | uint8 | ^ | 00h 0 | ffh 255 | 5th sheet - bed temp | ^ | D3 Ax0d7e C1 +| 0x0D7F 3455 | uint8 | ^ | 00h 0 | ffh 255 | 5th sheet - PINDA temp | ^ | D3 Ax0d7f C1 +| 0x0D80 3456 | char | _6th Sheet block_ | 437573746f6d32| ffffffffffffff | 6th sheet - Name: _Custom2_ | ^ | D3 Ax0d80 C7 +| 0x0D87 3463 | uint16 | ^ | 00 00h 0 | ff ffh 65535 | 6th sheet - Z offset | ^ | D3 Ax0d87 C2 +| 0x0D89 3465 | uint8 | ^ | 00h 0 | ffh 255 | 6th sheet - bed temp | ^ | D3 Ax0d89 C1 +| 0x0D8A 3466 | uint8 | ^ | 00h 0 | ffh 255 | 6th sheet - PINDA temp | ^ | D3 Ax0d8a C1 +| 0x0D8B 3467 | char | _7th Sheet block_ | 437573746f6d33| ffffffffffffff | 7th sheet - Name: _Custom3_ | ^ | D3 Ax0d8b C7 +| 0x0D92 3474 | uint16 | ^ | 00 00h 0 | ff ffh 65535 | 7th sheet - Z offset | ^ | D3 Ax0d92 C2 +| 0x0D94 3476 | uint8 | ^ | 00h 0 | ffh 255 | 7th sheet - bed temp | ^ | D3 Ax0d94 C1 +| 0x0D95 3477 | uint8 | ^ | 00h 0 | ffh 255 | 7th sheet - PINDA temp | ^ | D3 Ax0d95 C1 +| 0x0D96 3478 | char | _8th Sheet block_ | 437573746f6d34| ffffffffffffff | 8th sheet - Name: _Custom4_ | ^ | D3 Ax0d96 C7 +| 0x0D9D 3485 | uint16 | ^ | 00 00h 0 | ff ffh 65535 | 8th sheet - Z offset | ^ | D3 Ax0d9d C2 +| 0x0D9F 3487 | uint8 | ^ | 00h 0 | ffh 255 | 8th sheet - bed temp | ^ | D3 Ax0d9f C1 +| 0x0DA0 3488 | uint8 | ^ | 00h 0 | ffh 255 | 8th sheet - PINDA temp | ^ | D3 Ax0da0 C1 +| 0x0DA1 3489 | uint8 | ??? | 00h 0 | ffh 255 | ??? | ??? | D3 Ax0da1 C1 +| 0x0D48 3400 | uint8 | EEPROM_FSENSOR_PCB | ??? | ffh 255 | Filament Sensor type old vs new | ??? | D3 Ax0d48 C1 +| ^ | ^ | ^ | ??? | ^ | Filament Sensor type ??? | ^ | ^ +| 0x0D47 3399 | uint8 | EEPROM_FSENSOR_ACTION_NA | 00h 0 | ffh 255 | Filament Sensor action: _Continue_ | LCD menu | D3 Ax0d47 C1 +| ^ | ^ | ^ | 01h 1 | ^ | Filament Sensor action: Pause | ^ | ^ +| 0x0D37 3383 | float | EEPROM_UVLO_SAVED_TARGET | ??? | ff ff ff ffh | Power panic saved target all-axis | ??? | D3 Ax0d37 C16 +| ^ | ^ | ^ | ??? | ^ | Power panic saved target e-axis | ^ | D3 Ax0d43 C4 +| ^ | ^ | ^ | ??? | ^ | Power panic saved target z-axis | ^ | D3 Ax0d3f C4 +| ^ | ^ | ^ | ??? | ^ | Power panic saved target y-axis | ^ | D3 Ax0d3b C4 +| ^ | ^ | ^ | ??? | ^ | Power panic saved target x-axis | ^ | D3 Ax0d37 C4 +| 0x0D35 3381 | uint16 | EEPROM_UVLO_FEEDMULTIPLY | ??? | ff ffh 65355 | Power panic saved feed multiplier | ??? | D3 Ax0d35 C2 +| 0x0D34 3380 | uint8 | EEPROM_BACKLIGHT_LEVEL_HIGH | 00h - ffh | 80h 128 | LCD backlight bright _128_ Dim value to 255 | LCD menu | D3 Ax0d34 C1 +| 0x0D33 3379 | uint8 | EEPROM_BACKLIGHT_LEVEL_LOW | 00h - ffh | 32h 50 | LCD backlight dim _50_ 0 to Bright value | LCD menu | D3 Ax0d33 C1 +| 0x0D32 3378 | uint8 | EEPROM_BACKLIGHT_MODE | 02h 2 | ffh 255 | LCD backlight mode: _Auto_ | LCD menu | D3 Ax0d32 C1 +| ^ | ^ | ^ | 01h 1 | ^ | LCD backlight mode: Bright | ^ | ^ +| ^ | ^ | ^ | 00h 0 | ^ | LCD backlight mode: Dim | ^ | ^ +| 0x0D30 3376 | uint16 | EEPROM_BACKLIGHT_TIMEOUT | 01 00 - ff ff | ff ffh 65535 | LCD backlight timeout: _10_ seconds | LCD menu | D3 Ax0d30 C2 +| 0x0D2C 3372 | float | EEPROM_UVLO_LA_K | ??? | ff ff ff ffh | Power panic saved Linear Advanced K value | ??? | D3 Ax0d2c C4 + + ## End of EEPROM Table + +| Adress begin | Bit/Type | Name | Valid values | Default/FactoryReset | Description | Gcode/Function| Debug code +| :--: | :--: | :--: | :--: | :--: | :--: | :--: | :--: +| 0x0012 18 | uint16 | EEPROM_FIRMWARE_VERSION_END | ??? | ff ffh 65535 | ??? | ??? | D3 Ax0012 C2 +| 0x0010 16 | uint16 | EEPROM_FIRMWARE_VERSION_FLAVOR | ??? | ff ffh 65535 | ??? | ??? | D3 Ax0010 C2 +| 0x000E 14 | uint16 | EEPROM_FIRMWARE_VERSION_REVISION | ??? | ff ffh 65535 | Firmware version revision number DEV/ALPHA/BETA/RC| ??? | D3 Ax000e C2 +| 0x000C 12 | uint16 | EEPROM_FIRMWARE_VERSION_MINOR | ??? | ff ffh 65535 | Firmware version minor number | ??? | D3 Ax000c C2 +| 0x000A 10 | uint16 | EEPROM_FIRMWARE_VERSION_MAJOR | ??? | ff ffh 65535 | Firmware version major number | ??? | D3 Ax000a C2 */ + #define EEPROM_EMPTY_VALUE 0xFF #define EEPROM_EMPTY_VALUE16 0xFFFF // The total size of the EEPROM is From b178252eb9a4737aed95af3bc96a0a01991608dd Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Sun, 22 Mar 2020 15:18:45 +0100 Subject: [PATCH 10/25] Added Italic and Bold to highlight some settings --- Firmware/eeprom.h | 146 ++++++++++++++++++++++++---------------------- 1 file changed, 75 insertions(+), 71 deletions(-) diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index f707ce683..e149526e1 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -42,6 +42,10 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP EEPROM 16-bit Empty value = 0xFFFFh 65535 + _Italic = unsued or default_ + + __Bold = Status__ + --------------------------------------------------------------------------------- How can you use the debug codes? - Serial terminal like Putty. @@ -52,12 +56,11 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP --------------------------------------------------------------------------------- - ## EEPROM Tabel | Adress begin | Bit/Type | Name | Valid values | Default/FactoryReset | Description | Gcode/Function| Debug code -| :--: | :--: | :--: | :--: | :--: | :--: | :--: | :--: -| 0x0FFFh 4095 | uchar | EEPROM_SILENT | 00h 0 | ffh 255 | TMC Stealth mode off / miniRambo Power mode | LCD menu | D3 Ax0fff C1 -| ^ | ^ | ^ | 01h 1 | ^ | TMC Stealth mode on / miniRambo Silent mode | ^ | ^ +| :-- | :-- | :-- | :--: | :--: | :-- | :--: | :--: +| 0x0FFFh 4095 | uchar | EEPROM_SILENT | 00h 0 | ffh 255 | TMC Stealth mode: __off__ / miniRambo Power mode | LCD menu | D3 Ax0fff C1 +| ^ | ^ | ^ | 01h 1 | ^ | TMC Stealth mode: __on__ / miniRambo Silent mode | ^ | ^ | 0x0FFEh 4094 | uchar | EEPROM_LANG | 00h 0 | ffh 255 | English / LANG_ID_PRI | LCD menu | D3 Ax0ffe C1 | ^ | ^ | ^ | 01h 1 | ^ | Other language LANG_ID_SEC | ^ | ^ | 0x0FFCh 4092 | uint16 | EEPROM_BABYSTEP_X | ??? | ffh 255 | Babystep for X axis _unsued_ | ??? | D3 Ax0ffc C2 @@ -87,11 +90,11 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ | ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ | ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ -| 0x0FC4h 4036 | bool | EEPROM_FARM_MODE | 00h 0 | ffh 255 | Prusa farm mode off | G99 | D3 Ax0fc4 C1 -| ^ | ^ | ^ | 01h 1 | ^ | Prusa farm mode on | G98 | ^ +| 0x0FC4h 4036 | bool | EEPROM_FARM_MODE | 00h 0 | ffh 255 | Prusa farm mode: __off__ | G99 | D3 Ax0fc4 C1 +| ^ | ^ | ^ | 01h 1 | ^ | Prusa farm mode: __on__ | G98 | ^ | 0x0FC1h 4033 | int16 | EEPROM_FARM_NUMBER | ??? | ff ff ffh | Prusa farm number | ??? | D3 Ax0fc1 C3 | 0x0FC0h 4032 | bool | EEPROM_BED_CORRECTION_VALID | 00h 0 | 00h 0 | Bed correction invalid | ??? | D3 Ax0fc0 C1 -| ^ | ^ | ^ | ffh 255 | | Bed correction valid ^ | ??? | ^ +| ^ | ^ | ^ | ffh 255 | | Bed correction valid | ??? | ^ | 0x0FBFh 4031 | char | EEPROM_BED_CORRECTION_LEFT | 00h FFh | 00h 0 | Bed manual correction left | LCD menu | D3 Ax0fbf C1 | ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | G80 Lxxx | ^ | 0x0FBEh 4030 | char | EEPROM_BED_CORRECTION_RIGHT | 00h FFh | 00h 0 | Bed manual correction right | LCD menu | D3 Ax0fbe C1 @@ -100,23 +103,23 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | G80 Fxxx | ^ | 0x0FBCh 4028 | char | EEPROM_BED_CORRECTION_BACK | 00h FFh | 00h 0 | Bed manual correction back | LCD menu | D3 Ax0fbc C1 | ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | G80 Bxxx | ^ -| 0x0FBBh 4027 | bool | EEPROM_TOSHIBA_FLASH_AIR_COMPATIBLITY | 00h 0 | 00h 0 | Toshiba Air off | LCD menu | D3 Ax0fbb C1 -| ^ | ^ | ^ | ??? | ffh 255 | Toshiba Air on | ^ | ^ +| 0x0FBBh 4027 | bool | EEPROM_TOSHIBA_FLASH_AIR_COMPATIBLITY | 00h 0 | 00h 0 | Toshiba Air: __off__ | LCD menu | D3 Ax0fbb C1 +| ^ | ^ | ^ | ??? | ffh 255 | Toshiba Air: __on__ | ^ | ^ | 0x0FBAh 4026 | uchar | EEPROM_PRINT_FLAG | ??? | ??? | _unsued_ | ??? | D3 Ax0fba C1 | 0x0FB0h 4016 | int16 | EEPROM_PROBE_TEMP_SHIFT | ??? | ??? | ??? | ??? | D3 Ax0fb0 C10 | ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ | ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ | ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ | ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ -| 0x0FAFh 4015 | bool | EEPROM_TEMP_CAL_ACTIVE | 00h 0 | 00h 0 | PINDA Temp cal. inactive | LCD menu | D3 Ax0faf C1 -| ^ | ^ | ^ | ffh 255 | ^ | PINDA Temp cal. active | ^ | ^ +| 0x0FAFh 4015 | bool | EEPROM_TEMP_CAL_ACTIVE | 00h 0 | 00h 0 | PINDA Temp cal.: __inactive__ | LCD menu | D3 Ax0faf C1 +| ^ | ^ | ^ | ffh 255 | ^ | PINDA Temp cal.: __active__ | ^ | ^ | 0x0FA7h 4007 | uint32 | EEPROM_BOWDEN_LENGTH | ??? | ff 00 ff ffh | Bowden length | ??? | D3 Ax0fae C8 | ^ | ^ | ^ | ??? | ff ff ff ffh | ^ | ^ | ^ -| 0x0FA6h 4006 | uint8 | EEPROM_CALIBRATION_STATUS_PINDA | 00h 0 | ffh 255 | PINDA Temp not calibrated | ??? | D3 Ax0fa6 C1 -| ^ | ^ | ^ | 01h 1 | ^ | PINDA Temp calibrated | ^ | ^ -| 0x0FA5h 4005 | uint8 | EEPROM_UVLO | 00h 0 | ffh 255 | Power Panic flag inactive | ??? | D3 Ax0fa5 C1 -| ^ | ^ | ^ | 01h 1 | ^ | Power Panic flag active | ^ | ^ -| ^ | ^ | ^ | 02h 2 | ^ | Power Panic flag ??? | ^ | ^ +| 0x0FA6h 4006 | uint8 | EEPROM_CALIBRATION_STATUS_PINDA | 00h 0 | ffh 255 | PINDA Temp: __not calibrated__ | ??? | D3 Ax0fa6 C1 +| ^ | ^ | ^ | 01h 1 | ^ | PINDA Temp: __calibrated__ | ^ | ^ +| 0x0FA5h 4005 | uint8 | EEPROM_UVLO | 00h 0 | ffh 255 | Power Panic flag: __inactive__ | ??? | D3 Ax0fa5 C1 +| ^ | ^ | ^ | 01h 1 | ^ | Power Panic flag: __active__ | ^ | ^ +| ^ | ^ | ^ | 02h 2 | ^ | Power Panic flag: __???__ | ^ | ^ | 0x0F9Dh 3997 | float | EEPROM_UVLO_CURRENT_POSITION | ??? | ffh 255 | Power Panic position | ??? | D3 Ax0f9d C8 | ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ | 0x0F95h 3989 | char | EEPROM_FILENAME | ??? | ffh 255 | Power Panic Filename | ??? | D3 Ax0f95 C8 @@ -129,7 +132,7 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ | 0x0F91h 39851 | uint32 | EEPROM_FILE_POSITION | ??? | ff ff ff ffh | Power Panic File Postion | ??? | D3 Ax0f91 C4 | 0x0F8Dh 3981 | float | EEPROM_UVLO_CURRENT_POSITION_Z | ??? | ff ff ff ffh | Power Panic Z Position | ^ | D3 Ax0f8d C4 -| 0x0F8Ch 3980 | ??? | EEPROM_UVLO_UNUSED_001 | ??? | ffh 255 | Power Panic UNUSED | ^ | D3 Ax0f8c C1 +| 0x0F8Ch 3980 | ??? | EEPROM_UVLO_UNUSED_001 | ??? | ffh 255 | Power Panic _unused_ | ^ | D3 Ax0f8c C1 | 0x0F8Bh 3979 | uint8 | EEPROM_UVLO_TARGET_BED | ??? | ffh 255 | Power Panic Bed temperature | ^ | D3 Ax0f8b C1 | 0x0F89h 3977 | uint16 | EEPROM_UVLO_FEEDRATE | ??? | ff ffh 65535 | Power Panic Feedrate | ^ | D3 Ax0f89 C2 | 0x0F88h 3976 | uint8 | EEPROM_UVLO_FAN_SPEED | ??? | ffh 255 | Power Panic Fan speed | ^ | D3 Ax0f88 C1 @@ -147,13 +150,14 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | 0x0F73h 3955 | uint16 | EEPROM_UVLO_Z_MICROSTEPS | ??? | ff ffh 65535 | Power Panic Z microsteps | ??? | D3 Ax0f73 C2 | 0x0F72h 3954 | uint8 | EEPROM_UVLO_E_ABS | ??? | ffh 255 | Power Panic ??? position | ??? | D3 Ax0f72 C1 | 0x0F6Eh 3950 | foat | EEPROM_UVLO_CURRENT_POSITION_E | ??? | ff ff ff ffh | Power Panic E position | ??? | D3 Ax0f6e C4 -| 0x0F69h 3945 | uint8 | EEPROM_CRASH_DET | ffh 255 | ffh 255 | Crash detection enabled | LCD menu | D3 Ax0f69 C5 -| ^ | ^ | ^ | 00h 0 | ^ | Crash detection disabled | LCD menu | ^ +| 0x0F69h 3945 | uint8 | EEPROM_CRASH_DET | ffh 255 | ffh 255 | Crash detection: __enabled__ | LCD menu | D3 Ax0f69 C5 +| ^ | ^ | ^ | 00h 0 | ^ | Crash detection: __disabled__ | LCD menu | ^ | ^ | ^ | ^ | ??? | ??? | ^ | ??? | ^ | ^ | ^ | ^ | ??? | ??? | ^ | ??? | ^ | ^ | ^ | ^ | ??? | ??? | ^ | ??? | ^ | 0x0F68h 3944 | uint8 | EEPROM_CRASH_COUNT_Y | 00h-ffh 0-255 | ffh 255 | Crashes detected on y axis | ??? | D3 Ax0f68 C1 -| 0x0F67h 3943 | uint8 | EEPROM_FSENSOR | 01h 1 | ffh 255 | Filament sensor enabled | LCD menu | D3 Ax0f67 C1 +| 0x0F67h 3943 | uint8 | EEPROM_FSENSOR | 01h 1 | ffh 255 | Filament sensor: __enabled__ | LCD menu | D3 Ax0f67 C1 +| ^ | ^ | ^ | 00h 0 | ^ | Filament sensor: __disabled__ | LCD menu | ^ | 0x0F65h 3942 | uint8 | EEPROM_CRASH_COUNT_X | 00h-ffh 0-255 | ffh 255 | Crashes detected on x axis | ??? | D3 Ax0f66 C1 | 0x0F65h 3941 | uint8 | EEPROM_FERROR_COUNT | 00h-ffh 0-255 | ffh 255 | Filament sensor error counter | ??? | D3 Ax0f65 C1 | 0x0F64h 3940 | uint8 | EEPROM_POWER_COUNT | 00h-ffh 0-255 | ffh 255 | Power failure counter | ??? | D3 Ax0f64 C1 @@ -164,13 +168,13 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | 0x0F5Bh 3931 | uint16 | EEPROM_BELTSTATUS_Y | ??? | ff ffh | Y Beltstatus | ??? | D3 Ax0f5b C2 | 0x0F5Ah 3930 | uint8 | EEPROM_DIR_DEPTH | 00h-ffh 0-255 | ffh 255 | Directory depth | ??? | D3 Ax0f5a C1 | 0x0F0Ah 3850 | uint8 | EEPROM_DIRS | ??? | ffh 255 | Directories ??? | ??? | D3 Ax0f0a C80 -| 0x0F09h 3849 | uint8 | EEPROM_SD_SORT | 00h 0 | ffh 255 | SD card sort by time | LCD menu | D3 Ax0f09 C1 -| ^ | ^ | ^ | 01h 1 | ^ | SD card sort by alphabet | LCD menu | ^ -| ^ | ^ | ^ | 02h 1 | ^ | SD card not sorted | LCD menu | ^ -| 0x0F08h 3848 | uint8 | EEPROM_SECOND_SERIAL_ACTIVE | 00h 0 | ffh 255 | RPi Port disabled | LCD menu | D3 Ax0f08 C1 -| ^ | ^ | ^ | 01h 1 | ^ | RPi Port enabled | LCD menu | ^ -| 0x0F07h 3847 | uint8 | EEPROM_FSENS_AUTOLOAD_ENABLED | 01h 1 | ffh 255 | Filament autoload enabled | LCD menu | D3 Ax0f07 C1 -| ^ | ^ | ^ | 00h 0 | ^ | Filament autoload disabled | LCD menu | ^ +| 0x0F09h 3849 | uint8 | EEPROM_SD_SORT | 00h 0 | ffh 255 | SD card sort by: __time__ | LCD menu | D3 Ax0f09 C1 +| ^ | ^ | ^ | 01h 1 | ^ | SD card sort by: __alphabet__ | LCD menu | ^ +| ^ | ^ | ^ | 02h 1 | ^ | SD card: __not sorted__ | LCD menu | ^ +| 0x0F08h 3848 | uint8 | EEPROM_SECOND_SERIAL_ACTIVE | 00h 0 | ffh 255 | RPi Port: __disabled__ | LCD menu | D3 Ax0f08 C1 +| ^ | ^ | ^ | 01h 1 | ^ | RPi Port: __enabled__ | LCD menu | ^ +| 0x0F07h 3847 | uint8 | EEPROM_FSENS_AUTOLOAD_ENABLED | 01h 1 | ffh 255 | Filament autoload: __enabled__ | LCD menu | D3 Ax0f07 C1 +| ^ | ^ | ^ | 00h 0 | ^ | Filament autoload: __disabled__ | LCD menu | ^ | 0x0F05h 3845 | uint16 | EEPROM_CRASH_COUNT_X_TOT | 0000-fffe | ff ffh | Total charshes on x axis | ??? | D3 Ax0f05 C2 | 0x0F03h 3843 | uint16 | EEPROM_CRASH_COUNT_Y_TOT | 0000-fffe | ff ffh | Total charshes on y axis | ??? | D3 Ax0f03 C2 | 0x0F01h 3841 | uint16 | EEPROM_FERROR_COUNT_TOT | 0000-fffe | ff ffh | Total filament sensor errors | ??? | D3 Ax0f01 C2 @@ -198,21 +202,21 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | 0x0EDE 3806 | uint16 | EEPROM_EXTRUDEMULTIPLY | ??? | ff ffh 65535 | Power panic Extruder multiplier | ??? | D3 Ax0ede C2 | 0x0EDA 3802 | float | EEPROM_UVLO_TINY_CURRENT_POSITION_Z | ??? | ff ff ff ffh | Power panic Z position | ??? | D3 Ax0eda C4 | 0x0ED8 3800 | uint16 | EEPROM_UVLO_TARGET_HOTEND | ??? | ff ffh 65535 | Power panic traget Hotend temperature | ??? | D3 Ax0ed8 C2 -| 0x0ED7 3799 | uint8 | EEPROM_SOUND_MODE | 00h 0 | ffh 255 | Sound mode loud | ??? | D3 Ax0ed7 C1 -| ^ | ^ | ^ | 01h 1 | ^ | Sound mode once | ^ | ^ -| ^ | ^ | ^ | 02h 1 | ^ | Sound mode silent | ^ | ^ -| ^ | ^ | ^ | 03h 1 | ^ | Sound mode assist | ^ | ^ -| 0x0ED6 3798 | bool | EEPROM_AUTO_DEPLETE | 01h 1 | ffh 255 | MMU2/s autodeplete on | ??? | D3 Ax0ed6 C1 -| ^ | ^ | ^ | 00h 0 | ^ | MMU2/s autodeplete off | ^ | ^ +| 0x0ED7 3799 | uint8 | EEPROM_SOUND_MODE | 00h 0 | ffh 255 | Sound mode: __loud__ | ??? | D3 Ax0ed7 C1 +| ^ | ^ | ^ | 01h 1 | ^ | Sound mode: __once__ | ^ | ^ +| ^ | ^ | ^ | 02h 1 | ^ | Sound mode: __silent__ | ^ | ^ +| ^ | ^ | ^ | 03h 1 | ^ | Sound mode: __assist__ | ^ | ^ +| 0x0ED6 3798 | bool | EEPROM_AUTO_DEPLETE | 01h 1 | ffh 255 | MMU2/s autodeplete: __on__ | ??? | D3 Ax0ed6 C1 +| ^ | ^ | ^ | 00h 0 | ^ | MMU2/s autodeplete: __off__ | ^ | ^ | 0x0ED5 3797 | bool | EEPROM_FSENS_OQ_MEASS_ENABLED | ??? | ffh 255 | PAT1925 ??? | ??? | D3 Ax0ed5 C1 | ^ | ^ | ^ | ??? | ^ | PAT1925 ??? | ^ | ^ | 0x0ED3 3795 | uint16 | EEPROM_MMU_FAIL_TOT | ??? | ff ffh 65535 | MMU2/s total failures | ??? | D3 Ax0ed3 C2 | 0x0ED2 3794 | uint8 | EEPROM_MMU_FAIL | ??? | ffh 255 | MMU2/s fails during print | ??? | D3 Ax0ed2 C1 | 0x0ED0 3792 | uint16 | EEPROM_MMU_LOAD_FAIL_TOT | ??? | ff ffh 65535 | MMU2/s total load failures | ??? | D3 Ax0ed0 C2 | 0x0ECF 3791 | uint8 | EEPROM_MMU_LOAD_FAIL | ??? | ffh 255 | MMU2/s load failures during print | ??? | D3 Ax0ecf C1 -| 0x0ECE 3790 | uint8 | EEPROM_MMU_CUTTER_ENABLED | 00h 0 | ffh 255 | MMU2/s cutter disabled | LCD menu | D3 Ax0ece C1 -| ^ | ^ | ^ | 01h 1 | ^ | MMU2/s cutter enabled | ^ | ^ -| ^ | ^ | ^ | 02h 2 | ^ | MMU2/s cutter always | ^ | ^ +| 0x0ECE 3790 | uint8 | EEPROM_MMU_CUTTER_ENABLED | 00h 0 | ffh 255 | MMU2/s cutter: __disabled__ | LCD menu | D3 Ax0ece C1 +| ^ | ^ | ^ | 01h 1 | ^ | MMU2/s cutter: __enabled__ | ^ | ^ +| ^ | ^ | ^ | 02h 2 | ^ | MMU2/s cutter: __always__ | ^ | ^ | 0x0DAE 3502 | uint16 | EEPROM_UVLO_MESH_BED_LEVELING_FULL | ??? | ff ffh 65535 | Power panic Mesh bed leveling points | ??? | D3 Ax0dae C288 | ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ @@ -237,33 +241,33 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ | 0x0DAD 3501 | uint8 | EEPROM_MBL_TYPE | ??? | ffh 255 | Mesh bed leveling precision _unused atm_ | ??? | D3 Ax0dad C1 -| 0x0DAC 3500 | bool | EEPROM_MBL_MAGNET_ELIMINATION | 01h 1 | ffh 255 | Mesh bed leveling ignore magnets | LCD menu | D3 Ax0dac C1 -| ^ | ^ | ^ | 00h 0 | ^ | Mesh bed leveling NOT ignore magnets | ^ | ^ -| 0x0DAB 3499 | uint8 | EEPROM_MBL_POINTS_NR | 03h 3 | ffh 255 | Mesh bed leveling points 3x3 | LCD menu | D3 Ax0dab C1 -| ^ | ^ | ^ | 07h 7 | ^ | Mesh bed leveling points 7x7 | ^ | ^ -| 0x0DAA 3498 | uint8 | EEPROM_MBL_PROBE_NR | 03h 3 | ffh 255 | MBL 3 times measurements for each point | LCD menu | D3 Ax0daa C1 -| ^ | ^ | ^ | 05h 5 | ^ | MBL 5 times measurements for each point | ^ | ^ -| ^ | ^ | ^ | 01h 1 | ^ | MBL 7 times measurements for each point | ^ | ^ -| 0x0DA9 3497 | uint8 | EEPROM_MMU_STEALTH | 01h 1 | ffh 255 | MMU2/s Silent mode on | ??? | D3 Ax0da9 C1 -| ^ | ^ | ^ | 00h 0 | ^ | MMU2/s Silent mode off | ^ | ^ -| 0x0DA8 3496 | uint8 | EEPROM_CHECK_MODE | 01h 1 | ffh 255 | Check mode for nozzle is warn | LCD menu | D3 Ax0da8 C1 -| ^ | ^ | ^ | 02h 0 | ^ | Check mode for nozzle is strict | ^ | ^ -| ^ | ^ | ^ | 00h 0 | ^ | Check mode for nozzle is none | ^ | ^ -| 0x0DA7 3495 | uint8 | EEPROM_NOZZLE_DIAMETER | 28h 40 | ffh 255 | Nozzle diameter is 40 or 0.40mm | LCD menu | D3 Ax0da7 C1 -| ^ | ^ | ^ | 3ch 60 | ^ | Nozzle diameter is 60 or 0.60mm | ^ | ^ -| ^ | ^ | ^ | 19h 25 | ^ | Nozzle diameter is 25 or 0.25mm | ^ | ^ -| 0x0DA5 3493 | uint16 | EEPROM_NOZZLE_DIAMETER_uM | 9001h | ff ffh 65535 | Nozzle diameter is 400um | LCD menu | D3 Ax0da5 C2 -| ^ | ^ | ^ | 5802h | ^ | Nozzle diameter is 600um | ^ | ^ -| ^ | ^ | ^ | fa00h | ^ | Nozzle diameter is 250um | ^ | ^ -| 0x0DA4 3492 | uint8 | EEPROM_CHECK_MODEL | 01h 1 | ffh 255 | Check mode for printer model is warn | LCD menu | D3 Ax0da4 C1 -| ^ | ^ | ^ | 02h 0 | ^ | Check mode for printer model is strict | ^ | ^ -| ^ | ^ | ^ | 00h 0 | ^ | Check mode for printer model is none | ^ | ^ -| 0x0DA3 3491 | uint8 | EEPROM_CHECK_VERSION | 01h 1 | ffh 255 | Check mode for firmware is warn | LCD menu | D3 Ax0da3 C1 -| ^ | ^ | ^ | 02h 0 | ^ | Check mode for firmware is strict | ^ | ^ -| ^ | ^ | ^ | 00h 0 | ^ | Check mode for firmware is none | ^ | ^ -| 0x0DA2 3490 | uint8 | EEPROM_CHECK_GCODE | 01h 1 | ffh 255 | Check mode for gcode is warn _unused atm_ | LCD menu | D3 Ax0da2 C1 -| ^ | ^ | ^ | 02h 0 | ^ | Check mode for gcode is strict _unused atm_ | ^ | ^ -| ^ | ^ | ^ | 00h 0 | ^ | Check mode for gcode is none _unused atm_ | ^ | ^ +| 0x0DAC 3500 | bool | EEPROM_MBL_MAGNET_ELIMINATION | 01h 1 | ffh 255 | Mesh bed leveling does: __ignores__ magnets | LCD menu | D3 Ax0dac C1 +| ^ | ^ | ^ | 00h 0 | ^ | Mesh bed leveling does: __NOT ignores__ magnets | ^ | ^ +| 0x0DAB 3499 | uint8 | EEPROM_MBL_POINTS_NR | 03h 3 | ffh 255 | Mesh bed leveling points: __3x3__ | LCD menu | D3 Ax0dab C1 +| ^ | ^ | ^ | 07h 7 | ^ | Mesh bed leveling points: __7x7__ | ^ | ^ +| 0x0DAA 3498 | uint8 | EEPROM_MBL_PROBE_NR | 03h 3 | ffh 255 | MBL times measurements for each point: __3__ | LCD menu | D3 Ax0daa C1 +| ^ | ^ | ^ | 05h 5 | ^ | MBL times measurements for each point: __5__ | ^ | ^ +| ^ | ^ | ^ | 01h 1 | ^ | MBL times measurements for each point: __7__ | ^ | ^ +| 0x0DA9 3497 | uint8 | EEPROM_MMU_STEALTH | 01h 1 | ffh 255 | MMU2/s Silent mode: __on__ | ??? | D3 Ax0da9 C1 +| ^ | ^ | ^ | 00h 0 | ^ | MMU2/s Silent mode: __off__ | ^ | ^ +| 0x0DA8 3496 | uint8 | EEPROM_CHECK_MODE | 01h 1 | ffh 255 | Check mode for nozzle is: __warn__ | LCD menu | D3 Ax0da8 C1 +| ^ | ^ | ^ | 02h 0 | ^ | Check mode for nozzle is: __strict__ | ^ | ^ +| ^ | ^ | ^ | 00h 0 | ^ | Check mode for nozzle is: __none__ | ^ | ^ +| 0x0DA7 3495 | uint8 | EEPROM_NOZZLE_DIAMETER | 28h 40 | ffh 255 | Nozzle diameter is: __40 or 0.40mm__ | LCD menu | D3 Ax0da7 C1 +| ^ | ^ | ^ | 3ch 60 | ^ | Nozzle diameter is: __60 or 0.60mm__ | ^ | ^ +| ^ | ^ | ^ | 19h 25 | ^ | Nozzle diameter is: __25 or 0.25mm__ | ^ | ^ +| 0x0DA5 3493 | uint16 | EEPROM_NOZZLE_DIAMETER_uM | 9001h | ff ffh 65535 | Nozzle diameter is: __400um__ | LCD menu | D3 Ax0da5 C2 +| ^ | ^ | ^ | 5802h | ^ | Nozzle diameter is: __600um__ | ^ | ^ +| ^ | ^ | ^ | fa00h | ^ | Nozzle diameter is: __250um__ | ^ | ^ +| 0x0DA4 3492 | uint8 | EEPROM_CHECK_MODEL | 01h 1 | ffh 255 | Check mode for printer model is: __warn__ | LCD menu | D3 Ax0da4 C1 +| ^ | ^ | ^ | 02h 0 | ^ | Check mode for printer model is: __strict__ | ^ | ^ +| ^ | ^ | ^ | 00h 0 | ^ | Check mode for printer model is: __none__ | ^ | ^ +| 0x0DA3 3491 | uint8 | EEPROM_CHECK_VERSION | 01h 1 | ffh 255 | Check mode for firmware is: __warn__ | LCD menu | D3 Ax0da3 C1 +| ^ | ^ | ^ | 02h 0 | ^ | Check mode for firmware is: __strict__ | ^ | ^ +| ^ | ^ | ^ | 00h 0 | ^ | Check mode for firmware is: __none__ | ^ | ^ +| 0x0DA2 3490 | uint8 | EEPROM_CHECK_GCODE | 01h 1 | ffh 255 | Check mode for gcode is: __warn__ _unused atm_ | LCD menu | D3 Ax0da2 C1 +| ^ | ^ | ^ | 02h 0 | ^ | Check mode for gcode is: __strict__ _unused atm_ | ^ | ^ +| ^ | ^ | ^ | 00h 0 | ^ | Check mode for gcode is: __none__ _unused atm_ | ^ | ^ | 0x0D49 3401 | uint16 | EEPROM_SHEETS_BASE | ??? | ffh 255 | ??? | LCD menu | D3 Ax0d49 C89 | 0x0D49 3401 | char | _1st Sheet block_ | 536d6f6f746831| ffffffffffffff | 1st sheet - Name: _Smooth1_ | ^ | D3 Ax0d49 C7 | 0x0D50 3408 | uint16 | ^ | 00 00h 0 | ff ffh 65535 | 1st sheet - Z offset | ^ | D3 Ax0d50 C2 @@ -300,20 +304,20 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | 0x0DA1 3489 | uint8 | ??? | 00h 0 | ffh 255 | ??? | ??? | D3 Ax0da1 C1 | 0x0D48 3400 | uint8 | EEPROM_FSENSOR_PCB | ??? | ffh 255 | Filament Sensor type old vs new | ??? | D3 Ax0d48 C1 | ^ | ^ | ^ | ??? | ^ | Filament Sensor type ??? | ^ | ^ -| 0x0D47 3399 | uint8 | EEPROM_FSENSOR_ACTION_NA | 00h 0 | ffh 255 | Filament Sensor action: _Continue_ | LCD menu | D3 Ax0d47 C1 -| ^ | ^ | ^ | 01h 1 | ^ | Filament Sensor action: Pause | ^ | ^ +| 0x0D47 3399 | uint8 | EEPROM_FSENSOR_ACTION_NA | 00h 0 | ffh 255 | Filament Sensor action: __Continue__ | LCD menu | D3 Ax0d47 C1 +| ^ | ^ | ^ | 01h 1 | ^ | Filament Sensor action: __Pause__ | ^ | ^ | 0x0D37 3383 | float | EEPROM_UVLO_SAVED_TARGET | ??? | ff ff ff ffh | Power panic saved target all-axis | ??? | D3 Ax0d37 C16 | ^ | ^ | ^ | ??? | ^ | Power panic saved target e-axis | ^ | D3 Ax0d43 C4 | ^ | ^ | ^ | ??? | ^ | Power panic saved target z-axis | ^ | D3 Ax0d3f C4 | ^ | ^ | ^ | ??? | ^ | Power panic saved target y-axis | ^ | D3 Ax0d3b C4 | ^ | ^ | ^ | ??? | ^ | Power panic saved target x-axis | ^ | D3 Ax0d37 C4 | 0x0D35 3381 | uint16 | EEPROM_UVLO_FEEDMULTIPLY | ??? | ff ffh 65355 | Power panic saved feed multiplier | ??? | D3 Ax0d35 C2 -| 0x0D34 3380 | uint8 | EEPROM_BACKLIGHT_LEVEL_HIGH | 00h - ffh | 80h 128 | LCD backlight bright _128_ Dim value to 255 | LCD menu | D3 Ax0d34 C1 -| 0x0D33 3379 | uint8 | EEPROM_BACKLIGHT_LEVEL_LOW | 00h - ffh | 32h 50 | LCD backlight dim _50_ 0 to Bright value | LCD menu | D3 Ax0d33 C1 -| 0x0D32 3378 | uint8 | EEPROM_BACKLIGHT_MODE | 02h 2 | ffh 255 | LCD backlight mode: _Auto_ | LCD menu | D3 Ax0d32 C1 -| ^ | ^ | ^ | 01h 1 | ^ | LCD backlight mode: Bright | ^ | ^ -| ^ | ^ | ^ | 00h 0 | ^ | LCD backlight mode: Dim | ^ | ^ -| 0x0D30 3376 | uint16 | EEPROM_BACKLIGHT_TIMEOUT | 01 00 - ff ff | ff ffh 65535 | LCD backlight timeout: _10_ seconds | LCD menu | D3 Ax0d30 C2 +| 0x0D34 3380 | uint8 | EEPROM_BACKLIGHT_LEVEL_HIGH | 00h - ffh | 80h 128 | LCD backlight bright: __128__ Dim value to 255 | LCD menu | D3 Ax0d34 C1 +| 0x0D33 3379 | uint8 | EEPROM_BACKLIGHT_LEVEL_LOW | 00h - ffh | 32h 50 | LCD backlight dim: __50__ 0 to Bright value | LCD menu | D3 Ax0d33 C1 +| 0x0D32 3378 | uint8 | EEPROM_BACKLIGHT_MODE | 02h 2 | ffh 255 | LCD backlight mode: __Auto__ | LCD menu | D3 Ax0d32 C1 +| ^ | ^ | ^ | 01h 1 | ^ | LCD backlight mode: __Bright__ | ^ | ^ +| ^ | ^ | ^ | 00h 0 | ^ | LCD backlight mode: __Dim__ | ^ | ^ +| 0x0D30 3376 | uint16 | EEPROM_BACKLIGHT_TIMEOUT | 01 00 - ff ff | ff ffh 65535 | LCD backlight timeout: __10__ seconds | LCD menu | D3 Ax0d30 C2 | 0x0D2C 3372 | float | EEPROM_UVLO_LA_K | ??? | ff ff ff ffh | Power panic saved Linear Advanced K value | ??? | D3 Ax0d2c C4 ## End of EEPROM Table From 2778fa9aa049b896645df855484ffa61eae490e4 Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Sun, 22 Mar 2020 15:22:14 +0100 Subject: [PATCH 11/25] Added author and version of document --- Firmware/eeprom.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index e149526e1..1f9446caa 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -1,6 +1,7 @@ /** * @file + * @author 3d-gussner */ /** \ingroup eeprom_table */ //! _This is a EEPROM table of currently implemented in Prusa firmware (dynamically generated from doxygen)._ @@ -54,6 +55,8 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP ### !!! D-codes are case sensitive so please don't use upper case A,C or X in the address you want to read !!! + Version 0.9 + --------------------------------------------------------------------------------- From 1b0c86cb51248118495f6da70337186ddaa5d044 Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Sun, 22 Mar 2020 15:23:41 +0100 Subject: [PATCH 12/25] minor fix --- Firmware/eeprom.h | 1 - 1 file changed, 1 deletion(-) diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index 1f9446caa..b4357de3e 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -323,7 +323,6 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | 0x0D30 3376 | uint16 | EEPROM_BACKLIGHT_TIMEOUT | 01 00 - ff ff | ff ffh 65535 | LCD backlight timeout: __10__ seconds | LCD menu | D3 Ax0d30 C2 | 0x0D2C 3372 | float | EEPROM_UVLO_LA_K | ??? | ff ff ff ffh | Power panic saved Linear Advanced K value | ??? | D3 Ax0d2c C4 - ## End of EEPROM Table | Adress begin | Bit/Type | Name | Valid values | Default/FactoryReset | Description | Gcode/Function| Debug code | :--: | :--: | :--: | :--: | :--: | :--: | :--: | :--: From 0c655057413897a6321068d3145b597a4270a34f Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Mon, 23 Mar 2020 07:23:36 +0100 Subject: [PATCH 13/25] Added PRUSA3DFW at 0x0000 --- Firmware/eeprom.h | 1 + 1 file changed, 1 insertion(+) diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index b4357de3e..7f97c3558 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -331,6 +331,7 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | 0x000E 14 | uint16 | EEPROM_FIRMWARE_VERSION_REVISION | ??? | ff ffh 65535 | Firmware version revision number DEV/ALPHA/BETA/RC| ??? | D3 Ax000e C2 | 0x000C 12 | uint16 | EEPROM_FIRMWARE_VERSION_MINOR | ??? | ff ffh 65535 | Firmware version minor number | ??? | D3 Ax000c C2 | 0x000A 10 | uint16 | EEPROM_FIRMWARE_VERSION_MAJOR | ??? | ff ffh 65535 | Firmware version major number | ??? | D3 Ax000a C2 +| 0x0000 0 | char | FW_PRUSA3D_MAGIC | ??? | ffffffffffffffffffff | __`PRUSA3DFW`__ | ??? | D3 Ax0000 C10 */ #define EEPROM_EMPTY_VALUE 0xFF From 32bff79fd67192963f9a8dfa2710f7579bf6fb8e Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Mon, 23 Mar 2020 11:40:07 +0100 Subject: [PATCH 14/25] minor changes + added EEPROM_FREE_NRx ... Some EEPROM allocations do not use the hole allocated space: - EEPROM_FARM_NUMBER is only numeric 000-999 and only uses 2 bytes to store the Farm number BUT allocated 3 bytes. Added EEPROM_FREE_NR1 as free space that can be used - EEPROM_CRASH_DET just changes 1 byte to save it status [on/off] but allocated 5 bytes. Added EEPROM_FREE_NR2 to EEPROM_FREE_NR5 as free space that can be used --- Firmware/eeprom.h | 158 +++++++++++++++++++++++++++------------------- 1 file changed, 93 insertions(+), 65 deletions(-) diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index 7f97c3558..e2b01c370 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -51,11 +51,16 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP How can you use the debug codes? - Serial terminal like Putty. - Octoprint does support D-codes - - _Pronterface_ does not support D-codes + - _Pronterface_ does __not__ support D-codes ### !!! D-codes are case sensitive so please don't use upper case A,C or X in the address you want to read !!! + + #### Usefull tools/links: + To convert hex to ascii https://www.rapidtables.com/convert/number/hex-to-ascii.html - Version 0.9 + To convert hex to dec https://www.rapidtables.com/convert/number/hex-to-decimal.html + + Version: 0.9.1 --------------------------------------------------------------------------------- @@ -66,73 +71,74 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | ^ | ^ | ^ | 01h 1 | ^ | TMC Stealth mode: __on__ / miniRambo Silent mode | ^ | ^ | 0x0FFEh 4094 | uchar | EEPROM_LANG | 00h 0 | ffh 255 | English / LANG_ID_PRI | LCD menu | D3 Ax0ffe C1 | ^ | ^ | ^ | 01h 1 | ^ | Other language LANG_ID_SEC | ^ | ^ -| 0x0FFCh 4092 | uint16 | EEPROM_BABYSTEP_X | ??? | ffh 255 | Babystep for X axis _unsued_ | ??? | D3 Ax0ffc C2 -| 0x0FFAh 4090 | uint16 | EEPROM_BABYSTEP_Y | ??? | ffh 255 | Babystep for Y axis _unsued_ | ^ | D3 Ax0ffa C2 -| 0x0FF8h 4088 | uint16 | EEPROM_BABYSTEP_Z | ??? | ffh 255 | Babystep for Z axis _lagacy_ | ^ | D3 Ax0ff8 C2 +| 0x0FFCh 4092 | uint16 | EEPROM_BABYSTEP_X | ??? | ff ffh 65535 | Babystep for X axis _unsued_ | ??? | D3 Ax0ffc C2 +| 0x0FFAh 4090 | uint16 | EEPROM_BABYSTEP_Y | ??? | ff ffh 65535 | Babystep for Y axis _unsued_ | ^ | D3 Ax0ffa C2 +| 0x0FF8h 4088 | uint16 | EEPROM_BABYSTEP_Z | ??? | ff ffh 65535 | Babystep for Z axis _lagacy_ | ^ | D3 Ax0ff8 C2 | ^ | ^ | ^ | ^ | ^ | multiple values stored now in EEPROM_Sheets_base | ^ | ^ -| 0x0FF7h 4087 | uint8 | EEPROM_CALIBRATION_STATUS | 00h 0 | ffh 255 | Unknown | ??? | D3 Ax0ff7 C1 +| 0x0FF7h 4087 | uint8 | EEPROM_CALIBRATION_STATUS | ffh 255 | ffh 255 | Assbemled _default_ | ??? | D3 Ax0ff7 C1 | ^ | ^ | ^ | 01h 1 | ^ | Calibrated | ^ | ^ -| ^ | ^ | ^ | E6h 230 | ^ | needs Live Z adjustment | ^ | ^ -| ^ | ^ | ^ | F0h 240 | ^ | needs Z calibration | ^ | ^ -| ^ | ^ | ^ | FAh 250 | ^ | needs XYZ calibration | ^ | ^ -| ^ | ^ | ^ | FFh 255 | ^ | Assbemled _default_ | ^ | ^ -| 0x0FF5h 4085 | uint16 | EEPROM_BABYSTEP_Z0 | ??? | ??? | Babystep for Z ??? | ??? | D3 Ax0ff5 C2 -| 0x0FF1h 4081 | uint32 | EEPROM_FILAMENTUSED | ??? | 00h 0 | Filament used in meters | ??? | D3 Ax0ff1 C4 -| 0x0FEDh 4077 | uint32 | EEPROM_TOTALTIME | ??? | 00h 0 | Total print time | ??? | D3 Ax0fed C4 -| 0x0FE5h 4069 | float | EEPROM_BED_CALIBRATION_CENTER | ??? | ??? | ??? | ??? | D3 Ax0fe5 C8 -| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ -| 0x0FDDh 4061 | float | EEPROM_BED_CALIBRATION_VEC_X | ??? | ??? | ??? | ??? | D3 Ax0fdd C8 -| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ -| 0x0FD5h 4053 | float | EEPROM_BED_CALIBRATION_VEC_Y | ??? | ??? | ??? | ??? | D3 Ax0fd5 C8 -| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ -| 0x0FC5h 4037 | int16 | EEPROM_BED_CALIBRATION_Z_JITTER | ??? | ??? | ??? | ??? | D3 Ax0fc5 C16 -| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ +| ^ | ^ | ^ | e6h 230 | ^ | needs Live Z adjustment | ^ | ^ +| ^ | ^ | ^ | f0h 240 | ^ | needs Z calibration | ^ | ^ +| ^ | ^ | ^ | fah 250 | ^ | needs XYZ calibration | ^ | ^ +| ^ | ^ | ^ | 00h 0 | ^ | Unknown | ^ | ^ +| 0x0FF5h 4085 | uint16 | EEPROM_BABYSTEP_Z0 | ??? | ff ffh 65535 | Babystep for Z ??? | ??? | D3 Ax0ff5 C2 +| 0x0FF1h 4081 | uint32 | EEPROM_FILAMENTUSED | ??? | 00 00 00 00h 0 | Filament used in meters | ??? | D3 Ax0ff1 C4 +| 0x0FEDh 4077 | uint32 | EEPROM_TOTALTIME | ??? | 00 00 00 00h 0 | Total print time | ??? | D3 Ax0fed C4 +| 0x0FE5h 4069 | float | EEPROM_BED_CALIBRATION_CENTER | ??? | ff ff ff ffh | ??? | ??? | D3 Ax0fe5 C8 +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| 0x0FDDh 4061 | float | EEPROM_BED_CALIBRATION_VEC_X | ??? | ff ff ff ffh | ??? | ??? | D3 Ax0fdd C8 +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| 0x0FD5h 4053 | float | EEPROM_BED_CALIBRATION_VEC_Y | ??? | ff ff ff ffh | ??? | ??? | D3 Ax0fd5 C8 +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| 0x0FC5h 4037 | int16 | EEPROM_BED_CALIBRATION_Z_JITTER | ??? | ff ffh 65535 | ??? | ??? | D3 Ax0fc5 C16 +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | 0x0FC4h 4036 | bool | EEPROM_FARM_MODE | 00h 0 | ffh 255 | Prusa farm mode: __off__ | G99 | D3 Ax0fc4 C1 | ^ | ^ | ^ | 01h 1 | ^ | Prusa farm mode: __on__ | G98 | ^ -| 0x0FC1h 4033 | int16 | EEPROM_FARM_NUMBER | ??? | ff ff ffh | Prusa farm number | ??? | D3 Ax0fc1 C3 +| 0x0FC3h 4035 | free | _EEPROM_FREE_NR1_ | ??? | ffh 255 | _Free EEPROM space_ | _free space_ | D3 Ax0fc3 C1 +| 0x0FC1h 4033 | ??? | EEPROM_FARM_NUMBER | 000-999 | ff ffh = 00 00 | Prusa farm number _only 0-9 are allowed: 000-999_ | LCD menu | D3 Ax0fc1 C2 | 0x0FC0h 4032 | bool | EEPROM_BED_CORRECTION_VALID | 00h 0 | 00h 0 | Bed correction invalid | ??? | D3 Ax0fc0 C1 | ^ | ^ | ^ | ffh 255 | | Bed correction valid | ??? | ^ -| 0x0FBFh 4031 | char | EEPROM_BED_CORRECTION_LEFT | 00h FFh | 00h 0 | Bed manual correction left | LCD menu | D3 Ax0fbf C1 -| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | G80 Lxxx | ^ -| 0x0FBEh 4030 | char | EEPROM_BED_CORRECTION_RIGHT | 00h FFh | 00h 0 | Bed manual correction right | LCD menu | D3 Ax0fbe C1 -| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | G80 Rxxx | ^ -| 0x0FBDh 4029 | char | EEPROM_BED_CORRECTION_FRONT | 00h FFh | 00h 0 | Bed manual correction front | LCD menu | D3 Ax0fbd C1 -| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | G80 Fxxx | ^ -| 0x0FBCh 4028 | char | EEPROM_BED_CORRECTION_BACK | 00h FFh | 00h 0 | Bed manual correction back | LCD menu | D3 Ax0fbc C1 -| ^ | ^ | ^ | ??? | ??? | At this moment limited to +-100um | G80 Bxxx | ^ +| 0x0FBFh 4031 | char | EEPROM_BED_CORRECTION_LEFT | 00h ffh | 00h 0 | Bed manual correction left | LCD menu | D3 Ax0fbf C1 +| ^ | ^ | ^ | ^ | ^ | At this moment limited to +-100um | G80 Lxxx | ^ +| 0x0FBEh 4030 | char | EEPROM_BED_CORRECTION_RIGHT | 00h ffh | 00h 0 | Bed manual correction right | LCD menu | D3 Ax0fbe C1 +| ^ | ^ | ^ | ^ | ^ | At this moment limited to +-100um | G80 Rxxx | ^ +| 0x0FBDh 4029 | char | EEPROM_BED_CORRECTION_FRONT | 00h ffh | 00h 0 | Bed manual correction front | LCD menu | D3 Ax0fbd C1 +| ^ | ^ | ^ | ^ | ^ | At this moment limited to +-100um | G80 Fxxx | ^ +| 0x0FBCh 4028 | char | EEPROM_BED_CORRECTION_BACK | 00h ffh | 00h 0 | Bed manual correction back | LCD menu | D3 Ax0fbc C1 +| ^ | ^ | ^ | ^ | ^ | At this moment limited to +-100um | G80 Bxxx | ^ | 0x0FBBh 4027 | bool | EEPROM_TOSHIBA_FLASH_AIR_COMPATIBLITY | 00h 0 | 00h 0 | Toshiba Air: __off__ | LCD menu | D3 Ax0fbb C1 -| ^ | ^ | ^ | ??? | ffh 255 | Toshiba Air: __on__ | ^ | ^ +| ^ | ^ | ^ | 01h 1 | ffh 255 | Toshiba Air: __on__ | ^ | ^ | 0x0FBAh 4026 | uchar | EEPROM_PRINT_FLAG | ??? | ??? | _unsued_ | ??? | D3 Ax0fba C1 | 0x0FB0h 4016 | int16 | EEPROM_PROBE_TEMP_SHIFT | ??? | ??? | ??? | ??? | D3 Ax0fb0 C10 -| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ -| ^ | ^ | ^ | ??? | ??? | ??? | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | 0x0FAFh 4015 | bool | EEPROM_TEMP_CAL_ACTIVE | 00h 0 | 00h 0 | PINDA Temp cal.: __inactive__ | LCD menu | D3 Ax0faf C1 | ^ | ^ | ^ | ffh 255 | ^ | PINDA Temp cal.: __active__ | ^ | ^ | 0x0FA7h 4007 | uint32 | EEPROM_BOWDEN_LENGTH | ??? | ff 00 ff ffh | Bowden length | ??? | D3 Ax0fae C8 -| ^ | ^ | ^ | ??? | ff ff ff ffh | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ff ff ff ffh | ^ | ^ | ^ | 0x0FA6h 4006 | uint8 | EEPROM_CALIBRATION_STATUS_PINDA | 00h 0 | ffh 255 | PINDA Temp: __not calibrated__ | ??? | D3 Ax0fa6 C1 | ^ | ^ | ^ | 01h 1 | ^ | PINDA Temp: __calibrated__ | ^ | ^ | 0x0FA5h 4005 | uint8 | EEPROM_UVLO | 00h 0 | ffh 255 | Power Panic flag: __inactive__ | ??? | D3 Ax0fa5 C1 | ^ | ^ | ^ | 01h 1 | ^ | Power Panic flag: __active__ | ^ | ^ | ^ | ^ | ^ | 02h 2 | ^ | Power Panic flag: __???__ | ^ | ^ | 0x0F9Dh 3997 | float | EEPROM_UVLO_CURRENT_POSITION | ??? | ffh 255 | Power Panic position | ??? | D3 Ax0f9d C8 -| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | 0x0F95h 3989 | char | EEPROM_FILENAME | ??? | ffh 255 | Power Panic Filename | ??? | D3 Ax0f95 C8 -| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | 0x0F91h 39851 | uint32 | EEPROM_FILE_POSITION | ??? | ff ff ff ffh | Power Panic File Postion | ??? | D3 Ax0f91 C4 | 0x0F8Dh 3981 | float | EEPROM_UVLO_CURRENT_POSITION_Z | ??? | ff ff ff ffh | Power Panic Z Position | ^ | D3 Ax0f8d C4 | 0x0F8Ch 3980 | ??? | EEPROM_UVLO_UNUSED_001 | ??? | ffh 255 | Power Panic _unused_ | ^ | D3 Ax0f8c C1 @@ -142,22 +148,23 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | 0x0F87h 3975 | uint8 | EEPROM_FAN_CHECK_ENABLED | 00h 0 | ??? | Fan Check disabled | LCD menu | D3 Ax0f87 C1 | ^ | ^ | ^ | 01h 1 | ffh 255 | Fan Check enabled (exception ffh=01h) | ^ | ^ | 0x0F75h 3957 | uint16 | EEPROM_UVLO_MESH_BED_LEVELING | ??? | ff ffh 65535 | Power Panic Mesh Bed Leveling | ??? | D3 Ax0f75 C18 -| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ -| ^ | ^ | ^ | ??? | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ +| ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | 0x0F73h 3955 | uint16 | EEPROM_UVLO_Z_MICROSTEPS | ??? | ff ffh 65535 | Power Panic Z microsteps | ??? | D3 Ax0f73 C2 | 0x0F72h 3954 | uint8 | EEPROM_UVLO_E_ABS | ??? | ffh 255 | Power Panic ??? position | ??? | D3 Ax0f72 C1 | 0x0F6Eh 3950 | foat | EEPROM_UVLO_CURRENT_POSITION_E | ??? | ff ff ff ffh | Power Panic E position | ??? | D3 Ax0f6e C4 -| 0x0F69h 3945 | uint8 | EEPROM_CRASH_DET | ffh 255 | ffh 255 | Crash detection: __enabled__ | LCD menu | D3 Ax0f69 C5 +| 0x0F6Dh 3949 | ??? | _EEPROM_FREE_NR2_ | ??? | ffh 255 | _Free EEPROM space_ | _free space_ | D3 Ax0f6d C1 +| 0x0F6Ch 3948 | ??? | _EEPROM_FREE_NR3_ | ??? | ffh 255 | _Free EEPROM space_ | _free space_ | D3 Ax0f6c C1 +| 0x0F6Bh 3947 | ??? | _EEPROM_FREE_NR4_ | ??? | ffh 255 | _Free EEPROM space_ | _free space_ | D3 Ax0f6b C1 +| 0x0F6Ah 3946 | ??? | _EEPROM_FREE_NR5_ | ??? | ffh 255 | _Free EEPROM space_ | _free space_ | D3 Ax0f6a C1 +| 0x0F69h 3945 | uint8 | EEPROM_CRASH_DET | ffh 255 | ffh 255 | Crash detection: __enabled__ | LCD menu | D3 Ax0f69 C1 | ^ | ^ | ^ | 00h 0 | ^ | Crash detection: __disabled__ | LCD menu | ^ -| ^ | ^ | ^ | ??? | ??? | ^ | ??? | ^ -| ^ | ^ | ^ | ??? | ??? | ^ | ??? | ^ -| ^ | ^ | ^ | ??? | ??? | ^ | ??? | ^ | 0x0F68h 3944 | uint8 | EEPROM_CRASH_COUNT_Y | 00h-ffh 0-255 | ffh 255 | Crashes detected on y axis | ??? | D3 Ax0f68 C1 | 0x0F67h 3943 | uint8 | EEPROM_FSENSOR | 01h 1 | ffh 255 | Filament sensor: __enabled__ | LCD menu | D3 Ax0f67 C1 | ^ | ^ | ^ | 00h 0 | ^ | Filament sensor: __disabled__ | LCD menu | ^ @@ -198,7 +205,23 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | 0x0EF1h 3825 | uint8 | EEPROM_TMC2130_Z_MRES | ??? | ffh 255 | ??? | ??? | D3 Ax0ef1 C1 | 0x0EF0h 3824 | uint8 | EEPROM_TMC2130_E_MRES | ??? | ffh 255 | ??? | ??? | D3 Ax0ef0 C1 | 0x0EEE 3822 | uint16 | EEPROM_PRINTER_TYPE | ??? | ff ffh 65535 | Printer Type | ??? | D3 Ax0eee C2 +| ^ | ^ | ^ | 64 00h 100 | ^ | PRINTER_MK1 | ??? | ^ +| ^ | ^ | ^ | c8 00h 200 | ^ | PRINTER_MK2 | ??? | ^ +| ^ | ^ | ^ | c9 00h 201 | ^ | PRINTER_MK2 with MMU1 | ??? | ^ +| ^ | ^ | ^ | ca 00h 202 | ^ | PRINTER_MK2S | ??? | ^ +| ^ | ^ | ^ | cb 00h 203 | ^ | PRINTER_MK2S with MMU1 | ??? | ^ +| ^ | ^ | ^ | fa 00h 250 | ^ | PRINTER_MK2.5 | ??? | ^ +| ^ | ^ | ^ | 1a 4fh 20250 | ^ | PRINTER_MK2.5 with MMU2 | ??? | ^ +| ^ | ^ | ^ | fc 00h 252 | ^ | PRINTER_MK2.5S | ??? | ^ +| ^ | ^ | ^ | 1c 4fh 20250 | ^ | PRINTER_MK2.5S with MMU2S | ??? | ^ +| ^ | ^ | ^ | 0c 12h 300 | ^ | PRINTER_MK3 | ??? | ^ +| ^ | ^ | ^ | 4c 4fh 20300 | ^ | PRINTER_MK3 with MMU2 | ??? | ^ +| ^ | ^ | ^ | 0e 12h 302 | ^ | PRINTER_MK3S | ??? | ^ +| ^ | ^ | ^ | 4e 4fh 20302 | ^ | PRINTER_MK3S with MMU2S | ??? | ^ | 0x0EEC 3820 | uint16 | EEPROM_BOARD_TYPE | ??? | ff ffh 65535 | Board Type | ??? | D3 Ax0eec C2 +| ^ | ^ | ^ | c8 00h 200 | ^ | BOARD_RAMBO_MINI_1_0 | ??? | ^ +| ^ | ^ | ^ | cb 00h 203 | ^ | BOARD_RAMBO_MINI_1_3 | ??? | ^ +| ^ | ^ | ^ | 36 01h 310 | ^ | BOARD_EINSY_1_0a | ??? | ^ | 0x0EE8 3816 | float | EEPROM_EXTRUDER_MULTIPLIER_0 | ??? | ff ff ff ffh | Power panic Extruder 0 multiplier | ??? | D3 Ax0ee8 C4 | 0x0EE4 3812 | float | EEPROM_EXTRUDER_MULTIPLIER_1 | ??? | ff ff ff ffh | Power panic Extruder 1 multiplier | ??? | D3 Ax0ee4 C4 | 0x0EE0 3808 | float | EEPROM_EXTRUDER_MULTIPLIER_2 | ??? | ff ff ff ffh | Power panic Extruder 2 multiplier | ??? | D3 Ax0ee0 C4 @@ -250,7 +273,7 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | ^ | ^ | ^ | 07h 7 | ^ | Mesh bed leveling points: __7x7__ | ^ | ^ | 0x0DAA 3498 | uint8 | EEPROM_MBL_PROBE_NR | 03h 3 | ffh 255 | MBL times measurements for each point: __3__ | LCD menu | D3 Ax0daa C1 | ^ | ^ | ^ | 05h 5 | ^ | MBL times measurements for each point: __5__ | ^ | ^ -| ^ | ^ | ^ | 01h 1 | ^ | MBL times measurements for each point: __7__ | ^ | ^ +| ^ | ^ | ^ | 01h 1 | ^ | MBL times measurements for each point: __1__ | ^ | ^ | 0x0DA9 3497 | uint8 | EEPROM_MMU_STEALTH | 01h 1 | ffh 255 | MMU2/s Silent mode: __on__ | ??? | D3 Ax0da9 C1 | ^ | ^ | ^ | 00h 0 | ^ | MMU2/s Silent mode: __off__ | ^ | ^ | 0x0DA8 3496 | uint8 | EEPROM_CHECK_MODE | 01h 1 | ffh 255 | Check mode for nozzle is: __warn__ | LCD menu | D3 Ax0da8 C1 @@ -358,7 +381,8 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP // The offsets are saved as 16bit signed int, scaled to tenths of microns. #define EEPROM_BED_CALIBRATION_Z_JITTER (EEPROM_BED_CALIBRATION_VEC_Y-2*8) #define EEPROM_FARM_MODE (EEPROM_BED_CALIBRATION_Z_JITTER-1) -#define EEPROM_FARM_NUMBER (EEPROM_FARM_MODE-3) +#define EEPROM_FREE_NR1 (EEPROM_FARM_MODE-1) +#define EEPROM_FARM_NUMBER (EEPROM_FREE_NR1-2) // Correction of the bed leveling, in micrometers. // Maximum 50 micrometers allowed. @@ -390,8 +414,12 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP #define EEPROM_UVLO_E_ABS (EEPROM_UVLO_Z_MICROSTEPS - 1) #define EEPROM_UVLO_CURRENT_POSITION_E (EEPROM_UVLO_E_ABS - 4) //float for current position in E +#dedine EEPROM_FREE_NR2 (EEPROM_UVLO_CURRENT_POSITION_E - 1) // FREE EEPROM SPACE +#dedine EEPROM_FREE_NR3 (EEPROM_FREE_NR2 - 1) // FREE EEPROM SPACE +#dedine EEPROM_FREE_NR4 (EEPROM_FREE_NR3 - 1) // FREE EEPROM SPACE +#dedine EEPROM_FREE_NR5 (EEPROM_FREE_NR4 - 1) // FREE EEPROM SPACE // Crash detection mode EEPROM setting -#define EEPROM_CRASH_DET (EEPROM_UVLO_CURRENT_POSITION_E - 5) // float (orig EEPROM_UVLO_MESH_BED_LEVELING-12) +#define EEPROM_CRASH_DET (EEPROM_FREE_NR5 - 1) // uint8 (orig EEPROM_UVLO_MESH_BED_LEVELING-12) // Crash detection counter Y (last print) #define EEPROM_CRASH_COUNT_Y (EEPROM_CRASH_DET - 1) // uint8 (orig EEPROM_UVLO_MESH_BED_LEVELING-15) // Filament sensor on/off EEPROM setting From fc793b59d7ce78e15bcc5afdc042bc87026e2a81 Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Mon, 23 Mar 2020 12:02:57 +0100 Subject: [PATCH 15/25] changed default values for bowden length after test --- Firmware/eeprom.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index e2b01c370..f9bdfb814 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -122,8 +122,8 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | 0x0FAFh 4015 | bool | EEPROM_TEMP_CAL_ACTIVE | 00h 0 | 00h 0 | PINDA Temp cal.: __inactive__ | LCD menu | D3 Ax0faf C1 | ^ | ^ | ^ | ffh 255 | ^ | PINDA Temp cal.: __active__ | ^ | ^ -| 0x0FA7h 4007 | uint32 | EEPROM_BOWDEN_LENGTH | ??? | ff 00 ff ffh | Bowden length | ??? | D3 Ax0fae C8 -| ^ | ^ | ^ | ^ | ff ff ff ffh | ^ | ^ | ^ +| 0x0FA7h 4007 | uint32 | EEPROM_BOWDEN_LENGTH | ??? | ff 00 00 00h | Bowden length | ??? | D3 Ax0fae C8 +| ^ | ^ | ^ | ^ | 00 00 00 00h | ^ | ^ | ^ | 0x0FA6h 4006 | uint8 | EEPROM_CALIBRATION_STATUS_PINDA | 00h 0 | ffh 255 | PINDA Temp: __not calibrated__ | ??? | D3 Ax0fa6 C1 | ^ | ^ | ^ | 01h 1 | ^ | PINDA Temp: __calibrated__ | ^ | ^ | 0x0FA5h 4005 | uint8 | EEPROM_UVLO | 00h 0 | ffh 255 | Power Panic flag: __inactive__ | ??? | D3 Ax0fa5 C1 From f4037b9cb4c296b42b1d82399d96eeda26303295 Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Mon, 23 Mar 2020 14:13:24 +0100 Subject: [PATCH 16/25] Fixes after testing --- Firmware/eeprom.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index f9bdfb814..908ba1cd9 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -101,7 +101,7 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | 0x0FC4h 4036 | bool | EEPROM_FARM_MODE | 00h 0 | ffh 255 | Prusa farm mode: __off__ | G99 | D3 Ax0fc4 C1 | ^ | ^ | ^ | 01h 1 | ^ | Prusa farm mode: __on__ | G98 | ^ | 0x0FC3h 4035 | free | _EEPROM_FREE_NR1_ | ??? | ffh 255 | _Free EEPROM space_ | _free space_ | D3 Ax0fc3 C1 -| 0x0FC1h 4033 | ??? | EEPROM_FARM_NUMBER | 000-999 | ff ffh = 00 00 | Prusa farm number _only 0-9 are allowed: 000-999_ | LCD menu | D3 Ax0fc1 C2 +| 0x0FC1h 4033 | ??? | EEPROM_FARM_NUMBER | 000-999 | ff ffh | Prusa farm number _only 0-9 are allowed: 000-999_ | LCD menu | D3 Ax0fc1 C2 | 0x0FC0h 4032 | bool | EEPROM_BED_CORRECTION_VALID | 00h 0 | 00h 0 | Bed correction invalid | ??? | D3 Ax0fc0 C1 | ^ | ^ | ^ | ffh 255 | | Bed correction valid | ??? | ^ | 0x0FBFh 4031 | char | EEPROM_BED_CORRECTION_LEFT | 00h ffh | 00h 0 | Bed manual correction left | LCD menu | D3 Ax0fbf C1 @@ -112,8 +112,8 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | ^ | ^ | ^ | ^ | ^ | At this moment limited to +-100um | G80 Fxxx | ^ | 0x0FBCh 4028 | char | EEPROM_BED_CORRECTION_BACK | 00h ffh | 00h 0 | Bed manual correction back | LCD menu | D3 Ax0fbc C1 | ^ | ^ | ^ | ^ | ^ | At this moment limited to +-100um | G80 Bxxx | ^ -| 0x0FBBh 4027 | bool | EEPROM_TOSHIBA_FLASH_AIR_COMPATIBLITY | 00h 0 | 00h 0 | Toshiba Air: __off__ | LCD menu | D3 Ax0fbb C1 -| ^ | ^ | ^ | 01h 1 | ffh 255 | Toshiba Air: __on__ | ^ | ^ +| 0x0FBBh 4027 | bool | EEPROM_TOSHIBA_FLASH_AIR_COMPATIBLITY | 00h 0 | ffh 255 | Toshiba Air: __off__ | LCD menu | D3 Ax0fbb C1 +| ^ | ^ | ^ | 01h 1 | ^ | Toshiba Air: __on__ | ^ | ^ | 0x0FBAh 4026 | uchar | EEPROM_PRINT_FLAG | ??? | ??? | _unsued_ | ??? | D3 Ax0fba C1 | 0x0FB0h 4016 | int16 | EEPROM_PROBE_TEMP_SHIFT | ??? | ??? | ??? | ??? | D3 Ax0fb0 C10 | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ @@ -145,8 +145,8 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | 0x0F8Bh 3979 | uint8 | EEPROM_UVLO_TARGET_BED | ??? | ffh 255 | Power Panic Bed temperature | ^ | D3 Ax0f8b C1 | 0x0F89h 3977 | uint16 | EEPROM_UVLO_FEEDRATE | ??? | ff ffh 65535 | Power Panic Feedrate | ^ | D3 Ax0f89 C2 | 0x0F88h 3976 | uint8 | EEPROM_UVLO_FAN_SPEED | ??? | ffh 255 | Power Panic Fan speed | ^ | D3 Ax0f88 C1 -| 0x0F87h 3975 | uint8 | EEPROM_FAN_CHECK_ENABLED | 00h 0 | ??? | Fan Check disabled | LCD menu | D3 Ax0f87 C1 -| ^ | ^ | ^ | 01h 1 | ffh 255 | Fan Check enabled (exception ffh=01h) | ^ | ^ +| 0x0F87h 3975 | uint8 | EEPROM_FAN_CHECK_ENABLED | 00h 0 | ??? | Fan Check __disabled__ | LCD menu | D3 Ax0f87 C1 +| ^ | ^ | ^ | 01h 1 | ffh 255 | Fan Check __enabled__ | ^ | ^ | 0x0F75h 3957 | uint16 | EEPROM_UVLO_MESH_BED_LEVELING | ??? | ff ffh 65535 | Power Panic Mesh Bed Leveling | ??? | D3 Ax0f75 C18 | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ @@ -338,7 +338,7 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | ^ | ^ | ^ | ??? | ^ | Power panic saved target y-axis | ^ | D3 Ax0d3b C4 | ^ | ^ | ^ | ??? | ^ | Power panic saved target x-axis | ^ | D3 Ax0d37 C4 | 0x0D35 3381 | uint16 | EEPROM_UVLO_FEEDMULTIPLY | ??? | ff ffh 65355 | Power panic saved feed multiplier | ??? | D3 Ax0d35 C2 -| 0x0D34 3380 | uint8 | EEPROM_BACKLIGHT_LEVEL_HIGH | 00h - ffh | 80h 128 | LCD backlight bright: __128__ Dim value to 255 | LCD menu | D3 Ax0d34 C1 +| 0x0D34 3380 | uint8 | EEPROM_BACKLIGHT_LEVEL_HIGH | 00h - ffh | 82h 130 | LCD backlight bright: __128__ Dim value to 255 | LCD menu | D3 Ax0d34 C1 | 0x0D33 3379 | uint8 | EEPROM_BACKLIGHT_LEVEL_LOW | 00h - ffh | 32h 50 | LCD backlight dim: __50__ 0 to Bright value | LCD menu | D3 Ax0d33 C1 | 0x0D32 3378 | uint8 | EEPROM_BACKLIGHT_MODE | 02h 2 | ffh 255 | LCD backlight mode: __Auto__ | LCD menu | D3 Ax0d32 C1 | ^ | ^ | ^ | 01h 1 | ^ | LCD backlight mode: __Bright__ | ^ | ^ From bb43fa9878d41501e41ed9b46f124c0c9691eaf5 Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Mon, 23 Mar 2020 14:51:40 +0100 Subject: [PATCH 17/25] typo dedine doesn't work --- Firmware/eeprom.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index 908ba1cd9..ddc920d27 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -414,10 +414,10 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP #define EEPROM_UVLO_E_ABS (EEPROM_UVLO_Z_MICROSTEPS - 1) #define EEPROM_UVLO_CURRENT_POSITION_E (EEPROM_UVLO_E_ABS - 4) //float for current position in E -#dedine EEPROM_FREE_NR2 (EEPROM_UVLO_CURRENT_POSITION_E - 1) // FREE EEPROM SPACE -#dedine EEPROM_FREE_NR3 (EEPROM_FREE_NR2 - 1) // FREE EEPROM SPACE -#dedine EEPROM_FREE_NR4 (EEPROM_FREE_NR3 - 1) // FREE EEPROM SPACE -#dedine EEPROM_FREE_NR5 (EEPROM_FREE_NR4 - 1) // FREE EEPROM SPACE +#define EEPROM_FREE_NR2 (EEPROM_UVLO_CURRENT_POSITION_E - 1) // FREE EEPROM SPACE +#define EEPROM_FREE_NR3 (EEPROM_FREE_NR2 - 1) // FREE EEPROM SPACE +#define EEPROM_FREE_NR4 (EEPROM_FREE_NR3 - 1) // FREE EEPROM SPACE +#define EEPROM_FREE_NR5 (EEPROM_FREE_NR4 - 1) // FREE EEPROM SPACE // Crash detection mode EEPROM setting #define EEPROM_CRASH_DET (EEPROM_FREE_NR5 - 1) // uint8 (orig EEPROM_UVLO_MESH_BED_LEVELING-12) // Crash detection counter Y (last print) From 6be66fcfcdb388060fb1515e71a276711ff13b3b Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Mon, 23 Mar 2020 15:47:59 +0100 Subject: [PATCH 18/25] fix some typos --- Firmware/eeprom.h | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index ddc920d27..def911338 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -4,6 +4,7 @@ * @author 3d-gussner */ /** \ingroup eeprom_table */ + //! _This is a EEPROM table of currently implemented in Prusa firmware (dynamically generated from doxygen)._ @@ -43,7 +44,7 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP EEPROM 16-bit Empty value = 0xFFFFh 65535 - _Italic = unsued or default_ + _Italic = unused or default_ __Bold = Status__ @@ -55,7 +56,7 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP ### !!! D-codes are case sensitive so please don't use upper case A,C or X in the address you want to read !!! - #### Usefull tools/links: + #### Useful tools/links: To convert hex to ascii https://www.rapidtables.com/convert/number/hex-to-ascii.html To convert hex to dec https://www.rapidtables.com/convert/number/hex-to-decimal.html @@ -65,7 +66,7 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP --------------------------------------------------------------------------------- -| Adress begin | Bit/Type | Name | Valid values | Default/FactoryReset | Description | Gcode/Function| Debug code +| Address begin | Bit/Type | Name | Valid values | Default/FactoryReset | Description | Gcode/Function| Debug code | :-- | :-- | :-- | :--: | :--: | :-- | :--: | :--: | 0x0FFFh 4095 | uchar | EEPROM_SILENT | 00h 0 | ffh 255 | TMC Stealth mode: __off__ / miniRambo Power mode | LCD menu | D3 Ax0fff C1 | ^ | ^ | ^ | 01h 1 | ^ | TMC Stealth mode: __on__ / miniRambo Silent mode | ^ | ^ @@ -75,7 +76,7 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | 0x0FFAh 4090 | uint16 | EEPROM_BABYSTEP_Y | ??? | ff ffh 65535 | Babystep for Y axis _unsued_ | ^ | D3 Ax0ffa C2 | 0x0FF8h 4088 | uint16 | EEPROM_BABYSTEP_Z | ??? | ff ffh 65535 | Babystep for Z axis _lagacy_ | ^ | D3 Ax0ff8 C2 | ^ | ^ | ^ | ^ | ^ | multiple values stored now in EEPROM_Sheets_base | ^ | ^ -| 0x0FF7h 4087 | uint8 | EEPROM_CALIBRATION_STATUS | ffh 255 | ffh 255 | Assbemled _default_ | ??? | D3 Ax0ff7 C1 +| 0x0FF7h 4087 | uint8 | EEPROM_CALIBRATION_STATUS | ffh 255 | ffh 255 | Assembled _default_ | ??? | D3 Ax0ff7 C1 | ^ | ^ | ^ | 01h 1 | ^ | Calibrated | ^ | ^ | ^ | ^ | ^ | e6h 230 | ^ | needs Live Z adjustment | ^ | ^ | ^ | ^ | ^ | f0h 240 | ^ | needs Z calibration | ^ | ^ @@ -139,7 +140,7 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ -| 0x0F91h 39851 | uint32 | EEPROM_FILE_POSITION | ??? | ff ff ff ffh | Power Panic File Postion | ??? | D3 Ax0f91 C4 +| 0x0F91h 39851 | uint32 | EEPROM_FILE_POSITION | ??? | ff ff ff ffh | Power Panic File Position | ??? | D3 Ax0f91 C4 | 0x0F8Dh 3981 | float | EEPROM_UVLO_CURRENT_POSITION_Z | ??? | ff ff ff ffh | Power Panic Z Position | ^ | D3 Ax0f8d C4 | 0x0F8Ch 3980 | ??? | EEPROM_UVLO_UNUSED_001 | ??? | ffh 255 | Power Panic _unused_ | ^ | D3 Ax0f8c C1 | 0x0F8Bh 3979 | uint8 | EEPROM_UVLO_TARGET_BED | ??? | ffh 255 | Power Panic Bed temperature | ^ | D3 Ax0f8b C1 @@ -185,8 +186,8 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | ^ | ^ | ^ | 01h 1 | ^ | RPi Port: __enabled__ | LCD menu | ^ | 0x0F07h 3847 | uint8 | EEPROM_FSENS_AUTOLOAD_ENABLED | 01h 1 | ffh 255 | Filament autoload: __enabled__ | LCD menu | D3 Ax0f07 C1 | ^ | ^ | ^ | 00h 0 | ^ | Filament autoload: __disabled__ | LCD menu | ^ -| 0x0F05h 3845 | uint16 | EEPROM_CRASH_COUNT_X_TOT | 0000-fffe | ff ffh | Total charshes on x axis | ??? | D3 Ax0f05 C2 -| 0x0F03h 3843 | uint16 | EEPROM_CRASH_COUNT_Y_TOT | 0000-fffe | ff ffh | Total charshes on y axis | ??? | D3 Ax0f03 C2 +| 0x0F05h 3845 | uint16 | EEPROM_CRASH_COUNT_X_TOT | 0000-fffe | ff ffh | Total crashes on x axis | ??? | D3 Ax0f05 C2 +| 0x0F03h 3843 | uint16 | EEPROM_CRASH_COUNT_Y_TOT | 0000-fffe | ff ffh | Total crashes on y axis | ??? | D3 Ax0f03 C2 | 0x0F01h 3841 | uint16 | EEPROM_FERROR_COUNT_TOT | 0000-fffe | ff ffh | Total filament sensor errors | ??? | D3 Ax0f01 C2 | 0x0EFFh 3839 | uint16 | EEPROM_POWER_COUNT_TOT | 0000-fffe | ff ffh | Total power failures | ??? | D3 Ax0eff C2 | 0x0EFEh 3838 | uint8 | EEPROM_TMC2130_HOME_X_ORIGIN | ??? | ffh 255 | ??? | ??? | D3 Ax0efe C1 @@ -227,7 +228,7 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | 0x0EE0 3808 | float | EEPROM_EXTRUDER_MULTIPLIER_2 | ??? | ff ff ff ffh | Power panic Extruder 2 multiplier | ??? | D3 Ax0ee0 C4 | 0x0EDE 3806 | uint16 | EEPROM_EXTRUDEMULTIPLY | ??? | ff ffh 65535 | Power panic Extruder multiplier | ??? | D3 Ax0ede C2 | 0x0EDA 3802 | float | EEPROM_UVLO_TINY_CURRENT_POSITION_Z | ??? | ff ff ff ffh | Power panic Z position | ??? | D3 Ax0eda C4 -| 0x0ED8 3800 | uint16 | EEPROM_UVLO_TARGET_HOTEND | ??? | ff ffh 65535 | Power panic traget Hotend temperature | ??? | D3 Ax0ed8 C2 +| 0x0ED8 3800 | uint16 | EEPROM_UVLO_TARGET_HOTEND | ??? | ff ffh 65535 | Power panic target Hotend temperature | ??? | D3 Ax0ed8 C2 | 0x0ED7 3799 | uint8 | EEPROM_SOUND_MODE | 00h 0 | ffh 255 | Sound mode: __loud__ | ??? | D3 Ax0ed7 C1 | ^ | ^ | ^ | 01h 1 | ^ | Sound mode: __once__ | ^ | ^ | ^ | ^ | ^ | 02h 1 | ^ | Sound mode: __silent__ | ^ | ^ @@ -347,7 +348,7 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | 0x0D2C 3372 | float | EEPROM_UVLO_LA_K | ??? | ff ff ff ffh | Power panic saved Linear Advanced K value | ??? | D3 Ax0d2c C4 -| Adress begin | Bit/Type | Name | Valid values | Default/FactoryReset | Description | Gcode/Function| Debug code +| Address begin | Bit/Type | Name | Valid values | Default/FactoryReset | Description | Gcode/Function| Debug code | :--: | :--: | :--: | :--: | :--: | :--: | :--: | :--: | 0x0012 18 | uint16 | EEPROM_FIRMWARE_VERSION_END | ??? | ff ffh 65535 | ??? | ??? | D3 Ax0012 C2 | 0x0010 16 | uint16 | EEPROM_FIRMWARE_VERSION_FLAVOR | ??? | ff ffh 65535 | ??? | ??? | D3 Ax0010 C2 From 7cd5d83089b377492fbfc17fc304328e8d138bcc Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Mon, 23 Mar 2020 16:54:35 +0100 Subject: [PATCH 19/25] Added S/P to Default/FactoryReset S = Statistics P = shipping Prepare --- Firmware/eeprom.h | 48 +++++++++++++++++++++++++++-------------------- 1 file changed, 28 insertions(+), 20 deletions(-) diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index def911338..ec9c57de5 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -48,6 +48,14 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP __Bold = Status__ + In Default/FactoryReset column the + + - __S__ Statistics + - __P__ Shipping prep + - __S/P__ Statistics and Shipping prep + + will overwrite existing values to 0 or default. + --------------------------------------------------------------------------------- How can you use the debug codes? - Serial terminal like Putty. @@ -83,8 +91,8 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | ^ | ^ | ^ | fah 250 | ^ | needs XYZ calibration | ^ | ^ | ^ | ^ | ^ | 00h 0 | ^ | Unknown | ^ | ^ | 0x0FF5h 4085 | uint16 | EEPROM_BABYSTEP_Z0 | ??? | ff ffh 65535 | Babystep for Z ??? | ??? | D3 Ax0ff5 C2 -| 0x0FF1h 4081 | uint32 | EEPROM_FILAMENTUSED | ??? | 00 00 00 00h 0 | Filament used in meters | ??? | D3 Ax0ff1 C4 -| 0x0FEDh 4077 | uint32 | EEPROM_TOTALTIME | ??? | 00 00 00 00h 0 | Total print time | ??? | D3 Ax0fed C4 +| 0x0FF1h 4081 | uint32 | EEPROM_FILAMENTUSED | ??? | 00 00 00 00h 0 __S/P__| Filament used in meters | ??? | D3 Ax0ff1 C4 +| 0x0FEDh 4077 | uint32 | EEPROM_TOTALTIME | ??? | 00 00 00 00h 0 __S/P__| Total print time | ??? | D3 Ax0fed C4 | 0x0FE5h 4069 | float | EEPROM_BED_CALIBRATION_CENTER | ??? | ff ff ff ffh | ??? | ??? | D3 Ax0fe5 C8 | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | 0x0FDDh 4061 | float | EEPROM_BED_CALIBRATION_VEC_X | ??? | ff ff ff ffh | ??? | ??? | D3 Ax0fdd C8 @@ -99,10 +107,10 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ -| 0x0FC4h 4036 | bool | EEPROM_FARM_MODE | 00h 0 | ffh 255 | Prusa farm mode: __off__ | G99 | D3 Ax0fc4 C1 +| 0x0FC4h 4036 | bool | EEPROM_FARM_MODE | 00h 0 | ffh 255 __P__ | Prusa farm mode: __off__ | G99 | D3 Ax0fc4 C1 | ^ | ^ | ^ | 01h 1 | ^ | Prusa farm mode: __on__ | G98 | ^ | 0x0FC3h 4035 | free | _EEPROM_FREE_NR1_ | ??? | ffh 255 | _Free EEPROM space_ | _free space_ | D3 Ax0fc3 C1 -| 0x0FC1h 4033 | ??? | EEPROM_FARM_NUMBER | 000-999 | ff ffh | Prusa farm number _only 0-9 are allowed: 000-999_ | LCD menu | D3 Ax0fc1 C2 +| 0x0FC1h 4033 | ??? | EEPROM_FARM_NUMBER | 000-999 | ff ffh __P__ | Prusa farm number _only 0-9 are allowed: 000-999_ | LCD menu | D3 Ax0fc1 C2 | 0x0FC0h 4032 | bool | EEPROM_BED_CORRECTION_VALID | 00h 0 | 00h 0 | Bed correction invalid | ??? | D3 Ax0fc0 C1 | ^ | ^ | ^ | ffh 255 | | Bed correction valid | ??? | ^ | 0x0FBFh 4031 | char | EEPROM_BED_CORRECTION_LEFT | 00h ffh | 00h 0 | Bed manual correction left | LCD menu | D3 Ax0fbf C1 @@ -166,15 +174,15 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | 0x0F6Ah 3946 | ??? | _EEPROM_FREE_NR5_ | ??? | ffh 255 | _Free EEPROM space_ | _free space_ | D3 Ax0f6a C1 | 0x0F69h 3945 | uint8 | EEPROM_CRASH_DET | ffh 255 | ffh 255 | Crash detection: __enabled__ | LCD menu | D3 Ax0f69 C1 | ^ | ^ | ^ | 00h 0 | ^ | Crash detection: __disabled__ | LCD menu | ^ -| 0x0F68h 3944 | uint8 | EEPROM_CRASH_COUNT_Y | 00h-ffh 0-255 | ffh 255 | Crashes detected on y axis | ??? | D3 Ax0f68 C1 -| 0x0F67h 3943 | uint8 | EEPROM_FSENSOR | 01h 1 | ffh 255 | Filament sensor: __enabled__ | LCD menu | D3 Ax0f67 C1 +| 0x0F68h 3944 | uint8 | EEPROM_CRASH_COUNT_Y | 00h-ffh 0-255 | ffh 255 __S/P__ | Crashes detected on y axis | ??? | D3 Ax0f68 C1 +| 0x0F67h 3943 | uint8 | EEPROM_FSENSOR | 01h 1 | ffh 255 __P__ | Filament sensor: __enabled__ | LCD menu | D3 Ax0f67 C1 | ^ | ^ | ^ | 00h 0 | ^ | Filament sensor: __disabled__ | LCD menu | ^ -| 0x0F65h 3942 | uint8 | EEPROM_CRASH_COUNT_X | 00h-ffh 0-255 | ffh 255 | Crashes detected on x axis | ??? | D3 Ax0f66 C1 -| 0x0F65h 3941 | uint8 | EEPROM_FERROR_COUNT | 00h-ffh 0-255 | ffh 255 | Filament sensor error counter | ??? | D3 Ax0f65 C1 -| 0x0F64h 3940 | uint8 | EEPROM_POWER_COUNT | 00h-ffh 0-255 | ffh 255 | Power failure counter | ??? | D3 Ax0f64 C1 +| 0x0F65h 3942 | uint8 | EEPROM_CRASH_COUNT_X | 00h-ffh 0-255 | ffh 255 __S/P__ | Crashes detected on x axis | ??? | D3 Ax0f66 C1 +| 0x0F65h 3941 | uint8 | EEPROM_FERROR_COUNT | 00h-ffh 0-255 | ffh 255 __S/P__ | Filament sensor error counter | ??? | D3 Ax0f65 C1 +| 0x0F64h 3940 | uint8 | EEPROM_POWER_COUNT | 00h-ffh 0-255 | ffh 255 __S/P__ | Power failure counter | ??? | D3 Ax0f64 C1 | 0x0F60h 3936 | float | EEPROM_XYZ_CAL_SKEW | ??? | ff ff ff ffh | XYZ skew value | ??? | D3 Ax0f60 C4 -| 0x0F5Fh 3935 | uint8 | EEPROM_WIZARD_ACTIVE | 00h 0 | ??? | Wizard active | ??? | D3 Ax0f5f C1 -| ^ | ^ | ^ | 01h 1 | ??? | ^ | ^ | ^ +| 0x0F5Fh 3935 | uint8 | EEPROM_WIZARD_ACTIVE | 01h 1 | 01h 1 __P__ | Wizard __active__ | ??? | D3 Ax0f5f C1 +| ^ | ^ | ^ | 00h 0 | ^ | Wizard __inactive__ | ^ | ^ | 0x0F5Dh 3933 | uint16 | EEPROM_BELTSTATUS_X | ??? | ff ffh | X Beltstatus | ??? | D3 Ax0f5d C2 | 0x0F5Bh 3931 | uint16 | EEPROM_BELTSTATUS_Y | ??? | ff ffh | Y Beltstatus | ??? | D3 Ax0f5b C2 | 0x0F5Ah 3930 | uint8 | EEPROM_DIR_DEPTH | 00h-ffh 0-255 | ffh 255 | Directory depth | ??? | D3 Ax0f5a C1 @@ -184,12 +192,12 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | ^ | ^ | ^ | 02h 1 | ^ | SD card: __not sorted__ | LCD menu | ^ | 0x0F08h 3848 | uint8 | EEPROM_SECOND_SERIAL_ACTIVE | 00h 0 | ffh 255 | RPi Port: __disabled__ | LCD menu | D3 Ax0f08 C1 | ^ | ^ | ^ | 01h 1 | ^ | RPi Port: __enabled__ | LCD menu | ^ -| 0x0F07h 3847 | uint8 | EEPROM_FSENS_AUTOLOAD_ENABLED | 01h 1 | ffh 255 | Filament autoload: __enabled__ | LCD menu | D3 Ax0f07 C1 +| 0x0F07h 3847 | uint8 | EEPROM_FSENS_AUTOLOAD_ENABLED | 01h 1 | ffh 255 __P__ | Filament autoload: __enabled__ | LCD menu | D3 Ax0f07 C1 | ^ | ^ | ^ | 00h 0 | ^ | Filament autoload: __disabled__ | LCD menu | ^ -| 0x0F05h 3845 | uint16 | EEPROM_CRASH_COUNT_X_TOT | 0000-fffe | ff ffh | Total crashes on x axis | ??? | D3 Ax0f05 C2 -| 0x0F03h 3843 | uint16 | EEPROM_CRASH_COUNT_Y_TOT | 0000-fffe | ff ffh | Total crashes on y axis | ??? | D3 Ax0f03 C2 -| 0x0F01h 3841 | uint16 | EEPROM_FERROR_COUNT_TOT | 0000-fffe | ff ffh | Total filament sensor errors | ??? | D3 Ax0f01 C2 -| 0x0EFFh 3839 | uint16 | EEPROM_POWER_COUNT_TOT | 0000-fffe | ff ffh | Total power failures | ??? | D3 Ax0eff C2 +| 0x0F05h 3845 | uint16 | EEPROM_CRASH_COUNT_X_TOT | 0000-fffe | ff ffh __S/P__ | Total crashes on x axis | ??? | D3 Ax0f05 C2 +| 0x0F03h 3843 | uint16 | EEPROM_CRASH_COUNT_Y_TOT | 0000-fffe | ff ffh __S/P__ | Total crashes on y axis | ??? | D3 Ax0f03 C2 +| 0x0F01h 3841 | uint16 | EEPROM_FERROR_COUNT_TOT | 0000-fffe | ff ffh __S/P__ | Total filament sensor errors | ??? | D3 Ax0f01 C2 +| 0x0EFFh 3839 | uint16 | EEPROM_POWER_COUNT_TOT | 0000-fffe | ff ffh __S/P__ | Total power failures | ??? | D3 Ax0eff C2 | 0x0EFEh 3838 | uint8 | EEPROM_TMC2130_HOME_X_ORIGIN | ??? | ffh 255 | ??? | ??? | D3 Ax0efe C1 | 0x0EFDh 3837 | uint8 | EEPROM MC2130_HOME_X_BSTEPS | ??? | ffh 255 | ??? | ??? | D3 Ax0efd C1 | 0x0EFCh 3836 | uint8 | EEPROM_TMC2130_HOME_X_FSTEPS | ??? | ffh 255 | ??? | ??? | D3 Ax0efc C1 @@ -237,10 +245,10 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | ^ | ^ | ^ | 00h 0 | ^ | MMU2/s autodeplete: __off__ | ^ | ^ | 0x0ED5 3797 | bool | EEPROM_FSENS_OQ_MEASS_ENABLED | ??? | ffh 255 | PAT1925 ??? | ??? | D3 Ax0ed5 C1 | ^ | ^ | ^ | ??? | ^ | PAT1925 ??? | ^ | ^ -| 0x0ED3 3795 | uint16 | EEPROM_MMU_FAIL_TOT | ??? | ff ffh 65535 | MMU2/s total failures | ??? | D3 Ax0ed3 C2 -| 0x0ED2 3794 | uint8 | EEPROM_MMU_FAIL | ??? | ffh 255 | MMU2/s fails during print | ??? | D3 Ax0ed2 C1 -| 0x0ED0 3792 | uint16 | EEPROM_MMU_LOAD_FAIL_TOT | ??? | ff ffh 65535 | MMU2/s total load failures | ??? | D3 Ax0ed0 C2 -| 0x0ECF 3791 | uint8 | EEPROM_MMU_LOAD_FAIL | ??? | ffh 255 | MMU2/s load failures during print | ??? | D3 Ax0ecf C1 +| 0x0ED3 3795 | uint16 | EEPROM_MMU_FAIL_TOT | ??? | ff ffh 65535 __S/P__ | MMU2/s total failures | ??? | D3 Ax0ed3 C2 +| 0x0ED2 3794 | uint8 | EEPROM_MMU_FAIL | ??? | ffh 255 __S/P__ | MMU2/s fails during print | ??? | D3 Ax0ed2 C1 +| 0x0ED0 3792 | uint16 | EEPROM_MMU_LOAD_FAIL_TOT | ??? | ff ffh 65535 __S/P__ | MMU2/s total load failures | ??? | D3 Ax0ed0 C2 +| 0x0ECF 3791 | uint8 | EEPROM_MMU_LOAD_FAIL | ??? | ffh 255 __S/P__ | MMU2/s load failures during print | ??? | D3 Ax0ecf C1 | 0x0ECE 3790 | uint8 | EEPROM_MMU_CUTTER_ENABLED | 00h 0 | ffh 255 | MMU2/s cutter: __disabled__ | LCD menu | D3 Ax0ece C1 | ^ | ^ | ^ | 01h 1 | ^ | MMU2/s cutter: __enabled__ | ^ | ^ | ^ | ^ | ^ | 02h 2 | ^ | MMU2/s cutter: __always__ | ^ | ^ From 95a24320f7d7293d686cda94d0f4a6e29709ee98 Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Mon, 23 Mar 2020 17:10:40 +0100 Subject: [PATCH 20/25] Added language factory reset and some other minor fixes --- Firmware/eeprom.h | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index ec9c57de5..64bd4a9bc 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -50,11 +50,14 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP In Default/FactoryReset column the + - __L__ Language - __S__ Statistics - __P__ Shipping prep - __S/P__ Statistics and Shipping prep will overwrite existing values to 0 or default. + A FactoryReset All Data will overwrite the hole EEPROM with ffh and some values will be initialized automatically, + others need a reset / reboot. --------------------------------------------------------------------------------- How can you use the debug codes? @@ -78,7 +81,7 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | :-- | :-- | :-- | :--: | :--: | :-- | :--: | :--: | 0x0FFFh 4095 | uchar | EEPROM_SILENT | 00h 0 | ffh 255 | TMC Stealth mode: __off__ / miniRambo Power mode | LCD menu | D3 Ax0fff C1 | ^ | ^ | ^ | 01h 1 | ^ | TMC Stealth mode: __on__ / miniRambo Silent mode | ^ | ^ -| 0x0FFEh 4094 | uchar | EEPROM_LANG | 00h 0 | ffh 255 | English / LANG_ID_PRI | LCD menu | D3 Ax0ffe C1 +| 0x0FFEh 4094 | uchar | EEPROM_LANG | 00h 0 | ffh 255 __L__ | English / LANG_ID_PRI | LCD menu | D3 Ax0ffe C1 | ^ | ^ | ^ | 01h 1 | ^ | Other language LANG_ID_SEC | ^ | ^ | 0x0FFCh 4092 | uint16 | EEPROM_BABYSTEP_X | ??? | ff ffh 65535 | Babystep for X axis _unsued_ | ??? | D3 Ax0ffc C2 | 0x0FFAh 4090 | uint16 | EEPROM_BABYSTEP_Y | ??? | ff ffh 65535 | Babystep for Y axis _unsued_ | ^ | D3 Ax0ffa C2 @@ -87,7 +90,7 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | 0x0FF7h 4087 | uint8 | EEPROM_CALIBRATION_STATUS | ffh 255 | ffh 255 | Assembled _default_ | ??? | D3 Ax0ff7 C1 | ^ | ^ | ^ | 01h 1 | ^ | Calibrated | ^ | ^ | ^ | ^ | ^ | e6h 230 | ^ | needs Live Z adjustment | ^ | ^ -| ^ | ^ | ^ | f0h 240 | ^ | needs Z calibration | ^ | ^ +| ^ | ^ | ^ | f0h 240 | ^ __P__ | needs Z calibration | ^ | ^ | ^ | ^ | ^ | fah 250 | ^ | needs XYZ calibration | ^ | ^ | ^ | ^ | ^ | 00h 0 | ^ | Unknown | ^ | ^ | 0x0FF5h 4085 | uint16 | EEPROM_BABYSTEP_Z0 | ??? | ff ffh 65535 | Babystep for Z ??? | ??? | D3 Ax0ff5 C2 @@ -107,10 +110,10 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ | ^ -| 0x0FC4h 4036 | bool | EEPROM_FARM_MODE | 00h 0 | ffh 255 __P__ | Prusa farm mode: __off__ | G99 | D3 Ax0fc4 C1 +| 0x0FC4h 4036 | bool | EEPROM_FARM_MODE | 00h 0 | ffh 255 __P__ | Prusa farm mode: __off__ | G99 | D3 Ax0fc4 C1 | ^ | ^ | ^ | 01h 1 | ^ | Prusa farm mode: __on__ | G98 | ^ | 0x0FC3h 4035 | free | _EEPROM_FREE_NR1_ | ??? | ffh 255 | _Free EEPROM space_ | _free space_ | D3 Ax0fc3 C1 -| 0x0FC1h 4033 | ??? | EEPROM_FARM_NUMBER | 000-999 | ff ffh __P__ | Prusa farm number _only 0-9 are allowed: 000-999_ | LCD menu | D3 Ax0fc1 C2 +| 0x0FC1h 4033 | ??? | EEPROM_FARM_NUMBER | 000-999 | ff ffh / 000 __P__ | Prusa farm number _only 0-9 are allowed: 000-999_ | LCD menu | D3 Ax0fc1 C2 | 0x0FC0h 4032 | bool | EEPROM_BED_CORRECTION_VALID | 00h 0 | 00h 0 | Bed correction invalid | ??? | D3 Ax0fc0 C1 | ^ | ^ | ^ | ffh 255 | | Bed correction valid | ??? | ^ | 0x0FBFh 4031 | char | EEPROM_BED_CORRECTION_LEFT | 00h ffh | 00h 0 | Bed manual correction left | LCD menu | D3 Ax0fbf C1 From 0d00db1c335d42a94ea91e5fa6ba60e3c9d40255 Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Wed, 25 Mar 2020 17:26:27 +0100 Subject: [PATCH 21/25] Some D-codes are case sensitive --- Firmware/Marlin_main.cpp | 38 ++++++++++++++++++++++++++++---------- 1 file changed, 28 insertions(+), 10 deletions(-) diff --git a/Firmware/Marlin_main.cpp b/Firmware/Marlin_main.cpp index 9a8ac81ef..413781b63 100755 --- a/Firmware/Marlin_main.cpp +++ b/Firmware/Marlin_main.cpp @@ -8809,12 +8809,18 @@ Sigma_Exit: This command can be used without any additional parameters. It will read the entire RAM. #### Usage - D3 [ A | C | X ] + D2 [ A | C | X ] #### Parameters - - `A` - Address (0x0000-0x1fff) - - `C` - Count (0x0001-0x2000) + - `A` - Address (x0000-x1fff) + - `C` - Count (1-8192) - `X` - Data + + #### Notes + - The hex address needs to be lowercase without the 0 before the x + - Count is decimal + - The hex data needs to be lowercase + */ case 2: dcode_2(); break; @@ -8829,9 +8835,15 @@ Sigma_Exit: D3 [ A | C | X ] #### Parameters - - `A` - Address (0x0000-0x0fff) - - `C` - Count (0x0001-0x1000) - - `X` - Data + - `A` - Address (x0000-x0fff) + - `C` - Count (1-4096) + - `X` - Data (hex) + + #### Notes + - The hex address needs to be lowercase without the 0 before the x + - Count is decimal + - The hex data needs to be lowercase + */ case 3: dcode_3(); break; @@ -8861,14 +8873,20 @@ Sigma_Exit: This command can be used without any additional parameters. It will read the 1kb FLASH. #### Usage - D3 [ A | C | X | E ] + D5 [ A | C | X | E ] #### Parameters - - `A` - Address (0x00000-0x3ffff) - - `C` - Count (0x0001-0x2000) + - `A` - Address (x00000-x3ffff) + - `C` - Count (1-8192) - `X` - Data - `E` - Erase - */ + + #### Notes + - The hex address needs to be lowercase without the 0 before the x + - Count is decimal + - The hex data needs to be lowercase + + */ case 5: dcode_5(); break; break; From 4c518545f1927e12149f3ae5b14a6189bc961ced Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Wed, 25 Mar 2020 17:33:10 +0100 Subject: [PATCH 22/25] Updated the documentation copy past from Marlin_main.cpp doxygen documentation d-codes --- Firmware/Dcodes.cpp | 279 ++++++++++++++++++++++----------------- Firmware/Marlin_main.cpp | 1 - 2 files changed, 155 insertions(+), 125 deletions(-) diff --git a/Firmware/Dcodes.cpp b/Firmware/Dcodes.cpp index 70ffe2c49..ebf34b4fc 100644 --- a/Firmware/Dcodes.cpp +++ b/Firmware/Dcodes.cpp @@ -100,16 +100,22 @@ void print_mem(uint32_t address, uint16_t count, uint8_t type, uint8_t countperl #ifdef DEBUG_DCODE3 #define EEPROM_SIZE 0x1000 /*! - * ### D3 - Read/Write EEPROM D3: Read/Write EEPROM This command can be used without any additional parameters. It will read the entire eeprom. - - D3 [ A | C | X ] - - - `A` - Address (0x0000-0x0fff) - - `C` - Count (0x0001-0x1000) - - `X` - Data - * + #### Usage + + D3 [ A | C | X ] + + #### Parameters + - `A` - Address (x0000-x0fff) + - `C` - Count (1-4096) + - `X` - Data (hex) + + #### Notes + - The hex address needs to be lowercase without the 0 before the x + - Count is decimal + - The hex data needs to be lowercase + */ void dcode_3() { @@ -206,13 +212,13 @@ void dcode__1() #ifdef DEBUG_DCODES /*! - * ### D0 - Reset D0: Reset - - D0 [ B ] - - - `B` - Bootloader - * + #### Usage + + D0 [ B ] + + #### Parameters + - `B` - Bootloader */ void dcode_0() { @@ -251,16 +257,22 @@ void dcode_1() } /*! - * - ### D2 - Read/Write RAM D2: Read/Write RAM + ### D2 - Read/Write RAM D3: Read/Write RAM This command can be used without any additional parameters. It will read the entire RAM. - - D2 [ A | C | X ] - - - `A` - Address (0x0000-0x1fff) - - `C` - Count (0x0001-0x2000) - - `X` - Data - * + #### Usage + + D2 [ A | C | X ] + + #### Parameters + - `A` - Address (x0000-x1fff) + - `C` - Count (1-8192) + - `X` - Data + + #### Notes + - The hex address needs to be lowercase without the 0 before the x + - Count is decimal + - The hex data needs to be lowercase + */ void dcode_2() { @@ -306,17 +318,17 @@ void dcode_2() } /*! - * - ### D4 - Read/Write PIN D4: Read/Write PIN + ### D4 - Read/Write PIN D4: Read/Write PIN To read the digital value of a pin you need only to define the pin number. - - D4 [ P | F | V ] - - - `P` - Pin (0-255) - - `F` - Function in/out (0/1) - - `V` - Value (0/1) - * + #### Usage + + D4 [ P | F | V ] + + #### Parameters + - `P` - Pin (0-255) + - `F` - Function in/out (0/1) + - `V` - Value (0/1) */ void dcode_4() { @@ -351,18 +363,24 @@ void dcode_4() #ifdef DEBUG_DCODE5 /*! - * ### D5 - Read/Write FLASH D5: Read/Write Flash This command can be used without any additional parameters. It will read the 1kb FLASH. - - D5 [ A | C | X | E ] - - - `A` - Address (0x00000-0x3ffff) - - `C` - Count (0x0001-0x2000) - - `X` - Data - - `E` - Erase - * - */ + #### Usage + + D5 [ A | C | X | E ] + + #### Parameters + - `A` - Address (x00000-x3ffff) + - `C` - Count (1-8192) + - `X` - Data + - `E` - Erase + + #### Notes + - The hex address needs to be lowercase without the 0 before the x + - Count is decimal + - The hex data needs to be lowercase + + */ void dcode_5() { printf_P(PSTR("D5 - Read/Write FLASH\n")); @@ -427,24 +445,18 @@ void dcode_5() #ifdef DEBUG_DCODES /*! - * ### D6 - Read/Write external FLASH D6: Read/Write external Flash - Reserved - * - */ + */ void dcode_6() { LOG("D6 - Read/Write external FLASH\n"); } /*! - * ### D7 - Read/Write Bootloader D7: Read/Write Bootloader - Reserved - * - */ + */ void dcode_7() { LOG("D7 - Read/Write Bootloader\n"); @@ -461,16 +473,16 @@ void dcode_7() } /*! - * ### D8 - Read/Write PINDA D8: Read/Write PINDA - - D8 [ ? | ! | P | Z ] - - - `?` - Read PINDA temperature shift values - - `!` - Reset PINDA temperature shift values to default - - `P` - Pinda temperature [C] - - `Z` - Z Offset [mm] - * + #### Usage + + D8 [ ? | ! | P | Z ] + + #### Parameters + - `?` - Read PINDA temperature shift values + - `!` - Reset PINDA temperature shift values to default + - `P` - Pinda temperature [C] + - `Z` - Z Offset [mm] */ void dcode_8() { @@ -514,21 +526,21 @@ void dcode_8() } /*! - * ### D9 - Read ADC D9: Read ADC - - D9 [ I | V ] - - - `I` - ADC channel index - - `0` - Heater 0 temperature - - `1` - Heater 1 temperature - - `2` - Bed temperature - - `3` - PINDA temperature - - `4` - PWR voltage - - `5` - Ambient temperature - - `6` - BED voltage - - `V` Value to be written as simulated - * + #### Usage + + D9 [ I | V ] + + #### Parameters + - `I` - ADC channel index + - `0` - Heater 0 temperature + - `1` - Heater 1 temperature + - `2` - Bed temperature + - `3` - PINDA temperature + - `4` - PWR voltage + - `5` - Ambient temperature + - `6` - BED voltage + - `V` Value to be written as simulated */ const char* dcode_9_ADC_name(uint8_t i) { @@ -604,11 +616,8 @@ void dcode_9() } /*! - * ### D10 - Set XYZ calibration = OK D10: Set XYZ calibration = OK - - * - */ + */ void dcode_10() {//Tell the printer that XYZ calibration went OK LOG("D10 - XYZ calibration = OK\n"); @@ -616,11 +625,10 @@ void dcode_10() } /*! - * ### D12 - Time D12: Time - - * - */ + Writes the actual time in the log file. + */ + void dcode_12() {//Time LOG("D12 - Time\n"); @@ -632,38 +640,61 @@ void dcode_12() #include "planner.h" #include "tmc2130.h" extern void st_synchronize(); -/** - * @brief D2130 Trinamic stepper controller - * D2130[subcommand][value] - * * Axis - * * * 'X' - * * * 'Y' - * * * 'Z' - * * * 'E' - * * command - * * * '0' current off - * * * '1' current on - * * * '+' single step - * * * * value sereval steps - * * * '-' dtto oposite direction - * * * '?' read register - * * * * "mres" - * * * * "step" - * * * * "mscnt" - * * * * "mscuract" - * * * * "wave" - * * * '!' set register - * * * * "mres" - * * * * "step" - * * * * "wave" - * * * * *0, 180..250 meaning: off, 0.9..1.25, recommended value is 1.1 - * * * '@' home calibrate axis - * - * Example: - * D2130E?wave //print extruder microstep linearity compensation curve - * D2130E!wave0 //disable extruder linearity compensation curve, (sine curve is used) - * D2130E!wave220 // (sin(x))^1.1 extruder microstep compensation curve used - */ + /*! + ### D2130 - Trinamic stepper controller D2130: Trinamic stepper controller + @todo Please review by owner of the code. RepRap Wiki Gcode needs to be updated after review of owner as well. + + #### Usage + + D2130 [ Axis | Command | Subcommand | Value ] + + #### Parameters + - Axis + - `X` - X stepper driver + - `Y` - Y stepper driver + - `Z` - Z stepper driver + - `E` - Extruder stepper driver + - Commands + - `0` - Current off + - `1` - Current on + - `+` - Single step + - `-` - Single step oposite direction + - `NNN` - Value sereval steps + - `?` - Read register + - Subcommands for read register + - `mres` - Micro step resolution. More information in datasheet '5.5.2 CHOPCONF – Chopper Configuration' + - `step` - Step + - `mscnt` - Microstep counter. More information in datasheet '5.5 Motor Driver Registers' + - `mscuract` - Actual microstep current for motor. More information in datasheet '5.5 Motor Driver Registers' + - `wave` - Microstep linearity compensation curve + - `!` - Set register + - Subcommands for set register + - `mres` - Micro step resolution + - `step` - Step + - `wave` - Microstep linearity compensation curve + - Values for set register + - `0, 180 --> 250` - Off + - `0.9 --> 1.25` - Valid values (recommended is 1.1) + - `@` - Home calibrate axis + + Examples: + + D2130E?wave + + Print extruder microstep linearity compensation curve + + D2130E!wave0 + + Disable extruder linearity compensation curve, (sine curve is used) + + D2130E!wave220 + + (sin(x))^1.1 extruder microstep compensation curve used + + Notes: + For more information see https://www.trinamic.com/fileadmin/assets/Products/ICs_Documents/TMC2130_datasheet.pdf + * + */ void dcode_2130() { printf_P(PSTR("D2130 - TMC2130\n")); @@ -767,18 +798,18 @@ void dcode_2130() #ifdef PAT9125 /*! - * ### D9125 - PAT9125 filament sensor D9125: PAT9125 filament sensor - - D9125 [ ? | ! | R | X | Y | L ] - - - `?` - Print values - - `!` - Print values - - `R` - Resolution. Not active in code - - `X` - X values - - `Y` - Y values - - `L` - Activate filament sensor log - * + #### Usage + + D9125 [ ? | ! | R | X | Y | L ] + + #### Parameters + - `?` - Print values + - `!` - Print values + - `R` - Resolution. Not active in code + - `X` - X values + - `Y` - Y values + - `L` - Activate filament sensor log */ void dcode_9125() { diff --git a/Firmware/Marlin_main.cpp b/Firmware/Marlin_main.cpp index 413781b63..1a17e40d1 100755 --- a/Firmware/Marlin_main.cpp +++ b/Firmware/Marlin_main.cpp @@ -9105,7 +9105,6 @@ Sigma_Exit: For more information see https://www.trinamic.com/fileadmin/assets/Products/ICs_Documents/TMC2130_datasheet.pdf * */ - case 2130: dcode_2130(); break; #endif //TMC2130 From 82cd1f9f841509a760072ed51fde17885ebaa463 Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Wed, 25 Mar 2020 17:44:43 +0100 Subject: [PATCH 23/25] Typo. thanks @leptun --- Firmware/eeprom.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index 64bd4a9bc..bed2d20be 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -56,7 +56,7 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP - __S/P__ Statistics and Shipping prep will overwrite existing values to 0 or default. - A FactoryReset All Data will overwrite the hole EEPROM with ffh and some values will be initialized automatically, + A FactoryReset All Data will overwrite the whole EEPROM with ffh and some values will be initialized automatically, others need a reset / reboot. --------------------------------------------------------------------------------- From 9b394dcbe6ae718856f92058101d8170c0bf40c2 Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Thu, 26 Mar 2020 13:55:23 +0100 Subject: [PATCH 24/25] Update to Version 1.0 --- Firmware/eeprom.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Firmware/eeprom.h b/Firmware/eeprom.h index bed2d20be..17fcf0895 100644 --- a/Firmware/eeprom.h +++ b/Firmware/eeprom.h @@ -72,7 +72,7 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP To convert hex to dec https://www.rapidtables.com/convert/number/hex-to-decimal.html - Version: 0.9.1 + Version: 1.0 --------------------------------------------------------------------------------- From 2ceec597a59a765be54c7bac3d89410184857e55 Mon Sep 17 00:00:00 2001 From: 3d-gussner <3d.gussner@gmail.com> Date: Thu, 26 Mar 2020 14:08:35 +0100 Subject: [PATCH 25/25] Fix typo --- Firmware/Dcodes.cpp | 2 +- Firmware/Marlin_main.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Firmware/Dcodes.cpp b/Firmware/Dcodes.cpp index ebf34b4fc..79695c9e7 100644 --- a/Firmware/Dcodes.cpp +++ b/Firmware/Dcodes.cpp @@ -626,7 +626,7 @@ void dcode_10() /*! ### D12 - Time D12: Time - Writes the actual time in the log file. + Writes the current time in the log file. */ void dcode_12() diff --git a/Firmware/Marlin_main.cpp b/Firmware/Marlin_main.cpp index 1a17e40d1..ac0d3b5dc 100755 --- a/Firmware/Marlin_main.cpp +++ b/Firmware/Marlin_main.cpp @@ -8950,7 +8950,7 @@ Sigma_Exit: /*! ### D12 - Time D12: Time - Writes the actual time in the log file. + Writes the current time in the log file. */ #endif //DEBUG_DCODES