Dev Call Apr 07, 2025

Flight Code Release Update

Issues & Pull Requests

Attendee count (max): 19

UTC1100 - vehicle updates

  • New beta is out
    • We found another terrain-guided-goto bug
      • Handling of .terrain and .relative
      • Use in plane contradicts the way location object works
      • PR to handle it
        • Adds some paranoid checks
        • Adds some checks in SITL
      • Need to discuss making it easier to add tests which look more closely at the profile
      • Want this fix in the next beta
    • Some progress on the tilt-rate issues
      • Paul has a an alternate change in TECS
      • PH also has a possibility
        • Slew-rate in motors
      • Three PRS for the similar issue
        • Probably end up with a combination of the changes
    • Microbrain proximity sensor
      • Randy will talk with Rishabh
    • Multi-heap allocation in Lua
      • Thomas was looking
        • Asked tridge to also look
        • Cygwin-only issue?
    • Tim will chase up Jason on the M10 GPSs
    • Altitude run-away when rangefinder goes out of range
      • Randy’s seen a flight log
      • There’s an arming check
      • Range_valid_measurement_time_ms
      • Fake rangefinder in use when rangefinder not available
        • EKF uses a baro
        • Keeps EKF on leash
      • Common to get rangefinders that can’t get readings on the ground
      • This is rangefinder as active EKF source for height
      • Force users to use a script to switch sources?
        • ie. take-off using baro, require rangefinder to work after take-off and switch to it
      • Original issue?
        • Rishabh will provide the log now has has permission
        • Randy also has an applicable log
        • Maybe EKF is ignoring rangefinder because it’s too far from current estimate
        • 7-second run-away
        • Maybe it wasn’t fusing any vertical source?
    • Blheli mother-of-all-fixes PR is still under discussion
    • Need to consider which of these are regressions and do need to be fixed
    • Randy’s availability to look at another beta is limited
      • Maybe next Thursday
      • Tridge wants the guided-terrain stuff in
    • Randy’s thinking 4.6 is going to a really good release
      • Lots of stuff has been gone back and fixed
    • An AP_Periph release?
      • Tridge wants to do one
      • Normally don’t use the same branch
      • Tom thinks we should link AP_Periph releases too
        • So does Randy
        • Partner is shipping a non-release firmware

UTC1138 - AP_RangeFinder: populate last_reading_ms in the backend for some sensors by rishabsingh3003 · Pull Request #27620 · ArduPilot/ardupilot · GitHub

  • Populate last_reading_ms in the backend for some sensors
  • Merged!

UTC1139 - Plane follow script Applet by timtuxworth · Pull Request #28546 · ArduPilot/ardupilot · GitHub

  • Follow script applet
  • Tested after making suggested changes
  • Tridge has left a review
  • Peter will work with Tim to test and get in the position-from-origin internally
  • Some discussion around the interface method being added
    • Some bugs in the API which tridge wants fixed
    • Distancve_to_target and bearing_to_target
    • They return the variable but don’t check when it was updated
    • Do we want an update function?
      • Probably
  • Kinematically consistent follow
    • Reset / timeouts etc?

UTC0019 - AP_HAL_ChibiOS: add hwdef files for NarinFC-H7 by vololand · Pull Request #29241 · ArduPilot/ardupilot · GitHub

  • Add hwdef files for NarinFC
  • Merged!

UTC0019 - Add support for System ID on Aux Switch in Plane by bnsgeyer · Pull Request #29608 · ArduPilot/ardupilot · GitHub

  • Add support for system ID on aux switch
    • We’ve got log data now
    • Better to get it while in a large loiter
  • Some discussion about the APIs
    • In the wrapper functions or not?
    • Eg. flip to acro to stop doing things
  • The yaw controller?
    • Very few people run it
    • either damper or full yaw controller
    • Exciting yaw at all doesn’t happen much at all in Plane
    • Full pid controller isn’t used in normal operations
      • Just yaw damper
      • Or just zeroing lateral acceleration for co-ordinated flight
    • Most users just feed-forward aileron to rudder
      • So roll controller doing job vs kff_rudder_mix
    • Tuning rudder and getting it right is tricky
    • Systemid to tune pid control for quaternion acro is a use case
    • Yaw Damper tuning is also something tridge would like
      • Instructions are similar to PID tuning but it isn’t a PID
    • Pilot input is a rudder offset in almost every mode
      • Multiplier of aileron
      • Or an acceleration controller that is trying to zero lateral acceleration
      • Y-accel is being controller for, trying to be zeroed
      • Not asking for an angle or a rate
    • Feed-forward works well on smaller planes
      • Large planes seem to work better using P and D
        • Canard and high-inertia
        • Need some SITL aircraft that don’t do best with FF
  • This tool will allow you to do a “what if?” after you have gathered data

UTC0040 - Rename get_alt_distance -> get_height_above by peterbarker · Pull Request #29648 · ArduPilot/ardupilot · GitHub

  • Rename get_alt_distance to get_alt_difference
    • Peter will merge once he decides on the name

UTC0044 - AP_Common: Location: avoid converting to absolute alt in get_alt_distance by peterbarker · Pull Request #29649 · ArduPilot/ardupilot · GitHub

  • Avoid converting to absolute alt when not necessary
  • Avoids failure when failure not required
    • This is a significant behavioural change
  • Merged!

UTC0049 - AP_Landing: stop dup retract messages, clean up code by Hwurzburg · Pull Request #29676 · ArduPilot/ardupilot · GitHub

  • Stop duplicate retract messages and clean up code
  • Spewed the deploy message
  • Logger-write event will only go out if function is assigned
    • LUA script could look at the scaled output to do stuff?
    • … actually does a set-output-limit
  • Don’t do altitude-based triggering if a user is manually triggering with a switch
  • Questions around whether this is a behaviour change
    • For people doing auto-retract but not auto-deploy
    • There’s an existing bug where the retract will only happen the first time

UTC0108 - Plane: fixed terrain guided target intermediate alt handling by tridge · Pull Request #29685 · ArduPilot/ardupilot · GitHub

  • Plane location sanity checks
  • Sitl-panics vs internal errors
  • Rokblok LUA script is buggy
    • Exposing the innards of location was a bad choice in scripting

UTC0120 - AP_Math: split `radians` into float and double variants by tpwrules · Pull Request #29703 · ArduPilot/ardupilot · GitHub

  • Split radians into float and double variants
  • Avoid conversion to double
  • Can be merged once the rounding problem’s been fixed

UTC0123 - hwdef: add relay function 1 to all defs with realyx_pin_default defined by Hwurzburg · Pull Request #29709 · ArduPilot/ardupilot · GitHub

  • Set relay function in hwdefs where pin default is set
  • Vtx function would be a good thing
  • We can add a hack in place to set the function to 1 if you’re setting a default pin
  • There might be a problem with conversion code which is supposed to do this?
  • PH will try to reproduce the problem

UTC0135 - AP_Param: fix unexpected truncation of AP_Float parameters in expressions by tpwrules · Pull Request #29711 · ArduPilot/ardupilot · GitHub

  • Thomas has fixed the truncation of AP_Float parameters
  • Tridge thinks several of these might be important
  • We’ll get both PRs merged in soon

UTC0142 - Add .bitmask attribute to enumerations by peterbarker · Pull Request #1012 · ArduPilot/pymavlink · GitHub

  • Tidy enumerations, remove invalid values from bitmasks
  • Merged!

UTC0150 - close