Browse Source

Set default SuperPINDA toggle on MK2.5/S to NO

3d-gussner 3 years ago
parent
commit
76eb743139
2 changed files with 7 additions and 3 deletions
  1. 4 0
      Firmware/eeprom.cpp
  2. 3 3
      Firmware/ultralcd.cpp

+ 4 - 0
Firmware/eeprom.cpp

@@ -93,6 +93,10 @@ void eeprom_init()
         eeprom_switch_to_next_sheet();
     }
     check_babystep();
+
+#ifdef PINDA_TEMP_COMP
+if (eeprom_read_byte((uint8_t*)EEPROM_PINDA_TEMP_COMPENSATION) == 0xff) eeprom_update_byte((uint8_t *)EEPROM_PINDA_TEMP_COMPENSATION, 0);
+#endif //PINDA_TEMP_COMP
 }
 
 //! @brief Get default sheet name for index

+ 3 - 3
Firmware/ultralcd.cpp

@@ -5759,7 +5759,7 @@ void lcd_hw_setup_menu(void)                      // can not be "static"
 	//! as a disconnected SuperPINDA will show higher temps compared to an EINSY board.
 	//! 
 	//! This menu allows the user to en-/disable the SuperPINDA manualy
-	MENU_ITEM_TOGGLE_P(_N("SuperPINDA"), eeprom_read_byte((unsigned char *)EEPROM_PINDA_TEMP_COMPENSATION) ? _T(MSG_YES) : _T(MSG_NO), lcd_pinda_temp_compensation_toggle);
+	MENU_ITEM_TOGGLE_P(_N("SuperPINDA"), eeprom_read_byte((uint8_t *)EEPROM_PINDA_TEMP_COMPENSATION) ? _T(MSG_YES) : _T(MSG_NO), lcd_pinda_temp_compensation_toggle);
 #endif //PINDA_TEMP_COMP
 
     MENU_END();
@@ -9249,8 +9249,8 @@ void lcd_experimental_menu()
 void lcd_pinda_temp_compensation_toggle()
 {
 	uint8_t pinda_temp_compensation = eeprom_read_byte((uint8_t*)EEPROM_PINDA_TEMP_COMPENSATION);
-	if (pinda_temp_compensation == EEPROM_EMPTY_VALUE)
-		pinda_temp_compensation = 1;
+	if (pinda_temp_compensation == EEPROM_EMPTY_VALUE) // On MK2.5/S the EEPROM_EMPTY_VALUE will be set to 0 during eeprom_init.
+		pinda_temp_compensation = 1;                   // But for MK3/S it should be 1 so SuperPINDA is "active"
 	else
 		pinda_temp_compensation = !pinda_temp_compensation;
 	eeprom_update_byte((uint8_t*)EEPROM_PINDA_TEMP_COMPENSATION, pinda_temp_compensation);