Dev Call Feb 3, 2025

4.6 Vehicle Update

Issues & Pull Requests

Partner Call tomorrow

Attendee count (max): 21

UTC1101 - Vehicle update

  • Main update is that the slow oscillation problem is still not solved
    • Bill’s been putting in a huge effort
      • Thought he’d found a case
      • Unfortunately hasn’t been changed into a pass/fail test tridge has found
      • Pattern of inputs which reliably causes an oscillation on one branch but not another
      • Quaplane sysid coming!
        • Can run it on this vehicle
      • Tridge modified ahrs level in a sinusoidal fashion
        • Works on any version of ArduPilot
    • ATC are pretty similar
      • 4.6 more gain with poorly tuned aircraft
      • Small change in bandwidth which the vehicle can’t tolerate
      • Not quick enough to keep up with the position controller drives oscillation
    • Leonard has one change i mind but can’t really see it having the impact seen
    • Tune was manually done
    • Roll gains were about a factor of 2 to 2.5 lower than they should have been
    • Slightly heavier with a Pi in there
      • So historical logs are not in exact same conditions
    • Bill’s analysis doesn’t show changes on a well-tuned aircraft
    • Having people update to 4.6 on a weakly tuned vehicle could be bad
  • Tridge would like system id to be available in different modes
    • Proper integration into loiter for example
    • Less pilot skill required
    • Eg. qhover
    • 4.7 will probably use it as the way to tune vehicles
  • The 4.6 issues list needs a few things moved around / confirmed / dismissed
  • End of Feb release?

UTC1129 - AP_Mount: Siyi gets rate map, PI control, accel limit by rmackay9 · Pull Request #27342 · ArduPilot/ardupilot · GitHub

  • Get rate map, PI control
  • Improves Siyi gimbal control inspred by the Siyi module
  • Two changes
    • One change is that it uses a mapping table to fix deadzone issue
      • Rate control is not linear
        • Expo
    • We do own angle controller
      • PI controller
      • Does this matter?
        • Partner report says that it might….
        • But a QGC fix to use rate control seems to do just as well
  • Table to fix rate
    • Weird values!
  • Tim found that rate control from the RC was problematic
    • Uses angle control
  • Backburner for now?

UTC1138 - APM_Control: add AP_FW_Controller as common base class to roll and pitch controlers by IamPete1 · Pull Request #27747 · ArduPilot/ardupilot · GitHub

  • Add AP_FW_Controller as common base class to roll
  • roll/pitchtuning is same before/after
  • Fixed wing autotuning doesn’t get the same on pitch axis
    • Roll is same every time!
  • Merged!

UTC1142 - AP_ESC_Telem: fix RPM timeout race by robertlong13 · Pull Request #28999 · ArduPilot/ardupilot · GitHub

  • Fix RPM timeout race
  • Should be faster / cost less CPU
  • Tested on Volanti with a 15m flight
  • Problems at startup / validity checks
  • Cool MissionPlanner

UTC1148 - Move REQUIRE_POSITION_FOR_ARMING bit to AP_arming by peterbarker · Pull Request #29076 · ArduPilot/ardupilot · GitHub

  • Move require position for arming to AP_Arming
  • Looks goot to Randy

UTC1152 - Plane: Add climb slope minimum height parameter by rubenp02 · Pull Request #29077 · ArduPilot/ardupilot · GitHub

  • Add climb slope minimum height parameter
  • Currently if you start below 20 it will immediately climb to height of next waypoint (eg. 500m)
    • Adds parameter so it will only do max-rate-climb for the distance below the 20m slope (so only maybe 15 metres), and then do the climb-slope thing
  • Similar to another problem where you can overshoot too close to ground
  • Is this incremental or above-terrain or above-home?
    • Current is above-home
    • Should it be?
    • Make it above-ground if terrain following, above-home otherwise?

UTC0002 - Plane: Add fwd. throttle cutoff voltage parameter by rubenp02 · Pull Request #29080 · ArduPilot/ardupilot · GitHub

  • Throttle cut-off voltage parameter
    • Become a glider if you run out of power
    • Better than not having control!
  • Check for battery monitor health
    • Eg. fallen off the bus
  • Will allow throttle in fbwa

UTC0011 - Plane: Adjust slope terminology by rubenp02 · Pull Request #29087 · ArduPilot/ardupilot · GitHub

  • Adjust slope terminology
  • Changes glide slope to alt slope
  • Parameter metadata will be fixed
  • Good past that one
  • Still some contention around parameter name
    • Would be nice to get the fact it is an alt delta into there rather than using slope as that infers it is an angle…

UTC0014 - ArduPlane: add climb before turn to AUTOLAND by Hwurzburg · Pull Request #29142 · ArduPilot/ardupilot · GitHub

  • Add climb before turn to AUTOLAND
  • Tridge is concerned this might climb to above-ground?
  • Tridge will test in SITL with gdb

UTC0022 - gitignore: ignore .python-version file used by pyenv by shiv-tyagi · Pull Request #29143 · ArduPilot/ardupilot · GitHub

  • Ignore pyenv file
  • Merged!

UTC0024 - Plane:adjust CTUN.Pitch to remove PITCH_TRIM by Hwurzburg · Pull Request #29152 · ArduPilot/ardupilot · GitHub

  • adjust CTUN.Pitch to remove PITCH_TRIM
  • Use AHRS view in fixed wing for pitch?
  • Merged!
  • Need to update ATT to get desired/achieved to match when the vehicle is at its desired angle
    • Georacer is working on this….
  • desired/achieved won’t match in corners
    • Paul explained that one to tridge
    • Closing based on rate control
      • Expect small deficit in pitch in a continuous turn

UTC0030 - Plane: remove dead store of cruise_speed by peterbarker · Pull Request #29174 · ArduPilot/ardupilot · GitHub

  • Remove dead store of approach_speed
  • Merged!

UTC0035 - AP_GPS: Fix undulation incorrect convention by Ryanf55 · Pull Request #29200 · ArduPilot/ardupilot · GitHub

  • Fix undulation incorrect conventions
  • What makes the new convention correct?!
    • The current implementation was based on something
  • Thomas and Ryan found 4 sources which said this way around
  • Nova uses the convention we have in the code!
    • Want some play-backable Nova logs
    • Josh is unhappy that the sign was wrong
  • Two drivers have undulation in the message set
    • And they use opposite conventions
    • Regular NMEA GPSs have undulation
      • DGA
  • So
    • internal naming
    • Bug in nova driver (?)
    • Logging
      • Stop logging undulation, start logging alt_elipse

UTC0038 - Avoid printing to stdout from tonealarm in Linux by peterbarker · Pull Request #29204 · ArduPilot/ardupilot · GitHub

  • Avoid printing to stdout from tonealaram in Linux
  • Merged!

UTC0053 - waf: move setting of -cl-single-precision-constant into cxx-flags block by peterbarker · Pull Request #29205 · ArduPilot/ardupilot · GitHub

  • Move flags in waf
  • Merged!

UTC0058 - AP_BattMonitor: remove use of ownptr by peterbarker · Pull Request #29206 · ArduPilot/ardupilot · GitHub

  • Ina3221 moves to not using ownptr
  • Merged!

UTC0058 - AP_NavEKF3: Allow extnav to work without vertical velocity by rishabsingh3003 · Pull Request #29213 · ArduPilot/ardupilot · GitHub

  • Stop fusing vertical velocity in EKF if you aren’t getting it from extnav
  • Tridge thinks there’s a missed case
  • How to make sure this is reliable?
    • Vector6x is not zeroed
  • Observation noise is from GPS?!
    • F9p means this can be very, very wrong
    • We have an issue on the issues list for this
    • Use-gps-vert-vel are global?
      • Yeah, EKF3 does that….

UTC0116 - Add AP_AirSensor library by Ryanf55 · Pull Request #29219 · ArduPilot/ardupilot · GitHub

  • Airspeed sensing for soaring applications
  • Folding in airspeed, windvane and whatever else
  • Better than modifying AP_Airspeed to do 3D airspeed?
  • Get this into DAL so we can do replay with the airspeed data
  • Stall prevention using bank angle to determine load factor
    • Use measured AOA instead
  • Should the soaring EKF look at this sensor data directly rather than going via AHRS?
  • PH would be happy to get rid of weathervane
  • Discussions to be had around eas and tas
    • PH was after water-speed-estimates
    • Acoustic doppler curve profiler!
  • Spd3xx questions too

UTC0133 - off the floor

  • Partner call tomorrow
  • @artificat github fixes
  • GSoC application is going in
    • Ping Randy if you want to mentor or help mentor!
  • Remember the conference sign-up!
  • Configurators
    • Some good input from various people on Discord
    • General agreement we don’t have a good all-round solution ATM
    • In the roadmap thread
    • #DevTeam is readable by everyone, only writable by DevTeam

UTC0136 - close