From 3964623ad6884ff2b943a84da2cc83dbd3f37af1 Mon Sep 17 00:00:00 2001 From: Don Gagne Date: Thu, 17 Oct 2019 10:38:59 -0700 Subject: [PATCH 1/4] Prepping 3.5.5 release --- ChangeLog.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ChangeLog.md b/ChangeLog.md index c7cb752..de39295 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -8,11 +8,13 @@ Note: This file only contains high level features or important fixes. * Major rewrite and bug fix pass through Structure Scan. Previous version had such bad problems that it can no longer be supported. Plans with Structure Scan will need to be recreated. New QGC will not load old Structure Scan plans. -### 3.5.5 - Not yet released +### 3.5.6 - Not yet released + +### 3.5.5 - Stable * Fix mavlink message memset which cause wrong commands to be sent on ArduPilot GotoLocation. * Disable Pause when fixed wing is on landing approach. -### 3.5.4 - Stable +### 3.5.4 * Update windows drivers * Add support for FMUK66 flashing/connection * Guard against null geometry coming from gstreamer which can cause crashes From dcce736443de6ec3120336919e7dca58a7dff9a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beat=20K=C3=BCng?= Date: Tue, 16 Jul 2019 14:04:31 +0200 Subject: [PATCH 2/4] Firmware update: add KakuteF7 support --- src/VehicleSetup/Bootloader.h | 3 ++- src/VehicleSetup/FirmwareUpgradeController.cc | 17 +++++++++++++++++ src/VehicleSetup/FirmwareUpgradeController.h | 1 + 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/VehicleSetup/Bootloader.h b/src/VehicleSetup/Bootloader.h index 34f962b..37e36eb 100644 --- a/src/VehicleSetup/Bootloader.h +++ b/src/VehicleSetup/Bootloader.h @@ -75,7 +75,8 @@ public: static const int boardIDASCV1 = 65; ///< ASC V1 board, as from USB PID static const int boardIDCrazyflie2 = 12; ///< Crazyflie 2.0 board, as from USB PID static const int boardIDOmnibusF4SD = 42; ///< Omnibus F4 SD, as from USB PID - static const int boardIDFMUK66V3 = 28; ///< FMUK66V3 board, as from USB PID + static const int boardIDFMUK66V3 = 28; ///< FMUK66V3 board, as from USB PID + static const int boardIDKakuteF7 = 123; ///< Holybro KakuteF7 board, as from USB PID /// 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 diff --git a/src/VehicleSetup/FirmwareUpgradeController.cc b/src/VehicleSetup/FirmwareUpgradeController.cc index 5f2fe29..5aacd2f 100644 --- a/src/VehicleSetup/FirmwareUpgradeController.cc +++ b/src/VehicleSetup/FirmwareUpgradeController.cc @@ -262,11 +262,19 @@ void FirmwareUpgradeController::_initFirmwareHash() { AutoPilotStackPX4, DeveloperFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Firmware/master/crazyflie_default.px4"}, }; + //////////////////////////////////// Omnibus F4 SD firmwares ////////////////////////////////////////////////// FirmwareToUrlElement_t rgOmnibusF4SDFirmwareArray[] = { { AutoPilotStackPX4, StableFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Firmware/stable/omnibus_f4sd_default.px4"}, { AutoPilotStackPX4, BetaFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Firmware/beta/omnibus_f4sd_default.px4"}, { AutoPilotStackPX4, DeveloperFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Firmware/master/omnibus_f4sd_default.px4"}, }; + + //////////////////////////////////// Kakute F7 firmwares ////////////////////////////////////////////////// + FirmwareToUrlElement_t rgKakuteF7FirmwareArray[] = { + { AutoPilotStackPX4, StableFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Firmware/stable/holybro_kakutef7_default.px4"}, + { AutoPilotStackPX4, BetaFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Firmware/beta/holybro_kakutef7_default.px4"}, + { AutoPilotStackPX4, DeveloperFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Firmware/master/holybro_kakutef7_default.px4"}, + }; //////////////////////////////////// FMUK66V3 firmwares ////////////////////////////////////////////////// FirmwareToUrlElement_t rgFMUK66V3FirmwareArray[] = { @@ -466,6 +474,12 @@ void FirmwareUpgradeController::_initFirmwareHash() _rgOmnibusF4SDFirmware.insert(FirmwareIdentifier(element.stackType, element.firmwareType, element.vehicleType), element.url); } + size = sizeof(rgKakuteF7FirmwareArray)/sizeof(rgKakuteF7FirmwareArray[0]); + for (int i = 0; i < size; i++) { + const FirmwareToUrlElement_t& element = rgKakuteF7FirmwareArray[i]; + _rgKakuteF7Firmware.insert(FirmwareIdentifier(element.stackType, element.firmwareType, element.vehicleType), element.url); + } + size = sizeof(rgFMUK66V3FirmwareArray)/sizeof(rgFMUK66V3FirmwareArray[0]); for (int i = 0; i < size; i++) { const FirmwareToUrlElement_t& element = rgFMUK66V3FirmwareArray[i]; @@ -542,6 +556,9 @@ QHash* FirmwareUpgradeCo case Bootloader::boardIDOmnibusF4SD: rgFirmware = &_rgOmnibusF4SDFirmware; break; + case Bootloader::boardIDKakuteF7: + rgFirmware = &_rgKakuteF7Firmware; + break; case Bootloader::boardIDFMUK66V3: rgFirmware = &_rgFMUK66V3Firmware; break; diff --git a/src/VehicleSetup/FirmwareUpgradeController.h b/src/VehicleSetup/FirmwareUpgradeController.h index 112117f..80855be 100644 --- a/src/VehicleSetup/FirmwareUpgradeController.h +++ b/src/VehicleSetup/FirmwareUpgradeController.h @@ -212,6 +212,7 @@ private: QHash _rgASCV1Firmware; QHash _rgCrazyflie2Firmware; QHash _rgOmnibusF4SDFirmware; + QHash _rgKakuteF7Firmware; QHash _rgFMUK66V3Firmware; QHash _rgPX4FLowFirmware; QHash _rg3DRRadioFirmware; From 6e877c217a201f1c7a730d191f741a1126538724 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beat=20K=C3=BCng?= Date: Tue, 19 Nov 2019 12:58:30 +0100 Subject: [PATCH 3/4] Firmware update: add Durandal-v1 --- src/VehicleSetup/Bootloader.h | 1 + src/VehicleSetup/FirmwareUpgradeController.cc | 15 +++++++++++++++ src/VehicleSetup/FirmwareUpgradeController.h | 1 + 3 files changed, 17 insertions(+) diff --git a/src/VehicleSetup/Bootloader.h b/src/VehicleSetup/Bootloader.h index 37e36eb..49f72f5 100644 --- a/src/VehicleSetup/Bootloader.h +++ b/src/VehicleSetup/Bootloader.h @@ -77,6 +77,7 @@ public: static const int boardIDOmnibusF4SD = 42; ///< Omnibus F4 SD, as from USB PID static const int boardIDFMUK66V3 = 28; ///< FMUK66V3 board, as from USB PID static const int boardIDKakuteF7 = 123; ///< Holybro KakuteF7 board, as from USB PID + static const int boardIDDurandalV1 = 139; ///< Holybro Durandal-v1 board, as from USB PID /// 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 diff --git a/src/VehicleSetup/FirmwareUpgradeController.cc b/src/VehicleSetup/FirmwareUpgradeController.cc index 5aacd2f..479937d 100644 --- a/src/VehicleSetup/FirmwareUpgradeController.cc +++ b/src/VehicleSetup/FirmwareUpgradeController.cc @@ -283,6 +283,12 @@ void FirmwareUpgradeController::_initFirmwareHash() { AutoPilotStackPX4, DeveloperFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Firmware/master/nxp_fmuk66-v3_default.px4"}, }; + //////////////////////////////////// Durandal firmwares ////////////////////////////////////////////////// + FirmwareToUrlElement_t rgDurandalV1FirmwareArray[] = { + { AutoPilotStackPX4, StableFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Firmware/stable/holybro_durandal-v1_default.px4"}, + { AutoPilotStackPX4, BetaFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Firmware/beta/holybro_durandal-v1_default.px4"}, + { AutoPilotStackPX4, DeveloperFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Firmware/master/holybro_durandal-v1_default.px4"}, + }; /////////////////////////////// px4flow firmwares /////////////////////////////////////// FirmwareToUrlElement_t rgPX4FLowFirmwareArray[] = { { PX4FlowPX4, StableFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Flow/master/px4flow.px4" }, @@ -480,6 +486,12 @@ void FirmwareUpgradeController::_initFirmwareHash() _rgKakuteF7Firmware.insert(FirmwareIdentifier(element.stackType, element.firmwareType, element.vehicleType), element.url); } + size = sizeof(rgDurandalV1FirmwareArray)/sizeof(rgDurandalV1FirmwareArray[0]); + for (int i = 0; i < size; i++) { + const FirmwareToUrlElement_t& element = rgDurandalV1FirmwareArray[i]; + _rgDurandalV1Firmware.insert(FirmwareIdentifier(element.stackType, element.firmwareType, element.vehicleType), element.url); + } + size = sizeof(rgFMUK66V3FirmwareArray)/sizeof(rgFMUK66V3FirmwareArray[0]); for (int i = 0; i < size; i++) { const FirmwareToUrlElement_t& element = rgFMUK66V3FirmwareArray[i]; @@ -559,6 +571,9 @@ QHash* FirmwareUpgradeCo case Bootloader::boardIDKakuteF7: rgFirmware = &_rgKakuteF7Firmware; break; + case Bootloader::boardIDDurandalV1: + rgFirmware = &_rgDurandalV1Firmware; + break; case Bootloader::boardIDFMUK66V3: rgFirmware = &_rgFMUK66V3Firmware; break; diff --git a/src/VehicleSetup/FirmwareUpgradeController.h b/src/VehicleSetup/FirmwareUpgradeController.h index 80855be..398e7a8 100644 --- a/src/VehicleSetup/FirmwareUpgradeController.h +++ b/src/VehicleSetup/FirmwareUpgradeController.h @@ -213,6 +213,7 @@ private: QHash _rgCrazyflie2Firmware; QHash _rgOmnibusF4SDFirmware; QHash _rgKakuteF7Firmware; + QHash _rgDurandalV1Firmware; QHash _rgFMUK66V3Firmware; QHash _rgPX4FLowFirmware; QHash _rg3DRRadioFirmware; From e74f90e315c6319806a6334d8ab7765cde33b439 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beat=20K=C3=BCng?= Date: Fri, 6 Dec 2019 10:19:34 +0100 Subject: [PATCH 4/4] USBBoardInfo: add Durandal auto-connect Autoconnect for DurandalV1 works more generically on master with b2b422c397e61f8761c8e03cd522a8e0c9288397. --- src/comm/USBBoardInfo.json | 1 + 1 file changed, 1 insertion(+) diff --git a/src/comm/USBBoardInfo.json b/src/comm/USBBoardInfo.json index e713433..69d9ac9 100644 --- a/src/comm/USBBoardInfo.json +++ b/src/comm/USBBoardInfo.json @@ -20,6 +20,7 @@ { "vendorID": 9900, "productID": 22, "boardClass": "Pixhawk", "name": "Crazyflie 2" }, { "vendorID": 9900, "productID": 1, "boardClass": "Pixhawk", "name": "Omnibus F4 SD" }, { "vendorID": 8137, "productID": 28, "boardClass": "Pixhawk", "name": "PX4 FMUK66 v3.x" }, + { "vendorID":12642, "productID": 75, "boardClass": "Pixhawk", "name": "PX4 DurandalV1" }, { "vendorID": 1155, "productID": 22336, "boardClass": "Pixhawk", "name": "ArduPilot ChibiOS" }, { "vendorID": 4617, "productID": 22336, "boardClass": "Pixhawk", "name": "ArduPilot ChibiOS" },