v1.10.0-beta4 (2019-10-21)
- remove unnecessary double precision floating point math
- fix invalid use of px4_sem_timedwait
- set no vertical thrust when commanding velocity
- add Descend task to land without GPS
- remove unnecessary double precision floating point math
- fix potential invalid memory access
- fix uninitialized coverity warnings
- fix uninitialized mavlink warnings
- remove TPA
- execute failsafe with invalid setpoints
- templates: only decode ros2_distro when possible and nedeed
- avoid using an enum as px4::atomic argument
- add support for test_motor (motor_test CLI command)
- more robust logic to set 'stop_motors' flag
- remove safety button check
- remove factory test for fmu-v2
- don't implement print_message for fmu-v2
- initialize strings
- increase posix stack overhead (mostly for ASan)
- rc.vtol_defaults limit inner loop rate (#13196)
- split out analog battery handling to new standalone battery_status module
- decrease priority below IMU sensor WQ threads
- print errno for advertisement failures
- fix invalid use of px4_sem_getvalue
- only reset thrust when disarmed
- avoid potential semaphore counter overflow
v1.10.0-beta3 (2019-10-16)
- fix adaptAntipodal() function
- include all corner case combinations
- add first controller convergence test
- bump container tags to 2019-10-04 (#13095)
- microRTPS: deploy templates to px4_ros_com
- use gold linker if available
- show sitl_gazebo build output and improve rebuild
- update parameter strings to class enum
- bugfix: get all available messages on the subsystem_info topic
- improve message for RC override event
- add const qualifiers for clarity
- allow boards to enable dshot only on a subset of the timers
- update timer generation before DMA request
- check if DMA still in progress
- reduce static buffer size
- add support to send commands via CLI
- add telemetry and publish esc_status message
- move implementation to a separate directory & library
- handle dcache, flush cache before DMA transfer
- add dshot driver
- move to WQ with uORB callback scheduling
- correct typo
- trim the message and remove unused fields
- fix switchTask() comment typo
- orbit and obstacle test use new uORB::Publication<>
- switch to uORB::Subscription
- remove unused include and variable
- fix fastrtpsgen version check handler
- tone stalebot down
- use constexpr instead of const
- enable dshot
- switch to uORB::Publication
- switch land flags to properies instead of one state
- move to same WQ as estimator
- Remove recently added vehicle_attitude.timestamp check from MulticopterLandDetector::_get_maybe_landed_state(). (#13072)
- pull explicit constructors
- only send ATTITUDE/ATTITUDE_QUATERNION msgs on vehicle_attitude update
- add protection against setting wrong type of parameters
- fix boot complete without lockstep
- disable sending RC override
- move rate control to RateControl class
- improve failsafe handling
- move to WQ
- templates: fix support for ROS2 Dashing
- extend printf status output
- fix save mission state. (#12468)
- bugfix to prevent NaN setpoints
- when setting pos_sp_triplet yaw, also set the yaw valid flag to true
- add dshot timer config
- change order of titles (#13174)
- defer auto-saving to after disarming for flash-based params
- update perf counter for flash-based param_save_default()
- refactor failureDetectorCheck return value
- add const qualifiers to parameters
- remove goto from imu consistency check
- add PX4_ARCH_DCACHE_LINESIZE definition
- command line status output and shutdown empty queues
- move to uORB::Publication<>
- add dshot startup support
- move to uORB::PublicationMulti<>
- organize vars in voted_sensors_update.h
- Fix max distance for SF/LW20/b
- add battery support (uavcan::equipment::power::BatteryInfo)
- remove memset 0 initializations because of zero initializer in header
- fix style
- parameter CAL_EN enables sensor with id CAL_ID
- set priority properly in case of late mag subscriptions or sensors enabled param changes
- restore editor.smoothScrolling to default
- update parameter strings to class enum
- commander re-evaluate RC mode switch when local position becomes valid
- vtol_att_control: update parameter strings to class enum
- commander: update parameter strings to class enum
v1.10.0-beta2 (2019-09-30)
- update to Windows Toolchain v0.6 (#13016)
- move to PX4Rangefinder and cleanup
- limit collision warning to every 3 seconds and minor cleanup
- fix integer rounding (#13028)
- update orb_publish to uORB::Publication<>
- allow RC to override during RTL
- remove not disarming by RC message
- rc_calibration move to uORB::Subscription
- fix for undefined sanitizer
- set CM8JL65 signal_quality invalid beyond bounds
- move handling of invalid range into ECL (#12988)
- update to latest ecl version [continued] (#13023)
- temporarily hardcode new quality information to unkown
- use inline assignment initializer for reset_counters struct
- Fix comment to be style compliant
- move to uORB::Subscription
- increase stack by 60 bytes
- update orb_publish to uORB::Publication<>
- update orb_publish to uORB::Publication<>
- fixed typo errors.
- simplified probe logic and lowered max readable distance.
- fix v3hp signal quality and modified probe to detect v3hp.
- unify maximum operational distance to 35m
- refactor driver start on i2c.
- [Wingtra docet] fix for properly resetting v3 and v3hp modules.
- fix for lidar lite v3hp
- update orb_publish to uORB::Publication<>
- ifdef networking code
- wait for boot complete before sending or receiving anything
- typo fix att -> act
- prevent race if shut down immediately
- optimize normal mode for typical GCS usage over serial radio
- always check stream subscriptions (#13018)
- update orb_publish to uORB::Publication<>
- use quality metric
- fix main function signature
- don't advertise garbage
- publish all PX4_INFO messages as well (#12954)
- reduce POSITION_CONTROL priority
- rename qshell sequence fields so they can be parsed on fastrtpsgen
- update orb_publish to uORB::Publication<>
- remove duplicate namespace accesses
- move from FlightTasks/Utility into mathlib library because the function is also used by other libraries
- replace type placeholder with floats
- SubscriptionCallback cleanup naming
- fix limit actuator poll interval.
- fix front transition rate publication (enable FW attitude controller to run instantly when transition is started). For that the vehicle_status_poll is moved before vehicle_control_module_poll in FW att C
- refactor local scope t variables instead of array
v1.10.0-beta1 (2019-09-02)
- refactor into arch-specific directories
- allow board to not define BOARD_ADC_HIPOWER_5V_OC or BOARD_ADC_PERIPH_5V_OC
- add Kopis 2
- rename normal S500 to generic and remove PX4 defaults
- add Holybro S500 Kit which was tested at dev summit
- added RTPS ID for airspeed_validated message
- move it out of the alias space
- fixed driver not reporting magnetometer as external
- fix PX4 version format check
- move most orb subscriptions to uORB::Subscription
- fix comment
- default initialize _data
- fix device_id initialization
- remove unnecessary 'set MIXER_AUX none'
- add Holybro KakuteF7
- simplify RC port configuration by using NuttX ioctl's
- allow to disable startup sound
- ensure 'git fetch --tags' is executed for all Firmware builds
- move to new WQ and uORB::Subscription
- use paramter to set sensor orientation
- add field of view
- Refactor driver, employ uniform initialization, format, and deprecate ringbuffer and IOCTL. (#11853)
- address PX4/PX4-Autopilot#12179 review comments
- compute the attitude_sensor_frame outside for loop
- use the maximum timestamp between offboard and distance sensor such that if one of the two fails the vehicle goes into failsafe, do not switch off CollisionPrevention if it fails
- use FlightTasks convention for private/public methods, add doxygen on header file
- add failsafe for stale distance data
- make sure that vehicle tilt compensation is correct for all sensor orientation
- refactor code to make it more readable
- make sure that the timestamp is updated for distance sensors even if they are out of range
- map distance_sensor data to obstacle distance
- cleanup COM_POSCTL_NAVL parameter
- move esc_status as local variable.
- added esc_status prearm checks
- make RC override multicopter only
- pure refactor of RC override conditions
- refactor module usage output
- add 'commander arm -f' command to force arming
- fix arming auth param translation
- use shutdown_if_allowed() to check for shutdown safety
- do not reboot on USB disconnect when armed
- fix disarming for rovers
- prevent potential disarms in-air
- refactored state-machine strings
- enable RC override by default
- enable automatic disarming after land detection by default
- add simple dmesg functionality (enable only on v5)
- remove deprecated parameter MAN_R_MAX
- add horiontal and vertical fov, add quaternion for sensor orientation
- move to arch-specific directory
- fixed calculation of static pressure error
- reduce GPS initialization time for SITL from 10s to 0.5s
- set default RTL_TYPE = 1 for fixed wing
- don't lock integrator during transition - airframes that are not well trimmed rely on the integrator to learn the offset. This change can help improve altitude hold during transitions
- don't apply yaw feed forward in circle approach
- only reapproach circle if center changed
- use StraightLine library to approach circle
- remove unused _num_failsafe_set
- remove unused write() interface
- fix comments & documentation
- fix implicit fallthrough
- remove unused functions
- move to WQ with uORB callback scheduling
- move to WQ with uORB callback scheduling
- Prevent injection from choking the driver (#12710)
- remove commented code
- don't advertize uninitialized data
- fix NULL terminator truncation
- switch unit test file name to convention
- remove dependency/side effect on time
- move out of systemlib, move to gtest
- respect actuator_armed.prearmed flag
- disable GUI using HEADLESS=1
- use PX4_SIM_SPEED_FACTOR, not cli arg
- archive catkin test logs on failure
- pub_test needs to start px4 in daemon mode
- Add and max_altitude and timestamp validity checks to MulticopterLandDetector class. (#12681)
- Implement ModuleParams inheritance in the FixedwingLandDetector class.
- cleanup actuator_armed and battery_status naming
- update to uORB Subscription and Publication
- multiple sdf models (#12306)
- Refactor the driver to standardize against other distance sensor drivers. (#11858)
- correct a write_reg issue (#12604)
- cleanup and create PX4Rangerfinder helper class (#12567)
- fix LIDAR-Lite v3 initialization (#12453)
- increase stack size by 20 bytes
- fix race condition for fast consecutive stop & start calls
- fix multiple format definitions for multi-instance topics
- unconditionally call _writer.notify()
- log obstacle_distance_fused instead of obstacle_distance
- handle 'char' type in messages
- add Ulog sync bytes at 1Hz and tagged log message definition (#12144)
- fix uninitialized member variable
- add arming/disarming via AUX1 RC channel logging mode
- move parameter definition to mixer_module
- changed default from 200 to 150 deg/s - we have set the maximum yaw-rate MC_YAWRATE_MAX to 200 degrees and it makes senses to leave a bit of margin between what the user can demand and what the limits of the vehicle are
- changed default from 0.02 to 0.1 - generally better attitude tracking - much better altitude control immediately after takeoff (hover throttle offset) - faster landing detection
- fix mode slot numbering (#12578)
- Fix forwarding of messages with target system/component id (#12559)
- fixed temperature for batteries (#12605)
- Use MAV_BROADCAST only in context of ethernet
- Fill in thrust field correctly for offboard rates setpoints on fixed wing (#12311)
- Enable gimbal control using SET_ACTUATOR_CONTROL_TARGET while controlling the vehicle offboard (#12146)
- match commands aimed at any sysid/compid
- added check if instance mode is serial when trying to find if instance exists (#12642)
- fix race condition in mavlink_command_sender - if we receive an ack for a command through a specific mavlink channel then do not drop the corresponding command in the queue if this specific mavlink channel did not issue the command. If we don't do this we can end up in a situation where we associate an ack coming through a specific mavlink channel to a command in the queue which was not requested by this mavlink channel. Moreover, the actual command for which the ack was meant remains in the queue and eventually triggers a timeout.
- split BATTERY_STATUS from SYS_STATUS update and handle all bricks (#12034)
- add new extvisionmin mode (#12279)
- don't try to resend command to instance which did not request this command
- stream OBSTACLE_DISTANCE to GCS
- Refactor driver class to allow for multiple sensors and cleanup (#11859)
- output zero throttle in manual mode when landed - MPC_MANTHR_MIN is used as minimum throttle in attitude control mode when the vehicle is in air. This is useful to retain some control around roll and pitch axis if airmode is not enabled and the user demands zero throttle. However, when the vehicle is landed there is not need to keep the throttle at a higher value than zero.
- Increase default rate integral gain
- fix vehicle_rates_setpoint_poll() error due to merge timing
- added yawrate control from offboard.
- takeoff fix implicit switch fallthrough
- increase stack size by 100 bytes
- Explicitly convert tilt variables to radians during check and assignments
- Fixed missing semicolon
- structural change to make possible to generate pub/sub code for multi-topics/aliased msgs
- improved get_multirotor_count () code readbility.
- create MixingOutput library and use in fmu
- make scheduling configurable
- make mixer loading thread-safe
- set fmu in test mode and cleanup (#11249)
- Implement ModuleParams inheritance (#12356)
- fix vehicle_status update (#12364)
- VTOL: set heading of transition of a VTOL_TAKEOFF to the VTOL_TAKEOFF waypoint (and enforce heading)
- VTOL: fix mission yawing timeout (MIS_YAW_TMT)
- VTOL: disable weather vane during yaw aligning before front transition
- update empty_trajectory_waypoint
- use hysteresis on z to check progress towards the goal
- hysteresis on failsafe
- fix comment
- use convention for paramter name
- fix bug in requesting update of the mission item. During takeoff you're always in the condition within xy acceptance radius and more than altitude radius away from the takeoff waypoint
- use only one increment in float directly CollisionPrevention: rename a few variables to make the code more readable
- add fields from mavlink extension
- take out local_position_estimator from build as was out of flash after ecl update for airspeed selection module
- enable dmesg buffer (3kb)
- fix potential nullptr dereferencing on param import
- Change variable initialization to uniform initialization style, format whitespace, and change baud rate unsigned to speed_t type. (#11861)
- restructure (NuttX) architecture-specific code
- match usb-Hex_ProfiCNC device (#12772)
- remove px4_backtrace
- add argument to change the CWD (#12482)
- remove segfault handler
- restore original SEGV signal handler upon first entry of our handler
- store result of _target_pose_sub.update() for later use
- improve output in case of mag inconsistency
- rename to output_limit
- remove that header and move px4::init to px4_init.h
- move to WQ with uORB callback scheduling (#12224)
- cleanup - removed duplicate const MAX_ACTUATORS definition
- force io firmware build
- cleanup uneeded conditions
- add git commit hash to .px4 file
- fix airframe incremental build
- add explicit dependency to parser scripts
- add check for ID space
- reduce a few LOC in AUTOCNF logic (#12467)
- add RC_PORT_CONFIG param to configure RC port
- sync up submodules
- close replay log file after replay is finished, then exit (#11264)
- Enable Offboard support for Rover position control
- Rewrote gnd_pos_control and removed gnd_att_control (#12239)
- refactor to ModuleBase and use C++ Param API
- fix typo that was causing build to fail rpi
- implemented RTL based on cone shape
- ids: add missing aliased topics
- generation scripts: make indexing of lists possible in both Python 2 and 3
- remove this parameter
- add q estimator only option and activate on omnibus
- uniform initialization and whitespace formatting in voted_sensors_update.h
- create vehicle_acceleration module (#12597)
- create vehicle_angular_velocity module (#12596)
- mag reload calibration parameters when first seen (#12586)
- disable SC2181
- fix code style
- move to PX4Accelerometer/PX4Gyroscope/PX4Magnetometer/PX4Barometer helpers
- fixing missing declaration
- rewrite old implementation
- clarify TRIG_PINS on FMU (#12714)
- hotfix to recover test coverage CI
- migrate driver class member variable initialization to declarations (#11893)
- move to drivers/drv_tone_alarm
- add support for non-pwm-based buzzers
- remove decode_backtrace.py
- document how to exit
- use orb queue advertisement consistently
- limit actuator controls poll interval
- add optical flow support (Here Flow)
- replaced printf messages with PX4_INFO
- refactor driver to utilize ScheduledWorkQueue class inheritance (#11894)
- improve way to check base type of alias
- enlarge id space for base type msgs
- set RTL_TYPE default for VTOL to 1 (return to home via mission landing if available)
- only run on actuator publications corresponding to VTOL mode
- sensor_selection callback
- replace ARMING_STATE_REBOOT with ARMING_STATE_SHUTDOWN
- more tests to check tags with - prefix
- add beta tag
- validate format of the git tag
- migrate variable initialization from constructor list to declaration uniform initialization (#11896)
- refactor to camelCase function names
- refactor out matrix:: because of using namespace
- add PX4_SIM_SPEED_FACTOR
- use lockstep
- start gzclient GUI for Gazebo simulation
- remove matter of taste tabs customization
- limit state updates to input availability and always publish both FW/MC actuator controls
- use VT_MOT_ID instead of VT_MOT_COUNT - VT_MOT_COUNT assumed that motors were always the first outputs. This does not have to be true always. VT_MOT_ID allows to specify precisely how many motors we have for hovering and to which channel they are connected.
- apply multicopter takeoff hotfix also for vtol (#12250)
- replaced VT_MOT_COUNT with VT_MOT_ID
- check before dereferencing
- use Loaders and safe_load (#11910)
- use safe_load(f) instead of load(f, Loader=yaml.FullLoader)
- CollisionPrevention only process distance_sensor updates
- hotfix for logger: use '%i' instead of '%zu'
- VTOL: add parameter to prevent flight if roll direction was not checked
- Revert "simulator: remove hack for diff_pressure noise"
- Merge pull request #12063 from PX4/fix_custom_tune