Skip to content

Commit 323c086

Browse files
committed
Gracefully fail when firmware update fails. Fix for issue 66.
1 parent cde5a30 commit 323c086

File tree

3 files changed

+9
-2
lines changed

3 files changed

+9
-2
lines changed

Firmware/RTK_Surveyor/Form.ino

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -428,7 +428,10 @@ void updateSettingWithValue(const char *settingName, const char* settingValueStr
428428

429429
//Special actions
430430
else if (strcmp(settingName, "firmwareFileName") == 0)
431+
{
431432
updateFromSD(settingValueStr);
433+
requestChangeState(STATE_ROVER_NOT_STARTED); //If update failed, return to Rover mode.
434+
}
432435
else if (strcmp(settingName, "factoryDefaultReset") == 0)
433436
factoryReset();
434437
else if (strcmp(settingName, "exitToRoverMode") == 0)

Firmware/RTK_Surveyor/RTK_Surveyor.ino

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -511,7 +511,7 @@ void updateLogs()
511511
}
512512
else
513513
{
514-
ESP_LOGD(TAG, "Log file: No increase in file size");
514+
ESP_LOGD(TAG, "No increase in file size");
515515
logIncreasing = false;
516516
}
517517
}

Firmware/RTK_Surveyor/menuFirmware.ino

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,7 @@ void updateFromSD(const char *firmwareFileName)
182182
if (Update.isFinished())
183183
{
184184
displayFirmwareUpdateProgress(100);
185-
185+
186186
Serial.println(F("Firmware updated successfully. Rebooting. Good bye!"));
187187

188188
//If forced firmware is detected, do a full reset of config as well
@@ -220,6 +220,10 @@ void updateFromSD(const char *firmwareFileName)
220220
}
221221

222222
firmwareFile.close();
223+
224+
displayMessage("Update Failed", 0);
225+
226+
Serial.println(F("Firmware update failed. Please try again."));
223227
}
224228
else
225229
{

0 commit comments

Comments
 (0)