1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-12-10 18:24:11 +01:00
LibrePilot/WHATSNEW.txt
2014-06-30 23:39:11 +02:00

820 lines
43 KiB
Plaintext

--- RELEASE-14.06-RC2 --- Peanuts Schnapps ---
This Release Candidate fixes the following issues:
*[OP-1378] - Check Limits for flight modes
*[OP-1377] - Calibration config panel has Apply button even when not in Expert mode
*[OP-1376] - Calibration results not saved to SD
*[OP-1375] - Update Mag Ki and Kp default settings
*[OP-1374] - Automatically enable the right PathFollower
*[OP-1337] - Fixes for French translation
The full list of features, improvements and bugfixes in this release candidate is accessible here:
http://progress.openpilot.org/issues/?filter=11462
--- RELEASE-14.06-RC1 --- Peanuts Schnapps ---
This is the Mid 2014 release.
This version still supports the CopterControl and CC3D.
It includes several additions and changes aimed at gps/navigation functionalities
(that are expected to be fully available on next release).
Some additions in this release:
- Addition of GPS assisted flight modes for revo: - Return To Base, Position hold, AutoCruise and Position Vario(LOS, FPV and NSEW);
- Stabilization refactoring that enhance rate performances;
- Sensor calibration has been redesigned for better usability;
The full list of features, improvements and bugfixes in this release is accessible here:
http://progress.openpilot.org/issues/?filter=11460
** New Feature & Improvements
* [OP-943] - Start using F4's Core Coupled RAM for more than just the IRQ handler stack
* [OP-974] - Make Bootloader Version available while flight software is running
* [OP-975] - Reconsider the calibration process
* [OP-1068] - Add support for magnetometer calibration matrix in place of scaling parameters
* [OP-1149] - Handle thermal bias calculation/calibration to gyro and accel
* [OP-1150] - Create UI to allow users to perform board thermal calibration
* [OP-1159] - Remove "Rev" checkboxes on input tab for channels on which it doesn't have an effect
* [OP-1161] - Add Alarm for Magnetometer if disturbed or uncalibrated
* [OP-1174] - Beautify Uploader gadget popups
* [OP-1194] - Scope gadget - plot and legend visibility state should be persisted between runs
* [OP-1198] - Allow GCS gadgets to save/restore individual state
* [OP-1216] - Refactor Flight Control Modules
* [OP-1230] - Automatically load the correct firmware file when GCS is running in a development environment
* [OP-1233] - Add make options to skip qmake and build a specific GCS directory
* [OP-1245] - Add GUI to control if, what, when and how to do flight side logging.
* [OP-1250] - Add GPS Protocol configuration in the Hardware configuration panel
* [OP-1258] - Update GCC ARM Embedded to 4.8-2014-q1
* [OP-1259] - Cruise Control tweaks
* [OP-1260] - Rattitude tweaks
* [OP-1273] - Implementation of the PixHawk airspeed sensor based on the MS4525DO
* [OP-1282] - Include I2C Alarm into Eagletree speed sensor module
* [OP-1287] - GPS assisted flight for Revo
* [OP-1299] - Autodetect number of cells in Battery module
* [OP-1302] - Improve on board led functionality
* [OP-1303] - Add PathPlan Alarm in System Health
* [OP-1307] - Create a bare DiscoveryF4 target for debugging and development purposes
* [OP-1308] - Set the same logic to CRITICAL Alarm and same logic to ERROR Alarm
* [OP-1312] - Implement a PIOS WS281x driver
* [OP-1319] - Fix minor spelling mistakes in fw code
* [OP-1335] - ConfigTaskWidget - Add support to bind GComboBox to integer property
* [OP-1339] - System Health panel improvement
* [OP-1350] - TakeOff location handling to be used with RTH
* [OP-1365] - Add instrumentation functions for flight code
** Bug
* [OP-1026] - Provide some standard method of calibrating CPU speed and load measurement for boards
* [OP-1033] - Data transfer errors on USB HID on F1 devices
* [OP-1043] - Ground OPLinkMini refuses to connect to one Revo unless first connected to another Revo
* [OP-1056] - GPS does not set home location when erased after lock has been established
* [OP-1080] - Unreliable detection of board through OPLink
* [OP-1100] - GCS plist for mac shows wrong associated filetypes, leftover from qtcreator
* [OP-1131] - Firmware mismatch check is not done if Uploader gadget is not active
* [OP-1172] - Some fonts are not defined in config files
* [OP-1196] - Board rotation in GCS not shown correctly upon connection but correctly saved in memory
* [OP-1212] - Fix Priority queue handling in telemetry
* [OP-1227] - High CPU load in ratitude mode on CopterControl
* [OP-1232] - Setting high telemetry rates for periodic uavobject triggers eventsystem warning.
* [OP-1235] - Some fixes for altitude estimation
* [OP-1237] - Blank/Black Buttons on Vehicle Configuration Multirotor Throttle Curve
* [OP-1241] - TxPID Does not work for Bank 3 PID settings
* [OP-1243] - OPMap widget context menu duplicating some menu separators each time its opened
* [OP-1252] - Update GCS to qt 5.2.1
* [OP-1266] - Gyro and accel thermal compensation is not applied if one or more coefficients have negative value
* [OP-1267] - Incorrect UAV position on GCS OPMap after homeLocation modification
* [OP-1272] - Unable to debug in SWD mode a revo board
* [OP-1283] - SystemHealthGadgetWidget::updateAlarms misinterprets coordinates in SVG file
* [OP-1284] - RTB flies into ground if base is high
* [OP-1285] - Erase Settings ToolTip is wrong
* [OP-1286] - GCS Map "Go To Place" doesn't work
* [OP-1288] - GPS PositionHold immediately flies several meters away if Home is not close
* [OP-1291] - Fix matlab import after UAVTalk changes
* [OP-1294] - Fix stack sizes for CopterControl
* [OP-1295] - Autoupdate not working
* [OP-1296] - Altitude Hold causes copter to ascent at full throttle when far from home location
* [OP-1297] - OPMap fails to read in saved waypoints correctly
* [OP-1300] - SystemHealth gadget does not show "Configuration Alarm"
* [OP-1301] - Hardware settings can't be saved with CC/CC3D
* [OP-1304] - Revo stack alarm
* [OP-1314] - Fix Airspeed stack size
* [OP-1315] - Unable to arm UAV when AirspeedSensorType is set to GroundspeedBaseWindEstimation
* [OP-1323] - GCS font fixes
* [OP-1325] - Fix event system warnings to be errors
* [OP-1326] - Set AIrspeedSensor default back to "None"
* [OP-1327] - SystemAlarms must be non-acked
* [OP-1329] - Various fixes to airspeed module
* [OP-1330] - Cannot set homelocation.set=false when gps reception is optimal
* [OP-1331] - Input and Output Channel Configuration alignments issues
* [OP-1332] - PiOS alarms does not reset alarm state on timer overflow
* [OP-1333] - Output Channel Configuration alignments issues
* [OP-1340] - Auto-update greyed out - not available
* [OP-1343] - GCS Configuration - Input Channel ResponseTime not saved
* [OP-1346] - Input Channel Response Time mismatch between GCS config screen and UAVObject
* [OP-1348] - Config Gadget flashes next panel when connecting/disconnecting board
* [OP-1351] - GCS Calibration UI polishing
* [OP-1352] - Headwind-improvements for FixedWingPathFollower
* [OP-1353] - HITL Flightgear fails to set Position and velocity correctly
* [OP-1354] - Current and voltage not shown in PFD
* [OP-1355] - Magnetometer calibration and board rotation don't play along
* [OP-1363] - Sanitychecks MUST check if magnetometers and GPS are enabled for any pathfollower modes (outdoor mode selected)
* [OP-1371] - Sanitychecks overzealous: hitl/sitl broken
** Tasks
* [OP-1274] - Update FreeRTOS to 8.0
* [OP-1337] - French translations updates (14.04/05)
* [OP-1254] - Update to QT5.2.1 for Linux x86/64
* [OP-1263] - Move SDL out of Qt install
* [OP-1309] - Stabilization refactoring
--- RELEASE-14.01 --- Cruising Ratt ---
This is the first 2014 software release.
This version still supports the CopterControl and CC3D.
It includes some major "under the hood" changes like migration
to Qt5.1 and QtQuick2 widgets, an overhaul of UAVTalk to improve
Telemetry and OPLink reliability.
Some additions in this release:
- "Rattitude" flight mode;
- Altitude Hold Reimplementation;
- Multiple PID banks;
- "Cruise Control"
the full list of features, improvements and bufixes shipping
in this release is accessible here:
http://progress.openpilot.org/issues/?filter=11260
** Improvement
* [OP-771] - Change Wizard wording for better usability
* [OP-791] - Integrate About Authors, OpenPilot GCS, Plugins dialogs into a single dialog window
* [OP-803] - Gadgets get their configuration set twice when restoring workspaces during GCS startup
* [OP-835] - Upgrade GCS to use Qt 5.1.0
* [OP-883] - Make system and flight targets cleanup, pass 01
* [OP-913] - Poor UAVObject data structure alignment on flight side causes performance degradation
* [OP-951] - Add -Wshadow to flight CFLAGS and fix compilation breakage that results
* [OP-966] - Scope Plugin Cleanup
* [OP-984] - Provide multi PID banks, these should be assignable per flight mode.
* [OP-996] - Add GCS option to remember the last selected workspace
* [OP-1022] - Additional improvements for altitude hold
* [OP-1036] - Improvements to Fixed Wing PathFollower and Nav
* [OP-1059] - Typo (2x) in OpenPilot Setup Wizard - Output Calibration Window
* [OP-1063] - Multirotor Configuration
* [OP-1071] - Make map "emergency" lines less strong and dashed
* [OP-1079] - Update to FreeRTOS v7.5.2
* [OP-1082] - Add a ticker on the Welcome page showing Jira activity alongside the 'Project News'
* [OP-1083] - Fix minor English spelling errors in stabilization tooltips
* [OP-1085] - Upgrade GCS to use Qt 5.1.1
* [OP-1094] - Turn on Progress for large SDK downloads / remove for MD5 files
* [OP-1104] - Create BL version 6 to support larger firmware
* [OP-1105] - If firmware .info blob is missing, test string is too long
* [OP-1107] - Convert About dialog to QTQuick 2.0 and cleanup code.
* [OP-1110] - Move Welcome screen to QtQuick 2
* [OP-1111] - Move About to QtQuick2
* [OP-1112] - Update contributors in GCS
* [OP-1113] - Convert new PFD design to QtQuik2
* [OP-1117] - Implement Horizon mode
* [OP-1120] - Waypoint upload to board should be transacted
* [OP-1133] - UAVTalk - expose send/request all instances of multi instance uav objects + related uavtalk fixes
* [OP-1137] - Make Configuration Checkbox checked by default during uninstall
* [OP-1141] - Add a further bias correction to barometer to better handle thermal variations
* [OP-1143] - Missing Linux udev rules for Revolution boards
* [OP-1153] - Provide a mean to instrument SystemMod stack utilization
* [OP-1154] - Config Option to Automatically Increase Copter Throttle per 1/cos(bank_angle)
* [OP-1158] - Add flight plan consistency checks
* [OP-1160] - Some dev Env improvements, git hooks for messages, make prepare etc.
** Task
* [OP-775] - Add ARM DSP library to OP codebase
* [OP-813] - Manage merge of translation work to French
* [OP-839] - Disable pyMyte dependency until really used
* [OP-901] - Update STM32 StdPeriphLib to current
* [OP-1087] - Update Qt used from Makefile to 5.1.1 for Windows and Mac
* [OP-1109] - Created share Qt5 QtQuick2 port branch
* [OP-1115] - Remove old artwork from the Artwork folder in Git
* [OP-1119] - Write GCS plugin to access and display on board logs through uavtalk and export .opl files from logged uavobjects
* [OP-1058] - UAVO:Implement a structured named accessors for multielement fields (Flight side)
** Bug
* [OP-844] - Fix header comments in altitudehold.c
* [OP-845] - Fix reading serial number from USB device on mac platform
* [OP-846] - make qt_sdk_install fails
* [OP-865] - PWM output 6 does not work on RM
* [OP-887] - Provide some standard method of calibrating CPU speed and load measurement for boards
* [OP-924] - PPM output does not have failsafe
* [OP-934] - Incorrect timeout handling in rfm22b receiver
* [OP-971] - Add UI to set AccellTau with revo board
* [OP-1004] - UAVObjectBrowser, buttons don't work when scientific display is turned on
* [OP-1014] - Com port connections are not working on OPLink
* [OP-1018] - Zero point initialization in ETASv3 Airspeed sensor buggy
* [OP-1027] - Segfault in UAVObjectBrowser when "Request"ing a UAVObjectCategory
* [OP-1042] - Revo firmware version isn't read correctly through OPLink
* [OP-1046] - Waypoint upload incomplete, no visual confirmation of failed uploads in uavobjectbrowser and waypoint editor
* [OP-1048] - Attitude is not working with AccelTau > 0
* [OP-1049] - CC3D attitude estimation failure after multiple settings changes and reboots
* [OP-1067] - Invalid value for "LinkState"
* [OP-1076] - CF Attitude filter in next randomly re-initializes on arming.
* [OP-1078] - GCS segfaults if you close it after playing a log file
* [OP-1080] - Unreliable detection of board through OPLink
* [OP-1095] - GCS crashing on macosx 10.9 upon connection of oplink mini
* [OP-1098] - CDC driver fails installation in Windows 8 or 8.1
* [OP-1099] - Hidden icons in Configuration tab
* [OP-1101] - Tools.mk has a few tabs and they need to be converted to spaces
* [OP-1102] - OP GCS registers some file types is should not
* [OP-1103] - GCS can not be compiled on OSX 10.8 after update to Qt5.1.1
* [OP-1108] - Minor bugs found while reading the code
* [OP-1114] - QGLWidget prohibits QListWidgetItem, set AA_DontCreateNativeWidgetSiblings as work around
* [OP-1118] - QComboBox in UAVObjectBrowser does not stay in focus on Mac OSX
* [OP-1121] - GCS will not exit if the Waypoint editor/PathPlanner dialog is open
* [OP-1123] - GCS assertion failure when loading a waypoint file
* [OP-1125] - UAVTalk - acking/nacking multi instance uavobjects is broken (when sending individual instances)
* [OP-1132] - LIBEAY32.dll missing from installer
* [OP-1139] - Add higher order correction to MS5611 driver for low and very low temperature compensation
* [OP-1142] - No yaw in Horizon mode
* [OP-1145] - OPLM to GCS link not reliable
* [OP-1148] - Futaba R7008SB S.Bus protocol not supported
* [OP-1151] - PFD display - inverted flight
* [OP-1152] - Check Stack usage for CopterControl & CC3D
* [OP-1155] - Fix OSX Packaging for GCS
* [OP-1157] - sin_lookup_deg() returns garbage for negative angles
* [OP-1166] - GCS misses yaw neutral setting on sync from initial connection
* [OP-1167] - New flight mode switch position UAVO to work better with SITL, HITL
* [OP-1168] - GCS Reload Board Data button doesn't work
* [OP-1169] - GCS UAVO object titles off by one
* [OP-1176] - Cruise Control checkboxes use wrong Default button
* [OP-1177] - AltHold - Need a setting to allow disabling of bank angle throttle compensation in AH
* [OP-1178] - After re-factoring of ConfigTaskWidget code the OPLink config page does not work reliably.
* [OP-1179] - About box not working in Linux64 build (but probably the same is for Linux32)
* [OP-1180] - GCS AltHold Tab - Reload button and update in real time
* [OP-1181] - on radio configuration the pitch slider has maxed out on its own three times randomly
* [OP-1182] - Telemetry monitor widget is too small on Mac
* [OP-1183] - UAVBrowser displays hex string as decimal
* [OP-1184] - Scope gadget - Stack monitor configurations need a cleanup
* [OP-1188] - Optimize Stabilization Module stack size usage
* [OP-1191] - Revo OPLink bug in GCS
* [OP-1192] - Even though Throttle is off there is motor movement in some situations.
* [OP-1211] - dT calculation in Stabilization and other modules unsafe
* [OP-1218] - PIOS_COM is not thread safe
* [OP-1228] - GCS Quits unexpectedly
--- RELEASE-13.06.04 ---
This maintenance release includes the following fixes missing in (previously not released to public) RELEASE-13.06.03.
- Fixed issues with Google Maps;
- Includes new signed version of CDC drivers for Windows platforms;
JIRA issues addressed in this maintenance release:
OP-1044, OP-1070, OP-1072
Use the following link for a comprehensive list of issues addressed by this release
http://progress.openpilot.org/issues/?filter=11060
--- RELEASE-13.06.03 ---
This maintenance release addresses the following issues:
- Fixed CC3D attitude estimation failure after multiple settings changes and reboots.
- Fixed OPLink crashes when erasing settings
JIRA issues addressed in this maintenance release:
OP-1049, OP-1050
--- RELEASE-13.06.02 ---
Refactoring of OPLink radio driver. Auto-configuration was removed, and a
one-way link was added, including a ppm-only mode that is intended to be used
when only a PPM link is desired. PPM-only mode configures the modem as a
one-way link running at 9600 bps (air datarate) and only sends PPM packets.
--- RELEASE-13.06.01 --- Italian Stallion Release ---
It applies the following changes to previously not released to public RELEASE-13.06
- Temporary disabled AltitudeHold and AltitudeVario flight modes. They were not
officially supported. But since people expected well-known production quality
behavior, it is better to make them final, then reenable
- Fix windows hid connection failure if board was already connected and gcs started;
- Fixed a bug that lead to disabled controls with some settings combination in CC/CC3D hardware page
- Fixed a bug that prevent to correct saving stabilization settings for CC/CC3D
- Fixes Uploader GUI and automatically close AutoUpdate panel after 7s
JIRA issues addressed in this release:
OP-1028 OP-1020 OP-1024
--- RELEASE-13.06 ---
This is the first official OpenPilot Revolution software release. This version
also supports the CopterControl, CC3D, OPLinkMini and the upcoming OP OSD.
There a number of significant backend changes in this version compared to
previous software releases: from new toolchains and build system to a source
code reformatting that is inline with our project style guidelines.
The goal of this release is to provide CC3D-style features for the new
Revolution platform (using the Revo's internal modem and external OPLinkMini
board). Advanced features such as Altitude Hold, Position Hold, Guidance,
Return to Home, and AutoLanding are still in development and will be available
in future releases. The availability of those features will depend on how many
people are able to contribute with code, testing and documentation.
Remember that the first Revo hardware batch was intended for developers/
bleeding-edge testers, not end users who want a 100% final platform.
- New bootloaders are REQUIRED for this release to support new features such
as erase settings and others. As always, bootloaders can be updated without
any special programmer hardware using the bootloader updater firmware files.
- F1 boards (CC, CC3D, OPLinkMini) require bootloader version 4 or higher.
- 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
Please remember to take a moment to view these important tutorials:
http://wiki.openpilot.org/display/Doc/OpenPilot+Tutorials
What's New / Release Notes
--------------------------
NEW:
- Firmware folders removed.
The firmware files folder has been removed in this release. These files
are now integrated into the GCS so they are always up to date and there is
less risk of a firmware mismatch. To update your firmware you must use
either Vehicle Setup Wizard (big green button at the top right on the
Welcome GCS tab) or the new Auto-Update button on the GCS Firmware tab.
- Responsiveness sliders.
To simplify tuning, we have introduced a new Responsiveness slider that
will allow you to modify stick response. For best results, you should
still tune your system with PIDs as tight as possible for better
stabilisation. This will result in better stabilisation, and at the
same time soft or sharp response according to your preferences.
- Auto-Update firmware.
This feature simplifies all OpenPilot board firmware updates. Now all
you have to do is click "Auto-update" on the Firmware tab and follow the
instructions to reflash your OpenPilot board. This is essentially the
same as Rescue but uses the embedded firmware images so there is no need
to browse for them anymore.
- Erase Settings Option.
We previously had a hacky way to delete bad or incompatible settings from
our OpenPilot boards. This old special firmware that did this is now
deprecated and the functionality is now integrated into the latest
bootloaders and firmwares.
To erase settings enter DFU (boot) mode (using Halt or Rescue function)
and click the "Erase settings" button on the Firmware tab and follow the
instructions. This will NOT work with an older bootloader and the "Erase
settings" button will be disabled if an out of date bootloader is detected.
- Language defaults.
GCS now uses the system default language (only French and English are
available currently, please contribute translations). You can change the
language in the GCS Options at any time.
- CDC driver install option (Windows only).
This is an optional USB virtual serial port that is useful, for example,
for updating your GPS configuration using the U-Blox u-Center software.
It is NOT required for normal configuration of OpenPilot boards. If it is
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 the driver information INF file is supplied by
OpenPilot.
- Lots of help tooltips were added to the GCS. Hovering your mouse over an
option in the GCS will show them, please review for help during tuning/
setting up.
- A large amount of general improvements, code clean ups and minor bugs
resolved.
KNOWN ISSUES:
- On Linux you should remove the OpenPilot package if it was previously
installed, then install this new one. This is a known issue and likely
be fixed later.
- Due to changes in USB descriptors to support new features, USB drivers
on Windows must be updated. If after using Rescue or Wizard or Auto-Update
button the GCS cannot connect to the board, you may be experiencing this
USB issue. To resolve it you should remove the old drivers (ones with
yellow exclamation mark) and allow Windows to find them again.
Here is how to do it:
Windows XP:
- Right click on "My Computer" on your desktop and select "Properties".
- Select the "Hardware" tab.
- Select the "Device Manager".
- 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 "Uninstall".
Windows 7/Vista:
- Right click on "My Computer" on your desktop 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 to expand the list of USB drivers. Right-click on the driver(s)
you wish to uninstall and select "Uninstall".
Then disconnect the board from USB, wait few seconds and re-connect it to
your computer. Windows should find new drivers and install them properly.
- If GCS crashes when switching to the Flight Data tab, it usually means
your PC needs newer video drivers. That tab contains a ModelView widget
which uses OpenGL. It is known to crash on some graphics cards with old
and buggy drivers.
- Sensor calibration is not final. It will be reworked completely to
increase its accuracy and make it easier to use.
- Until the calibration is reworked, default attitude estimation algorithm
used by Revo is a complimentary filter with magnetometers disabled. Hence
Revo does not use them yet to correct yaw drift. Magnetometers can be
enabled, but you should properly calibrate them first. That's the reason
why they are disabled by default.
- AltitudeHold/Vario modes are enabled but not officially supported. Do
not expect it to work perfectly and be considered production quality.
You may play with it and report your issues and suggestions at your own
risk. If you are not using a case for your Revo, we strongly recommend
covering the barometer sensor with some foam to shield the sensor from
wind and light.
- Note that throttle stick in AltitudeVario mode is used to control vertical
velocity, sometimes called vario altitude in other platforms, centre stick
means hold altitude and there is a dead band around centre stick.
- There are currently no configuration options for the Radio module in
the Revolution except for Radio enable/disable and output power. This is
intentional because all configuration should be done using its paired
ground OPLink coordinator.
How to configure the Revolution to OPLinkMini radio link:
- Make sure you have the newest bootloaders and matching firmwares
between the Revolution, GCS and OPLink.
- Enable the radio in the Revolution, click save and disconnect the board
from USB.
- Power it from external supply to continue.
- Then connect the OPLink board to USB and scroll down in the GCS config
widget to find OPLink icon at the end of list. This icon is only
available when an OPLink is detected.
- To pair the two radios, select the Revolution 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 unplugging the board from the USB and
plugging back your OPLink it should show "Connected", and you can
continue with the configuration.
- Do not set the Revolution modem or OPLinkMini output power to high values
without antenna connected, this can damage the hardware.
JIRA issues addressed in this release:
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-682, OP-693, OP-719, OP-726, OP-727, OP-747, OP-761, OP-769,
OP-770, OP-772, OP-781, OP-784, OP-792, OP-804, OP-807, OP-812, OP-816,
OP-817, OP-820, OP-821, OP-834, OP-843, OP-846, OP-854, OP-855, OP-856,
OP-861, 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-958, OP-965, OP-968, OP-969, OP-970,
OP-977, OP-979, OP-980, OP-981, OP-982, OP-983, OP-988, OP-989, OP-990,
OP-991, OP-993, OP-997, OP-998, OP-999, OP-1000, OP-1002, OP-1005, OP-1007,
OP-1008, OP-1009, OP-1010, OP-1011, OP-1012, OP-1013, OP-1015, OP-1016, OP-1021
Short summary of changes. For a complete list see the git log.
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 data flash is splitted into two partitions, one for settings, another for user data (logs, etc);
- 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;
- Revo alarm led now distinguish between Critical(lit led), Error(blink fast), Warning(blink slowly) Alarm condition
- Revo alarm led flash fast(like in Error Alarm) during calibration using complementary attitude estimation.
- Redo gyro bias zero after calibration parameters changes
- Do not raise GPS alarm if a gps port is not configured.
- 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.
- Adds GUI to set Altitude Hold filter parameters.
- Adds configurable units for velocity/speed and altitude in QML PFD. Units are configured in settings panel.
- Reduces precision of the PDOP value in the PFD display to 1 decimal.
- Remove deprecated powerlog
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:
- old and buggy code was removed;
- 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;
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.