diff --git a/src/VehicleSetup/Bootloader.h b/src/VehicleSetup/Bootloader.h index 063b07884f404d8aaad07c0a8d42fb8204757852..5be8021674f4f67ec362ffa7a2cbde77886ff1d4 100644 --- a/src/VehicleSetup/Bootloader.h +++ b/src/VehicleSetup/Bootloader.h @@ -56,6 +56,8 @@ public: 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 boardIDCUAVX7 = 1010; ///< CUAV X7(Pro) board, as from USB PID + static const int boardIDCUAVNora = 1009; ///< CUAV Nora 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 b6ff7baa02115f9eec118bd60f19f992d994340d..5874560a661fd902369951369dfd373a48377845 100644 --- a/src/VehicleSetup/FirmwareUpgradeController.cc +++ b/src/VehicleSetup/FirmwareUpgradeController.cc @@ -365,6 +365,13 @@ void FirmwareUpgradeController::_initFirmwareHash() { ThreeDRRadio, StableFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/SiK/stable/radio~hm_trp.ihx"} }; + /////////////////////////////// cuav nora firmwares /////////////////////////////////////// + FirmwareToUrlElement_t rgCUAVNoraFirmwareArray[] = { + { AutoPilotStackPX4, StableFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Firmware/stable/cuav_nora_default.px4"}, + { AutoPilotStackPX4, BetaFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Firmware/beta/cuav_nora_default.px4"}, + { AutoPilotStackPX4, DeveloperFirmware, DefaultVehicleFirmware, "http://px4-travis.s3.amazonaws.com/Firmware/master/cuav_nora_default.px4"}, + }; + // We build the maps for PX4 firmwares dynamically using the data below #if 0 @@ -403,6 +410,12 @@ void FirmwareUpgradeController::_initFirmwareHash() _rgAeroCoreFirmware.insert(FirmwareIdentifier(element.stackType, element.firmwareType, element.vehicleType), element.url); } + size = sizeof(rgCUAVNoraFirmwareArray)/sizeof(rgCUAVNoraFirmwareArray[0]); + for (int i = 0; i < size; i++) { + const FirmwareToUrlElement_t& element = rgCUAVNoraFirmwareArray[i]; + _rgCUAVNoraFireware.insert(FirmwareIdentifier(element.stackType, element.firmwareType, element.vehicleType), element.url); + } + size = sizeof(rgAUAVX2_1FirmwareArray)/sizeof(rgAUAVX2_1FirmwareArray[0]); for (int i = 0; i < size; i++) { const FirmwareToUrlElement_t& element = rgAUAVX2_1FirmwareArray[i]; @@ -570,6 +583,9 @@ QHash* FirmwareUpgradeCo case Bootloader::boardIDCUAVX7: _rgFirmwareDynamic = _rgPX4CUAVX7Fireware; break; + case Bootloader::boardIDCUAVNora: + _rgFirmwareDynamic = _rgCUAVNoraFireware; + break; default: // Unknown board id break; diff --git a/src/VehicleSetup/FirmwareUpgradeController.h b/src/VehicleSetup/FirmwareUpgradeController.h index 417b08c4b2f51ec84128a9251e3c35006d54bd5d..b21a3742f98cf9b0d08abb7bcfa3da5aa4140866 100644 --- a/src/VehicleSetup/FirmwareUpgradeController.h +++ b/src/VehicleSetup/FirmwareUpgradeController.h @@ -224,6 +224,8 @@ private: QHash _rgPX4FLowFirmware; QHash _rg3DRRadioFirmware; QHash _rgPX4CUAVX7Fireware; + QHash _rgCUAVNoraFireware; + // Hash map for ArduPilot ChibiOS lookup by board name QHash _rgAPMChibiosReplaceNamedBoardFirmware; diff --git a/src/comm/USBBoardInfo.json b/src/comm/USBBoardInfo.json index 05833e50b84b9e1a7662ef9b8cd8c53571d04d42..9486197f70a0b6c909f36e6c3c2af4d7f1c0b178 100644 --- a/src/comm/USBBoardInfo.json +++ b/src/comm/USBBoardInfo.json @@ -21,7 +21,7 @@ { "vendorID": 1155, "productID": 41775, "boardClass": "Pixhawk", "name": "PX4 FMU ModalAI FCv1" }, { "vendorID":12642, "productID": 75, "boardClass": "Pixhawk", "name": "PX4 DurandalV1" }, { "vendorID": 4104, "productID": 1, "boardClass": "Pixhawk", "name": "PX4 FMU UVify Core" }, - { "vendorID": 12643, "productID": 76, "boardClass": "Pixhawk", "name": "PX4 CUAV X7(PRO)" }, + { "vendorID": 12643, "productID": 76, "boardClass": "Pixhawk", "name": "CUAV Flight Controller" }, { "vendorID": 1155, "productID": 22336, "boardClass": "Pixhawk", "name": "ArduPilot ChibiOS" }, { "vendorID": 4617, "productID": 22336, "boardClass": "Pixhawk", "name": "ArduPilot ChibiOS" },