@martinbudden martinbudden released this Feb 1, 2017 · 111 commits to development since this release

This is an ALPHA release. Use caution!

This version has some significant differences from 1.5.1, please read the release notes carefully and upgrade INAV Configurator available at Chrome Store.

CLI parameter renaming

Some CLI parameters are renamed to support new features or to better reflect their meaning:

Old name New name(s)
nav_alt_p nav_mc_pos_z_p, nav_fw_pos_z_p
nav_alt_i nav_mc_pos_z_i, nav_fw_pos_z_i
nav_alt_d nav_mc_pos_z_d, nav_fw_pos_z_d
nav_vel_p nav_mc_vel_z_p
nav_vel_i nav_mc_vel_z_i
nav_vel_d nav_mc_vel_z_d
nav_pos_p nav_mc_pos_xy_p
nav_pos_i nav_mc_pos_xy_i
nav_pos_d nav_mc_pos_xy_d
nav_posr_p nav_mc_vel_xy_p
nav_posr_i nav_mc_vel_xy_i
nav_posr_d nav_mc_vel_xy_d
nav_navr_p nav_fw_pos_xy_p
nav_navr_i nav_fw_pos_xy_i
nav_navr_d nav_fw_pos_xy_d
servo_lowpass_freq servo_lpf_hz
servo_lowpass_enable Removed. To disable filtering set servo_lpf_hz to zero
acc_soft_lpf_hz acc_lpf_hz
gyro_soft_lpf_hz gyro_lpf_hz
gyro_lpf gyro_hardware_lpf
Non-Nav Paramters (for PIFF)
p_pitch mc_p_pitch, fw_p_pitch
i_pitch mc_i_pitch, fw_i_pitch
d_pitch mc_d_pitch, fw_d_pitch
p_roll mc_p_roll, fw_p_roll
i_roll mc_i_roll, fw_i_roll
d_roll mc_d_roll, fw_d_roll
p_yaw mc_p_yaw, fw_p_yaw
i_yaw mc_i_yaw, fw_i_yaw
d_yaw mc_d_yaw, fw_d_yaw
p_level mc_p_level, fw_p_level
i_level mc_i_level, fw_i_level
d_level mc_d_level, fw_d_level

New failsafe system

Failsafe Stage 1 is completely gone now, rxfail command is deprecated. Everything that is called "FAILSAFE" is now related to actual failsafe procedure. Failsafe FEATURE is deprecated - failsafe system is always functional and ready to catch you.

New "NONE" failsafe procedure is introduced to allow completely ignoring RC link loss. Be warned that you are no longer protected from flying out of range when using this feature.

A bunch of new parameters allow "LAND" procedure to work on fixed-wing aircraft as well. Failsafe will now command a slight dive, bank and yaw to bring the airplane down nicely in case of link loss. Previous behavior was to maintain level flight and fly-away.

New parameter rx_nosignal_throttle defines how throttle channel will behave in case of link loss. Options are DROP and HOLD. Roll, Pitch and Yaw channels are centered and this behavior can't be changed anymore. This behavior is only applied for a small amount of time before FAILSAFE kicks in and starts doing something smart.

New parameter failsafe_stick_threshold will allow you to keep FAILSAFE active even if the RC link is restored. You will have to move your sticks more than failsafe_stick_threshold to regain control. This is done to allow nice return-to-home in case of signal loss.

New PIFF controller for fixed-wing aircraft

Introducing new Proportional + Integral + Feed Forward controller for airplanes. It's more suitable for airplanes due to the nature of control they are using. It also puts less stress on servos. D-term in Configurator will now control Feed-Forward gain which passes angular rate target directly to servos bypassing closed loop gyroscope stabilisation. Use caution - too high Feed-Forward gain may cause violent oscillations in ANGLE mode.

Airplane launch mode improvements

It's now possible to specify idle throttle for pre-launch (nav_fw_launch_idle_thr) and time to gradually increase throttle after launch is detected (nav_fw_launch_spinup_time). This allows to have motor spinning even when using MOTOR_STOP feature and will put less stress on ESCs by allowing them to spin up the motor to launch throttle gradually instead of requesting an instantenious throttle change.

RTH sanity checking

Misconfigured or malfunctioning compass can confuse the firmware in such a way that it won't realize where North direction is. This may cause the machine to fly in wrong direction when i.e. doing an RTH and fly away instead of returning to home.

Another case is flying in extremely strong wind which machine is unable to fight. In such case RTH will attempt to bring machine home but will never succeed and UAV will be blown away.

RTH sanity checking feature will notice if distance to home is increasing during RTH and once amount of increase exceeds a certain threshold defined by nav_rth_abort_threshold CLI parameter instead of continuing RTH machine will enter emergency landing, self-level and go down safely. Default threshold is set to 500m which is safe enough for both multirotor machines and airplanes.

New boards

  • NAZE target is split to actual NAZE and AIRHERO32 for MWC AirHero32 board
  • PIXRACER board initial support. Experimental - many features are not yet functional
  • OMNIBUS F4 SD target
  • F4BY target

New features

  • Initial support for STM32F7 boards. More CPU power for better performance
  • Full support of SoftSerial ports on F4-based boards
  • Gyro/D-term notch filter and D-term setpoint weight (as in Betaflight)
  • TBS Crossfire native radio protocol and telemetry (CRSF)
  • Firmware support for better UI for 6-point calibration
  • Make max total PID output configurable, default limit reduced to 500 for better stability
  • Inversion control for S.Bus - now it's possible to have non-inverted S.Bus (for OpenLRS compatibility)
  • Airplane mixers defaults to use two motor outputs now
  • PASSTHRU mode will now allow to mix sticks into motors for differential thrust support
  • More authority for Altitude Hold PIDs. Please revisit ALT and VEL PIDs if aircraft misbehaves.
  • Two banks of PIDs for Fixed-wing and Multirotor crafts. A small step towards VTOL support
  • Configurable timeout for compass calibration (instead of hard-coded 30 seconds)
  • When using new Configurator the Altitude graph in Sensor tab will now show both estimated altitude and raw BARO readings
  • Extremely long flights are now possible on F3/F4/F7 targets. On F1 the system time will overflow at 1 hour, 11 minutes, 35 seconds and may cause some systems to malfunction (failsafe is one of suspects). Use caution when testing this feature.

Bugs fixed

  • Telemetry and MSP data corruption on F1 (UART1 only) and F4 (all UARTs) targets
  • Motor 6 output on REVO is now functional
  • Occasional reboot of the board when bluetooth module is disconnected
  • Rare complete stall of attitude/navigation system due to invalid gyro/acceleration data
  • LED STRIP was blinking out one extra satellite when signalling GPS fix
  • 3d_deadband_throttle setting was handled incorrectly by MSP which caused corruption
  • iBUS telemetry not functional bug