diff --git a/ChangeLog.md b/ChangeLog.md index 752ca7aa6baae015db0ccb541868c7fcd8e8f925..a8cb182a0a8a6651f02ff240ad01b88ea535ea8b 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -20,12 +20,21 @@ Note: This file only contains high level features or important fixes. * ArduPilot: Support configurable mavlink stream rates. Available from Settings/Mavlink page. * 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.1 - Not yet released +### 3.5.3 - Not yet released +* Fix crash when clicking on GeoFence polygon vertex +* PX4: Fix missing ```MC_YAW_FF``` parameter in PID Tuning +* ArduPilot: Fix parameter file save generating bad characters from git hash + +### 3.5.2 - Stable +* Fix Ubuntu AppImage startup failure + +### 3.5.1 +* Update Windows usb drivers * Add ArduPilot CubeBlack Service Bulletin check * Fix visibility of PX4/ArduPilot logo in toolbar * Fix tile set count but in OfflineMaps which would cause image and elevation tile set to have incorrect counts and be incorrectly marked as download incomplete. -### 3.5.0 - Stable +### 3.5.0 * Plan GeoFence: Fix loading of fence from intermediate 3.4 code * Structure Scan: Fix loading of structure scan height * ArduPilot: Fix location of planned home position when not connected to vehicle. Issue #6840. diff --git a/QGCSetup.pri b/QGCSetup.pri index 84cc7f1f895d0f5dd1aa573ab5615e1b4ce307cd..0150338bc2958ddca8dc8804ba9bb028b3c0c7c7 100644 --- a/QGCSetup.pri +++ b/QGCSetup.pri @@ -138,8 +138,9 @@ LinuxBuild { !contains(DEFINES, __rasp_pi2__) { # Some Qt distributions link with *.so.56 QT_LIB_LIST += \ - libicudata.so* \ - libicuuc.so* + libicudata.so.56 \ + libicui18n.so.56 \ + libicuuc.so.56 } for(QT_LIB, QT_LIB_LIST) { diff --git a/deploy/px4driver.msi b/deploy/px4driver.msi index 4e2b0866d45b6735affffce5955a2b5775c22589..8bd3e5034b8219e7ab06137ab18319e425ce5477 100644 Binary files a/deploy/px4driver.msi and b/deploy/px4driver.msi differ diff --git a/src/AutoPilotPlugins/PX4/PX4TuningComponentCopter.qml b/src/AutoPilotPlugins/PX4/PX4TuningComponentCopter.qml index 4c57ab20399f02f8fff24b6de755f77cd72db68c..19aa75f84b77bd41ce5377d6c52e96f9592473fc 100644 --- a/src/AutoPilotPlugins/PX4/PX4TuningComponentCopter.qml +++ b/src/AutoPilotPlugins/PX4/PX4TuningComponentCopter.qml @@ -112,7 +112,6 @@ SetupPage { controller.getParameterFact(-1, "MC_YAWRATE_P"), controller.getParameterFact(-1, "MC_YAWRATE_I"), controller.getParameterFact(-1, "MC_YAWRATE_D"), - controller.getParameterFact(-1, "MC_YAW_FF"), controller.getParameterFact(-1, "MC_YAWRATE_FF") ] ] } } // Component - Advanced Page diff --git a/src/PlanView/GeoFenceMapVisuals.qml b/src/PlanView/GeoFenceMapVisuals.qml index 18bc19b37bacd8639d7cf676090e55fcd929bf70..6ef0e4fa05c4a72ae7c818ee959325da7e48c21a 100644 --- a/src/PlanView/GeoFenceMapVisuals.qml +++ b/src/PlanView/GeoFenceMapVisuals.qml @@ -20,6 +20,7 @@ import QGroundControl.FlightMap 1.0 /// GeoFence map visuals Item { + id: _root z: QGroundControl.zOrderMapItems property var map @@ -88,10 +89,15 @@ Item { _paramCircleFenceComponent.destroy() } + // By default the parent for Instantiator.delegate item is the Instatiator itself. By there is a bug + // in Qt which will cause a crash if this delete item has Menu item within it. Since the Menu item + // doesn't like having a non-visual item as parent. This is likely related to hybrid QQuickWidtget+QML + // Hence Qt folks are going to care. In order to workaround you have to parent the item to _root Item instead. Instantiator { model: _polygons delegate : QGCMapPolygonVisuals { + parent: _root mapControl: map mapPolygon: object borderWidth: object.inclusion ? _borderWidthInclusion : _borderWidthExclusion @@ -105,6 +111,7 @@ Item { model: _circles delegate : QGCMapCircleVisuals { + parent: _root mapControl: map mapCircle: object borderWidth: object.inclusion ? _borderWidthInclusion : _borderWidthExclusion diff --git a/src/Terrain/TerrainQuery.cc b/src/Terrain/TerrainQuery.cc index b2d1dada9cf3c539581f261fc570ba2d46e411f1..52687493587b0036794cd13261c88229b0df612a 100644 --- a/src/Terrain/TerrainQuery.cc +++ b/src/Terrain/TerrainQuery.cc @@ -489,7 +489,7 @@ void TerrainTileManager::_terrainDone(QByteArray responseBytes, QNetworkReply::N return; } - qWarning() << "Received some bytes of terrain data: " << responseBytes.size(); + qCDebug(TerrainQueryLog) << "Received some bytes of terrain data: " << responseBytes.size(); TerrainTile* terrainTile = new TerrainTile(responseBytes); if (terrainTile->isValid()) { diff --git a/src/Vehicle/Vehicle.cc b/src/Vehicle/Vehicle.cc index 35e0db7fd53409e4f281eaa40e7dadba5e12737a..43d8247653e0676edaf7704fdb98780534644fe6 100644 --- a/src/Vehicle/Vehicle.cc +++ b/src/Vehicle/Vehicle.cc @@ -1309,13 +1309,15 @@ void Vehicle::_handleAutopilotVersion(LinkInterface *link, mavlink_message_t& me // PX4 Firmware stores the first 16 characters of the git hash as binary, with the individual bytes in reverse order _gitHash = ""; - QByteArray array((char*)autopilotVersion.flight_custom_version, 8); for (int i = 7; i >= 0; i--) { _gitHash.append(QString("%1").arg(autopilotVersion.flight_custom_version[i], 2, 16, QChar('0'))); } } else { // APM Firmware stores the first 8 characters of the git hash as an ASCII character string - _gitHash = QString::fromUtf8((char*)autopilotVersion.flight_custom_version, 8); + char nullStr[9]; + strncpy(nullStr, (char*)autopilotVersion.flight_custom_version, 8); + nullStr[8] = 0; + _gitHash = nullStr; } if (_toolbox->corePlugin()->options()->checkFirmwareVersion()) { _firmwarePlugin->checkIfIsLatestStable(this);