Commit Graph

37635 Commits

Author SHA1 Message Date
Rhys Mainwaring 3c561e215f AP_HAL_ESP32: set default cpu frequency to 240MHz
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-12-10 10:32:47 +11:00
Thomas Watson a14fb9ab28 AP_HAL_ESP32: regenerate sdkconfig after sdkconfig.defaults change
Ensures the sdkconfig does not get out of date as updates are made to
the defaults. The sdkconfig can still be manually changed for testing.
2024-12-10 10:32:47 +11:00
Thomas Watson 535f6875a8 AP_HAL_ESP32: move generated sdkconfig to build folder
Ensures it gets cleaned with `./waf clean`. Users will hopefully delete
and not be confused by the old one as it will now show up as an
untracked file.
2024-12-10 10:32:47 +11:00
YI-BOYANG 122eb21b45 AP_HAL_ChibiOS: add GEPRC_TAKER_H743 2024-12-10 10:30:54 +11:00
Andrew Tridgell 7759bc7662 hwdef: enable IMU in HolybroG4_GPS
IMU rate zero by default
2024-12-10 09:29:37 +11:00
Andrew Tridgell 02ea371eae hwdef: added baro in HolybroG4_GPS
new units have a ICP201XX baro

disable baro by default to avoid issues with airflow and GPS modules
installed on the outside of the aircraft
2024-12-10 09:29:37 +11:00
Andrew Tridgell 4d31a7320a AP_InertialSensor: stop sensors converging if motors arm
if the user arms within 30s of startup then stop the re-init of the
sensors. This can give less accurate frequency as the sample rate may
not have settled yet, but it is better than doing init of the filters
while the vehicle may be flying

also fix a 32 bit millis wrap
2024-12-09 07:40:48 +11:00
Andrew Tridgell 8e1acb10fd Filter: enable 4 filters on low-flash boards 2024-12-09 07:40:06 +11:00
Iampete1 e4de4c9b41 AP_Scripting: Examples: message_interval: give checker a hint about types 2024-12-08 08:09:06 +09:00
shen 9d21b3396e hwdef: Add AEROFOX H7 2024-12-07 18:10:09 +11:00
Andy Piper ad539ffa03 AP_RCTelemetry: add missing CRSF scheduler table entry 2024-12-05 10:03:27 -06:00
Randy Mackay 1308efb9a4 AP_Scripting: promote video-stream-information to applet 2024-12-05 16:46:48 +09:00
Randy Mackay 3325bdd7df AP_Scripting: set-video-stream-info encoding binding and docs 2024-12-05 16:46:48 +09:00
Randy Mackay 6f6613fefd AP_Camera: set-stream-information loses send-text 2024-12-05 16:46:48 +09:00
Thomas Watson d7b26a2205 AC_AutoTune: fix tracking of maximum angular acceleration
Issue introduced in https://github.com/ArduPilot/ardupilot/pull/27370
and partially fixed in https://github.com/ArduPilot/ardupilot/pull/27762,
though evidently not properly tested.

Failing to track the maximum can result in dangerously low values being
calculated for `ATC_ACCEL_[RPY]_MAX` and the vehicle becoming unflyable.

Make the variable a reference so that the maximum value is preserved
between function calls.
2024-12-05 09:18:56 +09:00
Andy Piper 88f6125a94 AP_InertialSensor: belt and braces checks 2024-12-04 07:45:05 +11:00
Andy Piper 277386e6e2 AP_HAL_ChibiOS: add cork()/push() check 2024-12-04 07:45:05 +11:00
Andy Piper 4b0fa15278 AP_InertialSensor: address review comments 2024-12-04 07:45:05 +11:00
Andy Piper 8fc4a6a6e9 AP_HAL_ChibiOS: add comments to force_push on rcout 2024-12-04 07:45:05 +11:00
Andy Piper 398a70ec4b AP_InertialSensor: avoid multiple allocations of rate loop buffer
add nullptr checks and comments to FastRateBuffer
2024-12-04 07:45:05 +11:00
Andy Piper 6db09c9fdd AP_InertialSensor: keep a queue of gyro samples for use by the rate thread
decimate the gyro window locally
configure rate loop buffer based on AP_INERTIALSENSOR_FAST_SAMPLE_WINDOW_ENABLED
allow backends to be updated from rate thread
output debug error if rate loop buffer overruns
add support for updating filter parameters independently of propagating samples
add rate loop config abstraction that allows code to be elided on non-copter builds
must be using harmonic notch to use rate thread
mediate fast rate loop buffer using mutex and binary semaphore
ensure gyro samples are used when the rate loop buffer isn't

Co-Authored-By: Andrew Tridgell <andrew@tridgell.net>
2024-12-04 07:45:05 +11:00
Andy Piper a3de217dee AP_HAL_ChibiOS: ensure dshot rate can be set dynamically
honour the requested dshot rate as near as possible
2024-12-04 07:45:05 +11:00
Andy Piper 3cc4b1991c AP_HAL_ChibiOS: compile MambaH743v4 at -O2 2024-12-04 07:45:05 +11:00
Andy Piper 048a3af785 AP_HAL_ChibiOS: allow forcing of trigger_groups() 2024-12-04 07:45:05 +11:00
Andy Piper 76897e9674 AP_HAL: set HAL_INS_RATE_LOOP in boards
restrict rate loop to H7 and F7
2024-12-04 07:45:05 +11:00
Andy Piper c4ab8e25c4 AP_HAL: allow forcing of trigger_groups() 2024-12-04 07:45:05 +11:00
Andrew Tridgell 6ac35ce9af AP_Vehicle: use update_dynamic_notch() directly in rate loop 2024-12-04 07:45:05 +11:00
Randy Mackay eaf20db6ea AP_Scripting: ahrs/ekf origin script promoted to an applet 2024-12-03 11:15:00 +11:00
Andrew Tridgell 445c03c69c AP_ServoTelem: added active mask
and fixed typo in logging
2024-12-03 07:38:17 +11:00
Andrew Tridgell bf5555ccd3 AP_DroneCAN: actuator status is measured, not commanded 2024-12-03 07:38:17 +11:00
Iampete1 38c3257151 AP_Vechicle: add `AP_Servo_Telem` and call at 50Hz 2024-12-03 07:38:17 +11:00
Iampete1 e003cc511d add `AP_Servo_Telem` 2024-12-03 07:38:17 +11:00
Iampete1 d0bbc02995 AP_Logger: remove `Write_ServoStatus` and `CSRV` definition 2024-12-03 07:38:17 +11:00
Iampete1 9be1a751da AP_Volz_Protocol: send incomming servo telem data to new `AP_Servo_Telem` lib 2024-12-03 07:38:17 +11:00
Iampete1 71137dac31 AP_PiccoloCAN: send incomming servo telem data to new `AP_Servo_Telem` lib 2024-12-03 07:38:17 +11:00
Iampete1 d5c29735d6 AP_DroneCAN: send incomming servo telem data to new `AP_Servo_Telem` lib 2024-12-03 07:38:17 +11:00
Iampete1 2863dcfb94 AP_Logger: add new unit `t` for torque in N.m 2024-12-03 07:38:17 +11:00
Thomas Watson adfc415cff SITL: fix testing and simulated register scaling
* make test actually test something

* fix scaling to match datasheet values
2024-12-02 10:10:01 -06:00
Thomas Watson 190c3aa7ab AP_BattMonitor: INA3221: fix up based on real experience
* correctly validate channel parameter and improve other parameter
access

* dynamically enable channels to avoid spending time converting unused
channels

* implement tracking of reading health

* correct reading scaling by using datasheet values

* accumulate measured current to track used mAh and Wh

* make configurable using #defines (and hwdef) for integrators

* correctly separate and lock frontend and backend state. Note that
_state of frontend can only be accessed in `read()` method.
2024-12-02 10:10:01 -06:00
Peter Barker 4cfbeb11e3 SITL: add support for ina3221 triple-channel current/voltage sensor 2024-12-02 10:10:01 -06:00
Peter Barker 5bc3b629f4 AP_BattMonitor: add support for ina3221 triple-channel current/voltage sensor 2024-12-02 10:10:01 -06:00
Andrew Tridgell 53ee7d6e75 AP_InertialSensor: fixed check for changes to notch filters
if the configured freq changes on any type of notch then A and Q
change, so init must be called. This does not affect only Fixed
notches
2024-11-30 17:59:47 +11:00
Jonathan Challinger 564879594e AP_NavEKF3: fix computation of rho 2024-11-29 19:20:05 +11:00
Andrew Tridgell 10209a2a13 AP_Scripting: added UltraMotion servo driver 2024-11-28 09:24:03 +11:00
Andrew Tridgell 1c6ac0990c AP_Scripting: added UltraMotion servo driver
see https://www.ultramotion.com/servo-cylinder/
2024-11-28 09:24:03 +11:00
Andrew Tridgell fb3a50096d AP_Scripting: added get_output_pwm_chan 2024-11-28 09:24:03 +11:00
Andrew Tridgell d6b38f4009 SRV_Channel: added get_output_pwm_chan() for scripting
allows for servo drivers to be written in lua
2024-11-28 09:24:03 +11:00
George Zogopoulos 2f9ff3ef73 Plane: Call new TECS method in case of altitude change 2024-11-27 19:35:03 +11:00
George Zogopoulos 5b8a702b54 AP_TECS: Added method to handle home altitude change 2024-11-27 19:35:03 +11:00
George Zogopoulos 0f9268c6c8 AP_TECS: Delete redundant _hgt_afe setting 2024-11-27 19:35:03 +11:00
Andrew Tridgell 3a1faf6f54 AP_Quicktune: adjust defaults
change QWIK_ANGLE_MAX to 10. this is a very conservative value, we may
raise it based on user feedback.

Lower the default SMAX to 4 to be a bit more conservative for larger
vehicles
2024-11-27 14:07:38 +11:00
Andrew Tridgell 8edaf88efa hwdef: removed QAUTOTUNE disable
now disabled by default
2024-11-27 14:07:38 +11:00
Michelle Rossouw edcddcb82e AP_Quicktune: Added Quicktune
C++ version of lua script, with some enhancements
2024-11-27 14:07:38 +11:00
Michelle Rossouw 316bfd3263 RC_Channel: Added Quicktune 2024-11-27 14:07:38 +11:00
yaapu 3c19312c56 Ap_Frsky_Telem: fix for apparent wind passthrough telemetry frame 2024-11-27 13:46:37 +11:00
Hayden Donald 83520d611b AP_HAL_ChibiOS: CubeNode ETH add HAL_PERIPH_SHOW_SERIAL_MANAGER_PARAMS 2024-11-27 11:53:25 +11:00
Hayden Donald 2308968737 AP_HAL_ChibiOS: CubeNode-ETH add LEDs
Added the LEDs for CubeNode-ETH to the hwdef
2024-11-27 11:53:25 +11:00
Hayden Donald a29b8a4f5a AP_HAL_ChibiOS: CubeNode-ETH fix incorrect pin for CTS
Fixed an incorrect pin for UART8_CTS (PC11 should be PC12)
2024-11-27 11:53:25 +11:00
Ryan Friedman e7e700d9f2 AP_Terrain: Add const to locals
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2024-11-26 15:42:04 +11:00
Randy Mackay 99022747f3 AP_NavEKF3: pos vel resets default to user defined source 2024-11-26 11:32:25 +11:00
Iampete1 5e7463fdcd AP_Mission: `DO_RETURN_PATH_START` limit worst case runtime 2024-11-26 11:17:55 +11:00
Iampete1 8a86e7da14 AP_Scripting: examples: Flip Mode: refuse mode entry if not armed and flying 2024-11-26 08:44:31 +09:00
Iampete1 55936895e3 GCS_MAVLink: send `AVAILABLE_MODES_MONITOR` message 2024-11-26 08:44:31 +09:00
Iampete1 d3ffa2e56a AP_Scripting: add bindings for `AP_Vehicle::custom_mode_state` 2024-11-26 08:44:31 +09:00
Iampete1 fddfaaa1fc Vehicle: add and return `custom_mode_state` struct on `register_custom_mode` 2024-11-26 08:44:31 +09:00
Iampete1 00efc1c926 AP_Scripting: generator: allow fields on ap_objects 2024-11-26 08:44:31 +09:00
Iampete1 da33532dbb AP_Scripting: examples: add Flip example script duplicating the behavior of flip mode. 2024-11-26 08:44:31 +09:00
Iampete1 8bf3f5e347 AP_Vehicle: add `register_custom_mode` 2024-11-26 08:44:31 +09:00
Iampete1 8bc5f797da AP_Scripting: add binding for vehicle `register_custom_mode` 2024-11-26 08:44:31 +09:00
CB Unmanned 0fd497f203 AP_HAL_ChibiOS: Update CBU-Stamp Baro Type
Update from the DPS310 to the BMP280
2024-11-26 09:42:01 +11:00
Peter Barker 48acec80a4 AP_Logger: correct typo in MAV documentation 2024-11-26 09:18:08 +11:00
Randy Mackay 4b040eef93 AP_RangeFinder: alphabetise type parm docs 2024-11-25 20:28:18 +11:00
Peter Barker 650b9784a0 GCS_MAVLink: validate vertex count before assignment
this assignments following these lines were silently truncating the param1 value to uint8_t value
2024-11-25 11:37:38 +11:00
Peter Barker e19636e4ad GCS_MAVLink: Rally: correct mission_type in mission_item_int conversion 2024-11-25 11:37:38 +11:00
Peter Barker 69e3d59eb9 GCS_MAVLink: Fence: correct mission_type in mission_item_int conversion 2024-11-25 11:37:38 +11:00
Peter Barker 86fef47dc2 AC_Fence: specify storage type for AC_PolyFenceType
we allocate RAM based on the size of this structure
2024-11-25 11:37:38 +11:00
Peter Barker f2ed243037 GCS_MAVLink: correct handling of more than 256 fence items 2024-11-25 11:37:38 +11:00
Peter Barker 8b8bc026db AC_Fence: correct handling of more than 256 fence items 2024-11-25 11:37:38 +11:00
Rhys Mainwaring 85f8ae8aa3 AP_HAL_ESP32: disable define of HAL_ESP32_RCIN on esp32empty
- RMTSigReader issue with rmt(legacy): RMT RX BUFFER FULL

Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-11-23 21:50:51 -06:00
Ryan Friedman fe8e0d0c96 AP_Soaring: Use constexpr instead of define for constants
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2024-11-24 12:26:09 +11:00
Tim Tuxworth 1b4ac6ae89 AP_Scripting: Add Altitude Callout script to examples 2024-11-24 07:17:18 +11:00
Rhys Mainwaring 7c1af5a1a9 AP_HAL_ESP32: format scheduler stack declarations
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-11-23 13:43:05 -06:00
David Buzz f10333e787 AP_HAL_ESP32: sneak the scheduler Stack Sizes values down to smaller but still ok-we-hope values.
WARN - may cause crashes!
2024-11-23 13:43:05 -06:00
snktshrma f5c28cc12d AP_Vehicle: Added method to takeoff for use by external control 2024-11-23 09:00:27 +09:00
snktshrma 8c2e8ab4df AP_DDS: Added takeoff DDS service 2024-11-23 09:00:27 +09:00
Thomas Watson 5398f1a499 AP_HAL_ESP32: move scheduler stats display behind SCHEDDEBUG
It takes ~100ms and causes noticeable control glitches.
2024-11-22 12:20:52 -06:00
David Buzz fd8c470120 AP_HAL_ESP32: __RAMFUNC__ maps to IRAM_ATTR
dagery_ua found this and reported it in Discord
2024-11-22 12:20:52 -06:00
Vincent Poon 8fc23211ea hwdef: add SPA06 to Kakute hwdef
add SPA06 support to Kakute H7 Wing, F4 model

add define AP_BARO_SPL06_ENABLED to kakute F4
2024-11-22 15:11:40 +11:00
Alexey Kozin f101ce13cf hwdef: f4BY Flight Controller MCU upgrade 2024-11-22 12:05:59 +11:00
Peter Barker 1a92e356ee AP_Logger: correct PM message metadata 2024-11-22 10:18:31 +11:00
Peter Barker e23d82a9df AP_RTC: correct logger documentation 2024-11-22 10:18:31 +11:00
Randy Mackay c72108c1af SITL: precland alt and dist limit doc fix 2024-11-22 08:11:41 +09:00
Tiziano Fiorenzani dff0f6fc2e AP_DDS: pre-arm check service 2024-11-21 15:53:33 +11:00
Tiziano Fiorenzani a7d9e694bf AP_DDS: Topic to publish current goal 2024-11-21 15:52:17 +11:00
Peter Barker 5647141f70 AP_Scheduler: log RTC into PM message 2024-11-21 09:19:38 +11:00
Peter Barker bd0d4f9ef0 AP_Logger: log RTC into PM message 2024-11-21 09:19:38 +11:00
Peter Barker 0a00f637af AP_RTC: allow time to shift forward when disarmed 2024-11-21 09:19:38 +11:00
Henry Wurzburg 229d544c35 AP_Airspeed:correct metadata ref to old param 2024-11-21 09:14:42 +11:00
Kinchin Fong 3e592a90cc AP_HAL_ChibiOS: Add hwdef files for AET-H743-Basic 2024-11-20 23:55:35 +11:00
bugobliterator bd7bb59021 AP_Networking: make connector loopback test priority to be PRIORITY_IO-1 2024-11-20 19:14:38 +11:00
bugobliterator ca9713b275 AP_BoardConfig: add option to use IO safety led switch for ProfiLED 2024-11-20 19:12:44 +11:00
bugobliterator 646e09ebaa AP_Notify: add support for controlling ProfiLED via IOMCU safety pins 2024-11-20 19:12:44 +11:00
bugobliterator d348ffbff9 AP_HAL_ChibiOS: add support for driving profileds via safety pins 2024-11-20 19:12:44 +11:00
bugobliterator 4cbc4dfe34 IO_Firmware: update IOMCU firmware with profiled LED support over safety pins 2024-11-20 19:12:44 +11:00
Peter Barker ec1dc7cbc5 AP_Scripting: adjust for renaming of SIM_GPS_DISABLE to SIM_GPS1_ENABLE 2024-11-20 15:07:45 +11:00
Peter Barker efba110ef9 AP_Param: correct maximum-length parameter sanity check
need to take into account addition of (eg.) _X suffix for VECTOR3F parameters
2024-11-20 15:07:45 +11:00
Peter Barker fab1ef7a87 SITL: add ability to simulate more than 2 GPSs 2024-11-20 15:07:45 +11:00
Peter Barker 4b679dfb1a AP_HAL_SITL: add ability to simulate more than 2 GPSs 2024-11-20 15:07:45 +11:00
Eric Katzfey 115e5254d9 AP_InertialSensor: Added explicit casts to get rid of Qurt compiler warning about implicit casts 2024-11-20 15:06:37 +11:00
Alfie Lockrey 8a6880711a AP_Battery: include OPTIONS parameter on boards with SUM backend
Enable battx_options for periphs if useful.

Enable the options parameter for the battery monitor on AP_Periph devices if they could be useful - ie, battery summing is enabled and in use on a node with more than one source for battery inputs.

Only define options in a single place

Single definition for non periph builds or if AP_BATTERY_SUM_ENABLED
2024-11-20 08:52:51 +11:00
Andrew Tridgell 19c9964e55 AP_MultiHeap: added simple unit test 2024-11-20 07:32:03 +11:00
Andrew Tridgell 5aa7324c2d AP_Scripting: use AP_MultiHeap 2024-11-20 07:32:03 +11:00
Andrew Tridgell d6430ff361 AP_MultiHeap: added library
this is a standalone (no-HAL based) implementation of MultiHeap
2024-11-20 07:32:03 +11:00
Andrew Tridgell 725b625967 AP_Common: removed old MultiHeap code 2024-11-20 07:32:03 +11:00
Andrew Tridgell 0e1bad605a AP_HAL_SITL: removed heap APIs 2024-11-20 07:32:03 +11:00
Andrew Tridgell d90d46c02d AP_HAL_ESP32: removed heap APIs 2024-11-20 07:32:03 +11:00
Andrew Tridgell f8f883baca AP_HAL_ChibiOS: removed heap APIs 2024-11-20 07:32:03 +11:00
Andrew Tridgell 28dc5deb9a AP_HAL: removed heap APIs
implement in AP_MultiHeap instead
2024-11-20 07:32:03 +11:00
Andrew Tridgell 8ebfa28183 AP_Common: added last_failed for leveraging lua GC
we want the lua garbage collector to be used to re-use memory where
possible. This implements a suggestion from Thomas to avoid heap
expansion unless the last allocation failed
2024-11-20 07:32:03 +11:00
Andrew Tridgell 1cd05618f0 AP_Scripting: added warning on heap expansion 2024-11-20 07:32:03 +11:00
Andrew Tridgell bfeed7cc32 AP_HAL_SITL: implement new scripting heap APIs 2024-11-20 07:32:03 +11:00
Andrew Tridgell 70c19b264a AP_HAL_QURT: implement new scripting heap APIs 2024-11-20 07:32:03 +11:00
Andrew Tridgell a124d66110 AP_HAL_Linux: implement new scripting heap APIs 2024-11-20 07:32:03 +11:00
Andrew Tridgell de49c9b1bc AP_HAL_ESP32: implement new scripting heap APIs 2024-11-20 07:32:03 +11:00
Andrew Tridgell c999340786 AP_HAL_ChibiOS: implement new scripting heap APIs 2024-11-20 07:32:03 +11:00
Andrew Tridgell 9f75ad1be8 AP_Common: allow expansion of heaps in MultiHeap
this allows for new heaps to be added at runtime for lua scripting if
you run out of memory while armed
2024-11-20 07:32:03 +11:00
Andrew Tridgell 9a8c59c5ac AP_HAL: rework heap allocation functions
make functions for lua heap allocation suitable for use in all
non-ChibiOS HALs
2024-11-20 07:32:03 +11:00
Andrew Tridgell a5ff7f83d1 AP_Scripting: added ability to expand heap at runtime if armed 2024-11-20 07:32:03 +11:00
Andrew Tridgell 66752996e4 AP_Scripting: cleanup debug option handling 2024-11-20 07:32:03 +11:00
Eric Katzfey e4ba4cc885 AP_RCProtocol: Fixed an explicit initializer to get rid of Qurt compiler warning 2024-11-19 14:14:23 +11:00
Eric Katzfey 45d1a0954e AP_Scripting: Fix method of accessing character string to fix Qurt compiler warning 2024-11-19 14:12:25 +11:00
Eric Katzfey 612e73b9d7 AP_GPS: GSOF: Removed unused private members to fix Qurt compiler warnings 2024-11-19 12:26:55 +11:00
mikefenghao 22cec990e5 hwdef: added MFE_POS3_GPS 2024-11-19 12:25:08 +11:00
Rhys Mainwaring f9e319d114 AP_HAL_ESP32: enable uart rc
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-11-19 11:21:09 +11:00
Oleksiy Protas c415c7fbc7 AP_Arming: typo fix in magnetic model check 2024-11-19 08:17:45 +09:00
Eric Katzfey 7a6a62846d AP_RCProtocol: Remove unused array. This array was causing a Qurt compiler warning. 2024-11-19 09:01:43 +11:00
Peter Barker ed37ee821b AP_Common: move constructor to header to allow inlining 2024-11-18 20:58:22 +11:00
Peter Barker 4773571525 GCS_MAVLink: stop creating unnecessary Location object on stack
Location is implicitly zero.
2024-11-18 20:58:22 +11:00
bugobliterator 2feee53a37 AP_HAL_ChibiOS: disable GCS in CubeNode-ETH
for some reason enabling is breaking the PPPGW
2024-11-18 11:06:09 +11:00
Thomas Watson 4ffffa7af7 AP_TemperatureSensor: optimize DroneCAN subscription process
* remove unnecessary nullptr check, these are always called from an
  initialized AP_DroneCAN so if it's nullptr something has gone
  horrifically wrong

* pass in driver index instead of repeatedly calling function to get it

* simplify error handling; knowing exactly which allocation failed is not
  super helpful and one failing likely means subsequent ones will too,
  as it can only fail due to being out of memory
2024-11-18 10:30:29 +11:00
Thomas Watson fbeab64be2 AP_RangeFinder: optimize DroneCAN subscription process
* remove unnecessary nullptr check, these are always called from an
  initialized AP_DroneCAN so if it's nullptr something has gone
  horrifically wrong

* pass in driver index instead of repeatedly calling function to get it

* simplify error handling; knowing exactly which allocation failed is not
  super helpful and one failing likely means subsequent ones will too,
  as it can only fail due to being out of memory
2024-11-18 10:30:29 +11:00
Thomas Watson e82e6629d2 AP_RPM: optimize DroneCAN subscription process
* remove unnecessary nullptr check, these are always called from an
  initialized AP_DroneCAN so if it's nullptr something has gone
  horrifically wrong

* pass in driver index instead of repeatedly calling function to get it

* simplify error handling; knowing exactly which allocation failed is not
  super helpful and one failing likely means subsequent ones will too,
  as it can only fail due to being out of memory
2024-11-18 10:30:29 +11:00
Thomas Watson 2f1a8d1ef4 AP_RCProtocol: optimize DroneCAN subscription process
* remove unnecessary nullptr check, these are always called from an
  initialized AP_DroneCAN so if it's nullptr something has gone
  horrifically wrong

* pass in driver index instead of repeatedly calling function to get it

* simplify error handling; knowing exactly which allocation failed is not
  super helpful and one failing likely means subsequent ones will too,
  as it can only fail due to being out of memory
2024-11-18 10:30:29 +11:00
Thomas Watson 453b83c159 AP_Proximity: optimize DroneCAN subscription process
* remove unnecessary nullptr check, these are always called from an
  initialized AP_DroneCAN so if it's nullptr something has gone
  horrifically wrong

* pass in driver index instead of repeatedly calling function to get it

* simplify error handling; knowing exactly which allocation failed is not
  super helpful and one failing likely means subsequent ones will too,
  as it can only fail due to being out of memory
2024-11-18 10:30:29 +11:00
Thomas Watson 1c08119dd9 AP_OpticalFlow: optimize DroneCAN subscription process
* remove unnecessary nullptr check, these are always called from an
  initialized AP_DroneCAN so if it's nullptr something has gone
  horrifically wrong

* pass in driver index instead of repeatedly calling function to get it

* simplify error handling; knowing exactly which allocation failed is not
  super helpful and one failing likely means subsequent ones will too,
  as it can only fail due to being out of memory
2024-11-18 10:30:29 +11:00
Thomas Watson 01c6765b6f AP_Mount: optimize DroneCAN subscription process
* remove unnecessary nullptr check, these are always called from an
  initialized AP_DroneCAN so if it's nullptr something has gone
  horrifically wrong

* pass in driver index instead of repeatedly calling function to get it

* simplify error handling; knowing exactly which allocation failed is not
  super helpful and one failing likely means subsequent ones will too,
  as it can only fail due to being out of memory
2024-11-18 10:30:29 +11:00
Thomas Watson 360e54f871 AP_GPS: optimize DroneCAN subscription process
* remove unnecessary nullptr check, these are always called from an
  initialized AP_DroneCAN so if it's nullptr something has gone
  horrifically wrong

* pass in driver index instead of repeatedly calling function to get it

* simplify error handling; knowing exactly which allocation failed is not
  super helpful and one failing likely means subsequent ones will too,
  as it can only fail due to being out of memory
2024-11-18 10:30:29 +11:00
Thomas Watson 8328368164 AP_EFI: optimize DroneCAN subscription process
* remove unnecessary nullptr check, these are always called from an
  initialized AP_DroneCAN so if it's nullptr something has gone
  horrifically wrong

* pass in driver index instead of repeatedly calling function to get it

* simplify error handling; knowing exactly which allocation failed is not
  super helpful and one failing likely means subsequent ones will too,
  as it can only fail due to being out of memory
2024-11-18 10:30:29 +11:00
Thomas Watson d86bab9c58 AP_Compass: optimize DroneCAN subscription process
* remove unnecessary nullptr check, these are always called from an
  initialized AP_DroneCAN so if it's nullptr something has gone
  horrifically wrong

* pass in driver index instead of repeatedly calling function to get it

* simplify error handling; knowing exactly which allocation failed is not
  super helpful and one failing likely means subsequent ones will too,
  as it can only fail due to being out of memory
2024-11-18 10:30:29 +11:00
Thomas Watson 9f7ed65bc0 AP_BattMonitor: optimize DroneCAN subscription process
* remove unnecessary nullptr check, these are always called from an
  initialized AP_DroneCAN so if it's nullptr something has gone
  horrifically wrong

* pass in driver index instead of repeatedly calling function to get it

* simplify error handling; knowing exactly which allocation failed is not
  super helpful and one failing likely means subsequent ones will too,
  as it can only fail due to being out of memory
2024-11-18 10:30:29 +11:00