diff --git a/ChangeLog.md b/ChangeLog.md index 468917cc08288488a4b773a485d8f5dfa4b39a5e..5ab0a216326e4072239866b85fa5ed8fa30f1315 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -8,7 +8,8 @@ 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.3 - Not yet released +### 3.5.3 - Stable +* Change Windows driver detection logic * 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 diff --git a/deploy/qgroundcontrol_installer.nsi b/deploy/qgroundcontrol_installer.nsi index 60ee26780032e6a1a9012ba28f63d65e16ae95bd..e58c820ecdbc29612afb5682944a5edcac184693 100644 --- a/deploy/qgroundcontrol_installer.nsi +++ b/deploy/qgroundcontrol_installer.nsi @@ -62,6 +62,7 @@ Section ReadRegStr $R0 HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}" "UninstallString" StrCmp $R0 "" doinstall + DetailPrint "Uninstalling previous version..." ExecWait "$R0 /S _?=$INSTDIR -LEAVE_DATA=1" IntCmp $0 0 doinstall @@ -82,24 +83,21 @@ doinstall: WriteRegExpandStr HKLM "SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps\${EXENAME}.exe" "DumpFolder" "%LOCALAPPDATA%\QGCCrashDumps" ; Only attempt to install the PX4 driver if the version isn't present - !define ROOTKEY "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\434608CF2B6E31F0DDBA5C511053F957B55F098E" + !define DRIVERKEY "SOFTWARE\MichaelOborne\driver" SetRegView 64 - ReadRegStr $0 HKLM "${ROOTKEY}" "Publisher" - StrCmp $0 "3D Robotics" found_provider notfound + ReadRegDWORD $0 HKCU "${DRIVERKEY}" "installed" + IntCmp $0 1 found_provider notfound notfound found_provider: - ReadRegStr $0 HKLM "${ROOTKEY}" "DisplayVersion" - DetailPrint "Checking USB driver version... $0" - StrCmp $0 "04/11/2013 2.0.0.4" skip_driver notfound + DetailPrint "USB Drivers already installed" + goto done notfound: DetailPrint "USB Driver not found... installing" ExecWait '"msiexec" /i "px4driver.msi"' goto done -skip_driver: - DetailPrint "USB Driver found... skipping install" done: SetRegView lastused SectionEnd