Commit Graph

34573 Commits

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