Dev call July 8, 2024

Issues & Pull Requests

Plane

Copter

Attendee count (max): 17

UTC2301 - generator: remove written-only bufferIndex state by peterbarker · Pull Request #570 · ArduPilot/pymavlink · GitHub

  • Remove written-only buffer state
  • Merged!

UTC2304 - AP_HAL_ChibiOS: add hwdef for LongBowF405WING by HiRCBro · Pull Request #27009 · ArduPilot/ardupilot · GitHub

  • Add hwdef for LongBowF405Wing
  • Merged!

UTC2305 - AP_Mount: add topotek gimbal driver by rmackay9 · Pull Request #27053 · ArduPilot/ardupilot · GitHub

  • Add Topotek gimbal driver
  • Down to 6.6kB
  • Merged!

UTC2309 - HAL_QURT: revived QURT HAL by tridge · Pull Request #27091 · ArduPilot/ardupilot · GitHub

  • Revives QURT_HAL
  • For Qualcomm Hexagon CPUs
    • ModalAI
  • OS is missing some pretty critical calls
    • Fsync
    • Chdir
  • Listing of the root directory crashes?!
  • Map_file_name can do allocation
    • And must be freed afterwards
    • Could do magically-destroying thing but would be code complexity
  • Vendor-specific sub-directory for parameters?
    • Need a structure as the one-level was getting congested
  • Peter will have another look
  • Building with clang
  • Building this?
    • You can download the SDK from Qualcomm (or ModalAI?)
      • Very nasty agreement
      • Can’t get CI to agree to license!
    • We have a machine set up to build things
      • Custom runner on qurt.ardupilot.org
      • Push a branch, wait for github to run stuff, download the build product
  • Several bugs found as part of this…
  • Drive-bys in esp32?
    • Heap was enabled…. But wasn’t used
    • Ifdef vs boolean
    • Buzz is fine with the changes
  • We should write down how to create the development environment
    • Tridge will work with the ModalAI guys to make them autopilot-agnostic
  • ModalAI started up shortly after we removed QURT support many years ago
  • Ready-to-fly Copter with VIO is quite nice
  • Tridge is holding the “PX4 Autonomy DevKit”, based on a “Starling”
    • Popular among universities
    • Multiple cameras
  • QURT is a proprietary OS running on Qualcomm ships, including Hexagon DSPs
  • PX4 treats it as a Linux port, basically
    • Our port puts everything on the DSPs, except for getting mavlink data from the DSPs to the outside world
  • Can keep flying on the DSPs only
  • Single-system-image for the DSP
    • More a DSP with multiple cores
    • All threads run all the time….
  • Pthread isn’t quite the same
  • Peter will have another look through it

UTC2331 - AP_Math: split CRCs from checksums by tpwrules · Pull Request #27355 · ArduPilot/ardupilot · GitHub

  • Split CRCs from checksums
    • And rename/make more likely
  • Some questionable renames
    • E.g. the fport one
  • Is it worth the code churn?
  • 9:35 AM]rmackay9: I guess a CRC is a form of checksum so we could just put everything into checksum.cpp perhaps
  • [9:35 AM]rmackay9: I don’t mind though personally…
  • Straight rename of file and functions?
    • If there’s no compiler output change it could
  • Will postpone this for now

UTC2342 - iFlight H7 Thunder by andyp1per · Pull Request #27166 · ArduPilot/ardupilot · GitHub

  • iFlight H7 Thunder hwdef
  • Merged!

UTC2343 - AP_BattMonitor: Sum, ESC: all selected items must be found to not be missing by IamPete1 · Pull Request #27359 · ArduPilot/ardupilot · GitHub

  • For sum and esc backends, all selected items must be found to not be missing
    • Buzzer affecting compass on some vehicles
  • Should the ESC telemetry going away really be a battery failsafe?
    • Is it more a thrust loss or something?
    • There’s no ESC failsafe, no thrust-loss on boats, props are underwater….
  • Should we have ESC failsafes as well as battery failsafes?
    • Yes
  • Leonard says that if something has failed he wants his clients to know about it
  • We’re using a side-effect of monitoring rather than raising failsafe on correct data
  • Sometimes ESCs stop giving telemetry when disarmed
    • This is going go very poorly if you’re using sum backends with them
  • Losing a motor on an Octo?
    • Leonard says this is for landing safety
    • Tridge thinks users might want to continue the mission
  • Should we report that we’ve lost a component of our battery monitoring?
  • Tridge will check UX for this
  • PH will think about ESC failsafes

UTC0006 - AP_Periph: ensure the dshot type gets set by tpwrules · Pull Request #27444 · ArduPilot/ardupilot · GitHub

  • Ensure d-shot type gets set on AP_Periph
  • Can be merged after the guards are put in

UTC0004 - AP_Periph: add ESC_RATE parameter to RC_OUT peripherals by tpwrules · Pull Request #27406 · ArduPilot/ardupilot · GitHub

  • An rc-ouptut-speed parameter for AP_Periph
  • Still a bad name, RC_SPEED
    • Rename to ESC_RATE
      • Or MOT_PWM_RATE?

UTC0013 - Allow full compass calibration with location sources other than GPS by Williangalvani · Pull Request #27409 · ArduPilot/ardupilot · GitHub

  • Full compass cal with location sources other than GPS
  • Merged!

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

  • Reduce LUA state memory usage
  • Saves heap memory usage using same trick we used for singletons
    • Own lookup table
  • Same performance
  • Peter Hall to test
  • Follow-up will reduce flash usage even more

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

  • Add a separate stall-speed parameter used for minimum speed scaling
  • Stops TECS trying to fix your airspeed when rolling if you are flying at your minimum airspeed
    • I.e. pushing throttle up
    • I.e. pushing nose down!
  • Uses stall speed for scaling rather than minimum-speed
  • Needs to be eas not tas
  • Definitely want this parameter!
    • Should be AIRSPEED_STALL

UTC0019 - AP_Proximity: avoid use of int16_t-read call by peterbarker · Pull Request #27445 · ArduPilot/ardupilot · GitHub

  • Remove more use of int16_t read call
  • Limit int16-t call to 1024 bytes
  • closed

UTC0024 - AP_Logger: remove format sent_mask, use backend formats-sent bitmask by peterbarker · Pull Request #27446 · ArduPilot/ardupilot · GitHub

  • Remove duplicate checking of message-FMT-emitted
  • Saves a few bytes
  • Should fix the dataflash
  • Merged!

UTC0040 - AP_NavEKF3: do not store prediction-enabled as state by peterbarker · Pull Request #27447 · ArduPilot/ardupilot · GitHub

  • Stop storing startPredictEnabled as state in EKF3
  • Pass it through as a parameter instead
  • This state was not being reset when resetting the filter
  • Maybe this should be renamed to something else?
  • Merged!

UTC0045 - AC_WPNav: correct calculation of predict-accel when zeroing pilot desired accel by peterbarker · Pull Request #27450 · ArduPilot/ardupilot · GitHub

  • Correct position controller state when we’re in loiter and in RC failsafe
  • As a separate issue, what should we do in RC failsafe in Copter for control inputs?
    • Make the sticks neutral?
    • What do you do with throttle?
    • RPY are easy
    • Randy’s got concerns about logging original data
    • Need a PR to discuss
  • Merged this PR
  • What should we do to avoid entering acro while in RC failsafe?
    • Re-raise the failsafe?
    • Bounce the mode change?
    • PH thinks we should defer the failsafe
      • So the user has actions that will change the state of the vehicle
      • Let them enter loiter and the vehicle will the enter RC failsafe
      • Randy doesn’t like the surprise
      • He’d prefer to reject the command
      • Move to BRAKE mode if we can’t enter LOITER?
        • Again Randy doesn’t want to give the user something they didn’t ask for
      • Bounce manual modes but allow loiter mode
      • So bounce alt-hold, stabilize, acro?
        • But allow loiter
        • What about poshold?
  • Peter will bring some PRs
    • One for zoeroing control inputs in RC failsafe
    • One for bouncing entry into modes when in RC failsafe
      • 11:16 AM]rmackay9: @Peter Barker becareful about Auto_RTL!

UTC0117 - AP_ESC extended status packet addition by Pradeep-Carbonix · Pull Request #27248 · ArduPilot/ardupilot · GitHub

  • Extended status packet addition for APD escs
  • Review left

UTC0126 - AP_Mount: added sending of position data to Siyi gimbal by rmackay9 · Pull Request #27457 · ArduPilot/ardupilot · GitHub

  • Add sending of position data to Siyi gimbal
  • EXIF data now gets location on A8!
  • Merged!

UTC0128 - AC_PID: correct error calculation to use latest target by IamPete1 · Pull Request #27460 · ArduPilot/ardupilot · GitHub

  • Correct error calculation to use latest target
  • #24411 introduces a bug…
    • Targets updated slowly
  • This fixes that
  • D-updates were at right rates, which is why we got away with it

UTC0132 - AP_Logger: remove short-filename compatability code by peterbarker · Pull Request #27478 · ArduPilot/ardupilot · GitHub

  • Remove compatibility code looking for log1.BIN
  • Merged!

UTC0135 - AP_Common: fix and clean up Bitmask class by tpwrules · Pull Request #27481 · ArduPilot/ardupilot · GitHub

  • Fix and clean up Bitmask class
  • Saves a chunk of space on boards compiled for speed
  • Tidying up the validation
    • Good idea?
  • Equality loses same-number-of-bits
    • Compile-time error now
  • merged!

UTC0151 - autotest: add a test for switching to auto with low speed and alt by peterbarker · Pull Request #27483 · ArduPilot/ardupilot · GitHub

  • Throttle suppression logic didn’t unsuppress throttle on a flight
  • An option bit to not do throttle suppression
  • Maybe an option bit to MOT_SPIN_MIN for Plane

UTC0154 - AP_NavEKF: option to align extnav to optflow pos estimate by rmackay9 · Pull Request #27487 · ArduPilot/ardupilot · GitHub

  • Allow extnav to align to opticalflow position
  • Stops position jumping when you switch from optflow to extnav
  • these techniques will help with future work coming in from Leonard
    • Handle on controller side rather than estimation side

UTC0159 - hwdef: H757_EVAL: make it not-AP_Periph by peterbarker · Pull Request #27495 · ArduPilot/ardupilot · GitHub

  • H757_EVAL - make it not a periph
  • Can’t do dronecan bootloader as a periph

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

  • Plane update
  • Not a lot of reports from the beta
  • Discovered a mode-guided problem
    • Fly-to updates the position you want to go to before trying to change modes
    • So if you’re in fence breach…
  • Param-ftp vs networking
    • Errno race condition
    • Make errno thread-local?

UTC0205 - Copter update

  • Things seem to be going OK

UTC0206 - close