hotfix: allow arming in Stabilized 4,5,6
[librepilot.git] / WHATSNEW.txt
blob2cb23694812c17f03c1e55d00d8db6bd9ef4ab30
1 --- RELEASE-14.01 --- Cruising Ratt ---
2 This is the first 2014 software release. 
3 This version still supports the  CopterControl and CC3D.
4 It includes some major "under the hood" changes like migration
5 to Qt5.1 and QtQuick2 widgets, an overhaul of UAVTalk to improve
6 Telemetry and OPLink reliability.
7 Some additions in this release:
8 - "Rattitude" flight mode;
9 - Altitude Hold Reimplementation;
10 - Multiple PID banks;
11 - "Cruise Control" 
13 the full list of features, improvements and bufixes shipping
14 in this release is accessible here:
16 http://progress.openpilot.org/issues/?filter=11260
18 ** Improvement
19     * [OP-771] - Change Wizard wording for better usability
20     * [OP-791] - Integrate About Authors, OpenPilot GCS, Plugins dialogs into a single dialog window
21     * [OP-803] - Gadgets get their configuration set twice when restoring workspaces during GCS startup
22     * [OP-835] - Upgrade GCS to use Qt 5.1.0
23     * [OP-883] - Make system and flight targets cleanup, pass 01
24     * [OP-913] - Poor UAVObject data structure alignment on flight side causes performance degradation
25     * [OP-951] - Add -Wshadow to flight CFLAGS and fix compilation breakage that results
26     * [OP-966] - Scope Plugin Cleanup
27     * [OP-984] - Provide multi PID banks, these should be assignable per flight mode. 
28     * [OP-996] - Add GCS option to remember the last selected workspace
29     * [OP-1022] - Additional improvements for altitude hold
30     * [OP-1036] - Improvements to Fixed Wing PathFollower and Nav
31     * [OP-1059] - Typo (2x) in OpenPilot Setup Wizard - Output Calibration Window
32     * [OP-1063] - Multirotor Configuration
33     * [OP-1071] - Make map "emergency" lines less strong and dashed
34     * [OP-1079] - Update to FreeRTOS v7.5.2
35     * [OP-1082] - Add a ticker on the Welcome page showing Jira activity alongside the 'Project News'
36     * [OP-1083] - Fix minor English spelling errors in stabilization tooltips
37     * [OP-1085] - Upgrade GCS to use Qt 5.1.1
38     * [OP-1094] - Turn on Progress for large SDK downloads / remove for MD5 files
39     * [OP-1104] - Create BL version 6 to support larger firmware
40     * [OP-1105] - If firmware .info blob is missing, test string is too long
41     * [OP-1107] - Convert About dialog to QTQuick 2.0 and cleanup code.
42     * [OP-1110] - Move Welcome screen to QtQuick 2
43     * [OP-1111] - Move About to QtQuick2
44     * [OP-1112] - Update contributors in GCS
45     * [OP-1113] - Convert new PFD design to QtQuik2
46     * [OP-1117] - Implement Horizon mode
47     * [OP-1120] - Waypoint upload to board should be transacted
48     * [OP-1133] - UAVTalk - expose send/request all instances of multi instance uav objects + related uavtalk fixes
49     * [OP-1137] - Make Configuration Checkbox checked by default during uninstall
50     * [OP-1141] - Add a further bias correction to barometer to better handle thermal variations
51     * [OP-1143] - Missing Linux udev rules for Revolution boards 
52     * [OP-1153] - Provide a mean to instrument SystemMod stack utilization
53     * [OP-1154] - Config Option to Automatically Increase Copter Throttle per 1/cos(bank_angle)
54     * [OP-1158] - Add flight plan consistency checks
55     * [OP-1160] - Some dev Env improvements,  git hooks for messages, make prepare etc.
57 ** Task
58     * [OP-775] - Add ARM DSP library to OP codebase
59     * [OP-813] - Manage merge of translation work to French 
60     * [OP-839] - Disable pyMyte dependency until really used
61     * [OP-901] - Update STM32 StdPeriphLib to current
62     * [OP-1087] - Update Qt used from Makefile to 5.1.1 for Windows and Mac
63     * [OP-1109] - Created share Qt5 QtQuick2 port branch
64     * [OP-1115] - Remove old artwork from the Artwork folder in Git
65     * [OP-1119] - Write GCS plugin to access and display on board logs through uavtalk and export .opl files from logged uavobjects
66     * [OP-1058] - UAVO:Implement a structured named accessors for multielement fields (Flight side)
68 ** Bug
69     * [OP-844] - Fix header comments in altitudehold.c
70     * [OP-845] - Fix reading serial number from USB device on mac platform
71     * [OP-846] - make qt_sdk_install fails
72     * [OP-865] - PWM output 6 does not work on RM
73     * [OP-887] - Provide some standard method of calibrating CPU speed and load measurement for boards
74     * [OP-924] - PPM output does not have failsafe
75     * [OP-934] - Incorrect timeout handling in rfm22b receiver
76     * [OP-971] - Add UI to set AccellTau with revo board
77     * [OP-1004] - UAVObjectBrowser, buttons don't work when scientific display is turned on
78     * [OP-1014] - Com port connections are not working on OPLink
79     * [OP-1018] - Zero point initialization in ETASv3 Airspeed sensor buggy
80     * [OP-1027] - Segfault in UAVObjectBrowser when "Request"ing a UAVObjectCategory
81     * [OP-1042] - Revo firmware version isn't read correctly through OPLink
82     * [OP-1046] - Waypoint upload incomplete, no visual confirmation of failed uploads in uavobjectbrowser and waypoint editor
83     * [OP-1048] - Attitude is not working with AccelTau > 0
84     * [OP-1049] - CC3D attitude estimation failure after multiple settings changes and reboots
85     * [OP-1067] - Invalid value for "LinkState"
86     * [OP-1076] - CF Attitude filter in next randomly re-initializes on arming.
87     * [OP-1078] - GCS segfaults if you close it after playing a log file
88     * [OP-1080] - Unreliable detection of board through OPLink
89     * [OP-1095] - GCS crashing on macosx 10.9 upon connection of oplink mini
90     * [OP-1098] - CDC driver fails installation in Windows 8 or 8.1
91     * [OP-1099] - Hidden icons in Configuration tab
92     * [OP-1101] - Tools.mk has a few tabs and they need to be converted to spaces
93     * [OP-1102] - OP GCS registers some file types is should not
94     * [OP-1103] - GCS can not be compiled on OSX 10.8 after update to Qt5.1.1
95     * [OP-1108] - Minor bugs found while reading the code
96     * [OP-1114] - QGLWidget prohibits QListWidgetItem, set AA_DontCreateNativeWidgetSiblings as work around
97     * [OP-1118] - QComboBox in UAVObjectBrowser does not stay in focus on Mac OSX
98     * [OP-1121] - GCS will not exit if the Waypoint editor/PathPlanner dialog is open
99     * [OP-1123] - GCS assertion failure when loading a waypoint file
100     * [OP-1125] - UAVTalk - acking/nacking multi instance uavobjects is broken (when sending individual instances)
101     * [OP-1132] - LIBEAY32.dll missing from installer
102     * [OP-1139] - Add higher order correction to MS5611 driver for low and very low temperature compensation 
103     * [OP-1142] - No yaw in Horizon mode
104     * [OP-1145] - OPLM to GCS link not reliable
105     * [OP-1148] - Futaba R7008SB S.Bus protocol not supported
106     * [OP-1151] - PFD display - inverted flight
107     * [OP-1152] - Check Stack usage for CopterControl & CC3D
108     * [OP-1155] - Fix OSX Packaging for GCS
109     * [OP-1157] - sin_lookup_deg() returns garbage for negative angles
110     * [OP-1166] - GCS misses yaw neutral setting on sync from initial connection
111     * [OP-1167] - New flight mode switch position UAVO to work better with SITL, HITL
112     * [OP-1168] - GCS Reload Board Data button doesn't work
113     * [OP-1169] - GCS UAVO object titles off by one
114     * [OP-1176] - Cruise Control checkboxes use wrong Default button
115     * [OP-1177] - AltHold - Need a setting to allow disabling of bank angle throttle compensation in AH
116     * [OP-1178] - After re-factoring of ConfigTaskWidget code the OPLink config page does not work reliably.
117     * [OP-1179] - About box not working in Linux64 build (but probably the same is for Linux32)
118     * [OP-1180] - GCS AltHold Tab - Reload button and update in real time
119     * [OP-1181] - on radio configuration the pitch slider has maxed out on its own three times randomly
120     * [OP-1182] - Telemetry monitor widget is too small on Mac
121     * [OP-1183] - UAVBrowser displays hex string as decimal
122     * [OP-1184] - Scope gadget - Stack monitor configurations need a cleanup
123     * [OP-1188] - Optimize Stabilization Module stack size usage 
124     * [OP-1191] - Revo OPLink bug in GCS
125     * [OP-1192] - Even though Throttle is off there is motor movement in some situations.
126     * [OP-1211] - dT calculation in Stabilization and other modules unsafe
127     * [OP-1218] - PIOS_COM is not thread safe
128     * [OP-1228] - GCS Quits unexpectedly
130 --- RELEASE-13.06.04 ---
131 This maintenance release includes the following fixes missing in (previously not released to public) RELEASE-13.06.03.
132 - Fixed issues with Google Maps;
133 - Includes new signed version of CDC drivers for Windows platforms;
135 JIRA issues addressed in this maintenance release:
136 OP-1044, OP-1070, OP-1072
137 Use the following link for a comprehensive list of issues addressed by this release
139 http://progress.openpilot.org/issues/?filter=11060
141 --- RELEASE-13.06.03 ---
143 This maintenance release addresses the following issues:
144 - Fixed CC3D attitude estimation failure after multiple settings changes and reboots.
145 - Fixed OPLink crashes when erasing settings
147 JIRA issues addressed in this maintenance release:
148 OP-1049, OP-1050 
150 --- RELEASE-13.06.02 ---
152 Refactoring of OPLink radio driver.  Auto-configuration was removed, and a
153 one-way link was added, including a ppm-only mode that is intended to be used
154 when only a PPM link is desired.  PPM-only mode configures the modem as a
155 one-way link running at 9600 bps (air datarate) and only sends PPM packets.
157 --- RELEASE-13.06.01 --- Italian Stallion Release ---
158 It applies the following changes to previously not released to public RELEASE-13.06
160 - Temporary disabled AltitudeHold and AltitudeVario flight modes. They were not
161 officially supported. But since people expected well-known production quality
162 behavior, it is better to make them final, then reenable
163 - Fix windows hid connection failure if board was already connected and gcs started;
164 - Fixed a bug that lead to disabled controls with some settings combination in CC/CC3D hardware page
165 - Fixed a bug that prevent to correct saving stabilization settings for CC/CC3D
166 - Fixes Uploader GUI and automatically close AutoUpdate panel after 7s
168 JIRA issues addressed in this release:
169 OP-1028 OP-1020 OP-1024  
171 --- RELEASE-13.06 ---
173 This is the first official OpenPilot Revolution software release. This version
174 also supports the CopterControl, CC3D, OPLinkMini and the upcoming OP OSD.
175 There a number of significant backend changes in this version compared to
176 previous software releases: from new toolchains and build system to a source
177 code reformatting that is inline with our project style guidelines.
179 The goal of this release is to provide CC3D-style features for the new
180 Revolution platform (using the Revo's internal modem and external OPLinkMini
181 board). Advanced features such as Altitude Hold, Position Hold, Guidance,
182 Return to Home, and AutoLanding are still in development and will be available
183 in future releases. The availability of those features will depend on how many
184 people are able to contribute with code, testing and documentation.
186 Remember that the first Revo hardware batch was intended for developers/
187 bleeding-edge testers, not end users who want a 100% final platform.
189 - New bootloaders are REQUIRED for this release to support new features such
190   as erase settings and others. As always, bootloaders can be updated without
191   any special programmer hardware using the bootloader updater firmware files.
192 - F1 boards (CC, CC3D, OPLinkMini) require bootloader version 4 or higher.
193 - F4 boards (Revolution, OSD prototype) require bootloader version 5 or higher.
194 - Check the wiki for details of how to update them:
195   http://wiki.openpilot.org/display/BUILDS/Bootloader+update
197 Please remember to take a moment to view these important tutorials:
198   http://wiki.openpilot.org/display/Doc/OpenPilot+Tutorials
200 What's New / Release Notes
201 --------------------------
203 NEW:
205 - Firmware folders removed.
206   The firmware files folder has been removed in this release. These files
207   are now integrated into the GCS so they are always up to date and there is
208   less risk of a firmware mismatch. To update your firmware you must use
209   either Vehicle Setup Wizard (big green button at the top right on the
210   Welcome GCS tab) or the new Auto-Update button on the GCS Firmware tab.
212 - Responsiveness sliders.
213   To simplify tuning, we have introduced a new Responsiveness slider that
214   will allow you to modify stick response. For best results, you should
215   still tune your system with PIDs as tight as possible for better
216   stabilisation. This will result in better stabilisation, and at the
217   same time soft or sharp response according to your preferences.
219 - Auto-Update firmware.
220   This feature simplifies all OpenPilot board firmware updates. Now all
221   you have to do is click "Auto-update" on the Firmware tab and follow the
222   instructions to reflash your OpenPilot board. This is essentially the
223   same as Rescue but uses the embedded firmware images so there is no need
224   to browse for them anymore.
226 - Erase Settings Option.
227   We previously had a hacky way to delete bad or incompatible settings from
228   our OpenPilot boards. This old special firmware that did this is now
229   deprecated and the functionality is now integrated into the latest
230   bootloaders and firmwares.
232   To erase settings enter DFU (boot) mode (using Halt or Rescue function)
233   and click the "Erase settings" button on the Firmware tab and follow the
234   instructions. This will NOT work with an older bootloader and the "Erase
235   settings" button will be disabled if an out of date bootloader is detected.
237 - Language defaults.
238   GCS now uses the system default language (only French and English are
239   available currently, please contribute translations). You can change the
240   language in the GCS Options at any time.
242 - CDC driver install option (Windows only).
243   This is an optional USB virtual serial port that is useful, for example,
244   for updating your GPS configuration using the U-Blox u-Center software.
245   It is NOT required for normal configuration of OpenPilot boards. If it is
246   not installed, virtual serial port features will not be available. This
247   driver is not signed by Microsoft, but in fact it uses serial port drivers
248   from Windows and only the driver information INF file is supplied by
249   OpenPilot.
251 - Lots of help tooltips were added to the GCS. Hovering your mouse over an
252   option in the GCS will show them, please review for help during tuning/
253   setting up.
255 - A large amount of general improvements, code clean ups and minor bugs
256   resolved.
258 KNOWN ISSUES:
260 - On Linux you should remove the OpenPilot package if it was previously
261   installed, then install this new one. This is a known issue and likely
262   be fixed later.
264 - Due to changes in USB descriptors to support new features, USB drivers
265   on Windows must be updated. If after using Rescue or Wizard or Auto-Update
266   button the GCS cannot connect to the board, you may be experiencing this
267   USB issue. To resolve it you should remove the old drivers (ones with
268   yellow exclamation mark) and allow Windows to find them again.
270   Here is how to do it:
272   Windows XP:
273    - Right click on "My Computer" on your desktop and select "Properties".
274    - Select the "Hardware" tab.
275    - Select the "Device Manager".
276    - Scroll down the list until you see the "Universal Serial Bus Controllers"
277      selection.
278    - Click it to expand the list of USB drivers. Right-click on the driver(s)
279      you wish to uninstall and select "Uninstall".
281   Windows 7/Vista:
282    - Right click on "My Computer" on your desktop and select "Properties".
283    - Select "Device Manager" in the upper left-hand corner of the window.
284    - Scroll down the list until you see the "Universal Serial Bus Controllers"
285      selection.
286    - Click it to expand the list of USB drivers. Right-click on the driver(s)
287      you wish to uninstall and select "Uninstall".
289   Then disconnect the board from USB, wait few seconds and re-connect it to
290   your computer. Windows should find new drivers and install them properly.
292 - If GCS crashes when switching to the Flight Data tab, it usually means
293   your PC needs newer video drivers. That tab contains a ModelView widget
294   which uses OpenGL. It is known to crash on some graphics cards with old
295   and buggy drivers.
297 - Sensor calibration is not final. It will be reworked completely to
298   increase its accuracy and make it easier to use.
300 - Until the calibration is reworked, default attitude estimation algorithm
301   used by Revo is a complimentary filter with magnetometers disabled. Hence
302   Revo does not use them yet to correct yaw drift. Magnetometers can be
303   enabled, but you should properly calibrate them first. That's the reason
304   why they are disabled by default.
306 - AltitudeHold/Vario modes are enabled but not officially supported. Do
307   not expect it to work perfectly and be considered production quality.
308   You may play with it and report your issues and suggestions at your own
309   risk. If you are not using a case for your Revo, we strongly recommend
310   covering the barometer sensor with some foam to shield the sensor from
311   wind and light.
313 - Note that throttle stick in AltitudeVario mode is used to control vertical
314   velocity, sometimes called vario altitude in other platforms, centre stick
315   means hold altitude and there is a dead band around centre stick.
317 - There are currently no configuration options for the Radio module in
318   the Revolution except for Radio enable/disable and output power. This is
319   intentional because all configuration should be done using its paired
320   ground OPLink coordinator.
322   How to configure the Revolution to OPLinkMini radio link:
324   - Make sure you have the newest bootloaders and matching firmwares
325     between the Revolution, GCS and OPLink.
326   - Enable the radio in the Revolution, click save and disconnect the board
327     from USB.
328   - Power it from external supply to continue.
329   - Then connect the OPLink board to USB and scroll down in the GCS config
330     widget to find OPLink icon at the end of list. This icon is only
331     available when an OPLink is detected.
332   - To pair the two radios, select the Revolution side radio address in the
333     list of found boards, select it, click Add to add to the list of paired
334     radios and click Save. After unplugging the board from the USB and
335     plugging back your OPLink it should show "Connected", and you can
336     continue with the configuration.
338 - Do not set the Revolution modem or OPLinkMini output power to high values
339   without antenna connected, this can damage the hardware.
341 JIRA issues addressed in this release:
343 Due to major rework of all code and integration of Revo code into mainline
344 (next) it is almost impossible to list all corresponding JIRA issues for the
345 list above. Some of them can be found using this link:
346   http://progress.openpilot.org/issues/?filter=10860
348 OP-678,  OP-682,  OP-693,  OP-719,  OP-726,  OP-727,  OP-747,  OP-761,  OP-769,
349 OP-770,  OP-772,  OP-781,  OP-784,  OP-792,  OP-804,  OP-807,  OP-812,  OP-816,
350 OP-817,  OP-820,  OP-821,  OP-834,  OP-843,  OP-846,  OP-854,  OP-855,  OP-856,
351 OP-861,  OP-864,  OP-867,  OP-871,  OP-873,  OP-874,  OP-875,  OP-879,  OP-885,
352 OP-886,  OP-888,  OP-889,  OP-890,  OP-891,  OP-892,  OP-893,  OP-894,  OP-895,
353 OP-896,  OP-897,  OP-898,  OP-899,  OP-900,  OP-903,  OP-905,  OP-906,  OP-907,
354 OP-910,  OP-912,  OP-917,  OP-920,  OP-925,  OP-926,  OP-928,  OP-935,  OP-936,
355 OP-939,  OP-952,  OP-955,  OP-957,  OP-958,  OP-965,  OP-968,  OP-969,  OP-970,
356 OP-977,  OP-979,  OP-980,  OP-981,  OP-982,  OP-983,  OP-988,  OP-989,  OP-990,
357 OP-991,  OP-993,  OP-997,  OP-998,  OP-999,  OP-1000, OP-1002, OP-1005, OP-1007,
358 OP-1008, OP-1009, OP-1010, OP-1011, OP-1012, OP-1013, OP-1015, OP-1016, OP-1021
360 Short summary of changes. For a complete list see the git log.
362 Flight code changes:
363 - initial version of Revo code;
364 - initial version of OPLinkMini code;
365 - CopterControl/CC3D code reworked to reuse parts of Revo code;
366 - switched to new ARM-supported GCC 4.7 toolchain with hardware floating point support;
367 - major code cleanup and use of compiler warning flags to early catch errors;
368 - major directory and Makefiles reorganisation and cleanup;
369 - all source code fixed to use float variables instead of doubles (to use hardware FPU);
370 - added multi-binding support for OPLinkMini;
371 - added frequency hopping for Revo and OPLinkMini;
372 - added auto-configuration for OPLinkMini remote modem / Revo;
373 - replaced entire flash generation code;
374 - new U-Blox GPS binary protocol parser;
375 - added STM32 DSP library;
376 - updated STM32 CMSIS library;
377 - updated STM32 USB OTG driver;
378 - updated STM32 F1 StdPeriph driver library;
379 - updated STM32 F4 StdPeriph driver library;
380 - updated FreeRTOS (real-time operating system used by the flight code to run many tasks);
381 - PyMite moved to a library;
382 - fixed nasty bug in PyMite Makefile, single file was rebuilt 5 times fo no reason;
383 - added configurable accel/gyro rates;
384 - added visualisation of errors in bootloader updater;
385 - added numerous sanity checks to the flight code to prevent unsafe arming;
386 - new flash file system, much faster and higly optimised;
387 - Revo data flash is splitted into two partitions, one for settings, another for user data (logs, etc);
388 - OPLinkMini now stores settings in the MCU flash using FlashFS too;
389 - a catalog of known flash types is used to support different flash types by the same firmware;
390 - fixed broken overo submodule remote repository link;
391 - fixed DSMX protocol error with some Tx/Rx combintions;
392 - added new pios_*.h headers to support commonly used constants, functions and defines;
393 - numerous fixes for data alignment and memory allocation strategy;
394 - new bootloaders to support more features (for example, board settings erase);
395 - added new feature to erase settings without special firmware;
396 - removed CC/CC3D setting erase firmware (now not necessary due to new erase feature);
397 - introduced new delayed callback scheduler to run modules from a single task;
398 - many changes to AeroSim-RC simulator interface;
399 - fixed broken debug pins API;
400 - fixed few bugs in the EKF code;
401 - introduced bootloader updater for F4 boards (including Revo and OSD);
402 - some changes in RAM and flash memory partitioning to better utilize resources;
403 - changes in bootloader to allow remote reboot via serial port or radio modem;
404 - the EKF "Huge Formula" is replaced by optimised set of of loops to make it editable;
405 - Cyr's attitude patch is ported from CC3D to Revo;
406 - added magnetometer options (mags are disabled by default for Revo complimenary filter);
407 - advance camera stabilisation is now officially released;
408 - Revo alarm led now distinguish between Critical(lit led), Error(blink fast), Warning(blink slowly) Alarm condition
409 - Revo alarm led flash fast(like in Error Alarm) during calibration using complementary attitude estimation.
410 - Redo gyro bias zero after calibration parameters changes
411 - Do not raise GPS alarm if a gps port is not configured.
412 - fixed numerous internal firmware bugs (too many to list here).
414 GCS code changes:
415 - nice loading splash screen;
416 - now GCS uses system language by default if translation is available, English otherwise;
417 - French translation officially added. Please help with other languages;
418 - fixed some crashes of uploader gadget;
419 - fixed double config read on restore;
420 - improvements in GCS options dialog handling;
421 - optimised option dialog creating;
422 - added UI tooltips for many options;
423 - removed unused yet options from configuration UI;
424 - removed GCS config dialog on the first run, one default is used now if missing;
425 - added Revo configuration page, similar to CC/CC3D one;
426 - added OPLinkMini configuration page;
427 - hardware options are now dynamically enabled/disabled to allow supported configurations only;
428 - new artwork for all boards everywhere;
430 - optimised some 3D models;
431 - new About dialog showing version info and contributors list;
432 - fixed badly broken HiTL options dialog;
433 - fixed compilation problem on OSX, now GCS should be compatible with OSX 10.5+;
434 - major vehicle config cleanup with lazy creation (speeds up GCS start);
435 - UI config pages improvements (responsiveness, etc)
436 - new auto-update feature added, *.opfw firmware files removed from distributables;
437 - anti-aliased scope plugin;
438 - numerous code fixes and cleanups (too many to list here);
439 - USB HID code is replaced by new cross-platform hidapi library to fix old Linux/OSX problems.
440 - Adds GUI to set Altitude Hold filter parameters.
441 - Adds configurable units for velocity/speed and altitude in QML PFD. Units are configured in settings panel.
442 - Reduces precision of the PDOP value in the PFD display to 1 decimal.
443 - Remove deprecated powerlog
445 Common parts:
446 - added simple toolchain install make targets;
447 - added self-hosted toolchains to ensure that they're always available;
448 - added support for globally istalled tools used by many working copies;
449 - added Windows bootstrap script to pull all other build tools;
450 - added unit testing framework, also supported by Bamboo CI server and agents;
451 - added code style formatting make targets, easy to use by developers;
452 - added doxygen make targets. The documentation still must be completely revised, though;
453 - enforced global line ending policy, source files are updated accordingly;
454 - reworked packaging to provide correct dependencies and safe multi-threaded builds;
455 - multiply renames of board names and directories, now we have correct names;
456 - fixed dependencies in Makefiles, now 'make -j' works reliably;
457 - CLEAN_BUILD make option is deprecated, use 'package' or 'clean_package' instead;
458 - simposix elf is now included into linux distribution and can be run with default GCS settings;
459 - revised 'make help' message;
460 - updated Windows driver to support Revolution and use correct board names.
462 Android GCS:
463 - old and buggy code was removed;
464 - full rewrite has been started.
466 Infrastructure:
467 - Bamboo continuous integration server is actively used;
468 - around 10 build agents running 4 different operating systems are set up;
469 - every push to any branch is now build-tested, and unit tests run are performed;
471 2012-11-17
472 Advanced camera stabilization features.
473 They include optional manual control input filtering (moved from camera stabilization to manual
474 control input and now available also for main controls), optional airframe attitude filtering
475 used by camera stabilization, and optional camera actuator feed forward to improve gimbal response.
477 --- RELEASE-12.10.2 --- Mayan Apocalypse Release ---
479 List of issues resolved in this maintenance release:
480 http://progress.openpilot.org/issues/?filter=10361
482 OP-459, OP-545, OP-674, OP-679, OP-685, OP-686, OP-687, OP-690, OP-691,
483 OP-702, OP-703, OP-714, OP-715, OP-716, OP-721, OP-728, OP-746, OP-748,
484 OP-749, OP-750, OP-758, OP-759, OP-760
486 Here is a list of some known unresolved issues. If an issue has JIRA ID [OP-XXX],
487 you may track it using the following URL: http://bugs.openpilot.org/browse/OP-XXX
489 + Only French translation is updated, use English for other locales or help with translations.
490 + Radio Wizard confused by a reversed throttle, fix it on your transmitter before starting wizard.
491 + Radio Wizard Throttle display does not show full range properly.
492 + [Windows 8] USB Driver is broken.
493 + Firmware Update Instructions on Firmware Tab not entirely accurate for all upgrade paths.
494 + Tricopter's using Vehicle Wizard need to check servo does not need reversed manually.
495 + XAircraft ESCs uses non-standard PPM range which may cause issues with Vehicle Wizard.
496 + Spectrum Satellite Receivers setup in Radio Wizard may have wrong protocol set.
497 + Old Intel 965 have an OpenGL bug that turns the QML PFD black and while.
498 + [OP-732] Import UAV Settings for inactive modules crashes the running firmware (board restarts).
499            Workaround: update firmware, power cycle, enable modules, power cycle, import configuration.
500 + [OP-747] Board infinitely reboots itself after firmware upgrade (settings erase firmware is a workaround).
501 + [OP-723] GCS uses the system language ot the 1st run. After restart it uses English (can be changed later).
502 + [OP-725] GCS camera stab config error message disappears too fast (but config error is cleared as it should)
503 + [OP-767] GCS does not send AttitudeActual packets over serial port when GPS is connected and system is armed
504 + [OP-768] GCS does not show UAV position on the map (master or next CC branches, but works in Revo branches)
505 + [OP-769] Can't enter "12,45" on German system. Workaround: change GCS language (in fact, locale) to German.
507 2012-11-12
508 Implemented smoothing filter for accelerometer data.
509 Added support for Mode 3 and Mode 4 to the TX Configuration Wizard.
511 --- RELEASE-12.10.1 ---
513 2012-10-26
514 Temporary disabled AutoTune GCS GUI. It was listed as an experimental
515 feature in the previous release, there were however a few cases where
516 it did not behave as expected.
518 --- RELEASE-12.10 ---
520 2012-10-06
521 Receiver port can now be configured as PPM *and* PWM inputs.
522 Pin 1 is PPM, other pins are PWM inputs.
524 2012-07-27
525 Added the ability to load stylesheets from external file according to operating system:
526 macos.qss, linux.qss, windows.qss
527 Files should be placed inside the app folder.
529 2012-07-27
530 Several UI changes. 
531 MixerCurveWidget refactoring, now as a simple and advanced view.
533 2012-07-27
534 Added "advanced mode" option to general settings. Right now it only shows the hidden apply buttons.
535 To enable go to tools->options->General and click one of the checkboxes to give focus to the form,
536 then press F7
538 2012-07-27
539 Made the flight mode switch and accessory pots move according to user input on the input wizard.
541 2012-07-27
542 Changed the board pictures on the uploader widget
544 2012-07-27
545 Add more verbose debug output on the UAVOBJECTS saving code.
547 2012-08-11
548 CopterControl can now emulate an 8-channel USB HID joystick.  Primarily,
549 this lets you use any RC transmitter with flight simulators on your PC.
551 2012-07-20
552 AeroSimRC simulator plugin is now included into the Windows distribution
553 (will be installed into .../OpenPilot/misc/AeroSIM-RC directory).  Still
554 being an experimental development tool, it could be used to play with
555 HITL version 2.  Other platforms include udp_test utility which can be
556 used to check the connectivity with AeroSimRC plugin running on Windows
557 machine.
559 2012-07-10
560 On Windows the installation mode was changed from per-user to per-machine
561 (for all users) installation.  It is recommended to completely uninstall
562 previous version before installing new one to remove per-user installed
563 files.  Per-machine installation requires elevated (administrator) previleges
564 during install.  But since the same rights are now required to install
565 optional CDC driver (virtual communication port), it was deemed acceptable.
567 2012-06-04
568 AeroSimRC support merged into next
570 2012-05-26
571 VirtualFlybar which allows a more aggressive flight mode than rate mode
572 support.  Also PiroCompensation added.
574 2012-05-26
575 Revert some UI changes that didn't work consistently between OSX and Windows.
577 2012-05-24
578 Merged the updated firmware for the PipXtreme, thanks to Brian for a lot of
579 work on this.
581 2012-05-04
582 Support for CC3D.  This involved changes to various things such as the sensors
583 being split from AttitudeRaw to Accels,Gyros,Magnetometer.  A single firmware
584 image fw_coptercontrol will run on both CC and CC3D.  When compiling the
585 bootloader one must set the HW_REVISION to the appropriate value.  0x01 is for
586 CC and 0x02 is for CC3D.  If the wrong bootloader is installed the firmware
587 will not run.
589 2012-05-02
590 Reduction in the memory usage due to the UAVObject metadata.  Now the update
591 periods are using a smaller data type and the various flags relating to access
592 controls and update modes are stored in a bitfield.  The UAVObjectBrowser has
593 not been updated to allow these modes to be easily changed.
595 2012-03-31
596 Support for ground vehicle configuration has been added to the the GCS.
598 2012-02-14
599 New QML based system to allow more flexible UI.  Upgraded stabilization
600 configuration.
602 2012-01-02
603 CC FW now supports USB Virtual Com Port (VCP/CDC) in addition to the original HID interface
604 New ComUsbBridge module can bridge any serial port to the USB CDC port
605 CC FW now detects repeated faults during init and boots with default hwsettings
607 2012-01-02
608 Added new camera stabilization features: AxisLock mode and LPF.
610 2011-12-10
611 Merged a change that sorts the UAVO fields based on size.  Because this changes
612 all of the objects, erase all existing flash files based on this.
614 2011-11-04
615 New Spektrum/JR satellite receiver driver implementation.
616 It now provides explicit selection of DSM2 (and DSMJ), DSMX (10bit) and
617 DSMX (11bit) serial protocol variations to better serve different frame
618 and resolution modes. The protocol name used now is DSM instead of
619 previously used Spektrum to make it less ambiguous when used with JR
620 2.4GHz radios.
622 2011-10-20
623 Inputs can be remapped to outputs to allow up to 10 channels of control.  The
624 receiver inputs remap as follows:
625 Receiver 3 because output channel 7
626 Receiver 4 because output channel 8
627 Receiver 5 because output channel 9
628 Receiver 6 because output channel 10
630 2011-10-11
631 Fix for the Mac telemetry rates and specifically how long enumeration took.
633 2011-10-08
634 Make the flash chip need to be have bad magic for a full second before erasing
635 settings.  Should avoid random lost settings.
637 2011-09-12
638 Max rate now ONLY applies to attitude and axis lock mode.  Manual rate is the
639 only term that limits the rate mode now (and in axis lock when you push stick
640 only manual rate applies).  Also integrals are reset when unused.
642 2011-09-09
643 Some large updates to the input system.  Now multiple receivers can be
644 connected at once.  A wizard was added for configuring the input channels.  A
645 specific collective pitch channel was added.
647 2011-09-04
648 Improvements to the failsafe handling code for inputs.  PWM power off is now
649 detected properly.  Powering on transmitter for Spektrum Satellite no longer
650 causes a glitch on servos.
652 2011-08-10
653 Added Camera Stabilization and a gui to configure this.  This is a software
654 selectable module from the GUI.  However, a restart is required to make it
655 active.  The GUI does not currently expose the configuration for using the
656 transmitter to change the view angle but this is supported by the hardware.
658 2011-08-10
659 By default a lot of diagnostic objects that were enabled by default are now
660 disabled in the build.  This include TaskInfo (and all the FreeRTOS options
661 that provide that debugging information).  Also MixerStatus, I2CStatus,
662 WatchdogStatus and RateDesired.  These can be reenabled for debugging with
663 -DDIAG_ALL.
665 2011-08-04
666 Fixed packaging aesthetic issues.  Also avoid runtime issues on OSX Lion by
667 disabling the ModelView and Notify plugins for now (sorry).
669 2011-07-29
670 Added support for PPM receivers from James W. Now all 4 interfaces (R/C
671 standard PWM, combined PPM (MK), Spektrum satellite, Futaba S.Bus) are
672 supported and configurable through the GCS hardware configuration tab.
674 2011-07-17
675 Updated module initialization from Mathieu which separates the initialization
676 from the task startup.  Also implements a method to reclaim unused ram from
677 initialization and end of memory for the FreeRTOS heap.
679 2011-07-12
680 Improvements to the stabilization code.  Included a LPF on the gyros to smooth
681 out noise in high vibration environments.  Also two new modes: axis-lock and
682 weak leveling.  Axis-lock will try and hold an axis at a fixed position and
683 reject any disturbances.  This is like heading-hold on a heli for the tail but
684 can be useful for other axes.  Weak leveling is rate mode with a weak
685 correction to self level the craft - good for easier rate mode flying.
687 2011-07-07
688 Dynamic hardware configuration from Stac.  The input type is now
689 selected from ManualControlSettings.InputMode and the aircraft must be rebooted
690 after changing this.  Also for CopterControl the HwSettings object must
691 indicate which modules are connected to which ports.  PPM currently not
692 working.