Commit Graph

38192 Commits

Author SHA1 Message Date
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
Ryan Friedman
47a17f9d82 AP_DDS: Add infinite initialization wait
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2025-01-28 11:44:40 +11:00
Iampete1
68c6ed23d5 AP_Mission: don't update _last_change_time_ms for write of home 2025-01-28 10:30:06 +11:00
Iampete1
8e70588a9b GCS_MAVLink: use new misison present method 2025-01-28 10:30:06 +11:00
Iampete1
84381e2e5c AP_Arming: use new misison present method 2025-01-28 10:30:06 +11:00
Iampete1
405c002475 AP_Mission: add present method 2025-01-28 10:30:06 +11:00
Iampete1
418f137f52 AP_Mission: make sure home is set in index 0 and and not overwritten when adding or replacing commands 2025-01-28 10:30:06 +11:00
Iampete1
2c816c8841 AP_Mission: update cmd_total when setting home 2025-01-28 10:30:06 +11:00
Iampete1
067f1282dd AP_Mission: write_cmd_to_storage to private 2025-01-28 10:30:06 +11:00
Iampete1
82887c95d2 AP_AHRS: Ensure home is always saved to mission 2025-01-28 10:30:06 +11:00
Peter Barker
a8717fe6a2 AP_HAL_ChibiOS: create and use AP_PERIPH_BATTERY_ENABLED
... and AP_PERIPH_BATTERY_BALANCE_ENABLED while we're here
2025-01-28 09:11:21 +11:00
Peter Barker
08bf42bf0a AP_Motors: support a minimum of 12 motors
this block could be removed if we made each backend dependent on having sAP_MOTORS_MAX_NUM_MOTORS high enough to support that frame.

However, not all frames have #ifdefs to support conditional compilation at this point.
2025-01-27 14:03:41 +11:00
Peter Barker
afaed41d6e AP_Motors: clamp max-num-motors to num-servo-channels 2025-01-27 14:03:41 +11:00
Peter Barker
dfe0a559d3 AP_Motors: limit nax-motors to 12 unless scripting enabled
we only allow configuration of more complicated frames with scripting at the moment
2025-01-27 14:03:41 +11:00
Peter Barker
9f5c095688 SRV_Channel: allow re-assignment from GPIO on channels above 16
this allows MotorMatrix to change a channel's default (and value) from k_GPIO to a motor output value.

The loop in the SRV_Channels contructors sets all defaults for channels above 16 to GPIO, and this code stopped MotorsMatrix from assigning a different role the the output.
2025-01-27 14:03:41 +11:00
Peter Barker
49d9b14e25 AP_Motors: add AP_MOTORS_MOT defines up to 32 2025-01-27 14:03:41 +11:00
Peter Barker
5b5dc8a128 SITL: add dotriaconta_octaquad_x frame 2025-01-27 14:03:41 +11:00
Peter Barker
346c746d29 AP_Scripting: make dotriaconta_octaquad_x a quad-X 2025-01-27 14:03:41 +11:00
Peter Barker
12f3a02c77 AP_HAL_SITL: rename m32 frame to dotriaconta_octaquad_x 2025-01-27 14:03:41 +11:00
Peter Barker
58fa14ebe6 AP_Scripting: rename setup example script for dotriaconta_quad_x 2025-01-27 14:03:41 +11:00
murata
502b3a8713 AP_Scripting: Support Hexadeca-Octa (OCTA-X16) 2025-01-27 14:03:41 +11:00
murata
7de6eb5b20 SITL: Support Hexadeca-Octa (OCTA-X16) 2025-01-27 14:03:41 +11:00
murata
25b02a8312 AP_HAL_SITL: Support Hexadeca-Octa (OCTA-X16) 2025-01-27 14:03:41 +11:00
murata
3b6350d022 AP_Motors: Support Hexadeca-Octa (OCTA-X16) 2025-01-27 14:03:41 +11:00
Peter Barker
405b067df6 SRV_Channel: metadata for motors 13 through 32
Co-authored-by: muramura <ma2maru@gmail.com>
2025-01-27 14:03:41 +11:00
Andrew Tridgell
aae0613e17 AP_Scripting: added 32 motor example 2025-01-27 14:03:41 +11:00
Andrew Tridgell
165ca1355e HAL_SITL: added m32 frame
a stack of 8 X quad frames
2025-01-27 14:03:41 +11:00
Andrew Tridgell
c49745c755 AP_Motors: support up to 32 motors 2025-01-27 14:03:41 +11:00
Andrew Tridgell
46b452ae39 SRV_Channel: support 32 rotors in a frame 2025-01-27 14:03:41 +11:00
Peter Barker
98e4037868 AP_Motors: move to a uint32_t motor mask 2025-01-27 14:03:41 +11:00
Andy Piper
723ec0c592 AP_HAL_ChibiOS: fix docs for BETAFPV-F405-I2C 2025-01-26 22:44:52 +11:00
Andy Piper
4130bdcc4f AP_HAL_ChibiOS: add all BETAFPV F405 variants and re-enable baro-less operation 2025-01-26 22:44:52 +11:00
Peter Barker
f92fde806f AP_HAL: SIMState: do a single nullptr check in SIMState servo sim
mirrors if c1016ae52e
2025-01-25 18:50:49 -06:00
Andy Piper
54ab1f044e AP_HAL_ChibiOS: add camera switch to iFlight Blitz H743 Pro 2025-01-25 22:29:37 +11:00
Peter Barker
00c1f1456e SITL: correct documentation metadata for FETTechOneWireESC and RichenPower and IE24
.... we had documentation for these parameters but it wasn't being used!
2025-01-25 08:10:38 +11:00
Jeevan K
c1595c6cf1 SITL : Add ACC_TRIM, ARSPD documentation 2025-01-24 07:05:51 +11:00
Peter Barker
4e12b4ee0e fixup! AP_HAL_ChibiOS: create AP_PERIPH_GPS_ENABLED 2025-01-23 17:47:58 +11:00
Peter Barker
c5058fa360 AP_Scripting: create AP_PERIPH_GPS_ENABLED 2025-01-23 17:47:58 +11:00
Peter Barker
3a9eb7634c AP_HAL_ChibiOS: create AP_PERIPH_GPS_ENABLED 2025-01-23 17:47:58 +11:00
MattKear
691eca7b62 AC_Autorotation: Mode restructure and speed controller improvement 2025-01-22 18:53:44 +11:00
MattKear
052399a736 AP_MotorsHeli: Fix landing detector check when collective_out is constrained to _collective_land_min_pct. Needed to account for FLT_EPSILON. 2025-01-22 18:53:44 +11:00
Gone4Dirt
870e56b93a AP_MotorsHeli: Support for Autorotation mode restructure 2025-01-22 18:53:44 +11:00
Gone4Dirt
575af5e398 AC_Autorotation: Add arming checks 2025-01-22 18:53:44 +11:00
Andy Piper
98291cd6bd bootloaders: BETAFPV-F405-I2C 2025-01-22 18:27:15 +11:00
Andy Piper
eba28abd1e AP_HAL_ChibiOS: BETAFPV-F405-I2C 2025-01-22 18:27:15 +11:00
Andy Piper
3da968cbfe AP_HAL_ChibiOS: BARO update for BETAFPV F405
add UART6 and VBUS to BETAFPV F405
add alt config to BETAFPV-F405 to support RELAY2 instead of UART6_TX as per betaflight
enable SBUS input on BETAFPV-F405 on UART5_RX
enable IMU temperature calibration for BETAFPV-F405
correct current scale on BETAFPV-F405.
BETAFPV-F405 SPL06 Baro
correct baro SPI read rate on BETAFPV-F405
use SPL06 with background updates on BETAFPV-F405
2025-01-22 18:27:15 +11:00
Randy Mackay
5813cc52e1 AP_SerialManager: add i-BUS Telemetry protocol param desc 2025-01-22 17:22:55 +11:00
Thomas Watson
429ed5cdd2 AP_Scripting: only log aerobatic trick file when supported
LittleFS does not have this function implemented due to logging
bandwidth, so `logger:log_file_content` is nil. Don't call it unless it
exists, assuming this logging is not critical.
2025-01-21 15:19:55 +00:00
Thomas Watson
781b6bd8f8 AP_HAL_ChibiOS: enable scripting on KakuteH7Mini-Nand
It has LittleFS now so it can easily use scripting.
2025-01-21 08:54:00 +00:00
Henry Wurzburg
2bc167d2ff AP_Landing: mode AUTOLAND enhancements
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
Co-authored-by: Pete Hall <iampete@hotmail.co.uk>
2025-01-21 11:30:23 +11:00
MattKear
634cb02dbd Filter: Make heli default mode for harmonic notch tracking = fixed 2025-01-21 11:22:36 +11:00
MattKear
4f39a842b2 AP_InertialSensor: Add config error for helis trying to use throttle notch 2025-01-21 11:22:36 +11:00
Yury MonZon
ca0d50df73 AP_Tuning: Bugfix 2025-01-21 11:19:37 +11:00
Yury MonZon
4d3f5b53ef AP_Tuning: Update OSD on 5 percent change 2025-01-21 11:19:37 +11:00
Yury MonZon
b21fce1290 AP_Tuning: Show current parameter value on OSD and GCS 2025-01-21 11:19:37 +11:00
Andy Piper
03cdab003b GCS_MAVLink: enable HAL_MAVLINK_INTERVALS_FROM_FILES_ENABLED on littlefs 2025-01-21 11:10:31 +11:00
Andy Piper
0f159b8d83 AP_HAL: no littlefs on QURT 2025-01-21 11:10:31 +11:00
Andy Piper
628b000ace AP_Scripting: scripting directory configuration for posix IO
ensure SITL uses ./scripts
2025-01-21 11:10:31 +11:00
Andy Piper
24ab3f8f20 AP_HAL: tidy meanings of FATFS, POSIX_IO and friends 2025-01-21 11:10:31 +11:00
Andy Piper
f6f546c538 AP_HAL_ChibiOS: introduce new DATAFLASH directive and use it
add HAL_OS_POSIX_IO to defaults
ensure explicitly configured DATAFLASH is prioritized
correct inclusion of fat malloc
only create storage backups on fatfs
2025-01-21 11:10:31 +11:00
Andy Piper
c971bb6850 AP_Filesystem: allow for logical blocks bigger than physical blocks in littlefs.
optimize configured defaults on littlefs and address review comments
support lseek() in littlefs in a way that enables terrain to work
rename file and directory structures in littlefs
code in littlefs glue should be C++ rather than C
check for strdup failure on littlefs
2025-01-21 11:10:31 +11:00
Thomas Watson
90ac6bdc9e AP_Filesystem: lock littlefs between opendir and closedir
Avoids issues with (alleged) corruption if writes happen between.
2025-01-21 11:10:31 +11:00
Andy Piper
36b9bf6736 AP_Logger: avoid disk_free() checks on littlefs
provide more meaningful feedback if write() results in ENOSPC
address review comments
2025-01-21 11:10:31 +11:00
Andy Piper
f22e1ff38b AP_Filesystem: support mutiple reads/writes in littlefs
improve performance by avoiding block validation on writes
2025-01-21 11:10:31 +11:00
Andy Piper
8a3e53c163 AP_Logger: nuance minspace for W25NXX and W25QXX 2025-01-21 11:10:31 +11:00
Andy Piper
49c61bc729 AP_Logger: support SITL implementation of littlefs 2025-01-21 11:10:31 +11:00
Andy Piper
0c541b72fd AP_Filesystem: provide SITL implementation for littlefs 2025-01-21 11:10:31 +11:00
Andy Piper
85f4b563e0 AP_HAL_ChibiOS: littlefs support for KakuteH7v2 2025-01-21 11:10:31 +11:00
Andy Piper
cf2ebfacc9 AP_HAL_ChibiOS: littlefs support for JHEMCU-H743HD 2025-01-21 11:10:31 +11:00
Andy Piper
3330c1b113 AP_HAL_ChibiOS: littlefs support for Aocoda-RC-H743Dual 2025-01-21 11:10:31 +11:00
Andy Piper
955448704b AP_HAL_ChibiOS: turn off storage backup on anything other than FATFS 2025-01-21 11:10:31 +11:00
Andy Piper
1abe46e923 AP_HAL_ChibiOS: terrain turned on on 2Mb boards with littlefs 2025-01-21 11:10:31 +11:00
Andy Piper
b556ffd1e0 AP_Logger: user sync_block from littlefs to decide when to sync when using littlefs 2025-01-21 11:10:31 +11:00
Andy Piper
8a992740f5 AP_Filesystem: add littlefs singleton for sync block use 2025-01-21 11:10:31 +11:00
Andy Piper
6ac4bf3fc4 AP_Logger: add performance debug to W25NXX logger 2025-01-21 11:10:31 +11:00
Andy Piper
5f8e339d47 AP_Logger: add flash speed test 2025-01-21 11:10:31 +11:00
Andy Piper
acf1b40dca AP_Filesystem: reduce metadata_max on W25N flash 2025-01-21 11:10:31 +11:00
Andy Piper
6390285598 AP_Filesystem: add littlefs based filesystem support
use correct read status for nor flash
implement format on littlefs
optimize device calls in littlefs flash usage
check for fileops allowed in littlefs
littlefs optimization and support for mtime
2025-01-21 11:10:31 +11:00
Andy Piper
f706b8615e AP_Scripting: allow scripting on 2Mb boards with littlefs 2025-01-21 11:10:31 +11:00
Andy Piper
3626f5fd0c AP_HAL_ChibiOS: use littlefs on KakuteH7Mini-Nand 2025-01-21 11:10:31 +11:00
Andy Piper
5c03e27068 AP_HAL_ChibiOS: littlefs for MatekH7A3 2025-01-21 11:10:31 +11:00
Andy Piper
1396f347b7 AP_HAL_ChibiOS: littlefs for MambaH743v4 2025-01-21 11:10:31 +11:00
Andy Piper
2c20e112c6 AP_Logger: sync littlefs writes on block boundaries
optimize free space when using littlefs
2025-01-21 11:10:31 +11:00
Andy Piper
948a38c623 AP_HAL: add littlefs build option 2025-01-21 11:10:31 +11:00
Andy Piper
1faf1b3d9c AP_HAL_ChibiOS: don't backup storage with littlefs 2025-01-21 11:10:31 +11:00
Andy Piper
25e8277fda AP_HAL_ChibiOS: add support for littlefs 2025-01-21 11:10:31 +11:00
Peter Barker
7c101a0846 Replay: add example script for converting from cm to m in RRNI and RRNH messages 2025-01-21 10:54:05 +11:00
Peter Barker
98dbcd5d08 AP_Scripting: update examples to not use deprecated methods 2025-01-21 10:54:05 +11:00
Peter Barker
6a2582f217 AP_SurfaceDistance: allow for more than 327m range rangefinders 2025-01-21 10:54:05 +11:00
Peter Barker
2b2103b273 AP_Frsky_Telem: allow for more than 327m range rangefinders 2025-01-21 10:54:05 +11:00
Peter Barker
00f713cda8 SITL: allow for more than 327m range rangefinders 2025-01-21 10:54:05 +11:00
Peter Barker
b54e795a0e GCS_MAVLink: allow for more than 327m range rangefinders 2025-01-21 10:54:05 +11:00
Peter Barker
8ea5ef2784 AP_Scripting: allow for more than 327m range rangefinders 2025-01-21 10:54:05 +11:00
Peter Barker
fb7925d029 AP_RangeFinder: allow for more than 327m range rangefinders 2025-01-21 10:54:05 +11:00
Peter Barker
6ecbc07090 AP_Proximity: allow for more than 327m range rangefinders 2025-01-21 10:54:05 +11:00
Peter Barker
b633084df3 AP_NavEKF3: allow for more than 327m range rangefinders 2025-01-21 10:54:05 +11:00
Peter Barker
e85539acf2 AP_NavEKF2: allow for more than 327m range rangefinders 2025-01-21 10:54:05 +11:00
Peter Barker
680fb999c5 AP_Logger: allow for more than 327m range rangefinders 2025-01-21 10:54:05 +11:00
Peter Barker
c681bb4934 AP_DAL: allow for more than 327m range rangefinders 2025-01-21 10:54:05 +11:00
Peter Barker
7ff52a71fb AP_DroneCAN: don't delcare xacti publishers if xacti not compiled in 2025-01-20 21:54:29 +11:00
Zedd Chen
1dae851ef3 AP_HAL_ChibiOS: add DroneerF405 2025-01-20 17:20:21 +11:00
Jacob Dahl
b722ea8f2f AP_HAL_ChibiOS: ARK_FPV board support 2025-01-20 10:17:37 +11:00
Andy Piper
1965a3e989 AP_HAL_ChibiOS: TBS LUCID PRO/Freestyle 2025-01-18 15:24:23 +11:00
Andy Piper
2e5239f84f AP_Logger: support GD25Q16E flash 2025-01-18 15:24:23 +11:00
Ryan Friedman
268a486007 AP_L1_Control: Remove incorrect default in param desc
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2025-01-18 15:05:08 +11:00
Jeevan K
372a1a6e6e SITL: update sonar_pos info 2025-01-17 08:11:27 +11:00
Jacob Dahl
64bb0ad762 AP_Compass: add IIS2MDC driver 2025-01-15 19:10:16 +11:00
Peter Barker
6b63d3abbb AP_HAL_ChibiOS: remove setting HAL_USE_UART to false
this is the default
2025-01-15 19:08:04 +11:00
Peter Barker
c8dc6ad75f SITL: add Volz simulator 2025-01-15 18:45:45 +11:00
Peter Barker
a6c3fb8336 AP_HAL_SITL: add Volz simulator 2025-01-15 18:45:45 +11:00
Peter Barker
b43410a021 AP_HAL: add Volz simulator 2025-01-15 18:45:45 +11:00
Peter Barker
9fcf2b674a SITL: add plane-redundant 2025-01-15 18:45:45 +11:00
Andy Piper
a87862dd3a RC_Channel: add get_stick_gesture_pos() for OSD menus 2025-01-15 18:28:44 +11:00
Andy Piper
2c3eec070f AP_OSD: use get_stick_gesture_pos() for OSD menus 2025-01-15 18:28:44 +11:00
Andy Piper
7805477fb8 AP_Camera: use get_stick_gesture_pos() for RunCam menus 2025-01-15 18:28:44 +11:00
Peter Barker
cc0669ffa3 GCS_MAVLink: remove code for sending of BATTERY2 message 2025-01-15 18:16:53 +11:00
Peter Barker
716916034a AP_HAL_ChibiOS: remove code for sending of BATTERY2 message 2025-01-15 18:16:53 +11:00
Randy Mackay
8c2f599228 AP_SerialManager: alphabetise protocol param values 2025-01-15 14:54:14 +09:00
Randy Mackay
d43a4713a5 AP_Proximity: alphabetise protocol param values 2025-01-15 14:54:14 +09:00
Randy Mackay
03888556a7 AP_OpticalFlow: alphabetise type param values 2025-01-15 14:54:14 +09:00
Randy Mackay
32ded53f95 AP_Mount: alphabetise type param values 2025-01-15 14:54:14 +09:00
Randy Mackay
6facdeb430 AP_CANManager: alphabetise protocol param values 2025-01-15 14:54:14 +09:00
Ryan Friedman
4086278394 AP_DDS: treat goal publisher relying on get_target_location as external control
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2025-01-15 12:27:43 +11:00
Ryan Friedman
ceb75dce6b AP_Vehicle: treat goal publisher relying on get_target_location as external control
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2025-01-15 12:27:43 +11:00
Iampete1
230f8248c9 GCSMAVLink: MisisonItemProtocol: fill in targets after reading item and set type and seq in getter 2025-01-14 03:41:10 +00:00
Iampete1
9b39ab0a6d GCS_MAVLInk: MissionItemProtocol_Waypoints: remove unnessisary sets on ret_packet 2025-01-14 03:41:10 +00:00
Iampete1
8b6f58b024 AP_Mission: mission_cmd_to_mavlink_int ensure returnd packet is fully initialised 2025-01-14 03:41:10 +00:00
Peter Barker
d015618e70 AP_HAL_SITL: Periph: stop running SITL updates off main thread
the same code present in the normal HAL-SITL scheduler was not copied across when this method was created.

Without it, if a non-main thread called delay we will attempt to do things like update the sitl_model (ie. SIM_Aircraft) object.  We have no protections in place (nor should we have) for this happening when the main thread is in the middle of doing the SITL updates, so corruption is definitely going to happen at some stage!
2025-01-14 12:15:45 +11:00
Ryan Friedman
fa04004a02 AP_Soaring: Add named value float publisher
* This sends the EKF estimate of the thermal to mavproxy_soar
* Useful until we have proper mavlink packets for soaring state

Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2025-01-14 11:56:39 +11:00
Peter Barker
543e6028db AP_Servo_Telem: rearrange log-structure ifdefs
put the positive clause first to be consistent across codebase
2025-01-14 11:46:13 +11:00
Peter Barker
c30e3ed141 AP_NavEKF2: rearrange log-structure ifdefs
put the positive clause first to be consistent across codebase
2025-01-14 11:46:13 +11:00
Peter Barker
5fef5adade AP_HAL: rearrange log-structure ifdefs
put the positive clause first to be consistent across codebase
2025-01-14 11:46:13 +11:00
Peter Barker
5c1d480adc AP_CANManager: rearrange log-structure ifdefs
put the positive clause first to be consistent across codebase
2025-01-14 11:46:13 +11:00
Peter Barker
10b2d542ed AP_AIS: rearrange log-structure ifdefs
put the positive clause first to be consistent across codebase
2025-01-14 11:46:13 +11:00
Peter Barker
5991bad237 AC_Fence: rearrange log-structure ifdefs
put the positive clause first to be consistent across codebase
2025-01-14 11:46:13 +11:00
Andrew Tridgell
edecd28703 AP_RPM: save some flash when features disabled 2025-01-14 11:46:13 +11:00
Andrew Tridgell
ed7d4051aa AP_Mount: save some flash when features disabled 2025-01-14 11:46:13 +11:00
Andrew Tridgell
6c8a6bedc9 AP_ESC_Telem: save some flash when features disabled 2025-01-14 11:46:13 +11:00
Andrew Tridgell
f92bd68a0e AP_Camera: save some flash when features disabled 2025-01-14 11:46:13 +11:00
Andrew Tridgell
a1ebbce08b AP_Beacon: save some flash when features disabled 2025-01-14 11:46:13 +11:00
Andrew Tridgell
3ddf54883d AC_PrecLand: save some flash when features disabled 2025-01-14 11:46:13 +11:00
Andrew Tridgell
fe1fc5b37a AC_Avoidance: save some flash when features disabled 2025-01-14 11:46:13 +11:00
Peter Barker
c1c438d5bd AP_HAL: replace HAL_NO_UARTDRIVER with AP_HAL_UARTDRIVER_ENABLED 2025-01-14 11:26:37 +11:00
Peter Barker
f29e2cb19c AP_HAL_ChibiOS: replace HAL_NO_UARTDRIVER with AP_HAL_UARTDRIVER_ENABLED 2025-01-14 11:26:37 +11:00
Peter Barker
135805d290 AP_HAL: remove unused GCS.h import 2025-01-14 11:26:37 +11:00
Andy Piper
7bfb135822 AP_BLHeli: use native motor numbering 2025-01-14 11:24:52 +11:00
Andy Piper
417a8a5147 AP_BLHeli: normalize ESC index correctly with iomcu 2025-01-14 11:24:52 +11:00
Iampete1
6fa3d8e18b AP_Volz_Protocol: servo telem rename valid_types to present_types 2025-01-14 10:49:31 +11:00
Iampete1
d47c9e2768 AP_Servo_Telem: servo telem rename valid_types to present_types 2025-01-14 10:49:31 +11:00
Iampete1
00e920b79d AP_Scripting: servo telem rename valid_types to present_types 2025-01-14 10:49:31 +11:00
Iampete1
d41a5ba8b7 AP_PiccoloCAN: servo telem rename valid_types to present_types 2025-01-14 10:49:31 +11:00
Iampete1
e26bda8df4 AP_DroneCAN: servo telem rename valid_types to present_types 2025-01-14 10:49:31 +11:00
Iampete1
5aaebdf746 AP_Servo_Telem: TelemetryData: remove unused stale and valid methods 2025-01-14 10:49:31 +11:00
Iampete1
265f5dfad9 AP_Scripting: allow generation of fields that check or set a bitmask 2025-01-14 10:49:31 +11:00
Iampete1
4189167a78 AP_Scripting: docs: remove incorrect camera creation function
Fix generator to skip generation of docs for generation methods that
don't exist, and to avoid generating Lua creation methods that couldn't
be called.

Co-authored-by: Thomas Watson <twatson52@icloud.com>
2025-01-14 10:49:31 +11:00
Iampete1
9c8e353ada AP_Servo_Telem: add getter for telem struct 2025-01-14 10:49:31 +11:00
Iampete1
decfeeeaf5 AP_Scripting: add bindings for servo telem 2025-01-14 10:49:31 +11:00
Peter Barker
2d57944280 AP_RangeFinder: tidy alert sending 2025-01-14 10:16:32 +11:00
muramura
95f4b326a4 AP_RangeFinder: Notify different alerts 2025-01-14 10:16:32 +11:00
Peter Barker
beb3dd1519 AP_HAL_SITL: remove redundant nullptr checks on _sitl member
nullptr is checked for at the top of this function, no need to check it after that
2025-01-14 09:48:56 +11:00
Peter Barker
6d31555236 AP_HAL_SITL: remove command-line option enabling synthetic clock
it's always on, all the time

this has always been set for many years
2025-01-14 09:38:52 +11:00
Peter Barker
af908c5d2f AP_HAL: remove command-line option enabling synthetic clock
it's always on, all the time

this has always been set for many years
2025-01-14 09:38:52 +11:00
Peter Barker
61eea7e11c SITL: correct buffer size in SIM_FETtecOneWireESC read
no need to subtract one here; read enough bytes to fill the buffer
2025-01-13 22:14:54 +11:00
Hayden Donald
609551212a AP_HAL_ChibiOS: Here4FC change WS2812 led PWM to 10/11
Changed the PWM from 9/10 to 10/11 for the WS2812 leds
2025-01-12 10:20:44 +11:00