1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2025-02-20 10:54:14 +01:00

Merge branch 'next' into Mathieu/OP-958_HID_plugin_basic_cleanup

This commit is contained in:
Mathieu Rondonneau 2013-06-02 13:25:53 -07:00
commit ec3d8b89f3
10 changed files with 566 additions and 512 deletions

View File

@ -1,206 +0,0 @@
This is a credits file of people that are or have been key contributors to the OpenPilot code base in this Git repository.
Without the work of the people in this file and many that are not who help the community, OpenPilot would not be what it is today.
It is sorted alphabetically by name and formatted so that it allows for easy grepping and beautification by scripts.
The fields are:
Name (N)
Description of work (D)
Current maintainer function (M)
----------
N: Connor Abbott
D: Win32 OpenPilot port
N: David Ankers
D: Co-founder, Project Coordination
D: Minor GCS infrastructure, updating the credit file
M: Admin
N: Sergiy Anikeyev
D: Improvments to Camera Gimbal control
N: Pedro Assuncao
D: Initial GCS Settings Gadget work
N: Fredrik Arvidsson
D: GCS Setup Wizard
M: GCS Setup Wizard
N: Werner Backes
D: Port of CopterControl to PS3 Move Controller (MoveCopter)
N: Jose Barros
D: Next-Gen OP Map Lib, Y-Modem Library, Uploader Plugin
D: OP Bootloader, AHRS Bootloader, OPUploadTool and much else
M: Bootloader, OP MAP Lib
N: David "Buzz" Carlson
D: 3D ModelView GCS Plugin, sponsor of HITL merge work and XPlane addition
N: James Cotton
D: Multiplatform HID implementation (firmware & GCS), GCS Joystick control
D: Posix OpenPilot work and Mac implementation
D: Firmware implementation of Professor Schinstock's INS/GPS
D: Android GCS and much else
M: Architecture co-lead, Android GCS Lead
N: Steve Doll
D: Much Artwork, Logo rework, Welcome page design
N: Piotr Esden-Tempski
D: Floss-JTAG Rev A, 4-layer initial design
N: Richard Flay
D: Multiple fixes / Review guru
N: Darren Furniss
D: GCS Artwork and Android GCS Artwork
N: Frederic Goddeeris
D: I2C work and FreeRTOS work, MK integration
D: EagleTree OSD implementation
N: Daniel Godin
D: Sponsor: Notify Plugin for the GCS
N: Bani Greyling
D: GCS Scope plugin
N: Nuno Guedes
D: 3D artwork, moving surfaces and work on ModelView
D: PFD Artwork
N: Erik Gustavsson
D: Attitude LPF improvments to Self Level
N: Peter Gunnarsson
D: GCS Core Developer
D: Multiple GCS plugins, Gadget foundations, UAVObject viewer
N: Dean Hall
D: Creator of http://pythononachip.org
N: Joe Hlebasko
D: Early versions of Main Board & Production OP GPS
M: Hardware Architecture Team
N: Andy Honecker
D: Hardware design review and optimisation
N: Mark James
D: Some of Silk Icon set used in GCS - http://www.famfamfam.com/lab/icons/silk
N: Sami Korhonen
D: GPS Module, Spektrum RC Module, OSD work
M: OpenPilot OSD
N: Thorsten Klose
D: Embedded STM32 infrastructure
N: Hallvard Kristiansen
D: GCS Artwork, Quad layout diagrams
N: Mike Labranche
D: Tab bar Telem Monitor
N: Edouard Lafargue
D: GCS Dial Plugins, GCS PFD Plugin, GCS GPS plugin, GCS Config plugin
D: Artwork including standard display dials
N: Matt Lipski
D: Deluxe Dials Set artwork, (Artificial Horizon, Compass, Turn Indicator)
N: Les Newell
D: Advanced mixer matrix, SPI protocol based on UAVObjects, feedforward
N: Ken Northup
D: 3D Modelling, Easystar adaption from FMS
N: Guy McCaldin
D: Artwork and design including work on the Deluxe Dial Set
N: Alessio Morale
D: Firmware/Architecture Lead
N: Cathy Moss
D: Hardware design Lead: Gen 2 Mainboard, PipXtreme, Current Sensor
D: PipXtreme designer, creator OP Map Plugin
N: Angus Peart
D: Co-founder, Principal hardware architect.
D: Hardware design of early OpenPilot, AHRS, GPS and other hardware
N: Dmytro Poplavskiy
D: QML PFD, QML Welcome page
M: Qml plugins
N: Eric Price
D: IL2 HITL GCS Plugin, Posix OpenPilot, Advanced stabilisation module
M: SITL Posix, SLAM work
N: Richard Querin
D: Graphic Design, OpenPilot Logo
N: Laurent Ribon
D: The GLC_lib as used in the ModelView Plugin
D: See: http://www.glc-lib.net/
N: Julien Rouviere
D: GCS Framework and Plugins for the GCS
N: Zik Saleeba
D: Initial schematic based on Zik's Flying Fox schematic
N: Professor Dale Schinstock
D: Lead INS Developer
D: Creator of the OpenPilot INS / EKF
N: Professor Kenn Sebesta
D: Lead Fixed Wing Developer CC3D / Controls
D: GCS improvments including HiTL Merge
M: Fixed Wing support CC3D
N: Oleg Semyonov
D: Core Developer & Project organisation
D: TxPID module
M: CameraStab module
M: Common part of multi-platform packaging system
M: Windows NSIS Installer
N: Stacey Sheldon
D: Core Embedded Developer
D: SPI protocol for AHRS, I2C rewrite and much core work
N: Troy Schultz
D: INS design review and optimisation
N: Dr. Erhard Siegl
D: Configuration engine for the GCS
N: Pete Stapley
D: PPM inputs
N: Rowan Taubitz
D: Hardware debugging and testing, creation of 2-layer Floss-JTAG Rev B
D: Creation of Next-Gen FOSS-JTAG board
N: Andrew Thoms
D: IP Telemtry plugin for the GCS
D: Helicopter support code and mixing for CCPM
N: Vassilis Varveropoulos
D: Co-founder, Principal embedded software architect.
D: Module architecture and UAVTalk/UAVObjects implementation.
N: Alex Vrubel
D: Russian translation of the GCS
N: Brian Webb
D: Modem lead developer
M: OP Modems
N: Dmitriy Zaitsev
D: AeroSim-RC HiTL plugin

View File

@ -1,205 +0,0 @@
Short summary of changes. For a complete list see the git log.
2012-11-17
Advanced camera stabilization features.
They include optional manual control input filtering (moved from camera
stabilization to manual control input and now available also for main controls),
optional airframe attitude filtering used by camera stabilization, and optional
camera actuator feed forward to improve gimbal response.
--- RELEASE-12.10.2 --- Mayan Apocalypse Release ---
List of issues resolved in this maintenance release:
http://progress.openpilot.org/issues/?filter=10361
OP-459, OP-545, OP-674, OP-679, OP-685, OP-686, OP-687, OP-690, OP-691,
OP-702, OP-703, OP-714, OP-715, OP-716, OP-721, OP-728, OP-746, OP-748,
OP-749, OP-750, OP-758, OP-759, OP-760
2012-11-12
Implemented smoothing filter for accelerometer data.
Added support for Mode 3 and Mode 4 to the TX Configuration Wizard.
--- RELEASE-12.10.1 ---
2012-10-26
Temporary disabled AutoTune GCS GUI. It was listed as an experimental
feature in the previous release, there were however a few cases where
it did not behave as expected.
--- RELEASE-12.10 ---
2012-10-06
Receiver port can now be configured as PPM *and* PWM inputs.
Pin 1 is PPM, other pins are PWM inputs.
2012-07-27
Added the ability to load stylesheets from external file according to operating system:
macos.qss, linux.qss, windows.qss
Files should be placed inside the app folder.
2012-07-27
Several UI changes.
MixerCurveWidget refactoring, now as a simple and advanced view.
2012-07-27
Added "advanced mode" option to general settings. Right now it only shows the hidden apply buttons.
To enable go to tools->options->General and click one of the checkboxes to give focus to the form,
then press F7
2012-07-27
Made the flight mode switch and accessory pots move according to user input on the input wizard.
2012-07-27
Changed the board pictures on the uploader widget
2012-07-27
Add more verbose debug output on the UAVOBJECTS saving code.
2012-08-11
CopterControl can now emulate an 8-channel USB HID joystick. Primarily,
this lets you use any RC transmitter with flight simulators on your PC.
2012-07-20
AeroSimRC simulator plugin is now included into the Windows distribution
(will be installed into .../OpenPilot/misc/AeroSIM-RC directory). Still
being an experimental development tool, it could be used to play with
HITL version 2. Other platforms include udp_test utility which can be
used to check the connectivity with AeroSimRC plugin running on Windows
machine.
2012-07-10
On Windows the installation mode was changed from per-user to per-machine
(for all users) installation. It is recommended to completely uninstall
previous version before installing new one to remove per-user installed
files. Per-machine installation requires elevated (administrator) previleges
during install. But since the same rights are now required to install
optional CDC driver (virtual communication port), it was deemed acceptable.
2012-06-04
AeroSimRC support merged into next
2012-05-26
VirtualFlybar which allows a more aggressive flight mode than rate mode
support. Also PiroCompensation added.
2012-05-26
Revert some UI changes that didn't work consistently between OSX and Windows.
2012-05-24
Merged the updated firmware for the PipXtreme, thanks to Brian for a lot of
work on this.
2012-05-04
Support for CC3D. This involved changes to various things such as the sensors
being split from AttitudeRaw to Accels,Gyros,Magnetometer. A single firmware
image fw_coptercontrol will run on both CC and CC3D. When compiling the
bootloader one must set the HW_REVISION to the appropriate value. 0x01 is for
CC and 0x02 is for CC3D. If the wrong bootloader is installed the firmware
will not run.
2012-05-02
Reduction in the memory usage due to the UAVObject metadata. Now the update
periods are using a smaller data type and the various flags relating to access
controls and update modes are stored in a bitfield. The UAVObjectBrowser has
not been updated to allow these modes to be easily changed.
2012-03-31
Support for ground vehicle configuration has been added to the the GCS.
2012-02-14
New QML based system to allow more flexible UI. Upgraded stabilization
configuration.
2012-01-02
CC FW now supports USB Virtual Com Port (VCP/CDC) in addition to the original HID interface
New ComUsbBridge module can bridge any serial port to the USB CDC port
CC FW now detects repeated faults during init and boots with default hwsettings
2012-01-02
Added new camera stabilization features: AxisLock mode and LPF.
2011-12-10
Merged a change that sorts the UAVO fields based on size. Because this changes
all of the objects, erase all existing flash files based on this.
2011-11-04
New Spektrum/JR satellite receiver driver implementation.
It now provides explicit selection of DSM2 (and DSMJ), DSMX (10bit) and
DSMX (11bit) serial protocol variations to better serve different frame
and resolution modes. The protocol name used now is DSM instead of
previously used Spektrum to make it less ambiguous when used with JR
2.4GHz radios.
2011-10-20
Inputs can be remapped to outputs to allow up to 10 channels of control. The
receiver inputs remap as follows:
Receiver 3 because output channel 7
Receiver 4 because output channel 8
Receiver 5 because output channel 9
Receiver 6 because output channel 10
2011-10-11
Fix for the Mac telemetry rates and specifically how long enumeration took.
2011-10-08
Make the flash chip need to be have bad magic for a full second before erasing
settings. Should avoid random lost settings.
2011-09-12
Max rate now ONLY applies to attitude and axis lock mode. Manual rate is the
only term that limits the rate mode now (and in axis lock when you push stick
only manual rate applies). Also integrals are reset when unused.
2011-09-09
Some large updates to the input system. Now multiple receivers can be
connected at once. A wizard was added for configuring the input channels. A
specific collective pitch channel was added.
2011-09-04
Improvements to the failsafe handling code for inputs. PWM power off is now
detected properly. Powering on transmitter for Spektrum Satellite no longer
causes a glitch on servos.
2011-08-10
Added Camera Stabilization and a gui to configure this. This is a software
selectable module from the GUI. However, a restart is required to make it
active. The GUI does not currently expose the configuration for using the
transmitter to change the view angle but this is supported by the hardware.
2011-08-10
By default a lot of diagnostic objects that were enabled by default are now
disabled in the build. This include TaskInfo (and all the FreeRTOS options
that provide that debugging information). Also MixerStatus, I2CStatus,
WatchdogStatus and RateDesired. These can be reenabled for debugging with
-DDIAG_ALL.
2011-08-04
Fixed packaging aesthetic issues. Also avoid runtime issues on OSX Lion by
disabling the ModelView and Notify plugins for now (sorry).
2011-07-29
Added support for PPM receivers from James W. Now all 4 interfaces (R/C
standard PWM, combined PPM (MK), Spektrum satellite, Futaba S.Bus) are
supported and configurable through the GCS hardware configuration tab.
2011-07-17
Updated module initialization from Mathieu which separates the initialization
from the task startup. Also implements a method to reclaim unused ram from
initialization and end of memory for the FreeRTOS heap.
2011-07-12
Improvements to the stabilization code. Included a LPF on the gyros to smooth
out noise in high vibration environments. Also two new modes: axis-lock and
weak leveling. Axis-lock will try and hold an axis at a fixed position and
reject any disturbances. This is like heading-hold on a heli for the tail but
can be useful for other axes. Weak leveling is rate mode with a weak
correction to self level the craft - good for easier rate mode flying.
2011-07-07
Dynamic hardware configuration from Stac. The input type is now
selected from ManualControlSettings.InputMode and the aircraft must be rebooted
after changing this. Also for CopterControl the HwSettings object must
indicate which modules are connected to which ports. PPM currently not
working.

View File

@ -1,20 +0,0 @@
Here is a list of some known unresolved issues. If an issue has JIRA ID [OP-XXX], you may track it using the
following URL: http://bugs.openpilot.org/browse/OP-XXX
+ Only French translation is updated, use English for other locales or help with translations.
+ Radio Wizard confused by a reversed throttle, fix it on your transmitter before starting wizard.
+ Radio Wizard Throttle display does not show full range properly.
+ [Windows 8] USB Driver is broken.
+ Firmware Update Instructions on Firmware Tab not entirely accurate for all upgrade paths.
+ Tricopter's using Vehicle Wizard need to check servo does not need reversed manually.
+ XAircraft ESCs uses non-standard PPM range which may cause issues with Vehicle Wizard.
+ Spectrum Satellite Receivers setup in Radio Wizard may have wrong protocol set.
+ Old Intel 965 have an OpenGL bug that turns the QML PFD black and while.
+ [OP-732] Import UAV Settings for inactive modules crashes the running firmware (board restarts).
Workaround: update firmware, power cycle, enable modules, power cycle, import configuration.
+ [OP-747] Board infinitely reboots itself after firmware upgrade (settings erase firmware is a workaround).
+ [OP-723] GCS uses the system language ot the 1st run. After restart it uses English (can be changed later).
+ [OP-725] GCS camera stab config error message disappears too fast (but config error is cleared as it should)
+ [OP-767] GCS does not send AttitudeActual packets over serial port when GPS is connected and system is armed
+ [OP-768] GCS does not show UAV position on the map (master or next CC branches, but works in Revo branches)
+ [OP-769] Can't enter "12,45" on German system. Workaround: change GCS language (in fact, locale) to German.

View File

@ -1,42 +1,64 @@
The OpenPilot code is licensed under the GPLv3. There are a few minor exceptions to this so please see
the headers of all source code for copyright and license information. The full text of the GPLv3 can be
read here: http://www.gnu.org/licenses/gpl-3.0.txt
The OpenPilot code is licensed under the GPLv3, there are a few minor exceptions to this so please see the headers of all source code for copyright and license information.
The full text of the GPLv3 can be read here: http://www.gnu.org/licenses/gpl-3.0.txt
Artwork is licensed under the Creative Commons BY-SA v3 license.
Artwork is licensed under the Creative Commons BY-SA v3 license.
Documentation including translations is also licensed under the Creative Commons BY-SA v3 license.
For details please see: http://creativecommons.org/licenses/by-sa/3.0/
Licenses for the hardware files are included in the directories that contain the hardware, not all items are under the same license and you must check the files for each individual hardware design.
Licenses for the hardware files are included in the directories that contain the hardware, not all items
are under the same license and you must check the files for each individual hardware design. Please note
that some of the hardware files are licensed under the Creative Commons BY-NC-SA v3 license, this is a
non-commercial license. OpenPilot is purely a non-profit hobby project with zero commercial intent. If you
just want people to work for free or do your R&D for zero cost, please find a project that allows this as
that not what OpenPilot is about. We are hobbyists and we want to share our work with fellow hobbyists,
additionally we need to ensure the future of the project and make sure it is sustainable.
Please note that some of the hardware files are licensed under the Creative Commons BY-NC-SA v3 license, this is a Non-commercial license. OpenPilot is purely a non-profit hobby project with zero commercial intent, if you just want people to work for free or do your R&D for zero cost, please find a project that allows this as that not what OpenPilot is about.
We are hobbyists and we want to share our work with fellow hobbyists, additionally we need to ensure the future of the project and make sure it is sustainable.
If you wish to sell/distribute OpenPilot hardware or derivatives of OpenPilot hardware that are under a
non-commercial license, please get in touch with one of the members of OpenPilot Foundation's
administration committee. We can then negotiate a license waiver where a portion of the profits are donated
to the OpenPilot Project to ensure its survival and future progression. Please note that this is in
reference to PCB and Schematic designs. For people wishing to combine OpenPilot in to a Ready to Fly
solution, this is perfectly fine as long as OpenPilot PCBs are bought from the OpenPilot project or one
of the approved distributors.
If you wish to sell / distribute OpenPilot hardware or derivatives of OpenPilot hardware that are under a non-commercial license, please get in touch with one of the members of OpenPilot Foundation's administration committee. We can then negotiate a license waiver where a portion of the profits are donated to the OpenPilot Project to ensure its survival and future progression. Please note that this is in reference to PCB and Schematic designs, for people wishing to combine OpenPilot in to a Ready to Fly solution, this is perfectly fine as long as OpenPilot PCBs are bought from the OpenPilot project or one of the approved distributors.
For details the non-commercial license please see: http://creativecommons.org/licenses/by-nc-sa/3.0/
A quick summary of what this license talk means, firstly using any work that is licensed under a form of
the Creative Commons BY license, requires that credit is to be given. The SA or Share Alike part of the
license means that you must also use the same license in any work derived from the work under this license.
For details the Non-Commercial license please see: http://creativecommons.org/licenses/by-nc-sa/3.0/
Hardware
The items under the non-commercial license means exactly that: they are for non-commercial use only and
any derivatives that are made are also covered by the same non-commercial license. The hardware files
under a non-commercial license are for reference and for fellow hobbyists; they are not to be used to
generate profit of any kind. Please note that even the OpenPilot project its self is a non-profit project.
A quick summary of what this license talk means, firstly using any work that is licensed under a form of the Creative Commons BY license, requires that credit is to be given.
The SA or Share Alike part of the license means that you must also use the same license in any work derived from the work under this license.
Hardware
The items under the non-commercial license means exactly that: they are for non-commercial use only and any derivatives that are made are also covered by the same non-commercial license. The hardware files under a non-commercial license are for
reference and for fellow hobbyists; they are not to be used to generate profit of any kind. Please note that even the OpenPilot project its self is a non-profit project.
For all items both non-commercial and items that allows commercial use, the OP logo must be placed on any work or derivative work and be clearly visible. If any web addresses are present on the hardware, these are also required to remain on any replications or any derivative work.
For all items both non-commercial and items that allows commercial use, the OP logo must be placed on any
work or derivative work and be clearly visible. If any web addresses are present on the hardware, these
are also required to remain on any replications or any derivative work.
Documentation
In documentation, authors names must be kept along with any logos. If documentation is for a physical product such as a schematic, the OpenPilot logo should be shown and any web addresses also displayed on the final physical hardware it was derived from.
In documentation, authors names must be kept along with any logos. If documentation is for a physical
product such as a schematic, the OpenPilot logo should be shown and any web addresses also displayed on
the final physical hardware it was derived from.
Artwork
If artwork is to be reused, the OpenPilot project should be credited. If for example this is a software application, credit should be given on the application splash screen or in a separate part of the application that is visible to users. For example the Help / About screen.
If artwork is to be reused, the OpenPilot project should be credited. If for example this is a software
application, credit should be given on the application splash screen or in a separate part of the
application that is visible to users. For example the Help/About screen.
Contact Us
If you are unsure, please contact one of the OpenPilot Foundation's administrators. Additionally, if you plan to use parts of the OpenPilot project in your own work, we would appreciate it if you get in touch with us anyway, it is possible we could combine efforts or have some work already in progress that might be helpful. This of course is our baby and we want to see what great things people do with it as well.
If you are unsure, please contact one of the OpenPilot Foundation's administrators. Additionally, if you
plan to use parts of the OpenPilot project in your own work, we would appreciate it if you get in touch
with us anyway, it is possible we could combine efforts or have some work already in progress that might
be helpful. This of course is our baby and we want to see what great things people do with it as well.
A final note, OpenPilot is a non-profit for fun project and we have only volunteers. A great deal of time, money and effort has been donated to this project; please respect the people that are part of it and their generosity. OpenPilot is funded entirely by the generous people who donate money and time to the community and help it grow. Giving full and proper credit is not only a legal requirement of the CC-BY-SA license, it is also the right thing to do.
A final note, OpenPilot is a non-profit for fun project and we have only volunteers. A great deal of time,
money and effort has been donated to this project; please respect the people that are part of it and their
generosity. OpenPilot is funded entirely by the generous people who donate money and time to the community
and help it grow. Giving full and proper credit is not only a legal requirement of the CC-BY-SA license,
it is also the right thing to do.
Buying hardware from the OpenPilot project is very important to the survival and continuing progress of the project, a project like OpenPilot is extremely expensive to produce.
Buying hardware from the OpenPilot project is very important to the survival and continuing progress of
the project, a project like OpenPilot is extremely expensive to produce.

View File

@ -1,16 +1,18 @@
This is the Milestones file of the OpenPilot project, its intent is to record the major accomplishments achieved by people using the OpenPilot platform and who gets the karma for performing them.
This is the Milestones file of the OpenPilot project, its intent is to record the major accomplishments
achieved by people using the OpenPilot platform and who gets the karma for performing them.
The Contributors list in the About dialog of the GCS application records the developers and contributors.
This file is different as it is aimed at recording and giving credit to the people who achieve milestones
in the use of OpenPilot.
The CREDITS.txt in SVN records the developers and the achievements made by each individual; this file is different as it is aimed at recording and giving credit to the people who achieve milestones in the use of OpenPilot.
Notice: now we have the rule: no video - it has never happened. So please make sure you have video
recorded if you want to submit your milestone (listed below or not yet) to this list.
The fields are:
Milestone description (M)
Credited to (C)
Date (D)
Video (V) - Optional link to video showing milestone
(M) Milestone description
(C) Credited to
(D) Date
(V) Link to video showing milestone
M: OpenPilot driving EagleTree OSD
C: Frederic Goddeeris
@ -147,7 +149,6 @@ C: Sergey Solodennikov (alconaft43)
D: August 2011
V: http://www.youtube.com/watch?v=8SrfIS7OkB4
M: First CopterControl Return to Base Fixed Wing
C: Eric Price (Corvus Corax)
D: August 2011
@ -168,6 +169,11 @@ C: Kavin Gustafson (k_g)
D: October 2012
V: http://www.youtube.com/watch?v=MGO68TqIwKk
M: First successful flight using just a mobile phone
C: Jose (please complete details), demoed in Portugal
D:
V:
M: First CopterControl over 10km FixedWing navigation flight
C:
D:
@ -178,17 +184,6 @@ C:
D:
V:
M: First successful flight using just a mobile phone
C: Jose (please complete details), demoed in Portugal
D:
V:
M: First Revo Altitude Hold using Sonar
C:
D:
V:
M: First CopterControl Navigation on RC Ground Vechicle
C:
D:
@ -199,17 +194,18 @@ C:
D:
V:
M: First Revo Navigated flight on a FixedWing
C: It got done somewhere along the line, likely Corvus.
M: First Revo 5km Navigated flight on a FixedWing
C: Eric Price (Corvus Corax)
D: March 2012
V:
M: First Revo Navigated flight on a MultiRotor
C: It got done somewhere along the line, James or Sami
M: First Revo Navigated flight on a Heli
C:
D:
V:
M: First Revo 1km Navigated flight on a MultiRotor
C:
D:
@ -220,10 +216,10 @@ C:
D:
V:
M: First Revo 5km Navigated flight on a FixedWing
C: Eric Price (Corvus Corax)
D: March 2012
V:
M: First Revo Navigated flight on a Heli
C:
D:
V:
M: First Revo 1km Navigated flight on a Heli
C:
@ -235,6 +231,11 @@ C:
D:
V:
M: First Revo Altitude Hold using Sonar
C:
D:
V:
M: First use of the Magic Waypoint feature
C:
D:
@ -251,7 +252,7 @@ D:
V:
M: First Auto landing on a MultiRotor using Revo
C:
C: Sami (please complete details)
D:
V:
@ -264,4 +265,3 @@ M: First Auto landing on a Heli using Revo
C:
D:
V:

449
WHATSNEW.txt Normal file
View File

@ -0,0 +1,449 @@
Short summary of changes. For a complete list see the git log.
--- RELEASE-13.06 --- Italian Stallion Release ---
This is the first Revolution software release which also supports CC, CC3D, OPLinkMini and
unreleased yet OP OSD boards. This is a major change: from different toolchains and build
system to the whole source code reformatting according to project style guidelines. The goal
of this release is to provide CC-style features for new Revo platform + radio using Revo's
internal modem and external OPLinkMini board. All advanced features like Altitude Hold,
Position Hold, Guidance, Return to Home, AutoLanding etc. are not released yet and planned
for following releases.
Some video tutorials:
http://wiki.openpilot.org/display/DocDE/OpenPilot+Tutorials
Important Release Notes:
- Since this release the packaged distribution does not contain firmware files in a folder.
They are now integrated into the GCS so always are up to date. To update you must use
either Vehicle Setup Wizard (big green button on the Welcome GCS tab) or new Auto-Update
button on the Firmware tab.
- New Auto-Update feature simplifies all OpenPilot board firmware updates. Just click it
and follow on-screen directions to reflash your board (CC, CC3D, OPLinkMini, Revolution
or OSD prototypes). Internally it is the same as Rescue but uses embedded firmware images,
no need to browse for them anymore.
- New bootloaders are REQUIRED for this release to support some of new features like settings
erase and some others. As always, bootloaders can be updated without any special programmer
hardware using bootloader updaters firmware. Currently F1 boards (CC, CC3D, OPLinkMini)
require bootloader version 4 or higher, and F4 boards (Revolution, OSD prototype) require
bootloader version 5 or higher. Check the wiki for details of how to update them:
http://wiki.openpilot.org/display/BUILDS/Bootloader+update
- New feature: settings erase option. In the past some special settings erase firmware was
used to erase bad or incompatible settings from CC/CC3D boards. Now it is deprecated, and
this functionality is now integrated into bootloader and firmware. To erase any board
settings you must have latest bootloader. Then enter DFU (boot) mode (using Halt or Rescue
function) and click "Erase settings" button on the Firmware tab and follow on-screen
instructions. This will NOT work with older bootloader, and the button will be disabled.
- On Linux you should remove OpenPilot package if was installed, then install new one. This
is a known issue and likely be fixed later.
- On Windows there is a CDC driver installer option. This is an optional USB virtual serial
port useful, for example, for updating your GPS configuration using U-Blox u-Center software.
But it is NOT required to configure boards. If not installed, virtual serial port features
will not be available. This driver is not signed by Microsoft, but in fact it uses serial
port drivers from Windows and only driver information INF file is supplied by the OpenPilot.
Hence it is safe to install.
- Due to changes in USB descriptors to support new features, USB drivers on Windows must be
updated. If after Rescue or Wizard or Auto-Update button the GCS cannot connect to the board,
it may be due to this issue. To resolve you should remove old drivers (ones with yellow
exclamation mark) and allow Windows to find them again. Here is how:
Windows XP:
- click on the desktop "My Computer" icon and select "Properties";
- select the "Hardware" tab by clicking on it once;
- select the "Device Manager" tab by clicking on it;
- scroll down the list until you see the "Universal Serial Bus Controllers" selection.
Click it to expand the list of USB drivers. Right-click on the driver(s) you wish to
uninstall and select the "Uninstall" function. The driver will be uninstalled.
Windows 7/Vista:
- on the desktop right-click the "Computer" icon and select "Properties";
- select "Device Manager" in the upper left-hand corner of the window;
- scroll down the list until you see the "Universal Serial Bus Controllers" selection.
Click it once to expand the list of USB drivers. Right-click on the driver(s) you wish
to uninstall and select the "Uninstall" function. The driver will be uninstalled.
Then disconnect the board from USB, wait few seconds and connect it back. Windows should find new
drivers and install them properly.
- GCS now uses system default language (only French and English are available yet, please
contribute). You can choose language using GCS Options dialog if you have existing GCS
configuaration.
- This release provides only CC3D-class features + radio. For example, it does NOT use
magnetometers to correct yaw and uses simple complimentary filter for attitude estimation.
So you should expect from it only CC3D-like performance. More advanced features will be
enabled step by step in the following releases with some help from new contributors,
we hope. Remember that the first Revo hardware batch was inended for developers, not
end users.
- Lots of help tooltips were added to the GCS. Try watching them when tuning.
- If GCS crashes when switching to the Flight data tab, it usually means your PC needs newer
video drivers. That tab contains ModelView widget which uses OpenGL. It is known to crash
in some cases.
- Sensor calibration is not final. It will be reworked completely to increase its accuracy
and make it easier to use.
- AltitudeHold mode is enabled, but it is not officially released. Do not expect it to be of
production quality. But you may play with it and report your issues and suggestions. It is
recommended to use some foam to protect baro sensor from wind and light. Also note that
throttle stick in AltitudeHold mode is used to control vertical velocity.
- Tuning your system please set PIDs as tight as possible for better stabilisation. To soften
the stick response if necessary use new Responsiveness options. This will result in better
stabilisation, and at the same time soft or sharp response according to your preferences.
- There is no configuration options for Radio module in the Revo config except for Radio
enable/disable and output power. This is intentional because all configuration should be
done using its paired ground OPLink coordinator. Enable radio in the Revo, save and
disconnect Revo from USB. Power it from external supply to continue. Then connect OPLink
board to USB and scroll down the GCS config widget to find OPLink icon in the end of list.
This icon is only available when OPLink is connected and recognised, this also requires new
bootloader and matching to Revo and GCS firmware on the OPLink board. To pair select the Revo
side Radio address in the list of found boards, select it, click Add to add to the list of
paired radios and click Save. After USB unplugging and plugging back your OPLink should show
"Connected", and you can continue with configuration.
Flight code changes:
- initial version of Revo code;
- initial version of OPLinkMini code;
- CopterControl/CC3D code reworked to reuse parts of Revo code;
- switched to new ARM-supported GCC 4.7 toolchain with hardware floating point support;
- major code cleanup and use of compiler warning flags to early catch errors;
- major directory and Makefiles reorganisation and cleanup;
- all source code fixed to use float variables instead of doubles (to use hardware FPU);
- added multi-binding support for OPLinkMini;
- added frequency hopping for Revo and OPLinkMini;
- added auto-configuration for OPLinkMini remote modem / Revo;
- replaced entire flash generation code;
- new U-Blox GPS binary protocol parser;
- added STM32 DSP library;
- updated STM32 CMSIS library;
- updated STM32 USB OTG driver;
- updated STM32 F1 StdPeriph driver library;
- updated STM32 F4 StdPeriph driver library;
- updated FreeRTOS (real-time operating system used by the flight code to run many tasks);
- PyMite moved to a library;
- fixed nasty bug in PyMite Makefile, single file was rebuilt 5 times fo no reason;
- added configurable accel/gyro rates;
- added visualisation of errors in bootloader updater;
- added numerous sanity checks to the flight code to prevent unsafe arming;
- new flash file system, much faster and higly optimised;
- Revo settings are now stored in embedded MCU flash freeing up external one for flight logs;
- OPLinkMini now stores settings in the MCU flash using FlashFS too;
- a catalog of known flash types is used to support different flash types by the same firmware;
- fixed broken overo submodule remote repository link;
- fixed DSMX protocol error with some Tx/Rx combintions;
- added new pios_*.h headers to support commonly used constants, functions and defines;
- numerous fixes for data alignment and memory allocation strategy;
- new bootloaders to support more features (for example, board settings erase);
- added new feature to erase settings without special firmware;
- removed CC/CC3D setting erase firmware (now not necessary due to new erase feature);
- introduced new delayed callback scheduler to run modules from a single task;
- many changes to AeroSim-RC simulator interface;
- fixed broken debug pins API;
- fixed few bugs in the EKF code;
- introduced bootloader updater for F4 boards (including Revo and OSD);
- some changes in RAM and flash memory partitioning to better utilize resources;
- changes in bootloader to allow remote reboot via serial port or radio modem;
- the EKF "Huge Formula" is replaced by optimised set of of loops to make it editable;
- Cyr's attitude patch is ported from CC3D to Revo;
- added magnetometer options (mags are disabled by default for Revo complimenary filter);
- advance camera stabilisation is now officially released;
- fixed numerous internal firmware bugs (too many to list here).
GCS code changes:
- nice loading splash screen;
- now GCS uses system language by default if translation is available, English otherwise;
- French translation officially added. Please help with other languages;
- fixed some crashes of uploader gadget;
- fixed double config read on restore;
- improvements in GCS options dialog handling;
- optimised option dialog creating;
- added UI tooltips for many options;
- removed unused yet options from configuration UI;
- removed GCS config dialog on the first run, one default is used now if missing;
- added Revo configuration page, similar to CC/CC3D one;
- added OPLinkMini configuration page;
- hardware options are now dynamically enabled/disabled to allow supported configurations only;
- new artwork for all boards everywhere;
- optimised some 3D models;
- new About dialog showing version info and contributors list;
- fixed badly broken HiTL options dialog;
- fixed compilation problem on OSX, now GCS should be compatible with OSX 10.5+;
- major vehicle config cleanup with lazy creation (speeds up GCS start);
- UI config pages improvements (responsiveness, etc)
- new auto-update feature added, *.opfw firmware files removed from distributables;
- anti-aliased scope plugin;
- numerous code fixes and cleanups (too many to list here);
- USB HID code is replaced by new cross-platform hidapi library to fix old Linux/OSX problems.
Common parts:
- added simple toolchain install make targets;
- added self-hosted toolchains to ensure that they're always available;
- added support for globally istalled tools used by many working copies;
- added Windows bootstrap script to pull all other build tools;
- added unit testing framework, also supported by Bamboo CI server and agents;
- added code style formatting make targets, easy to use by developers;
- added doxygen make targets. The documentation still must be completely revised, though;
- enforced global line ending policy, source files are updated accordingly;
- reworked packaging to provide correct dependencies and safe multi-threaded builds;
- multiply renames of board names and directories, now we have correct names;
- fixed dependencies in Makefiles, now 'make -j' works reliably;
- CLEAN_BUILD make option is deprecated, use 'package' or 'clean_package' instead;
- simposix elf is now included into linux distribution and can be run with default GCS settings;
- revised 'make help' message;
- updated Windows driver to support Revolution and use correct board names.
Android GCS:
- not officially released yet;
- full rewrite has been started;
Infrastructure:
- Bamboo continuous integration server is actively used;
- around 10 build agents running 4 different operating systems are set up;
- every push to any branch is now build-tested, and unit tests run are performed;
Due to major rework of all code and integration of Revo code into mainline (next) it is almost
impossible to list all corresponding JIRA issues for the list above. Some of them can be found
using this link:
http://progress.openpilot.org/issues/?filter=10860
OP-678, OP-693, OP-719, OP-747, OP-761, OP-769, OP-770, OP-772, OP-792, OP-807, OP-812, OP-816,
OP-817, OP-820, OP-821, OP-843, OP-846, OP-854, OP-855, OP-856, OP-864, OP-867, OP-871, OP-873,
OP-874, OP-875, OP-879, OP-885, OP-886, OP-888, OP-889, OP-890, OP-891, OP-892, OP-893, OP-894,
OP-895, OP-896, OP-897, OP-898, OP-899, OP-900, OP-903, OP-905, OP-906, OP-907, OP-910, OP-912,
OP-917, OP-920, OP-925, OP-926, OP-928, OP-935, OP-936, OP-939, OP-952, OP-955, OP-957, OP-968,
OP-969, OP-970, OP-977, OP-980
2012-11-17
Advanced camera stabilization features.
They include optional manual control input filtering (moved from camera stabilization to manual
control input and now available also for main controls), optional airframe attitude filtering
used by camera stabilization, and optional camera actuator feed forward to improve gimbal response.
--- RELEASE-12.10.2 --- Mayan Apocalypse Release ---
List of issues resolved in this maintenance release:
http://progress.openpilot.org/issues/?filter=10361
OP-459, OP-545, OP-674, OP-679, OP-685, OP-686, OP-687, OP-690, OP-691,
OP-702, OP-703, OP-714, OP-715, OP-716, OP-721, OP-728, OP-746, OP-748,
OP-749, OP-750, OP-758, OP-759, OP-760
Here is a list of some known unresolved issues. If an issue has JIRA ID [OP-XXX],
you may track it using the following URL: http://bugs.openpilot.org/browse/OP-XXX
+ Only French translation is updated, use English for other locales or help with translations.
+ Radio Wizard confused by a reversed throttle, fix it on your transmitter before starting wizard.
+ Radio Wizard Throttle display does not show full range properly.
+ [Windows 8] USB Driver is broken.
+ Firmware Update Instructions on Firmware Tab not entirely accurate for all upgrade paths.
+ Tricopter's using Vehicle Wizard need to check servo does not need reversed manually.
+ XAircraft ESCs uses non-standard PPM range which may cause issues with Vehicle Wizard.
+ Spectrum Satellite Receivers setup in Radio Wizard may have wrong protocol set.
+ Old Intel 965 have an OpenGL bug that turns the QML PFD black and while.
+ [OP-732] Import UAV Settings for inactive modules crashes the running firmware (board restarts).
Workaround: update firmware, power cycle, enable modules, power cycle, import configuration.
+ [OP-747] Board infinitely reboots itself after firmware upgrade (settings erase firmware is a workaround).
+ [OP-723] GCS uses the system language ot the 1st run. After restart it uses English (can be changed later).
+ [OP-725] GCS camera stab config error message disappears too fast (but config error is cleared as it should)
+ [OP-767] GCS does not send AttitudeActual packets over serial port when GPS is connected and system is armed
+ [OP-768] GCS does not show UAV position on the map (master or next CC branches, but works in Revo branches)
+ [OP-769] Can't enter "12,45" on German system. Workaround: change GCS language (in fact, locale) to German.
2012-11-12
Implemented smoothing filter for accelerometer data.
Added support for Mode 3 and Mode 4 to the TX Configuration Wizard.
--- RELEASE-12.10.1 ---
2012-10-26
Temporary disabled AutoTune GCS GUI. It was listed as an experimental
feature in the previous release, there were however a few cases where
it did not behave as expected.
--- RELEASE-12.10 ---
2012-10-06
Receiver port can now be configured as PPM *and* PWM inputs.
Pin 1 is PPM, other pins are PWM inputs.
2012-07-27
Added the ability to load stylesheets from external file according to operating system:
macos.qss, linux.qss, windows.qss
Files should be placed inside the app folder.
2012-07-27
Several UI changes.
MixerCurveWidget refactoring, now as a simple and advanced view.
2012-07-27
Added "advanced mode" option to general settings. Right now it only shows the hidden apply buttons.
To enable go to tools->options->General and click one of the checkboxes to give focus to the form,
then press F7
2012-07-27
Made the flight mode switch and accessory pots move according to user input on the input wizard.
2012-07-27
Changed the board pictures on the uploader widget
2012-07-27
Add more verbose debug output on the UAVOBJECTS saving code.
2012-08-11
CopterControl can now emulate an 8-channel USB HID joystick. Primarily,
this lets you use any RC transmitter with flight simulators on your PC.
2012-07-20
AeroSimRC simulator plugin is now included into the Windows distribution
(will be installed into .../OpenPilot/misc/AeroSIM-RC directory). Still
being an experimental development tool, it could be used to play with
HITL version 2. Other platforms include udp_test utility which can be
used to check the connectivity with AeroSimRC plugin running on Windows
machine.
2012-07-10
On Windows the installation mode was changed from per-user to per-machine
(for all users) installation. It is recommended to completely uninstall
previous version before installing new one to remove per-user installed
files. Per-machine installation requires elevated (administrator) previleges
during install. But since the same rights are now required to install
optional CDC driver (virtual communication port), it was deemed acceptable.
2012-06-04
AeroSimRC support merged into next
2012-05-26
VirtualFlybar which allows a more aggressive flight mode than rate mode
support. Also PiroCompensation added.
2012-05-26
Revert some UI changes that didn't work consistently between OSX and Windows.
2012-05-24
Merged the updated firmware for the PipXtreme, thanks to Brian for a lot of
work on this.
2012-05-04
Support for CC3D. This involved changes to various things such as the sensors
being split from AttitudeRaw to Accels,Gyros,Magnetometer. A single firmware
image fw_coptercontrol will run on both CC and CC3D. When compiling the
bootloader one must set the HW_REVISION to the appropriate value. 0x01 is for
CC and 0x02 is for CC3D. If the wrong bootloader is installed the firmware
will not run.
2012-05-02
Reduction in the memory usage due to the UAVObject metadata. Now the update
periods are using a smaller data type and the various flags relating to access
controls and update modes are stored in a bitfield. The UAVObjectBrowser has
not been updated to allow these modes to be easily changed.
2012-03-31
Support for ground vehicle configuration has been added to the the GCS.
2012-02-14
New QML based system to allow more flexible UI. Upgraded stabilization
configuration.
2012-01-02
CC FW now supports USB Virtual Com Port (VCP/CDC) in addition to the original HID interface
New ComUsbBridge module can bridge any serial port to the USB CDC port
CC FW now detects repeated faults during init and boots with default hwsettings
2012-01-02
Added new camera stabilization features: AxisLock mode and LPF.
2011-12-10
Merged a change that sorts the UAVO fields based on size. Because this changes
all of the objects, erase all existing flash files based on this.
2011-11-04
New Spektrum/JR satellite receiver driver implementation.
It now provides explicit selection of DSM2 (and DSMJ), DSMX (10bit) and
DSMX (11bit) serial protocol variations to better serve different frame
and resolution modes. The protocol name used now is DSM instead of
previously used Spektrum to make it less ambiguous when used with JR
2.4GHz radios.
2011-10-20
Inputs can be remapped to outputs to allow up to 10 channels of control. The
receiver inputs remap as follows:
Receiver 3 because output channel 7
Receiver 4 because output channel 8
Receiver 5 because output channel 9
Receiver 6 because output channel 10
2011-10-11
Fix for the Mac telemetry rates and specifically how long enumeration took.
2011-10-08
Make the flash chip need to be have bad magic for a full second before erasing
settings. Should avoid random lost settings.
2011-09-12
Max rate now ONLY applies to attitude and axis lock mode. Manual rate is the
only term that limits the rate mode now (and in axis lock when you push stick
only manual rate applies). Also integrals are reset when unused.
2011-09-09
Some large updates to the input system. Now multiple receivers can be
connected at once. A wizard was added for configuring the input channels. A
specific collective pitch channel was added.
2011-09-04
Improvements to the failsafe handling code for inputs. PWM power off is now
detected properly. Powering on transmitter for Spektrum Satellite no longer
causes a glitch on servos.
2011-08-10
Added Camera Stabilization and a gui to configure this. This is a software
selectable module from the GUI. However, a restart is required to make it
active. The GUI does not currently expose the configuration for using the
transmitter to change the view angle but this is supported by the hardware.
2011-08-10
By default a lot of diagnostic objects that were enabled by default are now
disabled in the build. This include TaskInfo (and all the FreeRTOS options
that provide that debugging information). Also MixerStatus, I2CStatus,
WatchdogStatus and RateDesired. These can be reenabled for debugging with
-DDIAG_ALL.
2011-08-04
Fixed packaging aesthetic issues. Also avoid runtime issues on OSX Lion by
disabling the ModelView and Notify plugins for now (sorry).
2011-07-29
Added support for PPM receivers from James W. Now all 4 interfaces (R/C
standard PWM, combined PPM (MK), Spektrum satellite, Futaba S.Bus) are
supported and configurable through the GCS hardware configuration tab.
2011-07-17
Updated module initialization from Mathieu which separates the initialization
from the task startup. Also implements a method to reclaim unused ram from
initialization and end of memory for the FreeRTOS heap.
2011-07-12
Improvements to the stabilization code. Included a LPF on the gyros to smooth
out noise in high vibration environments. Also two new modes: axis-lock and
weak leveling. Axis-lock will try and hold an axis at a fixed position and
reject any disturbances. This is like heading-hold on a heli for the tail but
can be useful for other axes. Weak leveling is rate mode with a weak
correction to self level the craft - good for easier rate mode flying.
2011-07-07
Dynamic hardware configuration from Stac. The input type is now
selected from ManualControlSettings.InputMode and the aircraft must be rebooted
after changing this. Also for CopterControl the HwSettings object must
indicate which modules are connected to which ports. PPM currently not
working.

View File

@ -1,25 +1,27 @@
[Version]
Signature="$Windows NT$"
Class=Ports
ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
Provider=%ProviderName%
DriverVer=10/15/2009,1.0.0.0
Signature = "$Windows NT$"
Class = Ports
ClassGuid = {4D36E978-E325-11CE-BFC1-08002BE10318}
Provider = %ProviderName%
DriverVer = 10/15/2009,1.0.0.0
[MANUFACTURER]
%ProviderName%=DeviceList, NTx86, NTamd64
%ProviderName% = DeviceList, NTx86, NTamd64
[DeviceList.NTx86]
%CopterControl%= DriverInstall,USB\VID_20A0&PID_415b&MI_00
%OPLink%= DriverInstall,USB\VID_20A0&PID_415c&MI_00
%CopterControl% = DriverInstall,USB\VID_20A0&PID_415b&MI_00
%OPLink% = DriverInstall,USB\VID_20A0&PID_415c&MI_00
%Revolution% = DriverInstall,USB\VID_20A0&PID_415e&MI_00
[DeviceList.NTamd64]
%CopterControl%= DriverInstall,USB\VID_20A0&PID_415b&MI_00
%OPLink%= DriverInstall,USB\VID_20A0&PID_415c&MI_00
%CopterControl% = DriverInstall,USB\VID_20A0&PID_415b&MI_00
%OPLink% = DriverInstall,USB\VID_20A0&PID_415c&MI_00
%Revolution% = DriverInstall,USB\VID_20A0&PID_415e&MI_00
[DriverInstall]
include=mdmcpq.inf
CopyFiles=FakeModemCopyFileSection
AddReg=LowerFilterAddReg,SerialPropPageAddReg
include = mdmcpq.inf
CopyFiles = FakeModemCopyFileSection
AddReg = LowerFilterAddReg,SerialPropPageAddReg
[DriverInstall.Services]
include = mdmcpq.inf
@ -30,6 +32,7 @@ AddService = usbser, 0x00000002, LowerFilter_Service_Inst
HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
[Strings]
ProviderName = "CDC Driver"
CopterControl = "OpenPilot CDC Driver"
OPLink = "OpenPilot CDC Driver"
ProviderName = "OpenPilot"
CopterControl = "CopterControl Virtual COM Port"
OPLink = "OPLink Virtual COM Port"
Revolution = "Revolution Virtual COM Port"

4
make/.gitattributes vendored
View File

@ -7,5 +7,7 @@
*.sh text eol=lf
/doxygen/* text eol=lf
/templates/*.txt text eol=crlf
/uncrustify/*.cfg text eol=lf
/templates/*.txt text eol=crlf
/templates/build-info.txt text eol=lf

View File

@ -22,7 +22,7 @@ device=$(hdiutil attach "${TEMP_FILE}" | \
cp -a "${APP_PATH}" "/Volumes/${VOL_NAME}"
#ls "${FW_DIR}" | xargs -n 1 -I {} cp "${FW_DIR}/{}" "/Volumes/${VOL_NAME}/Firmware"
cp "${BUILD_DIR}/uavobject-synthetics/matlab/OPLogConvert.m" "/Volumes/${VOL_NAME}/Utilities"
cp "${ROOT_DIR}/HISTORY.txt" "/Volumes/${VOL_NAME}"
cp "${ROOT_DIR}/WHATSNEW.txt" "/Volumes/${VOL_NAME}"
"${ROOT_DIR}/package/osx/libraries" \
"/Volumes/${VOL_NAME}/OpenPilot GCS.app" || exit 1

View File

@ -116,7 +116,7 @@
;--------------------------------
; Settings for MUI_PAGE_FINISH
!define MUI_FINISHPAGE_RUN
!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\HISTORY.txt"
!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\WHATSNEW.txt"
!define MUI_FINISHPAGE_RUN_FUNCTION "RunApplication"
;--------------------------------
@ -158,7 +158,10 @@ Section "Core files" InSecCore
SetOutPath "$INSTDIR\bin"
File /r "${GCS_BUILD_TREE}\bin\*"
SetOutPath "$INSTDIR"
File "${PROJECT_ROOT}\HISTORY.txt"
File "${PROJECT_ROOT}\LICENSE.txt"
File "${PROJECT_ROOT}\README.txt"
File "${PROJECT_ROOT}\WHATSNEW.txt"
File "${PROJECT_ROOT}\MILESTONES.txt"
SectionEnd
; Copy GCS plugins
@ -244,8 +247,14 @@ Section "Shortcuts" InSecShortcuts
CreateShortCut "$SMPROGRAMS\OpenPilot\OpenPilot GCS.lnk" "$INSTDIR\bin\openpilotgcs.exe" \
"" "$INSTDIR\bin\openpilotgcs.exe" 0 "" "" "${PRODUCT_NAME} ${PRODUCT_VERSION}. ${BUILD_DESCRIPTION}"
CreateShortCut "$SMPROGRAMS\OpenPilot\OpenPilot GCS (clean configuration).lnk" "$INSTDIR\bin\openpilotgcs.exe" \
"-clean-config" "$INSTDIR\bin\openpilotgcs.exe" 0 "" "" "${PRODUCT_NAME} ${PRODUCT_VERSION}. ${BUILD_DESCRIPTION}"
CreateShortCut "$SMPROGRAMS\OpenPilot\OpenPilot ChangeLog.lnk" "$INSTDIR\HISTORY.txt" \
"-reset" "$INSTDIR\bin\openpilotgcs.exe" 0 "" "" "${PRODUCT_NAME} ${PRODUCT_VERSION}. ${BUILD_DESCRIPTION}"
CreateShortCut "$SMPROGRAMS\OpenPilot\OpenPilot License.lnk" "$INSTDIR\LICENSE.txt" \
"" "$INSTDIR\bin\openpilotgcs.exe" 0
CreateShortCut "$SMPROGRAMS\OpenPilot\OpenPilot ReadMe.lnk" "$INSTDIR\README.txt" \
"" "$INSTDIR\bin\openpilotgcs.exe" 0
CreateShortCut "$SMPROGRAMS\OpenPilot\OpenPilot ReleaseNotes.lnk" "$INSTDIR\WHATSNEW.txt" \
"" "$INSTDIR\bin\openpilotgcs.exe" 0
CreateShortCut "$SMPROGRAMS\OpenPilot\OpenPilot Milestones.lnk" "$INSTDIR\MILESTONES.txt" \
"" "$INSTDIR\bin\openpilotgcs.exe" 0
CreateShortCut "$SMPROGRAMS\OpenPilot\OpenPilot Website.lnk" "http://www.openpilot.org" \
"" "$INSTDIR\bin\openpilotgcs.exe" 0
@ -267,7 +276,7 @@ Section ; create uninstall info
WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenPilot" "UninstallString" '"$INSTDIR\Uninstall.exe"'
WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenPilot" "DisplayIcon" '"$INSTDIR\bin\openpilotgcs.exe"'
WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenPilot" "Publisher" "OpenPilot Team"
WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenPilot" "DisplayVersion" "Stumpy"
WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenPilot" "DisplayVersion" "Italian Stallion"
WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenPilot" "URLInfoAbout" "http://www.openpilot.org"
WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenPilot" "HelpLink" "http://wiki.openpilot.org"
WriteRegDWORD HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenPilot" "EstimatedSize" 100600
@ -317,7 +326,7 @@ Section "un.OpenPilot GCS" UnSecProgram
RMDir /r /rebootok "$INSTDIR\utilities"
RMDir /r /rebootok "$INSTDIR\drivers"
RMDir /r /rebootok "$INSTDIR\misc"
Delete /rebootok "$INSTDIR\HISTORY.txt"
Delete /rebootok "$INSTDIR\*.txt"
Delete /rebootok "$INSTDIR\Uninstall.exe"
; Remove directory