v1.9.0

PX4/PX4-Autopilotv1.9.0May 25, 2019by LorenzMeier

AI Summary

A major release featuring Orbit mode, Multicopter Airmode, Obstacle Avoidance, Ethernet networking, and a NuttX upgrade.

Key Highlights

  • Orbit mode (multicopter)
  • Multicopter airmode
  • Obstacle avoidance in missions
  • Collision prevention in position mode
  • New flight tasks system enabled by default

New Features

  • Orbit flight mode
  • Airmode implementation
  • Obstacle avoidance and collision prevention
  • Ethernet networking support
  • NuttX upgrade to 7.28+
  • Lockstep simulation support
  • Improved VTOL support
  • GPS heading support
  • u-blox F9 generation support

Full Release Notes

# High-Level PX4 v1.9 Release Notes

Release link: https://github.com/PX4/Firmware/releases/tag/v1.9.0
Devguide documentation: https://dev.px4.io/v1.9.0/en/
Full Changelog: https://gist.github.com/mrpollo/999253f9bdddf8a9d5f08141a1a9f364

## Highlights
* ARM M7 silicon errata fix
* Ethernet networking support
* [Orbit mode](https://docs.px4.io/v1.9.0/en/flight_modes/orbit.html) (multicopter)
* [Multicopter airmode](https://docs.px4.io/v1.9.0/en/config_mc/pid_tuning_guide_multicopter.html#airmode)
* [Obstacle avoidance in missions](https://docs.px4.io/v1.9.0/en/computer_vision/obstacle_avoidance.html) (with full 3D navigation, not just basic points)
* [Collision prevention in position mode](https://docs.px4.io/v1.9.0/en/computer_vision/collision_prevention.html) (with full 3D navigation)
* New flight tasks system enabled by default
* Smoother takeoff for multicopters
* Smooth trajectory generator for multicopter auto mode
* GPS heading support for use in magnetically challenging environments
* Forgiving default filter settings for larger multicopters with high vibration levels
* Proven failsafe between different IMUs (Pixhawk 2.1 hardware errata of HEX products successfully detected and handled)
* Operating system: NuttX upgrade from 7.22 to 7.28+
* Option to build single-vehicle-type binaries for flash-constrained microcontrollers
Simulation improvements
* Better VTOL models
* [Simplified multi-UAV simulation with JMAVSim](https://dev.px4.io/v1.9.0/en/simulation/multi_vehicle_jmavsim.html)
* [Run simulation faster/slower than realtime (lockstep simulation)](https://dev.px4.io/v1.9.0/en/simulation/#simulation_speed)

## Main Features and Improvements

With over 3000 commits a lot of the changes are not listed here. These changes represent the main improvements in the system.

### Multicopter
* Limited-jerk trajectory generator for auto mode
* Smoothing of takeoff
* Mixer rewrite and Airmode for all axes
* Improved Acro performance (keep integrators always enabled in-air)
* Spool-up time for motors after arming
* Orbit flight mode
* Airspeed robustness (fault detection + failover) [BETA]

### VTOL
* Improved support for tiltrotors
* Rate controller architecture change (run fixed wing & multicopter rate controller together to have dedicated rate controller for one set of actuators)
* Active weathervane based on direction of desired thrust vector
* Migration guide (vtol roll direction parameter - V19_VT_ROLLDIR)

### PX4/ECL - Estimators improvement
* Reduced latency from receipt of IMU data to output of vehicle Pose data
* Multi GPS support (GPS blending and failover)
* Support for Fusion of GPS heading
* Miscellaneous optical flow data use improvements
* Miscellaneous VIO data use improvements
* Improve stability of attitude alignment and yaw reset at large tilt angles (eg tailsitters)

### PX4/GPSDrivers
* Support for u-blox F9 generation (RTK)
* Initial support for Septentrio

### Computer Vision & Autonomy
* Full bidirectional VIO uORB messaging, with linear/angular velocity and covariance propagation, besides pose data;
* Fast-RTPS bridge client and IDL definitions code generation improvements for a better integration with px4_ros_com (PX4 bridge with ROS2).

### PX4/Avoidance
* Collision Prevention in Position Control 
* Obstacle Avoidance in Mission Mode
* Pre-flight checks and failsafe mechanisms for Obstacle Avoidance in Mission mode

### Simulation
* SITL lockstep (jMAVSim + Gazebo support)
* Faster or slower than real-time simulation, support to pause or step through code, enables SITL on older or slower hardware
* [Simulation in Hardware](https://dev.px4.io/v1.9.0/en/simulation/simulation-in-hardware.html) module
* Avoidance in Gazebo
* [Serial port configuration improvements](https://docs.px4.io/master/en/peripherals/serial_configuration.html)

### Logging improvements
* Mission log: Minimal summary log file for flight meta data

### Onboard computer / middleware improvements
* Improved support for ROS2
* Initial support for monitoring of an onboard computer
* [Bootloader update on v2 boards](https://docs.px4.io/master/en/advanced_config/bootloader_update.html)

### NuttX update
* NuttX upgrade from 7.22 to 7.28+
* Compressed defconfig files.
* Compressed ROMFS
* Many bug fixes and performance improvements

### Updated Supported Hardware
* Analog Devices ADIS16477, ADIS16497
* AK09916 compass (Here 2 GPS)
* Cm8jl65 distance sensor
* PMW3901 optical flow sensor
* InvenSense ICM20948 compass (Here GPS)
* Pixhawk 4 Mini (full support)
* NXPhlite
* NCP5623C RGB LED
* SMBUS batteries (improved support)
* Better ESC calibration for PWM ESCs