Browse Source

Use firmware version type, not vehicle type

QGC4.4
Don Gagne 6 years ago
parent
commit
7bbfca75b6
  1. 5
      src/AutoPilotPlugins/APM/APMFlightModesComponentController.cc
  2. 22
      src/FirmwarePlugin/APM/APMFirmwarePlugin.cc

5
src/AutoPilotPlugins/APM/APMFlightModesComponentController.cc

@ -31,8 +31,9 @@ APMFlightModesComponentController::APMFlightModesComponentController(void) @@ -31,8 +31,9 @@ APMFlightModesComponentController::APMFlightModesComponentController(void)
qmlRegisterUncreatableType<APMFlightModesComponentController>("QGroundControl.Controllers", 1, 0, "APMFlightModesComponentController", "Reference only");
}
_modeParamPrefix = _vehicle->rover() ? QStringLiteral("MODE") : QStringLiteral("FLTMODE");
_modeChannelParam = _vehicle->rover() ? QStringLiteral("MODE_CH") : QStringLiteral("FLTMODE_CH");
bool arduRoverFirmware = parameterExists(-1, QStringLiteral("MODE1"));
_modeParamPrefix = arduRoverFirmware ? QStringLiteral("MODE") : QStringLiteral("FLTMODE");
_modeChannelParam = arduRoverFirmware ? QStringLiteral("MODE_CH") : QStringLiteral("FLTMODE_CH");
_simpleModeNames << tr("Off") << tr("Simple") << tr("Super-Simple") << tr("Custom");
for (int i=0; i<_cFltModes; i++) {

22
src/FirmwarePlugin/APM/APMFirmwarePlugin.cc

@ -20,6 +20,10 @@ @@ -20,6 +20,10 @@
#include "SettingsManager.h"
#include "AppSettings.h"
#include "APMMavlinkStreamRateSettings.h"
#include "ArduPlaneFirmwarePlugin.h"
#include "ArduCopterFirmwarePlugin.h"
#include "ArduRoverFirmwarePlugin.h"
#include "ArduSubFirmwarePlugin.h"
#include <QTcpSocket>
@ -1029,19 +1033,19 @@ void APMFirmwarePlugin::startMission(Vehicle* vehicle) @@ -1029,19 +1033,19 @@ void APMFirmwarePlugin::startMission(Vehicle* vehicle)
QString APMFirmwarePlugin::_getLatestVersionFileUrl(Vehicle* vehicle)
{
const static QString baseUrl("http://firmware.ardupilot.org/%1/stable/PX4/git-version.txt");
if (vehicle->fixedWing()) {
return baseUrl.arg("Plane");
}
if (vehicle->vtol()) {
if (qobject_cast<ArduPlaneFirmwarePlugin*>(vehicle->firmwarePlugin())) {
return baseUrl.arg("Plane");
}
if (vehicle->rover()) {
} else if (qobject_cast<ArduRoverFirmwarePlugin*>(vehicle->firmwarePlugin())) {
return baseUrl.arg("Rover");
}
if (vehicle->sub()) {
} else if (qobject_cast<ArduSubFirmwarePlugin*>(vehicle->firmwarePlugin())) {
return baseUrl.arg("Sub");
} else if (qobject_cast<ArduCopterFirmwarePlugin*>(vehicle->firmwarePlugin())) {
return baseUrl.arg("Copter");
} else {
qWarning() << "APMFirmwarePlugin::_getLatestVersionFileUrl Unknown vehicle firmware type" << vehicle->vehicleType();
return QString();
}
return baseUrl.arg("Copter");
}
QString APMFirmwarePlugin::_versionRegex() {

Loading…
Cancel
Save