v1.11.0-beta2 (2020-05-10)
- replace ioctl with uorb message (#14087)
- fill repr_offset_q for tailsitters (#13249)
- add sensor model autodetection (#13863)
- move to PX4 WQ and cleanup
- IFO-S setup is added.
- delete 4004 H4 680mm
- delete 4012 quad x can
- delete 4002 quad x mount
- add ThunderFly Auto-G2 autogyro (#14015)
- add config for px4vision devkit drone (#13683)
- fix airspeed subscription
- minor cleanup
- fix mag spikes
- cleanup only
- switch to Cygwin toolchain v0.9
- switch to toolchain version 0.8
- remove resetting the attitude setpoint
- let the user set yaw weight directly via parameter
- Take advantage of Quaternion.canonical()
- add scale testing for yaw weight
- enable lockstep without LPE
- move to WQ, module base and module params
- don't use _velocity_setpoint for constraints
- fix constrain priority for autocontinue. The constrainAbs function was not prioritizing the minimum value that produces the autocontinue behaviour. This caused zig-zag paths when the waypoints were almost -but not exactly- aligned.
- re-introduce gradual vertical speed limitation during landing between alt1 and alt2
- desynchronize XY from Z for small changes in speed
- Bug fix scheduling interval.
- Bug fix scheduling interval.
- Fix priority assignment
- use driver base class
- fix potential buffer overrun bug (#13904)
- fix incorrect CLI description
- add missing PRINT_MODULE_USAGE_DEFAULT_COMMANDS()
- fix getopt arguments (-A does not have an argument)
- exit/continue correctly when no device is on the bus
- make bus_options const and rename to smbus_bus_options
- remove unused defines
- variable init cleanup + remove unused declarations
- add requirements to ESCs as battery
- check source param inside battery lib
- add ESCs source, remove wrong unit
- cell voltage fill refactor
- delete unused armed
- make battery states not sticky
- treat robotcontrol as system include
- build and include board bootloader if config available
- fix unsafe getLockGuard() API
- move to PX4Accelerometer and cleanup
- cleanup
- add self-test
- cleanup, slightly increase data accuracy
- more explicit data conversion & reduce to 30Hz
- move to PX4Magnetometer and cleanup
- fix device id (device type not set)
- build on linux and qurt
- fix double free in case the driver probing fails
- remove dead code
- use default stack size of 2048, fixes stack check failure
- cleanup main and add to px4_fmu-v5x board_config.h
- move to platforms/nuttx/src
- move to platforms/nuttx/src/px4
- px4_fmu-v5_optimized don't build all mags
- holybro_durandal-v1_stackcheck don't build all mags
- include all procfs entries on boards that aren't flash constrained
- remove all CONFIG_NXFONTS_DISABLE*
- initial CUAV X7Pro support (not complete)
- add nxp fmuk66-v3 and rddrone-uavcan146 socketcan builds
- temporarily disable UART TX DMA
- delete obsolete commented config systemcmd
- px4_io-v2 defconfig optimizations to save memory
- always change default IMU_GYRO_RATEMAX on px4_fmu-v2/v3 and mro_x21
- px4/fmu-v4pro cleanup rc.board_sensors
- fmu was renamed pwm_out
- STM32F76xxx/STM32F77xxx linker add ITCM RAM and .ramfuncs handling
- add esc_battery to build
- reduce CONFIG_NFILE_DESCRIPTORS 20 -> 15
- mro_ctrl-zero-f7 fix i2c
- omnibus/f4sd add board_dma_map.h
- airmind mindpx-v2 switch to new mpu6000 and mpu6500 drivers
- airmind mindpx-v2 fix L3GD20 DRDY pin
- update all NuttX configs CONFIG_NSH_MAXARGUMENTS 12 -> 15
- fmu-v2/v3 rc.board_sensors remove obsolete hmc5883 argument
- remove deprecated SPI + I2C defines from board_config.h
- enable NuttX SPI DMA buffers
- add px4_fmu-v4 and px4_fmu-v5 optimized (-O3) build variants
- stm32f4/f7 enable SPI_DMATHRESHOLD=32
- increase STDIO buffer size where we can afford it
- increase LPWORKSTACKSIZE 1536 -> 1600
- add new spi+i2c config
- fmu-v2/v3 limit rate loop by default
- alphabetize and sync common drivers and modules
- start adc in rc.board_sensors
- increase CONFIG_MAX_TASKS 32->64 on all F7s (#13285)
- Doc driver not started
- bump container tags to 2020-04-01
- bump container tags to 2020-03-16
- update all docker tags
- shorten too long messages
- move to WQ callback and uORB::Subscription
- lower the polling rate from 200Hz to 20Hz to reduce the CPU load
- github: sitl_tests: add matrix for parallel build in Ubuntu Bionic and Focal
- github: bloaty: add matrix for parallel build in Ubuntu Bionic and Focal
- github: build_tests: add matrix for parallel build in Ubuntu Bionic and Focal
- github: ccpp: use 'matrix' to set the containers to run
- github: ccpp: add Ubuntu Focal build job
- update to latest docker tag
- Force absolute paths This helps with some diagnostics tools as we have various compile units in different paths.
- move to UART WQ
- fix warning
- fix Python 3 libs name
- add custom error messsage about Python 3
- move jinja2 check to Python modules
- remove notifications until we can address false reporting
- try to relax notifications
- Adjust target to current range This is required to enable CI.
- No direction change if no obstacle (#13398)
- set frame for obstacle_distance_fused topic
- No movement if FOV is zero
- avoid unnecessary cast from uint16_t to int
- fix sensor range float rounding
- don't unadvertise mavlink_log in destructor
- improve behavior in case of range data loss
- update EKF accel & gyro bias arming limits
- only report manual control lost if found once
- skip continuous preflight check if calibrating
- reject PREFLIGHT_CALIBRATION and PREFLIGHT_STORAGE if armed or shutting down
- changes when USB connected
- reboot/shutdown usability fixes
- Clarify airspeed calibration failure warning msg
- add check for VTOL airfame on fmu-v2 (#14633)
- fix preflight check spam
- set home position on takeoff
- increment is 1 for int params
- unify offboard timeouts
- fix broken 'commander arm/disarm' CLI
- don't run preflightCheck during calibration on reconnect
- fix prearm flag to preflightCheck
- fix mission topic publication
- fix variable naming
- safety button disarm require land detector
- use arm_disarm() helper for safety button disarm
- fix regression issue preventing RC override from working
- remove ekf2 preflight ratio param units
- move most static variables and parameters to class
- remove manual mode before geofence handling
- skip all mag checks if SYS_HAS_MAG is 0
- don't allow arming during VTOL transition
- make battery warning state sticky while armed
- add pre-flight check and parameter for magnetic field strength
- add vehicle-status nav_state change timestamp
- Added a parameter to control the timeout period for disarming after the kill switch is engaged. (#13325)
- fix capitalization of mavlink messages
- fix battery failsafe without GPS
- check center throttle for POSCTL/ALTCTL
- add missing manual modes
- fully support MAVLink force arming
- improve msg when trying to arm in air
- battery failsafe action back to warning
- make battery failsafes sane by default
- add COM_MOT_TEST_EN parameter to enable/disable motor testing
- do not beep on successful commands
- answer to VEHICLE_CMD_DO_ORBIT
- add support for DO_MOTOR_TEST
- Add more documentation around USB reboots If the user disconnects USB we reboot the system to bring it back into a nominal condition before arming. Otherwise we would either have the USB stack running without a cable connected (code running for no reason, which is violating the principle of not running unnecessary code in aviation). Or we would not allow to arm at all if USB was ever connected, which can be confusing if the system is powered off a battery.
- replace deprecated warnx by PX4_WARN
- Exclude shell commands for constrained flash These are convenience commands for developers and are not required for flash constrained targets.
- Do not print health flags on constrained flash Boards with constrained flash are not classic development targets and do not need this.
- Streamline preflight and arming checks The checks did previously only report the first failure (to not overload the radio link). As we are moving to buffered messages and higher bandwidth links this design choice is not any more in the best interest of the drone operator. We are now reporting all detected failures. To ensure architectural consistency more checks have been moved from the commander mainloop into the respective classes.
- Add function to print health flags consistently This enables us to have better situational awareness during development and when inspecting a system in the field as to which subsystem is currently faulty. These flags are from standard MAVLink and are not sufficient nor do they match well the actual critical path to a safe flight. This will be addressed in a second step with the addition of a new MAVLink message and new flags.
- Run continuous pre-flight checks silently As we are checking the current pre-flight state and validate wether the system could be armed, we do not want to spam the console or user with continously failing checks. These checks are reported to the GCS separately and are processed and displayed there.
- Add reporting of preflight and prearming state This is essential for the operator to know if the system is ready to fly.
- enable RC override in takeoff
- clarify the rc override message
- fix preflight check condition to fail if not in HIL mode
- remove variable duplication for geofence and rc override
- Add COM_ARM_AUTH_REQ for enabling Arm Authorization
- start pulling arming related parts into separate folder
- subedit com_rc_override
- remove duplicate rc override title
- mention definition of battery states in the description of the battery failsafe mode parameter
- adding limitTilt() helper function
- add addIfNotNan helper functions
- refactor thrustToAttitude calculation
- switch to gtest for unit tessting
- consistent short float literal notation
- switch back to direct EXPECT_EQ calls for Vectors
- Ignore examples and unused apps These paths are unused code that is not part of the supported set.
- Run lcov separate to fix paths Without this the paths of the different compile units do not match up.
- Fix build for Mac OS These changes are needed for Mac OS.
- use hw description methods for timer configuration
- fix PWM channel ordering
- updated driver to use NuttX DMA functions (#13233)
- add read and write perf counters
- add lis2mdl mag driver
- up_udelay -> px4_usleep
- add PCF8583 RPM sensor (#14018)
- heater: fix module build and startup
- delete unused MAGIOCSRANGE, MAGIOCCALIBRATE, MAGIOCEXSTRAP, MAGIOCSTEMPCOMP
- sync with fmu module
- Clean velPos logging, deprecate ekf2_innovations msg
- use fixed time constant for GPS blending
- Fix GPS blending time jitter
- update submodule
- use PDOP instead of GDOP as TDOP (part of GDOP) is not given by the GNSS receiver
- Stop getting velocity variance from pose covariance matrix (#14779)
- remove unused function declatation
- define max number of range finders seperate from max number of mutli uORB topics
- Fix heading not stable issue. The prblem was that a large dt could drive the alpha filter crazy because of the small dt approximation during the computation of the coefficient. - Remove unused bitmask packing of the innovation checks
- Add bitmask to select terrain estimator aiding sources
- simplify "if true else false" with direct boolean assignment
- extract gps mgs fill
- add COM_ARM_MAG_STR to en/disable mag field strength preflight check
- fill gps gdop topic with pdop (combination of hdop and vdop)
- 0.3 for TFMini was too low, as TFmini outputs slightly more than 0.3 when it is very near to the ground. This cause EKF not fallback to barometer in worst case.
- only publish data if all the ESCs are online
- several review fixes
- fix timeout check
- remove unused fields to reduce message size
- add simple work_item example module
- Exclude some multicopter targets These are rarely used airframes that should not be missed.
- Exclude some fixed wing targets These are rarely used airframes that should not be missed.
- Exclude rover targets This is reasonable as these boards are very old and rovers are a new area of activity.
- Allow counterclockwise loiter
- set waypoint straight ahead for front transition - this fixes the case where the navigator publishes a loiter waypoint or any waypoint which is too close to the vehicle.
- ommit */ with ///< doxygen comments
- remove FlightTaskSport
- Fix ekf2 reset race condition during task switch (#14692)
- use centralized _dist_to_ground computed in FlightTask instead of recomputing it in AutoMapper, AutoMapper2 and AutoLine
- add 1st order lpf on yawrate satepoint for smooth motion
- accept invalid triplet_setpoint (and interpret as loiter)
- Fix sign error in terrain hold setpoint reset
- Rename _min_speed_down -> _max_speed_down as it is the maximum allowed downward speed
- Follow altitude limit given by the estimator
- yawspeed filter remove line with no effect, comments
- Use dedicated member variable for yawspeed filter state insted of using the previous setpoint
- use new Matrix available functions to cast from a vector of 4 elements to Vector2f and from Vector2f to Vector3f.
- Remove MPC_ACC_HOR_ESTM parameter. This was used back in time when no soothing was done to avoid large steps when the estimator stops sending a maximum velocity (e.g.:GPS gained during optical flow flight). Since smoothing is applied later, this is not required anymore.
- fix header comment
- don't overwrite setpoints with estimates
- do not adjust tilt limit of the position control
- adapt to acceleration based control
- remove deprecated AutoLine mission task
- refactor NAN initializations, spacing
- shift DEFINE_PARAMETERS to end of access modifiers
- getPositionSetpoint() initialize entire vehicle_local_position_setpoint_s
- move ecl/attitude_fw into fw_att_control module
- move to px4::params
- move to px4::params
- enable loiter type offboard position setpoint for Fixedwing vehicles
- Do not run verbose There is no need in day-to-day development to run verbose and it is preventing regular PX4 status output from properly rendering
- reposition to current location when violating geofence in hold mode
- try to get latest tools using pip
- new check for MAVSDK tester Python scripts
- only use injected data if copy successful
- enable by default
- move to PX4Magnetometer and cleanup
- build on linux and qurt
- Add convergence tests With noisy accel and thrust in hover, climb and descent conditions.
- add a new single state estimator with measurement noise auto-tuning
- improve info output for external buses
- print an error if a driver does not pass the I2C address
- remove use of PX4_I2C_BUS_EXPANSION
- parameterize IMU integration time (IMU_INTEG_RATE)
- Integrate with PX4 (#12673)
- remove unused global include directories
- initialize state to zero
- remove ioctl(), read(), and RingBuffer
- move to PX4Magnetometer and cleanup
- remove calibration code
- link to devguide instead of issue
- accept AdoptOpenJDK Java version
- hardware rack show df, mount, sensor_combined, vehicle_imu per board
- hardware print more status and cleanup SD card
- hardware print px4io status, pwm info for all outputs, pwm_out status
- increase history for remaining builds
- fix timesync filenames
- hardware test exit from failed hardware check with error, so the check will fail
- move "Cppcheck" stage to ROS Melodic container, as cppcheck-hmtlreport requires Python (2) pygments
- reactivate ROS2-related deployment
- export PYTHONPATH before Catkin build
- update snapdragon container tag
- bump docker tags
- update all docker tags
- updated all docker tags
- re-enable microRTPS bridge templates and scripts deployment
- compile px4_io-v2_default directly and archive
- enable SPI DMA for SPI 4
- fix baro startup
- split into separate header, implementation, and main
- make compatible with lockstep simulation
- relax data timeouts uniformly
- initialize all fields
- split into separate header, implementation, and main
- move to UART WQ
- name folders consistently
- It is 2020 now
- use driver base class
- fix strncpy length and task main signature
- move to PX4Magnetometer and cleanup
- handle re-inserting
- Fix rotation argument parse bug
- move to WQ and delete unused SubscriptionPollable
- dynamic number of subscriptions
- keep typical log path within a single mavlink message
- add data format version tag
- fix initial subscribing to topics
- using ModuleParams (#14316)
- add RPM sensor messages
- fix thread deadlock
- style fix
- fix unused variable build error
- disable logger_status publiation in replay builds
- reduce rate_ctrl_status rate to 50 Hz for high-rate logging
- restore buffer statistics update
- choose logged instances by logger_topics file
- publish initial logger_status orb message
- add safety (switch) at minimal rate
- refactor start_stop_logging
- Refactor new boot_bat logic into separate function
- Add support for logging only on bat power
- log all raw sensor data at a minimal rate
- move to PX4Barometer and cleanup
- move to PX4Barometer and cleanup
- move to PX4Magnetometer and cleanup
- cleanup + consistency with other drivers
- minor cleanup
- cleanup + consistency with other drivers
- fix orientation (#13925)
- Add support for new gate command
- fix low thrust detection in stabilized mode HTE runs based on the position controller so, even if we whish to use the estimate, it is only available in altitude and position modes. Therefore, we need to always initialize the hoverThrottle using the hover thrust parameter in case we fly in stabilized
- Stability improvements
- initialize hover thrust with parameter even if using HTE
- limit tilt to maximum safe value of 89 degrees
- add updateHoverThrust function
- Improve the error message if a target is not found The previous error message was misleading. The new more verbose error indicates that either the target does not exist or the ordering is wrong.
- clang-tidy use unmodified run-clang-tidy
- Limit horizontal speed during landing
- get rid of now duplicate sign() function
- increment cmd confirmation field (#14808)
- move tune publication to separate class
- copy tune to buffer to play later
- add support for PLAY_TUNE_V2
- move tune publication to a method
- use static_cast instead of C-style cast
- add missing uORB publication of tunes
- Enable offboard attitude for coaxial airframes
- fix potential busy loop upon USB disconnect
- add ACTUATOR_CONTROL_TARGET1 to stream list
- replace MavlinkOrbSubscription with uORB::Subscription
- timesync: readd timesync_status uORB to report Mavlink timesync
- support mission transfer cancellation (#14139)
- forward everything except what is for us
- remove unused get_uart_fd(unsigned index) method
- remove implicit cast from int to bool
- don't interfere in ongoing transfers
- fix warning on do jump
- delete SERVO_OUTPUT_RAW_{2, 3}
- temporarily disable ACTUATOR_CONTROL_TARGET{1, 2, 3}
- stream battery status fields (#13420)
- handle cellular_status messages for logging
- warning for actuator offboard & lockstep
- only ignore messages on UDP before init
- accept msgs without source initialized
- Implemented SET_CAMERA_ZOOM
- split ESTIMATOR_STATUS and VIBRATION streams
- implemented SCALED_PRESSURE streams
- Add MAV_x_RADIO_CTL parameter to disable RADIO_STATUS flow control
- add osbstacle_distance stream to extvisionmin mode
- add frame field to obstacle distance and correct typo
- beautify mission download error
- robustify against dropped ack
- Set distance_sensor id field equal to mavlink msg
- Reject own autopilot messages for battery status.
- simplify and fix statustext.severity handling
- write STATUSTEXT messages from the same system to log
- Fit in 'flash' region
- vtol_vehicle_status changed to vehicle_status subscription
- don't fail if DISPLAY is not set
- only apply workaround in GitHub CI
- remove waitforgz helper, add sleep
- raise timeout for czspawn
- raise overall timeouts
- make sure all log output is printed
- wait a bit longer for gazebo command
- don't stall on timeout
- fix wait script output
- wait for gz to run for model spawn
- improve usage text
- c++ test_runner is now mavsdk_tests
- only env vars that are set
- pass PX4_HOME_ env variables on
- remove commented out code
- a timeout of 5min should be enough
- remove unused import
- fix error for Python < 3.8
- name files consistently
- add header and fix style
- add filter for cases
- fix missing space after number
- print where to find logfiles
- print error on failure
- improve and fix colors/result
- add combined log
- improve log file folder structure
- print overall results
- satisfy mypy type checks
- further argument cleanup, some types
- import naming, easier coloring
- split up Python script
- initialize Tester class in ctor
- properly exit on Ctrl+C
- improve output, allow log and stdout
- improve test name/description
- improve test output readability
- only print error on failure
- output less verbose unless needed
- write output to logs folder
- try using tags as intended
- use CHECK if we don't need to abort
- remove unused/not working test
- add missing unit
- consolidate level of abstraction
- improve naming of argument
- add more config into JSON
- without speedup the VTOL takes time
- move config into json file
- remove plane tests
- use the min of the speed factors
- remove opt_flow test
- add max speed factor
- PEP8 fixes
- MAVSDK is required
- fix model name of plane
- enable VTOL, fix TEST_CASE name
- DISPLAY env for gazebo, --verbose
- fix build instructions
- actually use chosen model
- refactor/cleanup
- don't constrain speed factor to int
- fix PEP8 issues
- build should be independant of px4
- fix verbose output
- remove output to logfile for now
- add option for gzclient GUI
- don't use SIGINT, just terminate
- end the logfiles with .log
- return error if not ready
- env vars need to be strings
- use subprocess instead of sys stdout
- fix bugs in readyness checks
- restart SITL after each test case
- enable VTOL tests as well
- check if build everything is built
- use SIGINT before SIGTERM
- rename C++ executable
- print overall result
- properly handle timeout
- option for speed factor
- better process management
- run test runner, speed up sim
- add termination/kill, custom log dir
- added test runner
- add to PX4 Makefile/CMakeLists.txt
- raise timeout for realtime sim speed
- add manual RTL after mission
- wait until mission is done
- Split tests and test main
- suppress vertical acceleration feed-forward during takeoff ramp
- align updates with ekf2
- correct sign of acceleration state
- allow zero thrust during takeoff and landing
- handle takeoff and landing thrust limit the same way
- prevent takeoff with thrust setpoint
- switch order of setpoint amendment
- hotfix for takeoff ramp stuck with NAN
- do not warn when going into failsafe while disarmed
- fix derivative spike when regaining velocity estimate
- do not use invalid vz estimate
- do not ignore EKF vz with terrain following
- adopt to module internal include convention
- start flight task already when disarmed
- fix position setpoints being logged as zero when NAN (#13557)
- reset velocity derivatives
- fix cutting thrust when landed
- remove unused function declarations
- reuse timestamp to reduce hrt calls
- reduce scope of attitude setpoint
- address @bresch's review comments
- remove obsolete input setpoint assignments
- update MPC_POS_MODE description
- lower jerk configuration
- use vehicle_angular_acceleration topic instead of differentiating
- fix topic name when ROS2 is not being used
- only use '-typeros2' FastRTPSGen option for Dashing and later ROS2 distros
- use FastRTPSGen '-typeros2' option to generate the typenaming required to interface the bridge with ROS2 topics
- templates: use full version comparison when checking for version 1.7
- templates: check only the major and minor of FastRTPS to set the 'discovery_config' namespace
- use package.version to compare FastRTPS lib versions
- timesync: fix comment indentation
- RtpsTopics: code specialization simplification
- agent: simplify Publisher code specialization
- agent: simplify Subscriber code specialization
- timesync: add getters and setter to generalize interface
- use FastRTPS version instead of FastRTPSGen version to generate conditional code
- RtpsTopics: generalize types and member functions access
- timesync: cleanup and style fix
- timesync: fix unit conversion
- timesync: interpolate
- timesync: properly apply offsets
- add timesync handshake
- client: add client response to timesync
- microRTPS_timesync: fix template indentation
- agent: make sure that is able to subscribe a timesync stream from itself
- timesync: template generalization for both ROS2 and non-ROS2
- delete run() functions as they are not needed
- use char-by-char comparison instead of stringstream comparison
- make sure that Sub/Pubs do not exchange data in loop (i.e. for the same entity)
- timesync: apply offset atomically
- add timesync for the agent side
- Fix C++11 remnant
- update headers licenses
- use updated uORB API; improve usage
- more cleanup
- explicitly set backtransition mission item altitude
- ensure precland::on_inactivation() is called once landed
- fix px4tools func import
- let's try to run this with Python 3
- organize by type
- px_generate_mixer use static constexpr
- update to List<> container
- move MixerGroup out of Mixer hierarchy and delete mixer.h header
- delete copy constructors and operators
- move scale() and scale_check() to SimpleMixer
- delete unused SimpleMixer::pwm_input()
- fix poll error in SITL lockstep
- do not enter test mode if kill switch is engaged
- remove note about supported drivers
- move to PX4Barometer and cleanup
- remove unnecessary CDev
- more small fixes and cleanup
- main handle init and alloc failures separately
- fix error return on reset fail
- improve AK8963 init (fixes raspberry pi support)
- fully remove dead interval perf counter
- cleanup main
- start building "NuttX" driver for Linux and QuRT
- fix mag spikes on fmu-v4pro
- add board_dma_map.h and enable SPI1 DMA
- move to PX4Barometer and cleanup
- fix start_bus() logic to work on linux and add RPi I2C bus config (#13814)
- build on linux (navio2)
- fix battery source enum
- fix typo
- extend field definition in msg/esc_report (arming & failure states)
- rename sensor_bias -> estimator_sensor_bias
- generation and parsing scripts: add Python3 support
- remove gencpp and genmsh submodules; remove gencpp imports
- urtps: change the topic Data Type name to match expected on ROS2
- add a deprecated uORB msgs list to CMake
- switch to c++ and use px4_find_spi_bus
- allow for longer mixer geometry names (16 instead of 8)
- check _navigation_mode_array before run
- fix loiter_time for FW missions
- fix edge case with valid idle setpoint
- do not set a mode while disarmed
- add position setpoint reset helper with safe defaults
- mission WORK_ITEM_TYPE_MOVE_TO_LAND altitude isn't relative
- set acceptance radius even for IDLE position setpoint
- do not use fixed wing acceptance readius if in rotary wing mode
- improve if structure for vtol/mc/fw
- don't allow Land together with RTL item
- check fixedwing mission for VTOL
- fix VTOL RTL corner case
- fix triplet resetting/publication logic (#13534)
- remove double member initialization
- convert to radians in configuration getter
- run immediately on vehicle_status updates
- set position setpoint timestamp
- Improve documentation of mission block The default for the gate check condition is to pass and this needed to be explicitly documented
- Improve code readibility This diff does not contain any functional changes but just makes the code more readable and adds comments.
- Warn only for non-zero missions Previously a zero-length mission that failed checks (e.g. because a mandatory element was not present) would lead to a warning.
- Add ability to wait for a position gate with executing the mission
- make weather vane work in all auto modes, not just mission (#13761)
- allow altitude change when the current lat and lon are still nan
- only publish input_rc if connected and all channels are non-zero
- move to PX4 WQ and cleanup
- math.h drop extra math defines carried in PX4 defines.h
- update submodule
- enable DMA on SPI2 (SD Card)
- enable SPI dma + use new ICM-20602 driver (disabled DLPF)
- disable landing_target_estimator
- fix mode change shutter thresholds
- add external() getter and default temperature to NAN
- delete unused CDev
- tune MPC_LAND_ALT
- fix param_get_cplusplus type check
- automatically update calibration ID params on import
- lock shutdown earlier in param_save_default()
- handle MC_DTERM_CUTOFF -> IMU_DGYRO_CUTOFF migration
- fix documentation
- don't catch floating point errors
- prevent stackoverflow for ekf2 sideslip
- split posix hrt for qurt
- remove unnecessary i2c platform abstraction
- link libatomic only on emlid navio2 (raspberry pi)
- deconflict hover thrust estimator, acceleration control
- fix horizontal integral anti-windup
- acceleration based control strategy
- remove confusing uMin uMax alias
- replace interfacemapping checks
- handle yaw NAN inputs
- calculate velocity integral once using Vector3f
- simplify horizontal thrust limiting
- readd direct thrust setpoint support
- add feed-forwards with addIfNotNan()
- calculate velocity PID once using Vector3f
- temporarily remove direct thrust setpoint support
- isolate skip controller, leave away unnecessary include
- remove complicated internal control flags
- remove speed_xy constraint since it's anyways unused
- simplify constraint conditions
- clear setter interface naming, order, description
- remove unwanted debug printfs
- correct float initialization literals
- add unit tests for directions and limits
- remove parameter dependency
- fix attitude setpoint timestamp
- make getters const functions
- add getter for output attitude setpoint
- add getter for output position setpoint
- make it self contained library
- micro_hal.h add empty px4_arch_gpiosetevent to build new Invensense drivers on linux
- exit if the startup script is not ok
- add checks for CPU and RAM load
- check for RC action switches
- fix magnometer typo
- update unit tests
- add spike limit argument for innovation check and increase optical flow test limits.
- vtol cleanup
- update pwm outputs up to twice as fast as actual pwm frequency
- delete fake() test command
- add hw description constexpr util methods
- add PX4_MAKE_GPIO_INPUT and PX4_MAKE_GPIO_OUTPUT
- add bitmask.h for templated type safe bitmask operations
- UPdate copyright to last modification
- increase wq:attitude_ctrl stack
- sem_wait add loop as the wait may be interrupted by a signal
- increase SPI stack uniformly to silence warnings
- add WorkItemSingleShot
- revert inherited sched attr and run wq:manager and max priority
- don't inherit pthread attributes from creating thread
- increase hp_default stack 1800 -> 1900 bytes
- increase wq:hp_default stack 1500->1800 bytes (found by stackcheck)
- stack size rounded to page size on posix
- fix array regs[] size (#14135)
- fix argv index & avoid empty 'unknown argument: ' warning
- When running HITL, don't publish actuator_outputs. Fixes #13471.
- add support for test_motor
- add missing lock()/unlock() in ioctl
- add PX4IO_PERF define to completely disable perf counters
- convert atomic macro into methods
- move to Python3
- initialize all fields
- move to PX4Magnetometer and cleanup
- update list of supported boards
- start esc_battery if param is set
- Exclude uncommon board configs (Generic 250)
- Exclude uncommon board configs (Beta75x)
- Exclude uncommon board configs (Reaper)
- Exclude uncommon board configs (3DR Quad)
- Exclude uncommon board configs (Solo)
- Exclude uncommon board configs (HK Micro)
- Exclude uncommon board configs (HB PX4 Vision)
- Exclude uncommon board configs (HB S500)
- Exclude uncommon board configs (S500)
- Exclude uncommon board configs (QAV250)
- Exclude uncommon board configs (QAVR5)
- Exclude uncommon board configs (TBS Caipi)
- Exclude uncommon board configs (Parrot Disco)
- Exclude uncommon board configs (Pigeon Airframe)
- Exclude uncommon board configs (Viper)
- Exclude uncommon board configs (FX79)
- Exclude uncommon board configs (Wing Wing)
- Exclude uncommon board configs (Skywalker)
- Exclude uncommon board configs (Phantom)
- Exclude uncommon board configs (Camflyer)
- Exclude uncommon board configs (Generic Wing)
- Exclude uncommon board configs (Dodeca Cox)
- Exclude uncommon board configs (Mini Talon)
- Exclude uncommon board configs (Albatross)
- Exclude uncommon board configs (Maja)
- Exclude uncommon board configs (Standard Plane)
- Exclude uncommon board configs (AutoG2)
- Exclude uncommon board configs (Helicopter)
- Exclude uncommon board configs (Coax Heli)
- Exclude uncommon board configs (Tri Y-)
- Exclude uncommon board configs (Tri Y)
- Exclude uncommon board configs (S250)
- Exclude uncommon board configs (QAV250)
- Exclude uncommon board configs (Kopis 2)
- Exclude uncommon board configs (DJI Matrice 100)
- Exclude uncommon board configs (Aero)
- Exclude uncommon board configs (IFO)
- Exclude uncommon board configs (Draco)
- Exclude uncommon board configs (ZMR250)
- Exclude uncommon board configs (Nanomind)
- Exclude uncommon board configs (Tilt Quad)
- Exclude uncommon board configs (Teal)
- Exclude uncommon board configs (Clover4)
- Exclude uncommon board configs (Crazyflie)
- Exclude uncommon board configs (Generic Ground)
- Exclude uncommon board configs (Axialracing AX10)
- Exclude uncommon board configs (Traxxas Stampede)
- Exclude uncommon board configs (AION Robotics)
- Exclude uncommon board configs (DFrobot GPX Asurada)
- Exclude uncommon board configs (Quad +)
- Exclude uncommon board configs (UUV Generic)
- Exclude uncommon board configs (UUV HippoCambus)
- Exclude uncommon board configs (Hexa X)
- Exclude uncommon board configs (Draco R)
- Exclude uncommon board configs (Hexa +)
- Exclude uncommon board configs (Octo X)
- Exclude uncommon board configs (Octo +)
- Exclude uncommon board configs (VTOL Tailsitter)
- Exclude uncommon board configs (VTOL Octo)
- Exclude uncommon board configs (Babyshark)
- Exclude uncommon board configs (Convergence)
- Exclude uncommon board configs (Claire)
- Exclude uncommon board configs (Ranger)
- Exclude uncommon board configs (QuadRanger)
- Exclude uncommon board configs (VTOL AAVVT)
- Exclude uncommon board configs (VTOL Standard Delta)
- Exclude uncommon board configs (VTOL AAERT)
- Exclude uncommon board configs (Quad+)
- Exclude uncommon board configs (Firefly 6)
- Exclude uncommon board configs (Steadidrine Mavrik)
- Exclude uncommon board configs (Octo COX)
- Exclude uncommon board configs (Hexa COX)
- Exclude uncommon board configs (TBS Endurance)
- Exclude uncommon board configs (Steadidrone Q4D)
- Exclude uncommon board configs (3DR Iris)
- Exclude uncommon board configs (TBS Dicovery)
- prevent auto-disarm before takeoff in CI
- prevent high accel bias in SITL
- delete caipirinha_vtol.main.mix and instead use vtol_tailsitter_duo.main.mix
- add IDs to 'orb_test' related multitopics
- fixes for SYS_USE_IO=0
- do not wipe next flight UUID parameter when resetting parameters
- move to PX4 WQ
- make specific RC loss check only on PPM
- cleanup parameter usage
- apply replay module params before starting ekf2 (#14478)
- remove GPS relative timestamps
- remove unnecessary CDev
- move to PX4Magnetometer and cleanup
- Link to user manual updated
- add PYTHONPATH export path so to find Python 2 packages
- Handle velocity frames correctly for offboard velocity control
- Enable driving backwards in attitude control
- make offboard attitude usable without GPS
- create a parameter file for each airframe
- add SYS_AUTOCONFIG support
- adds 'iris_rtps' target
- disable SPI locking where possible
- fix missing return when module exits
- add support for pairing command (3x pressing the button)
- As recent driver refactoring checkes start argument first, we change script accordingly.
- reduce verbosity when no device on the bus
- use sensor_gyro timestamp_sample for sensor_combined timestamp
- checkFailover() remove verbose failure messages
- failover don't print remaining disabled sensors
- refresh parameters on sensor init
- inconsistency checks explicitly skip disabled
- complete move to uORB::Subscription
- move baro aggregation to new sensors/vehicle_air_data
- move to WQ
- filter sample rate calculate with simple interval average instead of perf count
- refactor common corrections and rotation code
- move accel filtering to sensors/vehicle_acceleration
- compute and publish vehicle_angular_acceleration
- move gyro filtering to sensors/vehicle_angular_velocity
- ensure angular velocity publication on selected sensor update
- own BAT_V_DIV and BAT_A_PER_V params (#13299)
- get vehicle_status every time.
- set rate thrust according to VTOL mode
- only run usermod if $USER is available
- select Java 8 after installation
- prevent prompt during install
- add pyros-genmsg, sort list
- prevent debconf asking about tzdata
- fix script fail if check fails
- remove duplicate
- remove unused dependencies
- don't forget to install wheel
- remove unusual Python dependencies
- remove Python 2 requirements for Ubuntu
- another try to install pip dependencies
- fix call to pip/pip3
- stop on error
- we need a newer pip
- use pip as user, don't forget python3-dev
- move to PX4Rangefinder and cleanup
- split into separate header, implementation, and main
- move to UART WQ
- move to PX4Rangerfinder and cleanup
- Set scheduling policy RR for lockstep This should ensure that all processes do still run at full load.
- temperature only updated with baro
- remove redundant semicolon
- move enum declaration out of preprocessor condition
- make sensor update rate dependent of the HIL_SENSOR bitmask
- improve misleading TCP message
- remove strange disarmed PWM
- add flag to indicate lockstep
- add support for multi-distance_sensor instances (#14143)
- replace gpssim with simple orb publication
- cleanup and wait for startup
- fix distance_sensor ORB_ID()
- don't reset battery when disarmed
- Remove EKF2 based wait This is cleaner and needs testing.
- fix invalid memory access in read_word()
- do not deselect other chip-selects
- move to PX4Rangefinder and cleanup
- add libs and stubs for F3 build (thiemar_s2740vc-v1)
- remove height rate complementary filter
- remove unused code
- add proper unit test
- only set _can_loiter_at_sp if takeoff position has been set
- enable parameters set reboot_required
- move to PX4Rangefinder and cleanup
- IntrusiveQueue test re-insert case
- microbench uorb add sensor_gyro_fifo copy
- microbenchmarks reduce iterations and sleep inbetween
- workaround against astyle 3.1 bug
- Add VTOL test This is a first initial VTOL test.
- Add further instrumentation
- Speed up boot The previous boot configuration took at minimum one second to boot. This is in particular significant in tests when the system is often started and stopped
- reduce sampling rate from 10kHz to 143Hz
- move to UART WQ
- enable l1 and deceleration control during transition
- improve comments and renaming of one variable
- limmit the adapted thrust for tilt to [0,1]
- present nicer error for missing packaging
- setup: add 'packaging' to the requirements list
- check style of mavsdk_tests files
- exit as straightaway with DONT_RUN set
- make Python import error more readable
- check for Java 8 on Linux
- use Python 3, improve import checks
- use Python3 for upload_log.py
- use Python 3 in validate_yaml.py
- update sitl_gazebo submodule
- fix 'Assistive technology not found error'
- change coverity to run on master
- Overhaul SensorBridge drivers
- GNSS sensor bridge: Support multiple pubs
- Fixed CAN battery status
- Optical Flow: Bug fix (missing integration_timespan field in optical_flow topic). (#13257)
- SubscriptionInterval last update shift forward with interval
- top output improvements
- add bitset for faster orb_exists check and remove uORB::Subscription lazy subscribe hack/optimization
- introduce SubscriptionBlocking
- use px4::atomic instead of volatile for _generation
- initialize timings storage
- fix queue simulation and cleanup initializations
- bug fix sensor bridge init failure
- Add device IDs to baro, flow publishers
- move to work queue and use MixingOutput
- remove actuator_direct (no publisher)
- fix flexcan code style
- add distance_sensor (all possible instances)
- Fix Kelvin/Celcius in RawAirData pub
- fix format
- battery info publishing
- GPS add timestamp, covariance, and corrected integer overflow on lat/lon
- move to UART WQ
- move to PX4Rangefinder and cleanup
- do not open a node exclusively for an advertiser
- fix several race conditions during topic initialization
- add hover_thrust_estimate msg
- sitl_gazebo
- add board_dma_map.h and enable SPI1 DMA
- Pusher assist: add configuration for enabling it in LAND /disable below some altitude (#14706)
- add parameter to set the PWM_OUTPUT_DEVICE_PATH (#14732)
- run vtol state update not only when mc or fw sp are updated, but always
- flight task auto: disable weather vane when not stationary
- Manual Pos Flight Task: do not use yawrate sp from weather vane if position isn't locked
- Make pusher assist generic to enable also for tiltrotor
- instantly do VTOL mode changes if landed and disarmed
- explicitly start all FW & MC controllers in VTOL mode
- get rid of unused q_d_valid flag
- fix invalid comment for flag_armed
- remove velocity fields (duplicates of local vx, vy, vz)
- delete unused and redundant dist_bottom_rate
- make acceleration and jerk arrays
- add timestamp_sample field for latency monitoring
- remove unused circuit_breaker_engaged_gpsfailure_check
- Fixes max AUX number for MNT_MAN_ROLL, MNT_MAN_PITCH and MNT_MAN_YAW parameters.
- fix float casting, simplify loop
- properly initialize last_active
- fix input for test command
- fix implicit double promotion
- set all DO_MOUNT_CONFIGURE params
- first step to support absolute angles
- tell user how to use vmount test
- remove commented out code
- set correct MAV_MOUNT_MODE
- possible improvements for cpp extension cpu usage
- commit auto added c++ header associations
- do not control deceleration during backtransition manual, acro or stabilized
- got rid of VT_B_DEC_SP
- apply_pwm_limits() don't spam error
- convert angle in one line
- calculate backtransition acceleration in forward direction - use track angle to calculate the current forward acceleration
- added explicit control over deceleration during backtransition
- mavlink send hacks
- only update with last row of rotation matrix
- file within docker not accessible
- upload can't access outside of docker
- upload px4 coredump and binary
- add core dumps and backtrace to CI
- add more tests outside of Europe
- adapt to mavsdk_tests cli changes
- build pull requests and master
- Install mavsdk from GitHub release
- update docker tag
- add hover thrust jump test case
- Simulator: Remove EKF2 based wait
- Simulation: Set scheduling policy RR for lockstep
- SITL shell: Do math using the shell
- linux_pwm_out update orb usage