Commit Graph

37580 Commits

Author SHA1 Message Date
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
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