Browse Source

Merge pull request #2750 from billbonney/apm-px4v4-download-wip

Add Error Message when FW is not found on Server.
QGC4.4
Don Gagne 9 years ago
parent
commit
048fbe279e
  1. 4
      src/QGCFileDownload.cc
  2. 22
      src/VehicleSetup/FirmwareUpgradeController.cc
  3. 3
      src/VehicleSetup/FirmwareUpgradeController.h

4
src/QGCFileDownload.cc

@ -121,6 +121,10 @@ void QGCFileDownload::_downloadError(QNetworkReply::NetworkError code) @@ -121,6 +121,10 @@ void QGCFileDownload::_downloadError(QNetworkReply::NetworkError code)
if (code == QNetworkReply::OperationCanceledError) {
errorMsg = "Download cancelled";
} else if (code == QNetworkReply::ContentNotFoundError) {
errorMsg = "Error: File Not Found";
} else {
errorMsg = QString("Error during download. Error: %1").arg(code);
}

22
src/VehicleSetup/FirmwareUpgradeController.cc

@ -208,6 +208,8 @@ void FirmwareUpgradeController::_initFirmwareHash() @@ -208,6 +208,8 @@ void FirmwareUpgradeController::_initFirmwareHash()
{ AutoPilotStackPX4, StableFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Firmware/stable/px4fmu-v4_default.px4"},
{ AutoPilotStackPX4, BetaFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Firmware/beta/px4fmu-v4_default.px4"},
{ AutoPilotStackPX4, DeveloperFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Firmware/master/px4fmu-v4_default.px4"},
{ AutoPilotStackAPM, StableFirmware, QuadFirmware, "http://firmware.diydrones.com/Copter/stable/PX4-quad/ArduCopter-v4.px4"},
{ AutoPilotStackAPM, BetaFirmware, QuadFirmware, "http://firmware.diydrones.com/Copter/beta/PX4-quad/ArduCopter-v4.px4"},
{ AutoPilotStackAPM, DeveloperFirmware, QuadFirmware, "http://firmware.diydrones.com/Copter/latest/PX4-quad/ArduCopter-v4.px4"}
};
@ -573,12 +575,32 @@ void FirmwareUpgradeController::_downloadError(QNetworkReply::NetworkError code) @@ -573,12 +575,32 @@ void FirmwareUpgradeController::_downloadError(QNetworkReply::NetworkError code)
if (code == QNetworkReply::OperationCanceledError) {
errorMsg = "Download cancelled";
} else if (code == QNetworkReply::ContentNotFoundError) {
errorMsg = QString("Error: File Not Found. Please check %1 firmware version is available.")
.arg(firmwareTypeAsString(_selectedFirmwareType));
} else {
errorMsg = QString("Error during download. Error: %1").arg(code);
}
_errorCancel(errorMsg);
}
/// @brief returns firmware type as a string
QString FirmwareUpgradeController::firmwareTypeAsString(FirmwareType_t type) const
{
switch (type) {
case StableFirmware:
return "stable";
case DeveloperFirmware:
return "developer";
case BetaFirmware:
return "beta";
default:
return "custom";
}
}
/// @brief Signals completion of one of the specified bootloader commands. Moves the state machine to the
/// appropriate next step.
void FirmwareUpgradeController::_flashComplete(void)

3
src/VehicleSetup/FirmwareUpgradeController.h

@ -147,9 +147,10 @@ public: @@ -147,9 +147,10 @@ public:
FirmwareType_t selectedFirmwareType(void) { return _selectedFirmwareType; }
void setSelectedFirmwareType(FirmwareType_t firmwareType);
QString firmwareTypeAsString(FirmwareType_t type) const;
QStringList apmAvailableVersions(void);
signals:
void boardFound(void);
void noBoardFound(void);

Loading…
Cancel
Save