Browse Source

Merge pull request #8933 from czhj/master

Add X7 support
QGC4.4
Don Gagne 5 years ago committed by GitHub
parent
commit
47baad1a37
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 3
      src/VehicleSetup/Bootloader.h
  2. 11
      src/VehicleSetup/FirmwareUpgradeController.cc
  3. 3
      src/VehicleSetup/FirmwareUpgradeController.h
  4. 5
      src/comm/USBBoardInfo.json

3
src/VehicleSetup/Bootloader.h

@ -1,4 +1,4 @@
/**************************************************************************** /****************************************************************************
* *
* (c) 2009-2020 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org> * (c) 2009-2020 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org>
* *
@ -55,6 +55,7 @@ public:
static const int boardIDmRoCtrlZeroF7 = 141; ///< mRo Control Zero F7 board, as from USB PID static const int boardIDmRoCtrlZeroF7 = 141; ///< mRo Control Zero F7 board, as from USB PID
static const int boardIDModalFCV1 = 41775; ///< ModalAI FC V1 board, as from USB PID static const int boardIDModalFCV1 = 41775; ///< ModalAI FC V1 board, as from USB PID
static const int boardIDUVifyCore = 20; ///< UVify Core board, as from USB PID static const int boardIDUVifyCore = 20; ///< UVify Core board, as from USB PID
static const int boardIDCUAVX7 = 1010; ///< CUAV X7(Pro) board, as from USB PID
/// Simulated board id for V3 which is a V2 board which supports larger flash space /// Simulated board id for V3 which is a V2 board which supports larger flash space
/// IMPORTANT: Make sure this id does not conflict with any newly added real board ids /// IMPORTANT: Make sure this id does not conflict with any newly added real board ids

11
src/VehicleSetup/FirmwareUpgradeController.cc

@ -1,4 +1,4 @@
/**************************************************************************** /****************************************************************************
* *
* (c) 2009-2020 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org> * (c) 2009-2020 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org>
* *
@ -390,6 +390,12 @@ void FirmwareUpgradeController::_initFirmwareHash()
_rgPX4FMUV2Firmware.insert (FirmwareIdentifier(AutoPilotStackPX4, firmwareType, DefaultVehicleFirmware), px4Url.arg(dir).arg("v2")); _rgPX4FMUV2Firmware.insert (FirmwareIdentifier(AutoPilotStackPX4, firmwareType, DefaultVehicleFirmware), px4Url.arg(dir).arg("v2"));
} }
QString px4CUAVX7Url ("http://px4-travis.s3.amazonaws.com/Firmware/%1/cuav_%2_default.px4");
for (const FirmwareBuildType_t& firmwareType: px4MapFirmwareTypeToDir.keys()) {
QString dir = px4MapFirmwareTypeToDir[firmwareType];
_rgPX4CUAVX7Fireware.insert (FirmwareIdentifier(AutoPilotStackPX4, firmwareType, DefaultVehicleFirmware), px4CUAVX7Url.arg(dir).arg("x7pro"));
}
int size = sizeof(rgAeroCoreFirmwareArray)/sizeof(rgAeroCoreFirmwareArray[0]); int size = sizeof(rgAeroCoreFirmwareArray)/sizeof(rgAeroCoreFirmwareArray[0]);
for (int i = 0; i < size; i++) { for (int i = 0; i < size; i++) {
const FirmwareToUrlElement_t& element = rgAeroCoreFirmwareArray[i]; const FirmwareToUrlElement_t& element = rgAeroCoreFirmwareArray[i];
@ -560,6 +566,9 @@ QHash<FirmwareUpgradeController::FirmwareIdentifier, QString>* FirmwareUpgradeCo
case Bootloader::boardID3DRRadio: case Bootloader::boardID3DRRadio:
_rgFirmwareDynamic = _rg3DRRadioFirmware; _rgFirmwareDynamic = _rg3DRRadioFirmware;
break; break;
case Bootloader::boardIDCUAVX7:
_rgFirmwareDynamic = _rgPX4CUAVX7Fireware;
break;
default: default:
// Unknown board id // Unknown board id
break; break;

3
src/VehicleSetup/FirmwareUpgradeController.h

@ -1,4 +1,4 @@
/**************************************************************************** /****************************************************************************
* *
* (c) 2009-2020 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org> * (c) 2009-2020 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org>
* *
@ -224,6 +224,7 @@ private:
QHash<FirmwareIdentifier, QString> _rgUVifyCoreFirmware; QHash<FirmwareIdentifier, QString> _rgUVifyCoreFirmware;
QHash<FirmwareIdentifier, QString> _rgPX4FLowFirmware; QHash<FirmwareIdentifier, QString> _rgPX4FLowFirmware;
QHash<FirmwareIdentifier, QString> _rg3DRRadioFirmware; QHash<FirmwareIdentifier, QString> _rg3DRRadioFirmware;
QHash<FirmwareIdentifier, QString> _rgPX4CUAVX7Fireware;
// Hash map for ArduPilot ChibiOS lookup by board name // Hash map for ArduPilot ChibiOS lookup by board name
QHash<FirmwareIdentifier, QString> _rgAPMChibiosReplaceNamedBoardFirmware; QHash<FirmwareIdentifier, QString> _rgAPMChibiosReplaceNamedBoardFirmware;

5
src/comm/USBBoardInfo.json

@ -1,4 +1,4 @@
{ {
"comment": "AutoConnect usb board info", "comment": "AutoConnect usb board info",
"version": 1, "version": 1,
"fileType": "USBBoardInfo", "fileType": "USBBoardInfo",
@ -21,7 +21,8 @@
{ "vendorID": 1155, "productID": 41775, "boardClass": "Pixhawk", "name": "PX4 FMU ModalAI FCv1" }, { "vendorID": 1155, "productID": 41775, "boardClass": "Pixhawk", "name": "PX4 FMU ModalAI FCv1" },
{ "vendorID":12642, "productID": 75, "boardClass": "Pixhawk", "name": "PX4 DurandalV1" }, { "vendorID":12642, "productID": 75, "boardClass": "Pixhawk", "name": "PX4 DurandalV1" },
{ "vendorID": 4104, "productID": 1, "boardClass": "Pixhawk", "name": "PX4 FMU UVify Core" }, { "vendorID": 4104, "productID": 1, "boardClass": "Pixhawk", "name": "PX4 FMU UVify Core" },
{ "vendorID": 12643, "productID": 76, "boardClass": "Pixhawk", "name": "PX4 CUAV X7(PRO)" },
{ "vendorID": 1155, "productID": 22336, "boardClass": "Pixhawk", "name": "ArduPilot ChibiOS" }, { "vendorID": 1155, "productID": 22336, "boardClass": "Pixhawk", "name": "ArduPilot ChibiOS" },
{ "vendorID": 4617, "productID": 22336, "boardClass": "Pixhawk", "name": "ArduPilot ChibiOS" }, { "vendorID": 4617, "productID": 22336, "boardClass": "Pixhawk", "name": "ArduPilot ChibiOS" },
{ "vendorID": 4617, "productID": 22337, "boardClass": "Pixhawk", "name": "ArduPilot ChibiOS" }, { "vendorID": 4617, "productID": 22337, "boardClass": "Pixhawk", "name": "ArduPilot ChibiOS" },

Loading…
Cancel
Save