Commit Graph

37645 Commits

Author SHA1 Message Date
Peter Barker
4a52e86131 AP_RangeFinder: tidy defines around bebop rangefinder inclusion 2024-12-23 18:03:55 -06:00
Michael du Breuil
5b961891ee AP_BattMonitor: Handle allocating too many analog channels
If you over allocate the number of analog channels this results in a
crash. It's easy to trigger this if you have voltage only monitors as we
still eat up a current input channel, regarless of if we use it. There
are only 16 channels at this time on ChibiOS, so if you have 9 voltage
only battery monitors you are out.

This PR improves that situation by only allocating channels when needed,
and in the case where we run out we now set a ConfigError, which on a
flight controller is much more friendly then a instant segfault the
moment we read a battery monitor. NOTE: on AP_Periph this takes the
node off the bus, rather then just sitting in the bootloader. This was
consideted acceptable as the current behaviour was to segfault and then
sit in the bootloader, unless you made new firmware that limited the
number of channels allocated it wasn't possible to recover in this
situation anyways.
2024-12-24 09:01:28 +09:00
Thomas Watson
54e3d74b51 AP_HAL_ESP32: drop spurious HAL_PARAM_DEFAULTS_PATH definition
It's already conditionally defined to nullptr in the top-level AP_HAL.
2024-12-24 10:50:21 +11:00
Thomas Watson
5de8da421d AP_HAL_ESP32: drop never-used defaults.parm 2024-12-24 10:50:21 +11:00
Peter Barker
6e62ff7ed2 hwdef: reduce number of RCOU channels skyviper has 2024-12-24 08:07:10 +09:00
Peter Barker
23872df5cd hwdef: remove ADSB entirely from SkyViper
drivers were still around
2024-12-24 08:07:10 +09:00
Peter Barker
cd95acbb6a hwdef: remove payload place from SkyViper-v2450 2024-12-24 08:07:10 +09:00
Peter Barker
56969e42f5 AP_HAL_ChibiOS: disable SBus output on SkyViper-v2450 2024-12-24 08:07:10 +09:00
Andrew Tridgell
613b835d67 AP_Scripting: added QUIK_ANGLE_MAX for lua quicktune
this brings the same protection to the lua script as was added for the
C++ implementation
2024-12-22 07:09:31 +11:00
Andrew Tridgell
9503744e6a AP_Scripting: added get_att_error_angle_deg binding for AC_AttitudeControl 2024-12-22 07:09:31 +11:00
Peter Barker
cb6907992b AP_Proximity: prevent buffer overflow in LD06 driver
We're using a value off the wire before it has been validated.  That value is used to limit indexing into a buffer, and that buffer isn't big enough to handle all possible "bad" values that index could take on.  Note that "read" here returns int16_t....
2024-12-19 22:58:29 +11:00
Eric Katzfey
5c9003dd02 AP_Volz_Protocol: Moved member variable definition within proper #define block to prevent unused variable warning 2024-12-18 21:50:27 +11:00
bugobliterator
42e2e23464 AP_Networking: fix memory error generated by CAN mcast driver 2024-12-18 21:48:54 +11:00
Andreas Gising
300e5ccedd AP_Scripting: add glide-into-wind example without RC override 2024-12-18 19:35:34 +11:00
Peter Barker
f5d81abb42 AP_AHRS: return EAS from get_unconstrained_airspeed_EAS
Co-authored-by: luweiagi <luweiagi@163.com>
2024-12-18 19:10:15 +11:00
Peter Barker
46b9f06011 AP_AHRS: use TAS in DCM drift correction code
Co-authored-by: luweiagi <luweiagi@163.com>
2024-12-18 19:10:15 +11:00
Siddharth Purohit
92241daef1 AP_InertialSensor: do not read FIFO faster than requested rate for ICM45686 2024-12-18 19:05:20 +11:00
Randy Mackay
523b34fbb9 AP_Scripting: add follow-target-send applet 2024-12-18 18:28:12 +11:00
Randy Mackay
5c7cfa13cf AP_Scripting: add FOLLOW_TARGET msg definition 2024-12-18 18:28:12 +11:00
Randy Mackay
56cb20ac50 AP_Scripting: add get_vel_target poscontrol binding 2024-12-18 18:28:12 +11:00
Randy Mackay
74c702674b AC_PosControl: add get_vel_target and get_accel_target 2024-12-18 18:28:12 +11:00
Bob Long
dee88b4ecb SITL: default SIM_ENGINE_MUL to 0
This makes SIM_ENGINE_FAIL work a little more intuitively, since it is
usually used to simulate a complete failure.

Also, drive-by fix of the SIM_ENGINE_MUL documentation.
2024-12-18 18:06:50 +11:00
Bob Long
58c3854325 SITL: make SIM_ENGINE_FAIL a mask
The param docs already claimed it was one.
2024-12-18 18:06:50 +11:00
Peter Barker
84440108e3 AP_AHRS: rename DCM members to clarify EAS vs TAS 2024-12-17 20:17:48 +11:00
Peter Barker
33a788ebb5 GCS_MAVLink: move sending of WATER_DEPTH into Rover code
only compiled in on Rover at the moment.

need to add an additional Rover-specific check for frame type, so move this code into Rover for now.
2024-12-17 20:17:19 +11:00
Peter Barker
6e49333a40 AP_HAL_ChibiOS: do not build QuickTune on peripherals
kills heavy peripherals

../../libraries/AP_Quicktune/AP_Quicktune.cpp: In member function 'void AP_Quicktune::update(bool)':
../../libraries/AP_Quicktune/AP_Quicktune.cpp:177:32: error: 'vehicle' is not a member of 'AP'
  177 |     const auto &vehicle = *AP::vehicle();
      |                                ^~~~~~~
compilation terminated due to -Wfatal-errors.

[ 688/1225] Compiling libraries/AP_TemperatureSensor/AP_TemperatureSensor_TSYS03.cpp
Waf: Leaving directory `/home/pbarker/rc/ardupilot/build/CubeOrange-periph-heavy'
2024-12-17 20:16:30 +11:00
Peter Barker
439c85e793 AP_Airspeed: correct compilation when AP_AIRSPEED_AUTO_CAL_ENABLE is false
CubeNode was trying to check a parameter which doesn't exist

../../libraries/AP_Airspeed/Airspeed_Calibration.cpp: In member function 'void AP_Airspeed::send_airspeed_calibration(const Vector3f&)':
../../libraries/AP_Airspeed/Airspeed_Calibration.cpp:179:23: error: 'class AP_Airspeed_Params' has no member named 'autocal'
  179 |         if (!param[i].autocal && !calibration_enabled) {
      |                       ^~~~~~~
compilation terminated due to -Wfatal-errors.
2024-12-17 11:32:55 +11:00
Andy Piper
7a16bf1987 AP_HAL_ChibiOS: ICM42688 for OrqaF405Pro 2024-12-17 11:21:54 +11:00
Peter Barker
f19eddad74 AP_NavEKF3: apply -O2 to AP_NavEKFx.h
the core.h file adjusts the optimisation level; use it when including the AP_NavEKFx.h header file
2024-12-17 11:18:54 +11:00
Peter Barker
c6ec6cb428 AP_NavEKF2: apply -O2 to AP_NavEKFx.h
the core.h file adjusts the optimisation level; use it when including the AP_NavEKFx.h header file
2024-12-17 11:18:54 +11:00
Peter Barker
52291b622a AP_Generator: apply -Os to all cpp files 2024-12-17 11:11:27 +11:00
Henry Wurzburg
85258153ac AP_BattMonitor: update FS actions metadata with DO_RETURN_PATH_START 2024-12-17 09:34:49 +11:00
Peter Barker
ab4614dd98 AP_HAL_ESP32: stop making python python3
this isn't something we should be doing to people's environments
2024-12-17 09:19:20 +11:00
Peter Barker
05e5d2e6bb AP_SerialManager: move serial port init of Volz protocol into Volz library 2024-12-17 09:14:08 +11:00
Peter Barker
4e0bc79002 AP_Volz_Protocol: move serial port init of Volz protocol into Volz library 2024-12-17 09:14:08 +11:00
Peter Barker
061097ac31 AP_SerialManager: add a method to set the default baud
this allows a library to change what the GCS will see in the parameter for a serial port's baud rate.
2024-12-17 09:14:08 +11:00
Peter Barker
aec7cc24d1 AP_Mount: rearrange methods and variables per PR review 2024-12-16 19:16:25 +09:00
Peter Barker
0b8ad6f1d9 AP_Mount: privatise various fields and methods
We are hoping to pull more target calculations into the frontend.

Having these non-private threatens for calculations to move into the separate backends instead, so privatise them
2024-12-16 19:16:25 +09:00
James O'Shannessy
4bc6115f1a hwdef: Update scripts to parse CSV files properly
fails because of iterator not returning strings and 'dict' object has no attribute 'iterkeys'. Fixed so both scripts run.
2024-12-16 19:23:58 +11:00
James O'Shannessy
61ca071ba6 AP_HAL_ChibiOS: Add STM32F413xx module
Generated the STM32F413xx script from reference manuals and datasheets
Added changes for supporting STM32F413 to mcuconf
2024-12-16 19:23:58 +11:00
Eric Katzfey
99bfc32038 AP_HAL_QURT: Add support for the ModalAI IO board to support PWM ESCs 2024-12-16 13:03:50 +11:00
Rhys Mainwaring
ee7376afb1 SITL: follow standard pattern for including ENABLED guards
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-12-15 11:32:36 -06:00
Rhys Mainwaring
5b935a3838 AP_HAL_ESP32: update cmake minimum version
- The ESP32 API guide states the cmake version must be 3.16 or greater.

Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-12-15 08:55:04 -06:00
Bob Long
8229174a76 AP_VisualOdom: fix singleton panic message 2024-12-15 23:38:24 +11:00
Bob Long
a598045fd0 AP_AdvancedFailsafe: fix singleton panic message 2024-12-15 23:38:24 +11:00
Tom Pittenger
a48ff8431b AP_ADSB: add option to force Mode3AC Only 2024-12-14 22:51:11 -08:00
Tom Pittenger
137915ab46 AP_ADSB: refactor IDENT and add gcs_sendtext feedback 2024-12-14 22:50:19 -08:00
Tom Pittenger
35f563d538 AP_ADSB: refactor a table 2024-12-14 22:49:31 -08:00
Peter Barker
4554dd28d3 AP_DroneCAN: document CANS (Can Bus Statistics) log message 2024-12-15 15:17:55 +11:00
Eric Katzfey
7c1cc26509 GCS_MAVLink: Remove pragma to disable compiler warning and instead cast enum to int to fix the code. 2024-12-15 15:16:21 +11:00