Commit Graph

34777 Commits

Author SHA1 Message Date
Peter Barker
22c1019767 AP_Scripting: correct compilation when AP_RTC is compiled out 2023-12-12 14:35:25 +11:00
Peter Barker
1aa6ad5bc3 AP_OSD: correct compilation when RC_Channels library not available 2023-12-12 14:35:12 +11:00
Peter Barker
2768c63971 AP_Arming: correct compilation when RC_Channels library not available 2023-12-12 14:35:12 +11:00
Peter Barker
58d4871177 AP_DAL: remove tmp_location from global namespace
removes this from the global namespace and means it isn't included when DAL isn't

update the location where we update the fields.
2023-12-12 11:53:00 +11:00
Peter Barker
283a1edb9f AP_VisualOdom: correct compilation when HAL_GCS_ENABLED is false 2023-12-12 11:41:47 +11:00
Peter Barker
93907f4a6d AP_Avoidance: correct compilation when HAL_GCS_ENABLED is false 2023-12-12 11:41:47 +11:00
Peter Barker
c15a73c798 AR_Motors: correct compilation when GCS library not available 2023-12-12 11:41:47 +11:00
Peter Barker
673fad04de AP_WindVane: correct compilation when GCS library not available 2023-12-12 11:41:47 +11:00
Peter Barker
1bf85a0a15 AP_SmartRTL: correct compilation when GCS library not available 2023-12-12 11:41:47 +11:00
Peter Barker
dd6d1f04c2 AP_OSD: correct compilation when GCS library not available 2023-12-12 11:41:47 +11:00
Peter Barker
6efc6d0f2d AP_Motors: correct compilation when GCS library not available 2023-12-12 11:41:47 +11:00
Peter Barker
6df3f18440 AP_Landing: correct compilation when GCS library not available 2023-12-12 11:41:47 +11:00
Peter Barker
87c0543d9f AP_Arming: correct compilation when GCS library not available 2023-12-12 11:41:47 +11:00
Peter Barker
dcebd072be AC_AttitudeControl: correct compilation when GCS library not available 2023-12-12 11:41:47 +11:00
Peter Barker
b0b94f50ed AP_Vehicle: add and use AP_RSSI_ENABLED 2023-12-12 11:37:57 +11:00
Peter Barker
b7710a78d8 AP_RSSI: add and use AP_RSSI_ENABLED 2023-12-12 11:37:57 +11:00
Peter Barker
b2a12f406f AP_OSD: add and use AP_RSSI_ENABLED 2023-12-12 11:37:57 +11:00
Peter Barker
03218b11ac AP_MSP: add and use AP_RSSI_ENABLED 2023-12-12 11:37:57 +11:00
Peter Barker
e95b1e5dd3 AC_AutoTune: add and use header guards 2023-12-12 11:36:15 +11:00
Iampete1
782605e7ea AP_Scripting: CANSensor: Add filtering of incoming frames
Co-authored-by: Andras Schaffer <eosbandi@gmail.com>
2023-12-12 11:32:04 +11:00
Iampete1
6d546eed8f AP_Motors: Example: allow setting of COL2YAW and autorotation flag 2023-12-12 11:23:15 +11:00
Iampete1
5dcdd238a9 AP_Motors: Example: allow testing of heli tail type 2023-12-12 11:23:15 +11:00
Iampete1
1c8ab3853c AP_Motors: Heli: Single: tail type tidyup 2023-12-12 11:23:15 +11:00
tomas.vrsansky
e6feebb2fb AP_HAL_ChibiOS: add hwdef files for Airvolute DCS2 onboard FMU
added ethernet config to hwdef
updated readme.md
hwdef: MAC parameters redefined according to ChibiOS
hwdef: add default params for Airvolute DCS2 on board FMU
update according to new changes in ChibiOS MAC driver
added defines to support ethernet communication
bootloaders: Airvolute-DCS2
2023-12-12 11:09:09 +11:00
Peter Barker
ff86e2dda8 AP_WindVane: add and use AP_WINDVANE_*_ENABLED defines 2023-12-12 09:28:58 +11:00
Andrew Tridgell
75217ec1e6 AP_Scripting: added readstring for uarts
this is much more efficient than reading a byte at a time
2023-12-12 07:42:15 +11:00
Andy Piper
375a940b51 AP_IOMCU: make adc interrupt driven 2023-12-11 20:46:28 +11:00
Andrew Tridgell
ffb7328ede AP_Scripting: review fixes
thanks Pete!
2023-12-11 18:00:38 +11:00
Andrew Tridgell
867e9c6799 AP_RTC: fixed build on arm 2023-12-11 18:00:38 +11:00
Andrew Tridgell
ded1cdaa2a AP_Scripting: fixed webserver warnings 2023-12-11 18:00:38 +11:00
Andrew Tridgell
583c24d833 AP_Scripting: updated docs 2023-12-11 18:00:38 +11:00
Andrew Tridgell
18044a9644 AP_Scripting: added a home page and ajax support 2023-12-11 18:00:38 +11:00
Andrew Tridgell
168bc4e32f AP_Scripting: added If-Modified-Since for webserver 2023-12-11 18:00:38 +11:00
Andrew Tridgell
90c12d4db3 AP_Scripting: added stat() binding for filesystem 2023-12-11 18:00:38 +11:00
Andrew Tridgell
2822f507c1 AP_RTC: added time and date APIs for lua
and fixed a bug with the ms time return
2023-12-11 18:00:38 +11:00
Andrew Tridgell
9beea49c3c AP_Filesystem: implement stat() call for lua 2023-12-11 18:00:38 +11:00
Andrew Tridgell
9f08e5d317 AP_Scripting: use sendfile() in web server 2023-12-11 18:00:38 +11:00
Andrew Tridgell
1e1255c8f0 AP_Scripting: added sendfile() API on sockets 2023-12-11 18:00:38 +11:00
Andrew Tridgell
241323eade AP_Networking: added sendfile()
this allows for scripting to offload a file send to the AP_Networking
library, reducing CPU costs of large file downloads
2023-12-11 18:00:38 +11:00
Andrew Tridgell
9358bfce34 AP_HAL: added duplicate() in SocketAPM 2023-12-11 18:00:38 +11:00
Andrew Tridgell
c9c38300bd AP_Filesystem: expose APFS_FILE structure
allows scripting to set the fd for sendfile()
2023-12-11 18:00:38 +11:00
Andrew Tridgell
26d814880e AP_Scripting: webserver improvements 2023-12-11 18:00:38 +11:00
Andrew Tridgell
a4fb05de95 HAL_ChibiOS: increase LWIP windows
now getting 6.8MByte/s with NET_TESTS=4
2023-12-11 18:00:38 +11:00
Andrew Tridgell
28885dca4c HAL_ChibiOS: adjust buffer sizes
this fixes issues with TCP accepts being lost in web server
2023-12-11 18:00:38 +11:00
Andrew Tridgell
39891d3161 AP_Scripting: improve web server debug 2023-12-11 18:00:38 +11:00
Andrew Tridgell
f603f045b5 HAL_ChibiOS: make lwip debugging easier
use ap_networking_printf wrapper
2023-12-11 18:00:38 +11:00
Andrew Tridgell
fec0ec79c5 AP_Networking: make lwip debugging easier 2023-12-11 18:00:38 +11:00
Andrew Tridgell
f924497194 AP_Scripting: added poll bindings 2023-12-11 18:00:38 +11:00
Andrew Tridgell
1419042fc0 AP_Scripting: added web server appliction 2023-12-11 18:00:38 +11:00
Andrew Tridgell
3446ff78d7 AP_Scripting: added isdirectory() 2023-12-11 18:00:38 +11:00
Andrew Tridgell
9065baa329 AP_Scripting: added bindings for SocketAPM 2023-12-11 18:00:38 +11:00
Andrew Tridgell
436c60c7de HAL_ChibiOS: defaults to 50 socket limit
makes for more useful web server
2023-12-11 18:00:38 +11:00
Andrew Tridgell
11ea2cf5c1 AP_Filesystem: added option @SYS/flash.bin
useful for speed tests
2023-12-11 18:00:38 +11:00
Andrew Tridgell
0f0aed66b7 AP_Filesystem: fixed fseek and open of directories 2023-12-11 18:00:38 +11:00
Andrew Tridgell
a77331e725 AP_HAL: mark socket as not connected on EOF
this allows lua scripts to properly detect a closed TCP connection
2023-12-11 18:00:38 +11:00
Andrew Tridgell
64d649fbcc AP_HAL: fixed SO_REUSEADDR on bind
and use MSG_NOSIGNAL to prevent pipe errors in SITL
2023-12-11 18:00:38 +11:00
Andrew Tridgell
98e8b9785c AP_HAL: added close() to SocketAPM 2023-12-11 18:00:38 +11:00
Andrew Tridgell
b49152bbe6 AP_HAL: mark new accept() socket as connected 2023-12-11 18:00:38 +11:00
Peter Barker
4cb0a922b2 AP_Airspeed: correct spelling of configured 2023-12-11 15:18:43 +11:00
Andrew Tridgell
e4a27943f5 AP_RTC: fixed ms value from AP_RTC::get_date_and_time_utc
this impacts the ViewPro mount driver
2023-12-09 11:12:56 +11:00
Peter Barker
d1ad9ccfbb AR_WPNav: correct missing include 2023-12-08 22:53:41 +11:00
Peter Barker
cc18c82622 AP_Follow: correct defaulting of AP_FOLLOW_ENABLED
and clarify a closing endif
2023-12-08 22:52:18 +11:00
bugobliterator
00a65632eb AP_HAL_ChibiOS: add support for swapping ICM42688 with ICM45686 2023-12-06 13:34:52 +11:00
bugobliterator
e34e9c61aa AP_HAL_ChibiOS: disable core m4 use to silence the chibios asserts
checking allocation of peripherals
2023-12-06 13:31:26 +11:00
Ka Ru
d728eef685 AP_Notify: add can-zero board 2023-12-05 07:41:06 -06:00
Ka Ru
329c6ba668 AP_HAL: add can-zero board 2023-12-05 07:41:06 -06:00
Ka Ru
ce177a3637 AP_HAL_Linux: add can-zero board 2023-12-05 07:41:06 -06:00
Peter Barker
455610a7ad AP_Scripting: correct mavlink_test.lua 2023-12-05 20:15:21 +11:00
Paul Riseborough
7601a02e98 AP_AHRS: added AHRS_OPTIONS parameter
the first option is to disable DCM fallback on fixed wing. This is
suitable in environments with a high likelyhood of GPS interference
2023-12-05 19:28:50 +11:00
Andrew Tridgell
5fce4f5f6d SITL: added simple simulated jammer 2023-12-05 19:28:50 +11:00
Andrew Tridgell
c316de75d0 SITL: fixed whitespace in SIM_GPS.cpp
this one has been really bad for a while
2023-12-05 19:28:50 +11:00
Andy Piper
cca8f8219a hwdef: new variant of KakuteH7 using ICM42688 2023-12-05 11:41:08 +11:00
Andy Piper
0cc5cf7d2d AP_HAL_ChibiOS: allow betaflight converter to run on output from "dump hardware" 2023-12-05 11:38:53 +11:00
Martin Luessi
6e417f1d0c RADIX2HD: Set HAL_I2C_INTERNAL_MASK 2023-12-05 11:37:57 +11:00
Iampete1
b8114da102 AP_Motors: Heli: dual and quad: remove un-needed override methods 2023-12-05 09:12:37 +09:00
Ryan Friedman
fadedbbb47 AP_HAL: Add MicroStrain7 support
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-12-05 11:09:22 +11:00
Ryan Friedman
5bcdaa360e AP_HAL_SITL: Add MicroStrain7 support to SITL
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-12-05 11:09:22 +11:00
Ryan Friedman
1ae13cd66d SITL: Switch to using GPS Timestamp for 5 series driver
* The old descriptor is deprecated

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-12-05 11:09:22 +11:00
Ryan Friedman
7c183f4ab3 AP_ExternalAHRS: Add MicroStrain7 support
* Implement filter state without relying on GPS
* Implement health and initialization check based on filter state
* Fix pre-arm checks missing version
* Add version specifics to microstrain 5 log msgs
* Add utilities to microstrain packet to remove magic number array
  access

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-12-05 11:09:22 +11:00
Iampete1
433f98fee1 AP_Vehicle: call scripting update from 1Hz loop 2023-12-05 11:03:58 +11:00
Iampete1
2a3a5b2804 AP_Scripting: add checksum of running and loaded scripts with arming check 2023-12-05 11:03:58 +11:00
Iampete1
423a218643 GCS_MAVLink: use new filesystem crc32 method 2023-12-05 11:03:58 +11:00
Iampete1
2c7e06dc5e AP_Filesystem: add crc 32 method 2023-12-05 11:03:58 +11:00
Bob Long
24bf288e28 AP_InertialNav: freeze horiz_vel when !velned_ok
This addresses concerns about brief failures of get_velocity_NED causing
abrupt changes to the horizonatl velocity estimate.
2023-12-05 10:44:37 +11:00
Bob Long
467e62b967 GCS_Common: allow fallback vert rate in VFR_HUD 2023-12-05 10:44:37 +11:00
Bob Long
6eed40dec1 AP_InertialNav: add fallback vertical velocity 2023-12-05 10:44:37 +11:00
Iampete1
d26fdfc3b2 AP_CustomControl: use base class AC_AttitudeControl object 2023-12-05 08:08:09 +09:00
Andrew Tridgell
c61ee15c1f AP_Vehicle: init networking after serial manager
init before serial manager led to not seeing any error messages if net
init failed
2023-12-04 10:12:41 +11:00
Andrew Tridgell
55b5e1cff1 AP_Networking: fixed off by one error in cache size calculation
this caused some of the memory to be cacheable which led to TCP
checksum errors
2023-12-04 10:12:41 +11:00
Peter Barker
0d9c658a1e SITL: add missing includes 2023-12-04 07:04:12 +11:00
Andrew Tridgell
63f9046265 AP_Networking: fixed docs for network port types
and document broadcast and multicast
2023-12-03 11:37:21 +11:00
Tom Pittenger
7f94ae6fe7 AP_Networking: only show NET_IP,DHCP,GW,MASK,MAC if it's actually used 2023-12-02 08:17:52 +11:00
Andrew Tridgell
89506846a3 AP_Networking: improve startup wait
this ensures we wait till DHCP has completed
2023-12-01 18:33:29 +11:00
Andrew Tridgell
2ef560db0b AP_ExternalAHRS: reserve some ExternalAHRS type values 2023-12-01 14:59:57 +11:00
Andrew Tridgell
aba5ec6854 AP_InertialSensor: added support for writing raw IMU data to a UART
this is for supporting external visual odomotry systems which need the
IMU data to correctly process image data

# Conflicts:
#	libraries/AP_InertialSensor/AP_InertialSensor.cpp
2023-11-30 07:05:02 +11:00
Andrew Tridgell
604559a844 AP_OSD: added new serial manager protocol 2023-11-30 07:05:02 +11:00
Andrew Tridgell
e58e8b861d AP_Serialmanager: added IMOUT uart type
# Conflicts:
#	libraries/AP_SerialManager/AP_SerialManager.cpp
#	libraries/AP_SerialManager/AP_SerialManager.h
2023-11-30 07:05:02 +11:00
Randy Mackay
46298052b6 AP_Scripting: simplify Rover quick tune
Only tunes FF.  P and I are set as ratio to FF
2023-11-29 08:18:07 -08:00
Peter Barker
4ede307be2 AP_RCProtocol: rename crc_sum8 to crc_sum8_with_carry
the name "sum8" is usually used for "sum all bytes into a uint8_t discarding carry"
2023-11-29 18:50:26 +11:00
Peter Barker
d34e6049c9 AP_Math: rename crc_sum8 to crc_sum8_with_carry
the name "sum8" is usually used for "sum all bytes into a uint8_t discarding carry"
2023-11-29 18:50:26 +11:00
Peter Barker
9394a7b26b AP_RangeFinder: use boolean uartdriver read method 2023-11-29 18:29:11 +11:00
Peter Barker
97417a1038 SITL: rename SITL::GPS_GSOF to SITL::GPS_Trimble 2023-11-29 18:04:56 +11:00
Peter Barker
a143d2e453 SITL: remove trailing whitespace in SITL GPS drivers
we've just lost the history for these lines anyway
2023-11-29 18:04:56 +11:00
Peter Barker
d992ead5b1 SITL: rename GSOF to Trimble
... as now it's not just GSOF but also DCOL
2023-11-29 18:04:56 +11:00
Peter Barker
568d633dcc SITL: break up GPS backends into separate files 2023-11-29 18:04:56 +11:00
Tom Pittenger
f72dd8cc89 AP_Network: mavlink packetise requires mavlink 2023-11-29 12:29:19 +11:00
Andrew Tridgell
0d932e8a54 Filter: fixed uint8_t bug in total filters and expand_filter_count bug
this gets the right number of notches on quadplanes, but is still very
bad in fwd flight
2023-11-28 18:05:37 +11:00
Andrew Tridgell
002f1076d7 Filter: added optional notch debug logging
this has helped find multiple bugs
2023-11-28 18:05:37 +11:00
Andy Piper
a61fc423f0 Filter: allow zero centre frequency to passthrough and disable notch 2023-11-28 18:05:37 +11:00
Iampete1
eb4e3fc36a AP_InertialSensor: init all notch center frequencies 2023-11-28 18:05:37 +11:00
jfbblue0922
c16e1a28df AP_HAL_ChibiOS/hwdef: changed defaults parm in JFB110 board definition
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2023-11-28 15:58:53 +09:00
Peter Barker
2e41cf810c Revert "AP_GPS: GSOF robust config parsing"
This reverts commit bf9881579c.
2023-11-28 16:09:46 +11:00
Peter Barker
8b7652d1db Revert "AP_GPS: Move init logic from constructor to class"
This reverts commit 5f84cd8f2b.
2023-11-28 16:09:46 +11:00
Ryan Friedman
35b52a4604 SITL: Implement DCOL parser and bidirectional comms
* Implement DCOL command support for GSOF simulator
* Only send GSOF when enabled
* Publish only at the configured rate
* Only build GSOF packets when needed
  * This saves CPU
* Make physics and read loop run at full rate
  * The logic to rate-limit writes is now pushed to the backend
* Indent errors were fixed too

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-11-28 15:50:02 +11:00
Ryan Friedman
d7b5cd3203 AP_GPS: Fix missing GSOF param for SITL
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-11-28 15:50:02 +11:00
Ryan Friedman
5f84cd8f2b AP_GPS: Move init logic from constructor to class
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-11-28 15:44:37 +11:00
Ryan Friedman
bf9881579c AP_GPS: GSOF robust config parsing
* Refactor checksum to unique function
* Clear uart before reading data
* Add ack/nack check
* Implement output disable before requesting GSOF data
* Improve debug message to have line number
* Use debug in more code
* Stop delaying in configuration

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-11-28 15:44:37 +11:00
Randy Mackay
03c50db07e AR_WPNav: pos control updated during pivots 2023-11-28 12:46:46 +09:00
Randy Mackay
62dfe0f04b AR_PosControl: no min speed when stopping 2023-11-28 12:46:46 +09:00
Ryan Friedman
3965c7e4bf AP_Math: Replace deprecated benchmark function
* Been deprecated since 1.2.0

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-11-28 12:21:10 +11:00
Andrew Tridgell
2ee48dea29 AP_HAL: support bi-directional UDP broadcast sockets 2023-11-28 12:18:55 +11:00
Andrew Tridgell
7d1f048ca7 AP_Networking: support UDP server, TCP client and TCP server
and implement mavlink packetisation and flow control return
2023-11-28 12:18:55 +11:00
Andrew Tridgell
f345d94e91 GCS_MAVLink: increase max mavlink connections when networking enabled 2023-11-28 12:18:55 +11:00
Andrew Tridgell
f471732aad HAL_ChibiOS: enable SO_REUSEADDR 2023-11-28 12:18:55 +11:00
Andrew Tridgell
0659ab8ef4 HAL_ChibiOS: increase max TCP resources 2023-11-28 12:18:55 +11:00
Andrew Tridgell
a05acfc090 AP_HAL: added last_recv_address() with supplied buffer
this prevents a race condition with a static string
2023-11-28 12:18:55 +11:00
Ryan Friedman
be668ddc1b AP_ExternalAHRS: Clarify public interface design intent
* Discussions with Tridge on design intent for these accessors

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-11-28 11:48:22 +11:00
Henry Wurzburg
d9d5e91110 hwdef: update SDH7V1 readme 2023-11-28 11:47:32 +11:00
Andrew Tridgell
ad59f6db01 AP_DroneCAN: support an aux 11 bit protocol with DroneCAN 2023-11-28 11:38:16 +11:00
Andrew Tridgell
d17a1ca7bc AP_CANManager: support CAN_Dn_PROTOCOL2 for an aux 11 bit protocol 2023-11-28 11:38:16 +11:00
Iampete1
d626928e0c SITL: SIM IntelligentEnergy24: add error string to V2 protocol 2023-11-28 11:27:14 +11:00
Iampete1
a00b6b6f86 AP_Gernerator: FuelCell: rework error check to give error cleared msg 2023-11-28 11:27:14 +11:00
Iampete1
3b3c94ea07 AP_Generator: IE_2400: update low and critial error ranges for V2 protocol 2023-11-28 11:27:14 +11:00
Gone4Dirt
ab5d28073d SITL: Add V2 telemetry protocol to IE24 fuel cell 2023-11-28 11:27:14 +11:00
Iampete1
36dd720e78 AP_Generator: IE 2400: fix V2 low and critical errors and add warnings 2023-11-28 11:27:14 +11:00
Iampete1
c91407d662 AP_Generator: IE 2400: only return custom msg if error is critial or low severity 2023-11-28 11:27:14 +11:00
Iampete1
c861e15853 AP_Gernerator: IE_2400: lengthen message buffer and print error num 2023-11-28 11:27:14 +11:00
Iampete1
90f7ed3410 AP_Generator: Add support for IE V2 protocol 2023-11-28 11:27:14 +11:00
Iampete1
daf8aeeadc AP_Param: check dynamic param tables are avalable before adding a param 2023-11-28 11:22:43 +11:00
Michael du Breuil
772dbfb04f AP_GPS: SBF supports yaw from dual antennas
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2023-11-28 11:17:51 +11:00
daniel.li
e6b7daa323 AP_HAL_ChibiOS: Add Aocoda-RC-H743Dual target 2023-11-28 10:29:23 +11:00
Randy Mackay
46f4e6e33a RC_Channel: Rover circle mode aux function param desc 2023-11-28 07:54:45 +09:00
Randy Mackay
2d89f835e5 AR_PosControl: fix PSC_VEL_I param range 2023-11-28 07:54:45 +09:00
Thomas Watson
87fef1ae5d AP_HAL_ChibiOS: use get_HAL_mutable() to install new CAN interfaces
Avoids dubious extern redefinition.
2023-11-28 08:24:25 +11:00
Thomas Watson
008c0baf5f AP_DroneCAN_sniffer: use get_HAL_mutable() to install new CAN interface
Avoids dubious const_casting.
2023-11-28 08:24:25 +11:00
Thomas Watson
de26095c58 AP_CANManager: use get_HAL_mutable() to install new CAN interfaces
Avoids dubious const_casting.
2023-11-28 08:24:25 +11:00
Thomas Watson
3c82ac6043 AP_HAL_SITL: introduce get_HAL_mutable() to complement get_HAL()
Returns a mutable reference to the same HAL for certain purposes where
the HAL needs to be mutated to avoid UB problems with casting away const
and to make the fact that mutation is happening obvious.
2023-11-28 08:24:25 +11:00
Thomas Watson
8fe95dca81 AP_HAL_Linux: introduce get_HAL_mutable() to complement get_HAL()
Returns a mutable reference to the same HAL for certain purposes where
the HAL needs to be mutated to avoid UB problems with casting away const
and to make the fact that mutation is happening obvious.
2023-11-28 08:24:25 +11:00
Thomas Watson
db12f428c5 AP_HAL_Empty: introduce get_HAL_mutable() to complement get_HAL()
Returns a mutable reference to the same HAL for certain purposes where
the HAL needs to be mutated to avoid UB problems with casting away const
and to make the fact that mutation is happening obvious.
2023-11-28 08:24:25 +11:00
Thomas Watson
2dbf5aefb3 AP_HAL_ESP32: introduce get_HAL_mutable() to complement get_HAL()
Returns a mutable reference to the same HAL for certain purposes where
the HAL needs to be mutated to avoid UB problems with casting away const
and to make the fact that mutation is happening obvious.
2023-11-28 08:24:25 +11:00
Thomas Watson
a9ddadee3b AP_HAL_ChibiOS: introduce get_HAL_mutable() to complement get_HAL()
Returns a mutable reference to the same HAL for certain purposes where
the HAL needs to be mutated to avoid UB problems with casting away const
and to make the fact that mutation is happening obvious.
2023-11-28 08:24:25 +11:00
Thomas Watson
dc76e03890 AP_HAL: introduce get_HAL_mutable() to complement get_HAL()
Returns a mutable reference to the same HAL for certain purposes where
the HAL needs to be mutated to avoid UB problems with casting away const
and to make the fact that mutation is happening obvious.
2023-11-28 08:24:25 +11:00
Andrew Tridgell
c48feefe23 AP_BattMonitor: fixed battery percentage with aux info
when we have aux battery information we had assumed the CAN device
would provide the battery remaining percentage. We should obey the "do
not use CAN SoC" with or without an AUX message

This fixes CAN battery monitors with a cell monitor
2023-11-27 13:02:46 +11:00
Stephen Dade
73eb3b0590 AR_Motors: Add prearm check for no outputs 2023-11-27 08:31:31 +09:00
Peter Barker
f40250c073 AP_AHRS: compile EKF2 out by default on all boards 2023-11-27 09:05:08 +11:00
Tom Pittenger
6dcaf94c3d AP_BattMon: add AP_BATTERY_WATT_MAX_ENABLED 2023-11-26 11:57:14 +11:00
Tom Pittenger
1f7b4d0938 AP_HAL_ChibiOS: set AP_BATTERY_WATT_MAX_ENABLED 0 for minimize 2023-11-26 11:57:14 +11:00
Tom Pittenger
cd6a656acf AP_HAL_ChibiOS: set AP_BATTERY_WATT_MAX_ENABLED 0 for periph 2023-11-26 11:57:14 +11:00
Tom Pittenger
8ab3ad2777 AP_Networking: add support for AP_Periph 2023-11-26 11:28:57 +11:00
Tom Pittenger
e8c852f0d4 AP_HAL: Allow APMSockets to autodetect Broadcast IPs 2023-11-25 16:28:07 -08:00
olliw42
8f9df5a62e AP_Arming: Reduce response time when checks go from true to false 2023-11-25 14:59:04 -08:00
Peter Barker
27f836b66e hwdef: correct ARK_CANNODE compilation
this was turning SPI on when there aren't any devices...
2023-11-25 13:47:13 -08:00
alexklimaj
ddba794420 hwdef: ark_rtk_gps fix safety led 2023-11-25 13:45:56 -08:00
Andrew Tridgell
ee592476ce AP_HAL: implement multicast for UDP sockets 2023-11-25 12:19:43 -08:00
Andrew Tridgell
68e2bb1f15 AP_Networking: enable receive of multicast packets 2023-11-25 12:19:43 -08:00
Andrew Tridgell
58cf4f65a9 HAL_SITL: use SocketAPM for CAN multicast and SITL_Periph state 2023-11-25 12:19:43 -08:00
Ryan Friedman
14aeb831fb AP_DDS: Add instructions for running HW test
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-11-22 21:44:35 -08:00
bugobliterator
4b61b3d64e AP_Stats: initialise parameter defaults 2023-11-22 21:43:00 -08:00
Tom Pittenger
b5e2f9aa0a AP_Scripting: change some _INFO msgs to _CRITICAL/ERROR 2023-11-22 00:07:05 -08:00
Pierre Kancir
d98a400d9e AP_Logger: Prepare the maximum number of log files in the config parameter 2023-11-22 18:35:21 +11:00
Peter Barker
e9fc99b1bf AP_HAL_ChibiOS: base HAL_USE_SPI on devices not buses
fixes compilation problem with gcc 10.3

../../libraries/AP_HAL_ChibiOS/SPIDevice.cpp: In static member function 'static void ChibiOS::SPIDeviceManager::__static_initialization_and_destruction_0(int, int)':
../../libraries/AP_HAL_ChibiOS/SPIDevice.cpp:76:18: error: statement has no effect [-Werror=unused-value]
   76 | ChibiOS::SPIDesc SPIDeviceManager::device_table[] = { HAL_SPI_DEVICE_LIST };
      |                  ^~~~~~~~~~~~~~~~
compilation terminated due to -Wfatal-errors.
cc1plus: some warnings being treated as errors
2023-11-22 18:14:00 +11:00
Andrew Tridgell
f30ac4052c HAL_SITL: added SERIAL4 as UDP output for SITL periph 2023-11-22 17:19:12 +11:00
Andrew Tridgell
a725d8b90c AP_DroneCAN: support CAN serial ports
this allows any serial protocol to be mapped to a remote DroneCAN node
2023-11-22 17:19:12 +11:00
Andrew Tridgell
e06d65bd75 AP_Networking: simplify port registration 2023-11-22 17:19:12 +11:00
Andrew Tridgell
65ffe713b4 AP_SerialManager: enable port registration for dronecan 2023-11-22 17:19:12 +11:00
Andrew Tridgell
e63a2250ca AP_SerialManager: ensure registered ports are in sorted order
this avoids ordering issues if using both CAN and network serial ports
2023-11-22 17:19:12 +11:00
Andrew Tridgell
0ae5c9116c AP_SerialManager: added AP_SerialManager_config.h 2023-11-22 17:19:12 +11:00
Andrew Tridgell
a54503ae12 AP_SerialManager: define port ranges for CAN serial ports 2023-11-22 17:19:12 +11:00
Peter Mullen
adc0ebf9de AP_RangeFinder: Add signal_quality_pct to range finder state 2023-11-21 22:24:12 +11:00
Peter Barker
8eb5baa4ae Filter: correct AP_Filter defines
- checking the build type is very rarely used and definitely not required here
 - fix boilerplate to conform to normal pattern of including the config header and #if'ing based on the _ENABLED directly after that
2023-11-21 21:13:42 +11:00
Peter Barker
e806adb009 AP_Vehicle: correct AP_Filter defines
- checking the build type is very rarely used and definitely not required here
 - fix boilerplate to conform to normal pattern of including the config header and #if'ing based on the _ENABLED directly after that
2023-11-21 21:13:42 +11:00
Peter Barker
15e0f689c2 AP_HAL_ChibiOS: correct AP_Filter defines
- checking the build type is very rarely used and definitely not required here
 - fix boilerplate to conform to normal pattern of including the config header and #if'ing based on the _ENABLED directly after that
2023-11-21 21:13:42 +11:00
Ryan Friedman
da0efa3323 SITL: Bump up read rate on SITL
* This is needed to do active configuration quickly
* Read/Write split and exposed to ensure physics/write rate is still
  coupled to avoid impacting the jamming and delayed data
* Created a utility to allocate the SITL instance

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-11-21 15:29:46 +11:00
Andrew Tridgell
69bfe9b837 APM_Control: added D_FF support for fixed wing 2023-11-21 13:26:23 +11:00
Andy Piper
5d53485be0 AP_Logger: add PIDInfo.DFF logging 2023-11-21 13:26:23 +11:00
Andy Piper
6ecb18e027 AP_Vehicle: link in AP_Filter support
allow filters to be compiled out
add filter updates at 1Hz
2023-11-21 13:26:23 +11:00
Andy Piper
e729c8ccfa Filter: add AP_Filter support
enable filters with AP_FILTER_ENABLED
allow filters to be compiled out
add dynamic updates, remove load/save and enable
2023-11-21 13:26:23 +11:00
Andy Piper
5b0f30ad44 AP_WheelEncoder: update for new AC_PID settings
enable filters with AP_FILTER_ENABLED
2023-11-21 13:26:23 +11:00
Andy Piper
cfebae5857 APM_Control: update for new AC_PID settings
enable filters with AP_FILTER_ENABLED
2023-11-21 13:26:23 +11:00
Andy Piper
fc76312fc3 AC_PID: use AP_Filter for notch configuration
enable filters with AP_FILTER_ENABLED
dynamically allocate notches
remove load/save for notches, update docs
move feedfoward update to update_all()
restrict load_gains() and save_gains() to just what autotune needs
add D_FF logging
2023-11-21 13:26:23 +11:00
Andy Piper
560030c9ba AC_CustomControl: update for new AC_PID settings
enable filters with AP_FILTER_ENABLED
2023-11-21 13:26:23 +11:00
Andy Piper
b7a969d462 AC_AttitudeControl: update for new AC_PID settings
enable filters with AP_FILTER_ENABLED
2023-11-21 13:26:23 +11:00
Andy Piper
13ff23f39d AP_HAL: enable filters with AP_FILTER_ENABLED on sitl 2023-11-21 13:26:23 +11:00
Andy Piper
d6287e90f1 AC_AttitudeControl: update PID notch centres
add documentation for PID notches and D feed-foward
add notches and D feedforward to heli PIDs
add advanced flag to PIDs and selectively compile advanced PID options
2023-11-21 13:26:23 +11:00
Andy Piper
6a40843a9e Filter: provide accessors for center and sample frequencies on NotchFilter 2023-11-21 13:26:23 +11:00
Andy Piper
370ee7d4d3 AP_WheelEncoder: add documentation for PID notches and D feed-foward
add advanced flag to PIDs and selectively compile advanced PID options
2023-11-21 13:26:23 +11:00
Andy Piper
952baf860c AC_CustomControl: add documentation for PID notches and D feed-foward
add advanced flag to PIDs and selectively compile advanced PID options
2023-11-21 13:26:23 +11:00
Andy Piper
9211dba484 APM_Control: update docs for new AC_PID parameters
add advanced flag to PIDs and selectively compile advanced PID options
2023-11-21 13:26:23 +11:00
Andy Piper
b17b78e329 AC_PID: add notch filters to target and error terms
calculate D feed-forward and notch applications correctly
only update notches when enabled
add notches and D feedforward to heli PIDs
add advanced flag an selectively compile advanced options
2023-11-21 13:26:23 +11:00
Peter Barker
bc03918ea4 GCS_MAVLink: create and use AP_MAVLINK_MSG_UAVIONIX_ADSB_OUT_STATUS_ENABLED
narrower define we can use when not compiling in the backends which use this
2023-11-21 13:21:13 +11:00
Peter Barker
232edac8d7 AP_ADSB: create and use AP_MAVLINK_MSG_UAVIONIX_ADSB_OUT_STATUS_ENABLED
narrower define we can use when not compiling in the backends which use this
2023-11-21 13:21:13 +11:00
Thomas Watson
b8d50b112a AP_Compass: fix C++ One Definition Rule violations
Two structs with the same name must have exactly the same definition, no
matter where they occur in the program, otherwise the program is undefined.

Move each sample register struct definition into the associated class
definition so they are in a different namespace and no longer
identically named, thus fixing this issue.
2023-11-21 13:21:03 +11:00
Rhys Mainwaring
0d735ffb01 AP_DDS: increase the timeout when creating participants and entities
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2023-11-21 13:20:23 +11:00
Peter Barker
6d172a1b22 GCS_MAVLink: exclude deadlock-creation based on FAILURE_CREATION_ENABLED 2023-11-21 09:35:50 +09:00
Henry Wurzburg
f9c9a09327 AP_MSP: update option metadata for clarity 2023-11-21 10:05:56 +11:00
Henry Wurzburg
36a66424e1 AP_BattMonitor:remove unused param from analog fuel level 2023-11-21 10:01:38 +11:00
Peter Barker
170d96e8cc GCS_Common: remove mappings for non-supported messages 2023-11-20 19:25:25 +11:00
Peter Barker
70160c58e8 GCS_MAVLink: tidy sending of ADSB messages 2023-11-20 19:25:25 +11:00
Peter Barker
6f5ff2f952 GCS_MAVLink: tidy sending of HIGH_LATENCY2 messages 2023-11-20 19:25:25 +11:00
Peter Barker
031e5b1dab GCS_MAVLink: tidy sending of WATER_DEPTH messages 2023-11-20 19:25:25 +11:00
Peter Barker
a8906ac491 GCS_MAVLink: tidy sending of winch messages 2023-11-20 19:25:25 +11:00
Peter Barker
564e6ec77a GCS_MAVLink: tidy sending of efi messages 2023-11-20 19:25:25 +11:00
Peter Barker
892bafe951 GCS_MAVLink: tidy sending of esc telem generator messages 2023-11-20 19:25:25 +11:00
Peter Barker
a95b2b2497 GCS_MAVLink: tidy sending of queued generator messages 2023-11-20 19:25:25 +11:00
Peter Barker
d894281f2b GCS_MAVLink: tidy sending of queued SIM messages 2023-11-20 19:25:25 +11:00
Peter Barker
ec69867102 GCS_MAVLink: tidy sending of queued mcu status messages 2023-11-20 19:25:25 +11:00
Peter Barker
0983bd2d06 GCS_MAVLink: tidy sending of queued opticalflow messages 2023-11-20 19:25:25 +11:00
Peter Barker
c017c8acf4 GCS_MAVLink: tidy sending of queued mount messages 2023-11-20 19:25:25 +11:00
Andy Piper
229916a48c AP_HAL_ChibiOS: enable serial LEDs on ARK_CANNODE 2023-11-20 19:23:06 +11:00
Andy Piper
04fa8ed593 AP_HAL_SITL: return success status from serial_led_send and set_serial_led_rgb_data 2023-11-20 19:22:20 +11:00
Andy Piper
b5ef11797b AP_Scripting: add success status to serialLED:send and serialLED:set_RGB 2023-11-20 19:22:20 +11:00
Andy Piper
00ceca0fff AP_SerialLED: return success status from send and set_RGB 2023-11-20 19:22:20 +11:00
Andy Piper
d30e52ed3f AP_HAL: return success status from serial_led_send and set_serial_led_rgb_data 2023-11-20 19:22:20 +11:00
Andy Piper
73610c8932 AP_HAL_ChibiOS: return success status from serial_led_send and set_serial_led_rgb_data 2023-11-20 19:22:20 +11:00
Andy Piper
b7fd04318a AP_HAL_ChibiOS: fix race condition in sending serial LED data 2023-11-20 19:22:20 +11:00
Ryan Friedman
2d465a5b20 AP_DDS: Fix typos and out of date info
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-11-20 08:40:06 +09:00
Ryan Friedman
213cba86af AP_SerialManager: Add missing option for XRCE DDS
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-11-20 08:40:06 +09:00
Andrew Tridgell
8e50584bd8 AP_Networking: fixed buffer size handling
make begin() able to change buffer sizes
2023-11-18 16:54:54 -08:00
Henry Wurzburg
176a4aa51a AP_BoardConfig: add arm/disarm controlled GPIO for module power control 2023-11-18 14:27:05 +11:00
Henry Wurzburg
fffe3afb28 AP_Arming: add arm/disarm controlled GPIO for module power control 2023-11-18 14:27:05 +11:00
Peter Barker
afa263c691 SITL: set sitl point for GPS backends in constructor
_sitl is guaranteed non-nullptr by the SITL::GPS::update()
2023-11-18 13:59:28 +11:00
Tom Pittenger
3b35915774 AP_Networking: return bug fix
Co-authored-by: Ryan <ryanfriedman5410+github@gmail.com>
2023-11-17 18:24:39 -08:00
Tom Pittenger
fcf602cbe2 AP_Networking: init socket null check 2023-11-17 18:24:39 -08:00
Tom Pittenger
30bccf6266 AP_Networking: adjustable PORT buf size 2023-11-17 18:24:39 -08:00
muramura
f28ef5e5a7 AP_Baro: Returns directly calculated values 2023-11-18 12:18:36 +11:00
Andrew Tridgell
2ba4bf1478 HAL_ChibiOS: allow for --disable-networking 2023-11-17 10:54:24 -08:00
Andrew Tridgell
31fd43ba25 AP_SerialManager: fixed passthru with network ports 2023-11-17 10:54:24 -08:00
Andrew Tridgell
84dd7eaaf1 AP_Networking: added support for mapping network ports
only UDP_CLIENT so far
2023-11-17 10:54:24 -08:00
Andrew Tridgell
ba0598930e AP_Vehicle: added AP_Networking::Port NET_Pn_ parameters 2023-11-17 10:54:24 -08:00
Andrew Tridgell
f9f07912e6 AP_SerialManager: added register_port() API
allows another library to register a UART driver for exposing via
AP_SerialManager APIs
2023-11-17 10:54:24 -08:00
Andrew Tridgell
713745ed28 AP_DroneCAN: don't update hobbywing ESC table while armed
some hobbywing ESCs have a bug where requesting the ID table can cause
the ESC to stutter
2023-11-17 16:21:58 +11:00
Pradeep CK
71141080a1 AP_EFI : Hirth Driver Addition
Implementation for Hirth.
 - Base class - AP_EFI
 - polynomial functional throttle linearization
 - AP_EFI_State parameter addition and changes for hirth logging
 - to fix autotest errors
 - updated comments
 - Hirth CI/CD autotest fail fixes
 - logging
 - fix CI issues
2023-11-17 13:09:02 +11:00
Andrew Tridgell
6bf3debe73 HAL_ChibiOS: default disable ICE in periph 2023-11-17 13:09:02 +11:00
Andrew Tridgell
3e0e32a409 AP_Scripting: support 2nd cylinder in EFI 2023-11-17 13:09:02 +11:00
Peter Barker
c5eab29f5e AP_Math: add F_TO_KELVIN and C_TO_F 2023-11-17 13:09:02 +11:00
Peter Barker
a018bed042 SITL: improve MegaSquirt simulator fidelity 2023-11-17 13:09:02 +11:00
Peter Barker
ca16e924db SITL: add simulator Hirth EFI 2023-11-17 13:09:02 +11:00
Peter Barker
f134a1df34 AP_HAL_SITL: add simulator Hirth EFI 2023-11-17 13:09:02 +11:00
Peter Barker
76d07f21f5 AP_HAL: add simulator Hirth EFI 2023-11-17 13:09:02 +11:00
Peter Barker
2f710a4689 SITL: correct MegaSquirt simulation 2023-11-17 13:09:02 +11:00