Commit Graph

37372 Commits

Author SHA1 Message Date
Andrew Tridgell
cafc3fdd20 AC_Fence: remember manual disable of fence for min-alt
the automatic min-alt fence should not auto-enable based on altitude
if the fence has been manually disabled. This is needed to allow for a
manual landing by disabling the fence before descending
2024-12-12 15:13:40 +11:00
Andrew Tridgell
921dbae935 AC_Fence: removed _auto_enable_mask
the _auto_enable_mask was try to make AUX function overrides disable
the FENCE_AUTOENABLE functionality. This isn't the right bevaviour,
both the aux function and the auto-enable should be edge triggered,
with last function taking effect
2024-12-12 15:13:40 +11:00
Andrew Tridgell
d00a28b9b0 AC_Fence: removed _curr_alt from class
this is only ever set/checked within a function
2024-12-12 15:13:40 +11:00
Andrew Tridgell
5ea3f83e19 AC_Fence: fixed pre-arm check for polygon fences
for polygon fences we need to check if the vehicle has a position and
is inside the polygon
2024-12-12 15:13:40 +11:00
Andrew Tridgell
1dce0076e6 AC_Fence: prevent a fetch R/C switch from disabling FENCE_AUTOENABLE=3
we should only add fence types to the no auto-enable mask if the
enable actually changed that type of fence. This fixes the case where
the user has both FENCE_AUTOENABLE=3 and RCn_OPTION=11. The disable
triggered by the init of the aux function was preventing the fence
from auto-enabling
2024-12-12 15:13:40 +11:00
Andrew Tridgell
b7c536f8f1 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-12-11 14:09:48 +11:00
Andrew Tridgell
8fed0ba287 hwdef: removed QAUTOTUNE disable
now disabled by default
2024-12-11 14:09:48 +11:00
Michelle Rossouw
c3c7f4acbb AP_Quicktune: Added Quicktune
C++ version of lua script, with some enhancements
2024-12-11 14:09:48 +11:00
Michelle Rossouw
7dcad6c4f0 RC_Channel: Added Quicktune 2024-12-11 14:09:48 +11:00
Andrew Tridgell
04b8d36984 AP_MultiHeap: added simple unit test 2024-11-25 16:16:51 +11:00
Andrew Tridgell
634c3d4a90 AP_Scripting: use AP_MultiHeap 2024-11-25 16:16:51 +11:00
Andrew Tridgell
9efdc0dbef AP_MultiHeap: added library
this is a standalone (no-HAL based) implementation of MultiHeap
2024-11-25 16:16:51 +11:00
Andrew Tridgell
eeb1dab5cb AP_Common: removed old MultiHeap code 2024-11-25 16:16:51 +11:00
Andrew Tridgell
4a794b05d8 AP_HAL_SITL: removed heap APIs 2024-11-25 16:16:51 +11:00
Andrew Tridgell
cad53d748a AP_HAL_ESP32: removed heap APIs 2024-11-25 16:16:51 +11:00
Andrew Tridgell
919c0817f4 AP_HAL_ChibiOS: removed heap APIs 2024-11-25 16:16:51 +11:00
Andrew Tridgell
5413e73c8b AP_HAL: removed heap APIs
implement in AP_MultiHeap instead
2024-11-25 16:16:51 +11:00
Andrew Tridgell
ea17dde938 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-25 16:16:51 +11:00
Andrew Tridgell
ecd72cb915 AP_Scripting: added warning on heap expansion 2024-11-25 16:16:51 +11:00
Andrew Tridgell
2dfd1eacda AP_HAL_SITL: implement new scripting heap APIs 2024-11-25 16:16:51 +11:00
Andrew Tridgell
70ce5c5ce5 AP_HAL_QURT: implement new scripting heap APIs 2024-11-25 16:16:51 +11:00
Andrew Tridgell
e4bed1793b AP_HAL_Linux: implement new scripting heap APIs 2024-11-25 16:16:51 +11:00
Andrew Tridgell
e4f32592e5 AP_HAL_ESP32: implement new scripting heap APIs 2024-11-25 16:16:51 +11:00
Andrew Tridgell
528b13ff54 AP_HAL_ChibiOS: implement new scripting heap APIs 2024-11-25 16:16:51 +11:00
Andrew Tridgell
9f714dc23e 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-25 16:16:51 +11:00
Andrew Tridgell
5311763deb AP_HAL: rework heap allocation functions
make functions for lua heap allocation suitable for use in all
non-ChibiOS HALs
2024-11-25 16:16:51 +11:00
Andrew Tridgell
169e0f251e AP_Scripting: added ability to expand heap at runtime if armed 2024-11-25 16:16:51 +11:00
Andrew Tridgell
75bdc3c224 AP_Scripting: cleanup debug option handling 2024-11-25 16:16:51 +11:00
Richard Allen
fd67515944 AP_HAL: support port SITL to OpenBSD 2024-11-14 09:02:45 +11:00
Richard Allen
1ff0f1fe24 AP_Filesystem: support port SITL to OpenBSD 2024-11-14 09:02:45 +11:00
Richard Allen
c509f00bba AP_HAL_SITL: support port SITL to OpenBSD 2024-11-14 09:02:45 +11:00
Andrew Tridgell
f1565ee355 AP_Scripting: added FlexDebug example 2024-11-14 09:02:45 +11:00
Andrew Tridgell
25631291d7 AP_DroneCAN: support FlexDebug message 2024-11-14 09:02:45 +11:00
Andrew Tridgell
bfe567cd51 AP_Scripting: added support for FlexDebug message
allows lua to retrieve vendor specific data from CAN nodes
2024-11-14 09:02:45 +11:00
James O'Shannessy
581b408a38 AP_BattMonitor: Fix documentation generating incorrect parameter name
Without this, parameter names are generated as eg. 'BATT2__ARM_VOLT'
2024-11-14 09:02:45 +11:00
Frank0587
46f1f98a77 AP_RCTelemetry: Fix Baro and Vario values
Add the missing byte swapping for 16bit values
2024-11-14 09:02:45 +11:00
Dr.-Ing. Amilcar do Carmo Lucas
b1aa82b780 AP_Scheduler: Use a range of values here because it is valid to do so.
Makes it easier for GUI applications to display this better and valudate the range
2024-11-14 09:02:45 +11:00
Dr.-Ing. Amilcar do Carmo Lucas
19649f292b AP_Compass: Also mark Z axis as calibrations, just like the XY 2024-11-14 09:02:45 +11:00
Peter Barker
92ebd9e85e AP_NavEKF: add enumeration to document EKF SolutionStatus
this isn't used for anything but documenting the solution status field, which can be used in the Wiki and in various log analysis tools
2024-11-14 09:02:45 +11:00
Peter Barker
9a539703fd AP_NavEKF3: add enumeration to document EKF SolutionStatus
this isn't used for anything but documenting the solution status field, which can be used in the Wiki and in various log analysis tools
2024-11-14 09:02:45 +11:00
Peter Barker
f5615c3021 AP_Math: move zeroing to header, use memset, reuse in identity
this method is in ITCM memory on STM32 - which makes small optimisations worthwhile
2024-11-14 09:02:45 +11:00
Peter Barker
893583f603 AP_HAL_ChibiOS: exclude chprintf from fastramfunc
on H730 we are overflowing the ITCM area for SPRacingH7RF and other boards are not far behind.

Step away from the edge by removing this function which should never be in a fast path
2024-11-14 09:02:45 +11:00
Henry Wurzburg
2922a433f2 AP_HAL_ChibiOS:Mugin MUPilot 2024-11-14 09:02:45 +11:00
Thomas Watson
ecd03b59a9 AP_Scripting: ESC_slew_rate: fix lua warning
Docs say that logger must be called with `:`.
2024-11-14 09:02:45 +11:00
Stephen Dade
44b3016496 APM_Control: Correct use of deceleration 2024-11-14 09:02:45 +11:00
Ryan Friedman
b2a63ff2b9 AP_DDS: Set GPS instance ID in the GPS frame ID
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2024-11-14 09:02:45 +11:00
ARg
a6f00a34b1 AP_HAL_ESP32: RCOutput ported to new mcpwm driver 2024-10-27 21:19:29 +11:00
Bayu Laksono
d27742983f AP_HAL_ESP32: Switch WIFI task from FASTCPU to SLOWCPU
Switching WIFI task from FASTCPU to SLOWCPU seems to bring more balance between CPUs and thus increasing connection reliabiiity
2024-10-27 21:16:28 +11:00
Ryan Friedman
380e9aa36b AP_DDS: Wrap services in defines
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2024-10-27 11:59:08 +11:00
ZeroOne-Aero
b2b45477af hwdef: update ZeroOne X6 documentation 2024-10-27 11:42:49 +11:00
Eric Katzfey
b4df082618 AP_RCProtocol: get rid of compiler warning from clang about unknown warning group -Wswitch-unreachable 2024-10-26 21:05:33 +11:00
Andrew Tridgell
f161d5745e HAL_QURT: avoid sudo in make_package.sh
sudo is not allowed on build server
2024-10-26 08:26:42 +09:00
bugobliterator
9dca511e7e AP_HAL_ChibiOS: do not run through SPI_RX and TX as well
we use MISO and MOSI name for SPI
2024-10-25 18:16:00 +11:00
Bob Long
61593e2b36 SITL: FlightAxis: add option to silence FPS 2024-10-25 18:14:22 +11:00
Bob Long
49bbb2c923 SITL: FlightAxis: add position reset option 2024-10-25 18:14:22 +11:00
Bob Long
9fdd0a4e84 SITL: FlightAxis: add options bitmask parameter 2024-10-25 18:14:22 +11:00
muramura
5e47fa1353 AP_AHRS: Change the order in which you make judgments 2024-10-25 18:13:57 +11:00
jamming
e91cab3349 hwdef: Add icm42688 support for KakuteH7Mini 2024-10-25 18:08:22 +11:00
Eric Katzfey
7d3740f79f AP_HAL_QURT: Add Debian packaging script and support files 2024-10-25 12:36:57 +09:00
Ryan Friedman
72f0ecc18f AP_DDS: Support compile-time configurable rates for each publisher
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2024-10-24 20:58:24 +11:00
Andrew Tridgell
92693e0237 AP_ExternalAHRS: support backends with get_variances()
re-implement send_status_report in terms of get_variances and support
EKF failsafe with ExternalAHRS
2024-10-23 06:46:59 +09:00
Andrew Tridgell
04d18f1efb AP_AHRS: support variances from External_AHRS 2024-10-23 06:46:59 +09:00
bugobliterator
b69087ae61 AP_HAL_ChibiOS:CubeNode: undefine IMU for CubeNode_ETH 2024-10-23 06:46:22 +09:00
bugobliterator
9381404a9f AP_InertialSensor: fix continuing after ins init fail in AP_Periph 2024-10-23 06:46:22 +09:00
bugobliterator
76d6a88b7b AP_HAL_ChibiOS: properly enable periph IMU on CubeOrange-periph and heavy 2024-10-23 06:46:22 +09:00
bugobliterator
2cc7277692 AP_Scripting: fix build with both GCS and Scripting enabled 2024-10-23 06:46:22 +09:00
bugobliterator
830de73e58 AP_HAL_ChibiOS: add support for raw imu publishing in AP_Periph 2024-10-23 06:46:22 +09:00
bugobliterator
87ae3bccec AP_HAL_ChibiOS: change name CubePilot-CANMod and -PPPGW to CubeNode 2024-10-23 06:46:22 +09:00
Andrew Tridgell
145cc4bb26 AP_Scripting: example to test ESC slew limit
can be used to calculate equivalent cutoff frequency
2024-10-17 11:16:18 +11:00
Hayden Donald
0ddaae5cb6 AP_Scripting: Add mcu_voltage
Add analog:mcu_voltage() to get a reading of the mcu voltage
2024-10-16 19:04:16 +11:00
ZeroOne-Aero
81768b26ff hwdef: added ZeroOneX6 picture
upload ZeroOneX6 picture
2024-10-15 15:04:49 +11:00
Andrew Tridgell
b34417f683 GCS_MAVLink: raise number of MAVLink ports
with CAN serial ports and network serial ports sometimes need more
2024-10-15 13:13:54 +11:00
Andrew Tridgell
996b36531b AP_DroneCAN: force DroneCAN zero throttle when disarmed
if a user has set CAN_D1_UC_ESC_RV which is the mask of ESCs that are
reversible we were sending -8191 when disarmed, which is full reverse
throttle. This is the correct output when armed as it is treated as
full reverse at "PWM" 1000 and stopped at 1500, but when disarmed we
should always send zero or the user may find all ESCs spin up at full
reverse when disarmed if the ESC supports reverse throttle (which is
rare in DroneCAN ESCs)
2024-10-15 11:51:10 +11:00
Andrew Tridgell
8053c40993 AP_Logger: mark CSRV non-streaming
the rate of CAN servo messages is controlled by the servo. Having this
streaming means we can miss logging when there is more than one CAN
servo.

In the future we will move to holding the CAN servo data in a data
structure like we do for ESCs, and then log at a regular rate, but for
now this fixes the issue
2024-10-15 11:31:36 +11:00
Tom Pittenger
3ec92731d4 AP_Temperature: fix MCP9600 i2c address and TEMP9 index 2024-10-15 11:30:30 +11:00
Andrew Tridgell
02fd1f3561 AP_Scripting: use cached in AHRS_switch example
and use EKF2/EKF3, more likely to be useful
2024-10-15 10:48:11 +11:00
Peter Barker
e15f72ce58 AP_DAL: document more replay messages 2024-10-15 10:46:45 +11:00
Peter Barker
d8b109683a AP_NavEKF3: initialise variables as part of declaration 2024-10-15 10:45:59 +11:00
Thomas Watson
f2a9075d43 AP_PiccoloCAN: use 32 bit microsecond timeouts for write_frame
For consistency with other parts of the code.

Note that now different frames in a group could have slightly different
deadlines.
2024-10-15 10:24:25 +11:00
Thomas Watson
1354490621 AP_PiccoloCAN: use 32 bit microsecond timeouts for read_frame
For consistency with other parts of the code.

Makes obvious the curious fact that the read_frame timeout is always 0.
2024-10-15 10:24:25 +11:00
Thomas Watson
55c5cb10d0 AP_PiccoloCAN: use 32 bit microsecond timeouts for connection funcs
For consistency with other parts of the code.
2024-10-15 10:24:25 +11:00
Iampete1
baf41ae92e AP_Volz_Protocol: rate limit logs to 5Hz 2024-10-15 10:13:06 +11:00
Iampete1
441dba493f AP_Volz_Protocol: add support for telem and logging 2024-10-15 10:13:06 +11:00
bugobliterator
2524583dda AP_HAL_ChibiOS: increase the number of memory regions for crashdump
also checks num region overruns for bss and heap
2024-10-14 07:21:22 +11:00
MattKear
20449e3c6a AC_Autorotation: Add RSC_Autorotation class 2024-10-11 09:54:26 +11:00
Gone4Dirt
b96bb5dc08 AC_Autorotation: Remove bailout case 2024-10-11 09:54:26 +11:00
Gone4Dirt
075ce596d2 Copter: Heli: simplify autorotation mode change and support RSC autorotation state 2024-10-11 09:54:26 +11:00
Gone4Dirt
431cc25dca AP_MotorsHeli: Consolidate all autorotation state into its own class within RSC 2024-10-11 09:54:26 +11:00
Tiziano Fiorenzani
969979cd17 AP_DDS: battery topic to report all the available batteries 2024-10-11 09:53:51 +11:00
Peter Barker
a8ce43426b AP_TemperatureSensor: compile all of TemperatureSensor in on boards with >2048 flash
this includes SITL but should also include CubeRed etc
2024-10-11 09:52:03 +11:00
Thomas Watson
9a497fe716 AP_KDECAN: standardize on 32 bit microsecond CAN timeouts
For consistency with other parts of the code. No compiler output change.
2024-10-11 09:51:43 +11:00
Alexis Guijarro
43b8900bec hwdef: Removed duplication for AP_STATS_ENABLED 2024-10-11 09:51:27 +11:00
Peter Barker
b36f539c7c SITL: avoid floating point exception around rangefinder distance
projecting onto an infinite plane can cause exceptionally long rangefinder distances - for now jsut cap the distance that the simulated rangefinder can return to avoid floating point exceptions.

the FPE is caused in the Plane FlyEachFrame autotest when flying quadplane-copter_tailsitter - which ends up with a rangefinder at yaw-minus-180.
2024-10-10 20:44:04 +11:00
Andy Piper
cb111504e2 AP_InertialSensor: cope with negative ESC frequencies in notch updates 2024-10-09 18:31:57 +11:00
Tiziano Fiorenzani
57157d470f AP_DDS: Airspeed topic 2024-10-09 10:00:32 +11:00
Peter Barker
dec10a1a58 hwdef: GEPRCF745BTHD: remove parachute and bl-flashing support (flash overflow) 2024-10-09 08:24:12 +11:00
Henry Wurzburg
b71ed41c32 AP_BLHeli:correct RVMASK metadata 2024-10-08 20:58:16 +11:00
Peter Barker
8ba2dae936 AP_NavEKF2: clarify wind direction descriptions 2024-10-08 20:57:36 +11:00
Peter Barker
197d837b6c SITL: clarify wind direction descriptions 2024-10-08 20:57:36 +11:00
Peter Barker
8edcb4b8d3 AP_NavEKF3: clarify wind direction descriptions 2024-10-08 20:57:36 +11:00