Shiv Tyagi
f62e65f26e
AP_HAL_ChibiOS: use AP_PERIPH_IMU_ENABLED in place of HAL_PERIPH_ENABLE_IMU
2025-02-08 08:22:10 +11:00
Davide Iafrate
2257009eba
SITL: Added comment to clarify IMU acceleration value
2025-02-07 00:42:28 +00:00
Peter Barker
498dc11cef
RC_Channel: add RC channel option for trimming AHRS using RC
2025-02-06 16:03:52 +11:00
Ep Pravitra
0b659ac8a1
AP_Mount: zoom for Viewpro IR sensor
2025-02-06 10:50:14 +09:00
Peter Barker
4161c425d1
GCS_MAVLink: simplify MissionItemProtocol get_item interface
...
stop passing through _link and the original msg, move use to the base class instead.
starts fence and rally also using the "correct the GCS's count" code.
This also corrects the error code when correcting the GCS's count to INVALID_SEQUENCE rather than just ERROR
2025-02-06 10:20:23 +11:00
Peter Barker
26c61f527e
SIM_XPlane: remove use-after-free issue
...
c_str points to a member of .str(), so we have to make sure that object persists
../../libraries/SITL/SIM_XPlane.cpp:239:34: warning: object backing the pointer will be destroyed at the end of the full-expression [-Wdangling-gsl]
239 | const char *type_s = d.get("type").to_str().c_str();
2025-02-05 20:06:10 +11:00
Peter Barker
53701655a0
SIM_XPlane: avoid leaking memory upon json load failure
...
../../libraries/SITL/SIM_XPlane.cpp:209:16: warning: Potential leak of memory pointed to by 'fname' [unix.Malloc]
return false;
^~~~~
2025-02-05 20:06:10 +11:00
Bob Long
dd54f025d6
AP_ESC_Telem: fix timeout race
...
The timeout for non-RPM telemetry is vulnerable to a similar race as the
RPM. This change makes the timeout logic consistent between the two.
2025-02-05 18:54:29 +11:00
Iampete1
54a71cef9d
AP_Airspeed: Calibration: remove unused DT
2025-02-05 18:04:41 +11:00
Peter Barker
4959cee694
Rover: add option to require position for Rover before arming
2025-02-05 10:39:20 +11:00
Peter Barker
0fb5a2105c
AP_Arming: add option to require position for Rover before arming
2025-02-05 10:39:20 +11:00
bugobliterator
f8726ee646
AP_HAL_ChibiOS: disable mcast bridging in bootloader
2025-02-05 10:23:46 +11:00
bugobliterator
51471a0a7e
AP_Networking: make can multicast an endpoint by default
...
also add option to enable multicast with bridging to CAN bus in application
and disabled in bootloader
2025-02-05 10:23:46 +11:00
bugobliterator
f9a8d9b034
AP_CANManager: use updated frame callback types
...
also change to IsForwardedFrame from IsMAVCAN
2025-02-05 10:23:46 +11:00
bugobliterator
4bad4f856b
AP_HAL: change IsMavCAN to IsForwardedFrame
2025-02-05 10:23:46 +11:00
Davide Iafrate
131c0f8e2d
SITL: Clarification for timestamp in JSON interface
2025-02-05 10:03:52 +11:00
Tdogb
9c12476d39
AP_Airspeed: AUAV airspeed support
2025-02-04 16:17:28 +11:00
Peter Barker
eed3e147a0
AP_BattMonitor: remove use of ownptr
2025-02-04 11:57:58 +11:00
Peter Barker
6f40c80d65
AP_Notify: move enabling of AP_NOTIFY_TONEALARM_ENABLED out of AP_Notify_config.h
...
this is looking at chibios-specific defines, which is bad
2025-02-04 11:53:25 +11:00
Peter Barker
8a9a1826e1
AP_HAL: move enabling of AP_NOTIFY_TONEALARM_ENABLED out of AP_Notify_config.h
...
this is looking at chibios-specific defines, which is bad
2025-02-04 11:53:25 +11:00
Peter Barker
8fdfed5249
AP_Notify: use only AP_NOTIFY_TONEALARM_ENABLED to guard tonealarm backend
...
... instead of checking the HAL and *then* checking this define
2025-02-04 11:53:25 +11:00
Peter Barker
fe0a0dbf92
AP_Arming: move REQUIRE_POSITION_FROM_ARMING bit to AP_arming
...
while Copter is the only user at the moment, will be useful on Rover shortly
2025-02-04 09:02:16 +09:00
Bob Long
4eab74fbc5
AP_Vehicle: add comment for ESC Telem update rate
2025-02-04 10:46:34 +11:00
Bob Long
0b7a56e2fd
AP_ESC_Telem: fix RPM timeout race
...
The RPM telemetry data structure can get updated by another thread at
any time. This can cause (now - last_update_us) to be negative, which
looks like the data is nearly UINT32_MAX microseconds stale. To fix
this, we copy the last_update_us value before we get the current time
so it's guaranteed to be positive.
We also minimize the number of places we explicitly check the timestamp
and rely on the `data_valid` where possible to minimize the performance
impact of this change.
2025-02-04 10:46:34 +11:00
Iampete1
022c43c644
AP_HAL_SITL: Add getter for SITL_State
2025-02-04 10:41:56 +11:00
Iampete1
63fecc76d4
APM_Control: examples: AP_FW_Controller_test: update to use HAL SITL
2025-02-04 10:41:56 +11:00
Iampete1
44d2fc1ac1
AMP_Control: move pitch and roll autotune_start
into base AP_FW_Controller
2025-02-04 10:41:56 +11:00
Iampete1
790290d359
APM_Control: AP_AutoTune: add static axis_string
method
2025-02-04 10:41:56 +11:00
Iampete1
f8dd0b2d76
APM_Control: add AP_FW_Controller as common base class to roll and pitch controllers
2025-02-04 10:41:56 +11:00
Iampete1
4db73d3883
APM_Control: add test for roll and pitch controllers
2025-02-04 10:41:56 +11:00
ES-Alexander
a1421e7ece
AP_Baro: update MS5837_BA30 temperature compensation
2025-02-03 15:40:52 -03:00
Iampete1
f6a6e356bf
AP_AIS: fix multi part message decoding
2025-02-03 10:13:42 +00:00
Shiv Tyagi
5790e0e38e
AP_HAL_ChibiOS: use AP_PERIPH_RANGEFINDER_ENABLED in place of HAL_PERIPH_ENABLE_RANGEFINDER
2025-02-03 10:06:04 +11:00
Peter Barker
2cd3970e36
GCS_MAVLink: add capability to send autopilot to config error loop
...
Co-authored-by: Bob Long <robertlong13@gmail.com>
Co-authored-by: Michelle Rossouw <michelleros128@gmail.com>
another one of our "do nasty thing to autopilot" commands, useful for testing what ground control stations do when the autopilot is in this state
2025-02-02 21:33:27 +11:00
Andrew Tridgell
70305ba949
hwdef: added TBS-L431-Airspeed
2025-02-01 16:59:29 +11:00
Andrew Tridgell
46d99a47f7
HAL_ChibiOS: support LSE for clock on STM32L4xx
...
this allows for lower pin count devices with CAN
2025-02-01 16:59:29 +11:00
Peter Barker
4e35eb3673
SITL: fix array-bounds warning in tsys01 sim
...
... if the driver ever asked for prom0 then we would do Very Bad Things here.
File: build/sitl/../../libraries/SITL/SIM_Temperature_TSYS01.cpp
Warning: line 38, column 13
Assigned value is garbage or undefined
2025-02-01 16:52:26 +11:00
Thomas Watson
63afcae8a7
AP_Filesystem: ROMFS: fix open race conditions
...
Lua opens scripts to load them into memory, then the logger opens them
after to stream them into the dataflash log. When loading multiple large
Lua scripts from ROMFS, decompression takes a significant amount of
time. This creates the opportunity for the Lua interpreter and logging
threads to both be inside `AP_Filesystem_ROMFS::open()` decompressing a
file.
If this happens, the function can return the same `fd` for two different
calls as the `fd` is chosen before decompression starts, but only marked
as being used after that finishes. The read pointers then stomp on each
other, so Lua loads garbled scripts (usually resulting in a syntax
error) and the logger dumps garbled data.
Fix the issue by locking before searching for a free record (or marking
a record as free). Apply the same fix to directories as well. This
doesn't protect against using the same `fd`/`dirp` from multiple
threads, but that behavior is to be discouraged anyway and is not the
root cause here.
2025-02-01 16:51:49 +11:00
Peter Barker
6bf29eca70
AP_AIS: remove incorrect use of strncat
...
the third argument is space remaining in buffer, not size of buffer...
../../libraries/AP_AIS/AP_AIS.cpp:183:71: warning: Potential buffer overflow. Replace with 'sizeof(multi) - strlen(multi) - 1' or use a safer 'strlcat' API [unix.cstring.BadSizeArg]
strncat(multi,_AIVDM_buffer[msg_parts[i]].payload,sizeof(multi));
^~~~~~~~~~~~~
../../libraries/AP_AIS/AP_AIS.cpp:185:49: warning: Potential buffer overflow. Replace with 'sizeof(multi) - strlen(multi) - 1' or use a safer 'strlcat' API [unix.cstring.BadSizeArg]
strncat(multi,_incoming.payload,sizeof(multi));
2025-01-31 15:52:50 +11:00
Peter Barker
46973652d4
AP_HAL_ESP32: add get_device_ptr to HAL I2CDevice API
2025-01-31 09:19:33 +11:00
Peter Barker
d5922b2cf1
AP_Notify: avoid use of OwnPtr for ToshibaLED
2025-01-31 09:19:33 +11:00
Peter Barker
51d1cee5eb
AP_HAL_SITL: add get_device_ptr to HAL I2CDevice API
2025-01-31 09:19:33 +11:00
Peter Barker
049ad3928d
AP_HAL_QURT: add get_device_ptr to HAL I2CDevice API
2025-01-31 09:19:33 +11:00
Peter Barker
07d5938d68
AP_HAL_Linux: add get_device_ptr to HAL I2CDevice API
2025-01-31 09:19:33 +11:00
Peter Barker
0a617b500b
AP_HAL: add get_device_ptr to HAL I2CDevice API
2025-01-31 09:19:33 +11:00
Peter Barker
45db7d2231
AP_HAL_Empty: add get_device_ptr to HAL I2CDevice API
2025-01-31 09:19:33 +11:00
Peter Barker
97e87dfcdb
AP_HAL_ChibiOS: add get_device_ptr to HAL I2CDevice API
2025-01-31 09:19:33 +11:00
Peter Barker
061f3825a7
AP_Logger: use GCS_SEND_TEXT for error message rather than stdout
...
This one is line noise before this patch:
Failed to create log directory /APM/LOGS : ENOSPC
2025-01-31 08:32:29 +11:00
Shiv Tyagi
4fca0ccd0b
AP_Scripting: use AP_PERIPH_BARO_ENABLED in place of HAL_PERIPH_ENABLE_BRO
2025-01-31 08:25:28 +11:00
Shiv Tyagi
c4654c9828
AP_HAL_ChibiOS: use AP_PERIPH_BARO_ENABLED in place of HAL_PERIPH_ENABLE_BRO
2025-01-31 08:25:28 +11:00
Shiv Tyagi
c7217528b1
AP_HAL_ChibiOS: fix incorrect definition of AP_PERIPH_MAG_ENABLED for Here4AP
2025-01-31 08:24:50 +11:00
rubenp02
d529601af6
AP_L1_Control: Fix NAVL1_PERIOD description typo
2025-01-30 20:53:17 +11:00
rubenp02
5c1b768738
AP_L1_Control: Improve comment format consistency
2025-01-30 20:53:17 +11:00
Peter Barker
a829cd3e60
AP_Logger: log IOMCU cpu id and mcu id
...
Co-authored-by: Michelle Rossouw <michelleros128@gmail.com>
2025-01-30 08:52:49 +11:00
Shiv Tyagi
d96439dbc5
AP_HAL_ChibiOS: use AP_PERIPH_MAG_ENABLED in place of HAL_PERIPH_ENABLE_MAG
2025-01-30 08:49:03 +11:00
Peter Barker
99aff5f0cf
SITL: remove variable dead stores
2025-01-30 08:47:34 +11:00
Peter Barker
f9d970c474
AP_ADC: remove variable dead stores
2025-01-30 08:47:34 +11:00
Peter Barker
a01b7e74f1
SITL: remove dead stores from rangefinder_range
...
roll and pitch are unused if !SITL_RANGEFINDER_AS_OBJECT_SENSOR
../../libraries/SITL/SIM_Aircraft.cpp:546:13: warning: Value stored to 'roll' is never read [deadcode.DeadStores]
roll = 0;
^ ~
../../libraries/SITL/SIM_Aircraft.cpp:551:13: warning: Value stored to 'roll' is never read [deadcode.DeadStores]
roll = 0;
^ ~
../../libraries/SITL/SIM_Aircraft.cpp:557:13: warning: Value stored to 'pitch' is never read [deadcode.DeadStores]
pitch = 0;
^ ~
../../libraries/SITL/SIM_Aircraft.cpp:562:13: warning: Value stored to 'pitch' is never read [deadcode.DeadStores]
pitch = 0;
2025-01-30 08:24:27 +11:00
Peter Barker
9bfba32803
GCS_MAVLink: correct resetting of parity after passthhru is done
...
this might have worked if parity1 and parity2 were static values - but theyr're not. I'm guessing the code evolved
2025-01-29 21:45:37 +11:00
Peter Barker
0a5d450c44
AP_Frsky_Telem: remove dead variable write
...
this is falsified at the top of the function
../../libraries/AP_Frsky_Telem/AP_Frsky_SPort_Passthrough.cpp:238:13: warning: Value stored to 'packet_ready' is never read [deadcode.DeadStores]
packet_ready = false;
^ ~~~~~
1 warning generated.
2025-01-29 21:41:51 +11:00
Peter Barker
6cd862709b
RC_Channel: make compass LearnType enum-class and parameter AP_Enum
2025-01-29 19:21:59 +11:00
Peter Barker
6298f7dc58
AP_Compass: make compass LearnType enum-class and parameter AP_Enum
2025-01-29 19:21:59 +11:00
Peter Barker
870b626f0e
SRV_Channel: remove buggy, unused method
...
... this may not fit in an int8_t!
2025-01-29 19:21:59 +11:00
Peter Barker
c7b0ba04ef
AP_Relay: adjust for new type-safety for AP_Enum
2025-01-29 19:21:59 +11:00
Peter Barker
9255054826
AP_Param: add a set_and_save method to AP_Enum
...
... and AP_Enum16
to allow for better type-safety in users
2025-01-29 19:21:59 +11:00
Peter Barker
13980eb518
AP_HAL_ChibiOS: chibios_hwdef.py tidy embedding of files into ROMFS
2025-01-29 19:06:11 +11:00
Andy Piper
29655d149c
AP_InertialSensor: remove changes to primary accel since it is always the same as the gyro
2025-01-29 18:47:51 +11:00
Andy Piper
9da365398a
AP_AHRS: remove changes to primary accel since it is always the same as the gyro
2025-01-29 18:47:51 +11:00
Andy Piper
a5d04eb291
AP_InertialSensor: only update the primary once. scale FIFO reads to 2x loop rate.
...
only increase FIFO buffer when compiled with fast rate
2025-01-29 18:47:51 +11:00
Andy Piper
da447fd378
AP_InertialSensor: remove rate config include
2025-01-29 18:47:51 +11:00
Andy Piper
51a61b99ea
AP_InertialSensor: remove dynamic fifo mask
2025-01-29 18:47:51 +11:00
Andy Piper
32632a06a8
AP_InertialSensor: have a single callback for primary switching
2025-01-29 18:47:51 +11:00
Andy Piper
45242de521
AP_InertialSensor: periodically notify of primary gyro and accels
2025-01-29 18:47:51 +11:00
Andy Piper
981826dca3
AP_InertialSensor: only use dynamic FIFO when using fast rate loop
2025-01-29 18:47:51 +11:00
Andy Piper
6eda43f9f4
AP_AHRS: configure primary gyro/accel in IMU when it changes
2025-01-29 18:47:51 +11:00
Andy Piper
cc52868dda
AP_InertialSensor: adjust read rate of Invensense v3 depending on primary
...
configure dynamic fifo rates based on primary gyro instance
add set_primary_gyro() and set_primary_accel()
adjust FIFO buffer sizes
2025-01-29 18:47:51 +11:00
Andy Piper
bed0c2228c
AP_InertialSensor: keep a record of the priamry gyro and use it
...
add callbacks for when gyrp/accel primary changes
2025-01-29 18:47:51 +11:00
Shiv Tyagi
99a501852c
AP_HAL_ChibiOS: create and use AP_PERIPH_AHRS_ENABLED
2025-01-29 10:37:58 +11:00
Peter Barker
e8634a6549
AP_HAL_ChibiOS: chibios_hwdef.py: flake8 correctness fixes
2025-01-29 06:49:31 +11:00
Randy Mackay
e4f26cd509
AP_Scripting: Torqeedo TorqLink lua driver
...
Co-authored-by: Shift-Ronan <88686667+Shift-Ronan@users.noreply.github.com>
2025-01-29 06:49:08 +11:00
Peter Barker
fbe1661c04
SRV_Channel: rename SRV_Channel::Aux_servo_function_t to SRV_Channel::Function
2025-01-28 21:56:46 +11:00
Peter Barker
5f9701bb67
AR_Motors: rename SRV_Channel::Aux_servo_function_t to SRV_Channel::Function
2025-01-28 21:56:46 +11:00
Peter Barker
4130187249
AP_Torqeedo: rename SRV_Channel::Aux_servo_function_t to SRV_Channel::Function
2025-01-28 21:56:46 +11:00
Peter Barker
dae315dd4a
AP_SerialLED: rename SRV_Channel::Aux_servo_function_t to SRV_Channel::Function
2025-01-28 21:56:46 +11:00
Peter Barker
c6c6e9fc99
AP_Scripting: rename SRV_Channel::Aux_servo_function_t to SRV_Channel::Function
2025-01-28 21:56:46 +11:00
Peter Barker
da133c84df
AP_PiccoloCAN: rename SRV_Channel::Aux_servo_function_t to SRV_Channel::Function
2025-01-28 21:56:46 +11:00
Peter Barker
bde1a6a2ad
AP_Notify: rename SRV_Channel::Aux_servo_function_t to SRV_Channel::Function
2025-01-28 21:56:46 +11:00
Peter Barker
b79644c64a
AP_Mount: rename SRV_Channel::Aux_servo_function_t to SRV_Channel::Function
2025-01-28 21:56:46 +11:00
Peter Barker
3c653e4ed6
AP_Motors: rename SRV_Channel::Aux_servo_function_t to SRV_Channel::Function
2025-01-28 21:56:46 +11:00
Peter Barker
f5aae89f41
AP_KDECAN: rename SRV_Channel::Aux_servo_function_t to SRV_Channel::Function
2025-01-28 21:56:46 +11:00
Peter Barker
fa226582ce
AP_IOMCU: rename SRV_Channel::Aux_servo_function_t to SRV_Channel::Function
2025-01-28 21:56:46 +11:00
Peter Barker
62bc113167
AP_ICEngine: rename SRV_Channel::Aux_servo_function_t to SRV_Channel::Function
2025-01-28 21:56:46 +11:00
Peter Barker
39193162a2
AP_Arming: rename SRV_Channel::Aux_servo_function_t to SRV_Channel::Function
2025-01-28 21:56:46 +11:00
Peter Barker
f27c35ed87
AP_HAL_ChibiOS: use python3 -m pip to install Python packages
2025-01-28 21:56:05 +11:00
Ryan Friedman
3a5a2f6025
AP_Soaring: Rate limit the NVF publishers to 4Hz
...
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2025-01-28 17:22:28 +11:00
Ryan Friedman
864491de9e
AP_DDS: Sync README with Wiki
...
* Remove conflicting info
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2025-01-28 17:02:41 +11:00
Peter Barker
9e4a180878
AP_Compass: remove vestiges of LearnType::LEARN_INTERNAL
...
57a3bc1397
changed the code from "internal" to "in-flight
It seems the old value of "1" was no longer valid
It also changed things to that the learning system saved the offsets.
2025-01-28 12:23:53 +11:00
Randy Mackay
e294cc03f9
AP_Scripting: video-stream-information param index fix
2025-01-28 12:21:33 +11:00
Andy Piper
e20a00cc53
AP_BoardConfig: support flow control on UARTs 6->8
2025-01-28 12:01:45 +11:00
Randy Mackay
3e5c2a8285
SRV_Channel: alphabetise function param desc
2025-01-28 11:58:15 +11:00