Commit Graph

37613 Commits

Author SHA1 Message Date
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
Thomas Watson
def199e61f AP_Baro: 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
cd1118acb4 AP_Airspeed: 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
5874337df7 AP_DroneCAN: 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
2dd98e60ea AP_Mount: Xacti: drop unused subscription status variable 2024-11-18 10:30:29 +11:00
Thomas Watson
378fc63d75 AP_DroneCAN: DNAServer: drop declaration of nonexistent func definition 2024-11-18 10:30:29 +11:00
Eric Katzfey
d126c11329 AP_HAL_QURT: Move DSP to Apps Proc link message sequence checking into UART driver so it can be per link. 2024-11-18 09:06:15 +11:00
Peter Barker
ee09497b64 AP_HAL_ChibiOS: correct logging of MAV_POWER_STATUS_CHANGED
need to exclude the changed flag from the comparison!
2024-11-18 08:34:37 +11:00
Peter Barker
355c499a24 GCS_MAVLink: stop compiling old rallypoint protocol in by default
We're gradually removing support for this protocol.

Still available on the custom build server
2024-11-18 08:34:08 +11:00
Peter Barker
a65b9ad831 AC_Fence: stop compiling old fencepoint protocol in by default
We're gradually removing support for this protocol.

Still available on the custom build server
2024-11-18 08:34:08 +11:00
Ryan Friedman
98f3f59fb6 AP_ExternalControl: arm through external control
* Prepare for external control enabled flag gating ability to arm in DDS

Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2024-11-17 21:05:59 +11:00
Ryan Friedman
489e8473a2 AP_DDS: arm through external control
* Prepare for external control enabled flag gating ability to arm in DDS

Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2024-11-17 21:05:59 +11:00
bugobliterator
0953c9dda3 AP_HAL_ChibiOS: CubeRedPrimary: update config for icm45686 2024-11-17 20:39:34 +11:00
Eric Katzfey
7f4a20981a AP_Filesystem: Added conditional compiling to errno declarations. QURT HAL already has this in errno.h. 2024-11-17 20:38:25 +11:00
Thomas Watson
7ca558f625 AP_DroneCAN: use 32 bit timeout for write_aux_frame
Saves a handful of bytes. 71 minutes ought to be enough for anybody!
2024-11-17 10:38:12 +11:00
Thomas Watson
3dd8aa5304 AP_CANManager: use 32 bit timeout for write_aux_frame
Saves a handful of bytes. 71 minutes ought to be enough for anybody!
2024-11-17 10:38:12 +11:00
Thomas Watson
a4f6853a7b AP_CANManager: use 32 bit timeout for write_frame
Saves a few bytes. 71 minutes ought to be enough for anybody!
2024-11-17 10:38:12 +11:00
Eric Katzfey
4d75b44775 AP_GPS: Remove unused private member to get rid of compiler warning in Qurt build 2024-11-16 19:20:11 +11:00
Peter Barker
4c72ca6ddc AP_TECS: make _EAS a local variable
not used outside this one function

Co-authored-by: Michelle Rossouw <michelleros128@gmail.com>
2024-11-16 08:50:56 +11:00
Tom Pittenger
2115ad9c97 AP_Rely: allow RELAYn_DEFAULT values for DroneCAN Periphs 2024-11-15 10:57:31 -08:00
Eric Katzfey
1e99226fd9 AP_HAL_QURT: Fix the SPI transfer special case where a send buffer is passed in even though it is a read transaction. 2024-11-15 10:34:48 +11:00
Andy Piper
f07df393be AP_HAL_ChibiOS: support BMP280 on FoxeerF405v2 2024-11-14 20:10:22 +11:00
Tiziano Fiorenzani
86f216703d AP_DDS: status topic to report RC failsafe with callback function 2024-11-14 16:47:41 +11:00
Ryan Friedman
81d1945347 AP_DDS: Recommend run_astyle.py
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2024-11-14 09:02:21 +11:00
Andrew Tridgell
b1acd6295b HAL_ChibiOS: cleanup cube IMUs and compasses
don't probe for old sensor set
2024-11-14 09:01:41 +11:00
Iampete1
26152416ab GCS_MAVLink: add support for AVAILABLE_MODES msg 2024-11-13 20:11:50 +11:00
Peter Barker
88a80993dc RC_Channel: remove unused method get_channel_pos 2024-11-13 20:08:51 +11:00
Peter Barker
89936bab3d SRV_Channel: make SRV_Channels::cork non-static
for symmetry with the push function
2024-11-13 19:47:49 +11:00
Peter Barker
7eb672984e AR_Motors: make SRV_Channels::cork non-static
for symmetry with the push function
2024-11-13 19:47:49 +11:00
Peter Barker
d204f22fe0 AP_Motors: create and use a singleton for SRV_Channels 2024-11-13 19:47:49 +11:00
Peter Barker
a0eef1039c SRV_Channel: create and use a singleton for SRV_Channels
avoid creation of static pointers to objects held within SRV_Channels
2024-11-13 19:47:49 +11:00
Peter Barker
c1f04b507e AR_Motors: create and use a singleton for SRV_Channels
avoid creation of static pointers to objects held within SRV_Channels
2024-11-13 19:47:49 +11:00
Peter Barker
f60d059618 AP_Vehicle: create and use a singleton for SRV_Channels
avoid creation of static pointers to objects held within SRV_Channels
2024-11-13 19:47:49 +11:00
Andy Piper
02f25e81f8 AP_AHRS: correct get_accel() to use primary accel rather than first usable for scripting 2024-11-13 19:44:17 +11:00
Peter Barker
866e00f143 GCS_MAVLink: remove handling of HIL_GPS
... per deprecation/removal schedule
2024-11-13 19:41:00 +11:00
Peter Barker
f38668bd6a AP_GPS: remove handling of HIL_GPS
... per deprecation/removal schedule
2024-11-13 19:41:00 +11:00
Peter Barker
20fa2b0741 AP_GPS: don't compile support for sending rtk messages if no backend supports it 2024-11-13 19:40:19 +11:00
Peter Barker
d4e15b1ae7 GCS_MAVLink: add specific defines for sending of GPS mavlink messages 2024-11-13 19:40:19 +11:00
Peter Barker
199074ce34 AP_GPS: add specific defines for sending of GPS mavlink messages 2024-11-13 19:40:19 +11:00
George Zogopoulos
db6a52581e AP_Vehicle: Added parameter TKOFF_THR_IDLE 2024-11-13 19:32:00 +11:00
Patrick Menschel
9f29606d1c AP_Tramp: Fix _configuration_finished indication
The flag _configuration_finished in AP_VideoTX
is not set by AP_Tramp.
Therefore OSD item VTX_PWR blinks forever.
2024-11-13 07:50:05 +11:00
Randy Mackay
3bbcd8b0a3 AP_Scripting: copter-slung-payload minor format fix 2024-11-13 06:47:59 +11:00
Rhys Mainwaring
2bd4e15f76 AP_DDS: use memset to initialise variable size array
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-11-13 06:47:19 +11:00
Rhys Mainwaring
e14045898d AP_DDS: move closing #endif for status publisher
- Must be before the status_ok check.

Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-11-13 06:42:25 +11:00
Peter Barker
43970c0c7a AP_HAL_Linux: re-order initialiser lines so -Werror=reorder will work 2024-11-13 06:40:37 +11:00
Peter Barker
cca1edb78d AP_HAL: re-order initialiser lines so -Werror=reorder will work
AP_HAL: correct compilation for sim-on-hardware with -werror=reorder
2024-11-13 06:40:37 +11:00
Peter Barker
35f2dce575 AP_HAL_ESP32: re-order initialiser lines so -Werror=reorder will work 2024-11-13 06:40:37 +11:00
Jacob Dahl
8413ab2bf2 AP_InertialSensor: added IIM42653 support 2024-11-13 06:39:29 +11:00
zhou
3bc0207f22 AP_Mount: topotek: Change the type of gimbal angle acquisition
... also convert the lowercase characters in the command to uppercase
2024-11-12 16:56:05 +09:00
Peter Barker
8085c44840 AP_HAL_SITL: remove redundant gps state
shadows stuff in base class
2024-11-12 14:16:01 +11:00
Peter Barker
3716f5513d AP_HAL_SITL: process inbound data in outqueue-length delay loop
this is the loop which ensures the amount of data sent to the mavlink client (usually Python) is limited - if we don't do this then we lose vast amounts of data when running at large speedups.

By attempting to process inbound data we may realise that the TCP connection has been dropped, and in that case we will start to listen for another connection.

This allows you to terminate the sim_vehicle.py MAVProxy and have it automagically restart (when running under GDB).  This is very useful for testing MAVProxy patches with SITL; it's a different workflow to opening an output and connecting a new version of MAVProxy to that outout.
2024-11-12 13:54:08 +11:00
Peter Barker
cf27ba09d0 AP_IOMCU: use RC_Channel to populate IOMCU mappings 2024-11-12 13:10:14 +11:00
Peter Barker
99e314f49a AP_Mount: tidy header includes
our pattern is to include the config file and then use the relevant define, with nothing in between
2024-11-12 13:02:43 +11:00
Peter Barker
25a6d579eb AP_OpticalFlow: tidy defaulting of Bebop OpticalFlow sensor type 2024-11-12 12:45:29 +11:00
Peter Barker
0c5741364e AP_HAL: tidy defaulting of Bebop OpticalFlow sensor type 2024-11-12 12:45:29 +11:00
Peter Barker
8b008a2a19 AP_OpticalFlow: tidy defaulting of OpticalFlow sensor type 2024-11-12 12:45:29 +11:00
Peter Barker
d7b207fd77 AP_HAL_ChibiOS: tidy defaulting of OpticalFlow sensor type 2024-11-12 12:45:29 +11:00
Eric Katzfey
281ea91ee5 ArduCopter: Update clang pragma to check for the version of clang that introduces the warning
AP_Arming: Update clang pragma to check for the version of clang that introduces the warning
2024-11-12 12:41:49 +11:00
Peter Barker
1e17278bda AP_NavEKF3: add an option_is_enabled method 2024-11-12 12:20:44 +11:00
Tiziano Fiorenzani
601d9ef430 AP_DDS: Vehicle status interface 2024-11-12 12:01:45 +11:00
paul.quillen
405401218d AP_DDS: Add set/get parameters service. 2024-11-12 11:56:15 +11:00
Andy Piper
c0ce5e5ed0 AP_InertialSensor: optimize Invensense v3 FIF read 2024-11-12 11:36:59 +11:00
Andy Piper
d76132ec63 AP_InertialSensor: ensure fifo reads use transfer() to optimize buffer allocation and copying 2024-11-12 11:36:59 +11:00
Peter Barker
7d426f4741 AP_Mission: do not use float functions on integers
pitch is int8_t, yaw is int16_t
2024-11-12 11:22:30 +11:00
Andy Piper
1f54cf39d5 AP_HAL_ChibiOS: FoxeerH743v2 2024-11-12 11:12:23 +11:00
Simon Hancock
67412c9997 AP_Logger: Add enums to VER message 2024-11-12 11:11:45 +11:00
Simon Hancock
df9c36fee3 AP_Vehicle: Add @LoggerEnum tags around APM_BUILD #defines 2024-11-12 11:11:45 +11:00
Simon Hancock
b7e3c8c71d AP_HAL: Add @LoggerEnum tags around BOARD/SUBTYPE #defines 2024-11-12 11:11:45 +11:00
Peter Barker
dcc04d685f AP_Mount: factor out update_mnt_target_from_rc_target from servo, use it elsewhere
this gives all backends the neutral-on-RC-failsafe behaviour
2024-11-12 11:01:21 +11:00
Hwurzburg
9dfcb487cf AP_Mount: add RC failsafe action 2024-11-12 11:01:21 +11:00
kfruson
f7aabed164 AP_Volz_Protocol: update logging format with integer change 2024-11-11 23:48:43 +00:00
kfruson
34b306e107 AP_Volz_Protocol: bugfix with scaling integer 2024-11-11 23:48:43 +00:00
Pradeep CK
cc1ebe6529 AP_BattMonitor : update metadata for fuellevel param ranges 2024-11-12 09:22:21 +11:00
Peter Barker
0d74bb1a76 SITL: correct MCP9600 simulation
- correctly fill data-ready register
 - adjust for different register configuration the driver shoves in
 - correct WHOAMI register length
 - correct 8-bit register reads in variable-length-register i2c simulation
2024-11-08 12:33:37 +11:00
Andrew Tridgell
0fa3086a93 HAL_QURT: added install script
copies so and frontend elf to vehicle
2024-11-08 12:02:45 +11:00
tompsontan
4ce133dd27 hwdef:fixed board AP-H743v2 CAN pin definition. 2024-11-08 11:23:35 +11:00
Ryan Friedman
bf3da4396b AP_Follow: use set_alt_m when possible
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2024-11-08 10:54:39 +11:00
SakuraRC_Yang
c709959f4a hwdef: SkySakura H743 fc Support
SkySakura H743 fc Support
2024-11-08 10:50:44 +11:00
muramura
10b2f17594 AP_DDS: Change the comparison of float value zero to IS_XXXX 2024-11-08 10:49:19 +11:00
Thomas Watson
dd270dac2e AP_Scripting: mount-djirs2: increase bus/mount setup flexibility
In particular allows the use of the gimbal using PROTOCOL2 attached to a
DroneCAN bus. ArduPilot 4.6 is recommended due to the timeout bug causing
message sends to fail regularly on 4.5.

Tested also that misconfiguring the CAN bus will result in the driver
failing to start, though the error message will be less specific.
2024-11-08 10:47:41 +11:00
Thomas Watson
1f0dff0178 AP_Scripting: mount-djirs2: filter out ignored packets
Allows using a smaller buffer and simplifying the script logic.
2024-11-08 10:47:41 +11:00
Thomas Watson
afcc722995 AP_Scripting: mount-djirs2: re-enable lua checks and fix issues 2024-11-08 10:47:41 +11:00
Peter Barker
cc6b3cec5d hwdef: use V-UAV in place of VIEWPRO for link text 2024-11-08 10:46:32 +11:00
Andy Piper
01fc0744dc AP_HAL_ChibiOS: TBS LUCID H7 2024-11-07 14:33:38 +00:00
Peter Barker
f0900bd119 AP_Camera: RunCam: get rpty channels directly using convenience functions 2024-11-06 18:40:38 +11:00
Peter Barker
70c277b759 AP_Logger: make logging_started const 2024-11-06 16:31:38 +09:00
Iampete1
2ba7516b0f AP_Scripting: applets: MissionSelector: add loaded print 2024-11-06 18:14:47 +11:00
Iampete1
d01ac70c16 AP_Scripting: Applets: MissionSelector: fix error on file open and checker errors 2024-11-06 18:14:47 +11:00
Peter Barker
96bc2f5e57 GCS_MAVLink: use set_alt_m 2024-11-06 18:12:48 +11:00
Peter Barker
0077066ffb AP_Common: Location: add set_alt_m
we have get_alt_m already, and there's a bunch of places that *100
2024-11-06 18:12:48 +11:00
Richard Allen
c0ee3b2216 AP_HAL: support port SITL to OpenBSD 2024-11-06 14:17:31 +11:00
Richard Allen
9696081a85 AP_Filesystem: support port SITL to OpenBSD 2024-11-06 14:17:31 +11:00
Richard Allen
bc9e135d6f AP_HAL_SITL: support port SITL to OpenBSD 2024-11-06 14:17:31 +11:00
Andrew Tridgell
7f04c82994 AP_Scripting: added FlexDebug example 2024-11-05 17:03:23 +09:00
Andrew Tridgell
03de099452 AP_DroneCAN: support FlexDebug message 2024-11-05 17:03:23 +09:00
Andrew Tridgell
349ebde101 AP_Scripting: added support for FlexDebug message
allows lua to retrieve vendor specific data from CAN nodes
2024-11-05 17:03:23 +09:00
James O'Shannessy
2892483ea1 AP_BattMonitor: Fix documentation generating incorrect parameter name
Without this, parameter names are generated as eg. 'BATT2__ARM_VOLT'
2024-11-05 10:05:01 +09:00
Frank0587
3aa2f51465 AP_RCTelemetry: Fix Baro and Vario values
Add the missing byte swapping for 16bit values
2024-11-05 09:36:51 +09:00
Dr.-Ing. Amilcar do Carmo Lucas
12b761c534 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-05 09:25:59 +09:00
Dr.-Ing. Amilcar do Carmo Lucas
6a59d3adae AP_Compass: Also mark Z axis as calibrations, just like the XY 2024-11-05 09:25:59 +09:00
Peter Barker
de0f3ddebe 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-05 08:59:42 +09:00
Peter Barker
44375f27e1 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-05 08:59:42 +09:00
Peter Barker
dc62483e0c 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-05 08:39:25 +09:00
Peter Barker
4e0930a09d 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-05 08:38:23 +09:00
Henry Wurzburg
1daa52478b AP_HAL_ChibiOS:Mugin MUPilot 2024-11-05 08:16:34 +09:00
Thomas Watson
195d3b78e6 AP_Scripting: ESC_slew_rate: fix lua warning
Docs say that logger must be called with `:`.
2024-11-04 15:34:19 +00:00
Stephen Dade
3764f377d8 APM_Control: Correct use of deceleration 2024-11-04 11:55:28 +09:00
Ryan Friedman
bd067f9615 AP_DDS: Set GPS instance ID in the GPS frame ID
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2024-11-01 11:11:41 +09:00
nicholas-inocencio
c270c392c4 AP_ADSB: Style fixes 2024-10-31 15:28:34 -07:00
nicholas-inocencio
7a6031c746 AP_ADSB: Bugfixes and improvements to ping200X integration
AP_ADSB: uAvionix Transponder Status V3

+ Current version of ping200X sends the v1 status message periodically and the v3 status message in response to the transponder control message, so ardupilot needs to handle both gracefully; version 1 and version 3 are very different in structure and naively assuming one version over another will cause errors.

AP_ADSB: Process additional xpdr status v3 fields

AP_ADSB: Send GCS xpdr status at least every 10s

AP_ADSB: Send ping200X estimated HPL

+ When AP sends the ping200X the GPS data GDL90 message, it needs to provide a valid HPL for the ping200X to report a valid NIC.

AP_ADSB: Don't send unsolicited transponder status

AP_ADSB: Better initialization of xpdr id/config

AP_ADSB: Better initialization of frontend status

AP_ADSB: Suggestions from review
2024-10-31 15:28:34 -07: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
Peter Barker
8487657137 AP_AHRS: DCM: log estimated wind 2024-10-08 20:57:36 +11:00
Peter Barker
56de7243f5 AP_AHRS: DCM: tidy variable creation 2024-10-08 20:57:25 +11:00
muramura
6c1a5bf3d0 AP_Logger: Align the order of definitions 2024-10-08 20:57:01 +11:00
Peter Barker
41753b43d7 AP_AHRS: DCM: remove unused variable 2024-10-08 11:10:26 +11:00
Peter Barker
3273f58851 AP_HAL: remove defines for boards which don't exist
we'll now get compilation failures if code is introduced depending on these...
2024-10-08 11:04:28 +11:00
Peter Barker
93174e3240 AP_HAL: avoid include of non-existant file
this file doesn't exist
2024-10-08 11:04:28 +11:00
olliw42
4616fec1be AP_SerialManager: RegisteredPort, add bytes_per_second/baudrate methods 2024-10-08 10:42:21 +11:00
Thomas Watson
e9e7eba799 AP_DroneCAN: properly convert timeout to deadline for aux frames
The timeout specified for auxiliary driver frames was passed to the
driver where a deadline was expected. The transmission was then started
after its "deadline", thereby causing it to be canceled and the data
lost if the frame could not be sent immediately.

Fix by converting the timeout to a deadline before passing to the
driver. The conversion is done in the Canard interface code as it
already does other conversions from timeouts to deadlines.
2024-10-08 10:35:41 +11:00
ARg
47d391fc6d AP_HAL_ESP32: ADC driver ported to new idf 5.x driver and debugged 2024-10-08 10:29:02 +11:00
Ryan Friedman
88c06e07d7 AP_DDS: Wrap all topics in ifdefs
* Give ability to enable/disable any topic in DDS through compile
  options

Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2024-10-08 10:18:38 +11:00
Nick Exton
77f1efac5e AP_Mission: Set DO_MOUNT_CONTROL.mode when converting command to MAVLink 2024-10-08 08:05:27 +09:00
bnsgeyer
e30b4bf090 AP_MotorsHeli: fix cooldown feature with new autorotation RSC library 2024-10-06 14:33:57 +11:00
Leonard Hall
4d116ceefe AR_PosControl: integrate PSC logging update
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2024-10-04 09:25:56 +09:00
Leonard Hall
399336f7ce AC_PID: AC_P_2D comment fix 2024-10-04 09:25:56 +09:00
Randy Mackay
73dfeac547 AP_Scripting: copter-slung-payload suppresses oscillation
Co-authored-by: Leonard Hall <leonardthall@gmail.com>
2024-10-04 09:25:56 +09:00
Randy Mackay
bff288d498 AP_Scripting: mavlink_msgs global-position-int and heartbeat 2024-10-04 09:25:56 +09:00
Randy Mackay
51ec6dfd73 AP_Scripting: add copter-posoffset example script
Co-authored-by: Leonard Hall <leonardthall@gmail.com>
2024-10-04 09:25:56 +09:00
Randy Mackay
0c81f111fb AP_Scripting: add set_posvelaccel_offset binding
Co-authored-by: Leonard Hall <leonardthall@gmail.com>
2024-10-04 09:25:56 +09:00
Leonard Hall
37a7635c66 AC_Loiter: updates to offset handling 2024-10-04 09:25:56 +09:00
Randy Mackay
e20c7edf68 AC_Loiter: optimise get-posvelaccel-target usage 2024-10-04 09:25:56 +09:00
Randy Mackay
2753b7030b AC_Circle: get-closest-point-on-circle returns dist 2024-10-04 09:25:56 +09:00
Randy Mackay
9ca47cf465 AC_Circle: integrate pos vel accel offsets
Co-authored-by: Leonard Hall <leonardthall@gmail.com>
2024-10-04 09:25:56 +09:00
Leonard Hall
9185b82b7a AC_WPNav: get_closest_point_on_circle uses is_positive 2024-10-04 09:25:56 +09:00
Randy Mackay
951ff473c3 AC_WPNav: support pos vel accel offsets
Co-authored-by: Leonard Hall <leonardthall@gmail.com>
2024-10-04 09:25:56 +09:00
Randy Mackay
c706d01d7f AC_PosControl: implement singleton 2024-10-04 09:25:56 +09:00
Leonard Hall
9fb8a0f1ac AC_PosControl: support 3D pos, vel, accel offsets
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2024-10-04 09:25:56 +09:00
George Zogopoulos
68003a5eb4 AP_TECS: Reverted pitch limitation order 2024-10-02 17:09:07 +10:00
George Zogopoulos
121adf5f6d AP_TECS: Throttle limits refactor 2024-10-02 17:09:07 +10:00
George Zogopoulos
880ebbcdad AP_TECS: Takeoff improvements
- Refactor and split set_pitch_max_limit method.
- New _update_pitch_limits to encapsulate all relevant functionality.
- Automatically reset if pitch and throttle are overriden.
- nullified TAKEOFF alt_dem offset on external throttle.
- Simplify use of TKOFF_THR_MIN.
- Prevent takeoff altitude overshoot by capping the altitude setpoint offset.
- Move pitch limits after vertical acceleration limitation.
2024-10-02 17:09:07 +10:00
Bayu Laksono
efe003743c AP_Notify: Add GPIO driver and buzzer 2024-10-01 21:06:39 -05:00
Bayu Laksono
6d672d42b9 AP_HAL_ESP32: Add GPIO driver and buzzer 2024-10-01 21:06:39 -05:00
Stephen Dade
9a563e222f GCS_MAVLink: Check if set_message_interval is too fast 2024-10-02 09:22:43 +10:00
Ryan Friedman
1bdc635ba8 AP_DDS: Implement joystick support
Signed-off-by: Ryan Friedman <ryan.friedman+github@avinc.com>
Co-Authored-by: Tiziano Fiorenzani
2024-10-01 10:46:35 +10:00
Andrew Tridgell
b6f20e3786 AP_Scripting: docs update 2024-10-01 10:45:10 +10:00
Andrew Tridgell
3bbde7c302 AP_Scripting: test update 2024-10-01 10:45:10 +10:00
Andrew Tridgell
6a16bce001 AP_Scripting: added bindings for IPv4 address/string
and make socket recv return the source address and port
2024-10-01 10:45:10 +10:00
Peter Barker
8dec79d136 AP_GPS: use AP_GPS_FixType for ExternalAHRS fix type 2024-10-01 10:32:11 +10:00
Peter Barker
f66815b200 AP_ExternalAHRS: use AP_GPS_FixType for ExternalAHRS fix type 2024-10-01 10:32:11 +10:00
Peter Barker
efec7ccdc5 SITL: remove stale parameter metadata
now done by having the subgroup in its own file
2024-10-01 10:25:49 +10:00
Iampete1
d7599f225c GCS_MAVLink: Common: Allow scripting to receive messages which fail CRC check 2024-10-01 10:25:22 +10:00
Iampete1
902f1e6476 AP_Scripting: modules: MAVLink: update to latest version of generated code 2024-10-01 10:25:22 +10:00
Peter Barker
163f49827f AP_Mission: split logging of mission-upload vs mission-execution 2024-10-01 10:19:29 +10:00
Peter Barker
4237a33ce6 AP_Logger: split logging of mission-upload vs mission-execution 2024-10-01 10:19:29 +10:00
Peter Barker
1d947396b3 AP_Mission: move Mission log structures into Mission library 2024-10-01 10:19:29 +10:00
Peter Barker
b98e682ec6 AP_Logger: move Mission log structures into Mission library 2024-10-01 10:19:29 +10:00
Peter Barker
423daaa71f GCS_MAVLink: split sending terrain report from terrain request 2024-10-01 10:13:06 +10:00
Peter Barker
a401c98c74 AP_Terrain: split sending terrain report from terrain request 2024-10-01 10:13:06 +10:00
Bob Long
11014cae06 AP_BattMonitor: add option minimum volt option 2024-10-01 10:05:01 +10:00
Andrew Tridgell
52169f25da HAL_ChibiOS: replace volatile bools with mutexes
this replaces the two booleans used to mediate TX and RX buffer
protection with mutexes.

The booleans were a hangover from the very early HAL_ChibiOS code, and
can lead to a deadlock. The sequence is as follows:

 - a very high CAN bus bandwidth usage, triggered by MissionPlanner
   requesting CAN_FORWARD on a CAN serial port. That causes a
   "infinite" number of CAN_FRAME messages which saturates the bus,
   and leads to the DroneCAN thread looping with no pause

 - a serial port configured as GPS type AUTO, auto-probing for a GPS
   that isn't there. This calls begin() periodically

 - the UART TX thread assocated with that UART not making progress as
   the TX thread priority is below the DroneCAN thread priority

 - this causes the begin() in main thread waiting for _in_tx_timer to
   loop forever, which triggers a watchdog
2024-10-01 09:54:26 +10:00
Peter Barker
0cd6e330a5 AP_BattMonitor: add more-specific prearm failure when SUM backend not available 2024-10-01 09:48:13 +10:00
Peter Barker
721a9b846e AP_BattMonitor: print unhealthy message if battery backend not as expected
a backend which fails to allocate, or where the user has changed the backend type without rebooting will cause an "unhealthy" message to be emitted
2024-10-01 09:48:13 +10:00
Henry Wurzburg
4b5f490e9f Tools:remove BATTRY_SUM from <1K builds 2024-10-01 09:48:13 +10:00
tompsontan
84fbaa3abc AP_HAL_ChibiOS: add board X-MAV-AP-H743v2
Co-authored-by: Henry Wurzburg <hwurzburg@yahoo.com>
2024-10-01 09:39:55 +10:00
Thomas Watson
8e5ee61b02 AP_NavEKF3: derivation: don't generate unused equations
The code is left in for the future when they might be used.
2024-10-01 09:28:54 +10:00
Thomas Watson
f9fa2565c4 AP_NavEKF3: document provenance of tilt error variance equations
This is also from the older version of the generator.

Note that as documented, some of the equations have been removed and
rearranged slightly as it is assumed their terms are zero. Additionally,
the result is taken as the sum of the diagonal entries of the matrix.
2024-10-01 09:28:54 +10:00
Thomas Watson
34fba4dfd7 AP_NavEKF3: document provenance of drag force fusion equations
It's from the older version of the generator as well.

Update variable names in the real code to be the same as the generated
code. Skip generation of the unused alternate form of the equations.

Delete `acc_bf_generated.cpp` as we know exactly how to generate it now.
2024-10-01 09:28:54 +10:00
Thomas Watson
ef1c31bd50 AP_NavEKF3: document provenance of yaw fusion equations
Requires digging up old versions of the generator script.

The equations have been rearranged somewhat after generation to choose
the appropriate method but they do match overall. The auto-substitution
of the power functions caused slight changes to the generated syntax so
we make those to the real code as well.

Delete `yaw_generated.cpp` as we know exactly how to generate it now.
2024-10-01 09:28:54 +10:00
Thomas Watson
ad5da01077 AP_NavEKF3: document provenance of covariance matrix equations
Validated that the generated code matches exactly the code in AP_NavEKF3
(except for the early exits).

Delete `covariance_generated.cpp` as we know exactly how to generate it
now (and it was out of date anyway).
2024-10-01 09:28:54 +10:00
Thomas Watson
4184980537 AP_NavEKF3: derivation: pin generator library versions
Document exactly which versions were used when generating the code.
Sympy is the most important so it is explicitly checked.

Also add an alternate generate script which uses `nix-shell` to make it
convenient to automatically use these versions.
2024-10-01 09:28:54 +10:00