Dev call July 22, 2024

Issues & Pull Requests

Plane

Copter & Rover

Attendee count (max): 17

UTC2301 - common.xml: Add "encoding" field to VIDEO_STREAM_INFORMATION by nexton-winjeel · Pull Request #364 · ArduPilot/mavlink · GitHub

  • Add field to video_stream_information
  • Already merged upstream
  • merged!

UTC2303 - AC_WPNav: Stop parameter changes overriding speeds by lthall · Pull Request #23220 · ArduPilot/ardupilot · GitHub

  • Allow changing speed by changing parameter
  • RTL speed and wpnav speeds and if you set the wpnav speed it wil override the rtl speed
  • Need to remove the change in speed when wpnav_speed is changed
  • Immediate changes in speed are bad when you’re in RTL and you change WPNAV_SPEED
  • AC_WPNav: wpnav speed param check fixed by rmackay9 · Pull Request #23544 · ArduPilot/ardupilot · GitHub should stop this happening?
    • If RTL_SPEED is not set then perhaps WPNAV_SPEED affects it live?
  • If there’s still a problem then Randy will help out with it
  • Do we want RTL_SPEED to act in the same way as WPNAV_SPEED

UTC2313 - Copter Fence Fixes by andyp1per · Pull Request #25875 · ArduPilot/ardupilot · GitHub

  • Copter fence fixes
  • Tridge tested this in SITL with Henry
  • Henry’s found issues, tridge fixed them
    • Several times
  • Some things do need decisions at a higher level
  • Most around fence autoenable
  • Some cool subtle issues
  • For 4.6 we should mark FENCE_AUTOENABLE 1 and FENCE_AUTOENABLE 2 as deprecated
  • Remove in 4.7
  • If you want autoenable then you’ll need to use AUTOENABLE 3
  • Problem with autoenable 1 is a coherent set of behaviours
    • E.g. completion of takeoff
      • What happens if auto takeoff and auto landing approach which disables and then pilot takes over in a manually controlled mode?
      • Fence is disabled as in landing sequence (autoenable 1)
      • But will not be re-enabled
      • This is exactly as-documented
      • 3 and 1 act differently
        • Breach actions not taken
        • In 3 if you take over in cruise and go through a polyfence it will breach
          • Will re-enable when you climb back above minimum alt
  • Henry thinks autoenable 3 is the only viable option
  • Alt_min enables and disables aren’t consistently used
  • Autoenable 3 is principle of least surprise
  • There’s an arming check that you’re not breached when autoenable is 3
  • If you are in a land and your action is guided
    • It would trigger the guided
  • So our requirements for 4.7 will be fence_enable 1 or fence_autoenable 3
  • The go-to-guided failsafe is supposed to be for trainining purposes, not containment purposes
    • So if a plane pilot breaches then it goes to mid-field
  • This PR has been going on way too long already
    • Andy’s been trying to do one small thing
  • Easiest way forward is to deprecate 1 and 2
  • There are pre-existing corner-cases which remain in 1 and 2 which will remain in 4.6
    • They’ve been in there a long time
  • When using aux switch and you flip it on
    • You want the fences to be enabled as you fly
    • E.g. as soon as you have position it auto enables
    • When you’re above it auto enables
  • Need hysteresis on the altitude fence
  • Minalt should be consistent regardless of whether you’re using the aux switch or the parameters?
    • Fence aux switch on transmitter can be a “save my aircraft” switch
      • Minalt configured but not enabled
        • Can use switch as a “save my aircraft” switch to enable the fence
    • Another switch option?
    • Does the existing switch option have a different behaviour?
  • Henry thinks this could go in
  • If we are going to force users, is 3 exactly right?
    • It’s the right one to force at this point
    • Add fence margin
  • Fixed 2m hysteresis on altitude fence
  • Get this one in and then iterate….
  • Can we recommend 3 on previous releases?
    • Yes, AUTOENABLE 3 should be stated on the Wiki to be the one to use
    • Should say 1 and 2 are deprecated
      • Corner cases hard to define
      • Those using 1 or 2 probably don’t understand what it does
    • Very few set a min-alt fence
      • 4.4, 4.5, master is a mess
      • But it is no worse than 1 or 2
      • Minalt is an instance breach, however
        • So can’t be used in that case on older releases
    • Henry will update the Wiki
    • Min-alt fence has always been a mess, less of a mess with Andy’s PR
  • Ability to change mode in breach?
    • Tridge wants the no-change behaviour retained
    • Copter has odd behaviour?
      • Remove the !copter_is_landing check in Copter to make it work like Plane?
      • Randy’s OK with the line being removed
  • Many people on call think that pilot not being able to take control is terrible
    • Tridge’s talk with regulator seems to say the opposite. CASA in two circumstances want the failsafe to be absolute, vehicle starts to fly autonomously
    • [9:50 AM]Tim Tuxworth: Regulators in Canada will be horrified that the Pilot can’t take control. It’s written into our CAR regulations.
    • If you are using fence as mitigation in SORA/SAIL case then having holes and exceptions in the mitigation can be problematic
    • Tridge is fine having it as an option

UTC2343 - Detune to stop ground oscillation by lthall · Pull Request #27341 · ArduPilot/ardupilot · GitHub

  • De-tune to stop ground oscillation
  • Quadplane has a similar feature
    • Special handling on the ground
    • Fixed wing loses D and halves P
    • Don’t do it on VTOL gains
      • Tridge has a branch…
  • Don’t want to back off the gains too much
  • Still maintain amount of control as can have
  • A moment during takeoff where the gains are backed off
    • Preferably should be yaw only
  • This is something users need to set themselves
    • Any time you’re touching the ground you’ve got problems
  • Back off only enough to stop ground resonance
    • Bill has fixed tail oscillations with notch filters before
      • High-range so could notch the relatively low frequency
  • Why not a vector3 parameter?
    • Would change the names to x/y/z
  • Is 0 a reasonable lower limit?
    • Allows for turn-off
    • Maybe 0.25 as a lower limit?
  • Is that the correct place to call it in Copter?
    • Yes
    • Would go in quadplane.cpp somewhere

UTC0017 - AC_Autotune: Clean up Multi Variables and non functional changes by lthall · Pull Request #27370 · ArduPilot/ardupilot · GitHub

  • Clean up autotune
  • Randy will peer at it a bit

UTC0024 - Constellation choice for septentrio gnss by chiara-septentrio · Pull Request #27373 · ArduPilot/ardupilot · GitHub

  • Constellation choice for Septentrino GNSS
  • Merged

UTC0032 - AP_Scripting: reduce Lua state memory usage by tpwrules · Pull Request #27426 · ArduPilot/ardupilot · GitHub

  • Reduce Lua state memory usage
  • Reduces memory but a script will use more and more memory over time
    • Error functions might fail with out-of-memory
  • Merged!
  • Flash-usage one coming next

UTC0034 - AP_TECS: Add a separate stall speed parameter used for minimum speed scaling by WickedShell · Pull Request #27442 · ArduPilot/ardupilot · GitHub

  • planeAdd separate stall speed parameter
  • Merged

UTC0037 - https://github.com/ArduPilot/ardupilot/pull/27477

  • Option to immediately climb in AUTO mode
    • Don’t use glideslope
  • Only thing blocking is the param documentation
  • Can be merged once docs are fixed

UTC0039 - SITL: add simulated slung payload by rmackay9 · Pull Request #27536 · ArduPilot/ardupilot · GitHub

  • Add slung-payload simulator
  • Planning on suppressing oscillations
  • [10:41 AM]Peter Barker: @rmackay9 do you need a GPS or just IMU data to reduce the swinging?
    • Probably do need to know the position changing

UTC0046 - AP_HAL_SITL: If HAL_CAN_WITH_SOCKETCAN is undefined, treat it as NONE by muramura · Pull Request #27565 · ArduPilot/ardupilot · GitHub

  • Fix compilation with feature removed
  • Merged!

UTC0047 - AP_Mount: Topotek image tracking fix by rmackay9 · Pull Request #27568 · ArduPilot/ardupilot · GitHub

  • Topotek image tracking fix
  • Correct version number parsing for new formats
  • Tracking on/off but also interim where it just highlights in video
  • Need a follow-up PR to fix a potential overflow on malformed input data

UTC0053 - Plane 4.5.x issue tracking · Issue #26202 · ArduPilot/ardupilot · GitHub

  • Plane update
  • New beta coming out soon
  • Only needed to backport CubeRed bootloader fix, not general H7 fix
  • Several beta testers providing feedback!

UTC0055 - Copter/Rover-4.5.0 issues list · Issue #26103 · ArduPilot/ardupilot · GitHub

  • Copter update
  • EKF wind estimates can’t be used with something else
    • Needs fixing
    • Already have a volunteer for it
  • RPLidar not providing proper distances?
  • New issue in SmartRTL where it consumes points when switching modes

UTC0056 - off the floor

  • QGC is trying to get gimbal controls into master release
    • They went into stable but not master?!
  • Funding requests outstanding, please process
  • reimbursements

UTC0059 - https://github.com/ArduPilot/ardupilot/pull/27578

  • Quicktune conversion to C++
  • Tridge doesn’t want this to be part of autotune
  • Thiswill be available on 1MB boards
  • Leonard things mode restrictions are a good idea
    • Does it make sense to do this in auto?
  • From guided?
    • Two-position switches?!
  • Quiktune is basically an automated version of the manual process with automated oscillation detection
  • Autotune is much more finicky
    • It’s an autonomous mode
  • Oscillation-s-max is really the only one you need to worry about
    • To 3 or 2 or 1.5 but it is rare
  • Leonard’ OK with this going in so long as it doesn’t get in his way
    • Wants safety mechanisms
  • Better people run this than autotune if they’re not going to tune their vehicle first
  • Avoid percentages in user-facing parameters?
    • Leonard wants scalars
      • Don’t present gain margin as a percentage
    • Tridge likes percentages
      • “Sure you do”
  • Tridge wants this as close to existing script as much as possible
    • One param rename seems fine, “max_reduce”
  • Configurator gives the user the option of doing quiktune
    • Will upload LUA script automatically
    • Suggests autotune after quiktune
  • So this would have parameters as percentages
    • Not something we do in Copter
    • Shared code
  • The allocation is interesting
    • Allocation in the auxfunc is “interesting”
  • QUIK_ENABLE doesn’t exist until the object exists
    • Move to top-level and base allocation on it?
  • Default params on SD card means you can’t allocate the vehicle at runtime
  • Just pay the memory cost all the time?
  • Maybe patch AP_Parm to not populate from defaults.parm
    • Would need to scan eeprom-in-memory to populate defaults ‘though

UTC0158 - AP_InertialSensor: Fix persistent storage of parameter INSn_ACCSCAL_Z by joshanne · Pull Request #27579 · ArduPilot/ardupilot · GitHub

  • Fix storage of tempcal parameters
  • Merged!

UTC0159 - AP_InertialSensor: Check the gyro/accel id has not been previously registered by joshanne · Pull Request #27584 · ArduPilot/ardupilot · GitHub

  • Check gyro/accel cal id registration on CubeOrangePlus
  • Accelcal on first boot
    • Cals accel4
  • Subsequent boot gives prearm failure!
  • Need Sid to look at this
  • Remove warning

UTC0202 - AP_HAL_ChibiOS: Capture the case where the persistent parameter is the newer format INSn_ACC_ID by joshanne · Pull Request #27583 · ArduPilot/ardupilot · GitHub

  • Capture case where persistent parameter is newer format
  • For >3 IMUs

UTC0207 - DroneCAN: update DSDL compiler by tpwrules · Pull Request #27606 · ArduPilot/ardupilot · GitHub

  • Compiler update
  • Just need to make sure the commit is right to update the submodule
  • Looks good!

UTC0209 - Actions: fix tests that don't like repos not called "ardupilot" by IamPete1 · Pull Request #27612 · ArduPilot/ardupilot · GitHub

  • Fix CI for branches not named “ardupilot”
  • Want to fix the environment install scripts before merging this one

UTC0214 - Filter: LowPass: use `calc_lowpass_alpha_dt` in `apply` and prefix all class varables with `_` by IamPete1 · Pull Request #27582 · ArduPilot/ardupilot · GitHub

  • Try to tidy LowPass filter
  • There are ways this changes behaviour
  • Are there any use cases in our current tree which would trigger it?
  • PH wants to split LowPass into different two different classes
    • One which has apply() and one with apply(dt)
    • If we ever mix the two that’s an issue

UTC0223 - DroneCAN: fix dangerous bug for twin-motor Planes by robertlong13 · Pull Request #27610 · ArduPilot/ardupilot · GitHub

  • Full-throttle on reboot bug
  • Fix dangerous bug for twin-motor Planes
  • DroneCAN-related
  • Maybe init pwm_min/pwm_max to 1000/2000 in AP_HAL::RCOutput
  • No autotest for CAN reversed ESC
  • ESC scaling generally problematic
    • Would be nice to fix all of this stuff up
    • Have motors configure rc output?
  • Bob will test this on the bench
  • And add the init to the HAL
  • left/right forward and 4 vtol quadplanes
  • Need to be careful around safety button

UTC0236 - AP_HAL_SITL: initialize rcout safety state by robertlong13 · Pull Request #27611 · ArduPilot/ardupilot · GitHub

  • Related to above, explicitly set initialise safety state in SITL

UTC0238 - close

1 Like