Andy Piper
3dbcbe0026
AP_Arming: do not enable minimim altitude fence on arming
...
call appropriate fence method for auto-enablement
2024-07-24 08:24:06 +10:00
Andy Piper
8287d4f2d0
AC_Avoidance: take into account minimum altitude fence when calculating climb rate
2024-07-24 08:24:06 +10:00
Andy Piper
95b39f64e3
AP_Mission: add comment about new fence API
2024-07-24 08:24:06 +10:00
Andy Piper
f73154349b
GCS_MAVLink: use bitmask based enablement for fences
2024-07-24 08:24:06 +10:00
Bob Long
230269bed8
HAL_ChibiOS: add adjustable wdg timeout for hwdefs
...
This allows the watchdog timeout to be adjusted in the hwdef.dat file,
so that critical nodes like ESCs can recover more quickly.
2024-07-23 19:53:38 +10:00
Andrew Tridgell
03bdbea77c
hwdef: enable relay support in MatekL431-DShot fw
...
the PWM expansion boards can also be used for relay control, often
combined with PWM output
2024-07-23 18:42:56 +10:00
Rhys Mainwaring
4354072d34
SITL: SIM_Rover: add simulation for omni3 mecanum rover
...
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-07-23 13:27:04 +10:00
James O'Shannessy
ce0ae33c5b
AP_HAL_ChibiOS: Capture the case where the persistent parameter is the newer format INSn_ACC_ID
...
This fixes the handling of the newer INSn_* parameters when loading those stored in persistent memory.
2024-07-23 12:06:18 +10:00
James O'Shannessy
c771440ea4
AP_InertialSensor: Fix persistent storing of IMU Z Scale
...
Fixes INSn_ACCSCAL_Z not being stored in persistent storage when bootloader is flashed.
2024-07-23 11:59:49 +10:00
xiaozhou
e2cb4ba232
AP_Mount: Topotek image tracking fix
...
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2024-07-23 10:51:09 +10:00
xiaozhou
69e4005bb6
AP_Mount: Topotek retrieves model name
...
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2024-07-23 10:51:09 +10:00
xiaozhou
858aff5f4f
AP_Mount: Topotek handles new version format
...
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2024-07-23 10:51:09 +10:00
muramura
7731fc09e2
AP_HAL_SITL: If HAL_CAN_WITH_SOCKETCAN is undefined, treat it as NONE
2024-07-23 10:47:16 +10:00
Michael du Breuil
edaddc0431
AP_TECS: Use aircraft stall speed
...
When stall prevention is enabled we were scaling from the aircraft's
minimum flight speed. However this is normally already picked as being
above the stall speed, and for a variety of reasons we may want to pin
the aircraft at a higher minimum speed. But if the aircraft was
commanded to fly to close to that minimum speed as soon as it banked for
a pattern it would command a increase in speed to keep it away from
stalling. However if your minimum speed is far from stalling this
increase was incorrect. To make it worse what this actually results in
happening is an aircraft diving for more speed (over 10 m/s on some
aircraft) as well as descending to gain that speed resulting in over 200
foot deviations in altitude control.
2024-07-23 10:37:24 +10:00
Michael du Breuil
5005809e74
AP_Vehicle: add stall speed parameter for plane
2024-07-23 10:37:24 +10:00
Thomas Watson
b64ed6ca56
AP_Scripting: dynamically load some binding objects
...
Only create the binding object (singleton metatable/userdata or C
function reference) once the user first references a particular
singleton or userdata creation function. Once created, the object is
stored into the script's environment so it doesn't get recreated on the
next reference and there isn't any further overhead. The userdatas are
no longer shared between scripts which imposes a slight memory penalty
for multiple scripts using the same singleton but this avoids an
additional lookup time cost.
Userdata and ap_objects aren't eligible for this optimization as the C++
code might want a particular metatable at any time.
Saves ~9.3K Lua heap.
2024-07-23 10:34:52 +10:00
Thomas Watson
059af2117d
AP_Scripting: place bindings into global table
...
The global table is then used as the __index metamethod of each state's
environment table. Avoids the overhead of loading binding objects into
each state. The binding objects are immutable from Lua so sandboxing is
not violated.
Does have the slight downside that a script can no longer know all the
binding names by enumerating _ENV.
Saves ~700B of memory per loaded script.
2024-07-23 10:34:52 +10:00
Thomas Watson
9cbec043d0
AP_Scripting: remove __call metamethod from singleton metatables
...
The __call metamethod was set to the metatable itself. With __call not
present, Lua will try to call the metatable (and fail), which is the
same behavior as with the __call metamethod set to the metatable.
Saves ~2K Lua heap.
2024-07-23 10:34:52 +10:00
Thomas Watson
8e303675fe
AP_Scripting: don't put userdata and ap_objects into globals
...
They are never accessed from globals. Only their metatables are
accessed, using luaL_getmetatable.
Saves ~2.9K of Lua heap.
2024-07-23 10:34:52 +10:00
Thomas Watson
50eac0ef31
AP_Scripting: keep enum definitions in flash
...
Saves ~100B of statically allocated RAM.
2024-07-23 10:34:52 +10:00
chiara-septentrio
fc8147ead0
AP_GPS:Septentrio constellation choice
2024-07-23 10:32:32 +10:00
Peter Barker
56773f09b4
AP_Scripting: docs for get_resistance
2024-07-22 09:09:26 +10:00
Peter Barker
6514a3522b
AP_Scripting: add battery-resistance-checking example
2024-07-22 09:09:26 +10:00
Peter Barker
e94ebe4d1a
AP_Scripting: add battery resistance to bindings
2024-07-22 09:09:26 +10:00
Peter Barker
ba135b9008
SITL: split MAVLink and physical gimbal simulations
2024-07-21 17:01:47 +10:00
Peter Barker
ed3aeb39fd
AP_HAL_SITL: split MAVLink and physical gimbal simulations
2024-07-21 17:01:47 +10:00
Peter Barker
fc28e2d7b8
SITL: adjust for renaming of Gimbal to SoloGimbal
2024-07-21 14:22:05 +10:00
Peter Barker
9b3809c89f
AP_HAL_SITL: adjust for renaming of Gimbal to SoloGimbal
2024-07-21 14:22:05 +10:00
Peter Barker
1ce6aa7e38
AP_HAL: adjust for renaming of Gimbal to SoloGimbal
2024-07-21 14:22:05 +10:00
Peter Barker
ae4254bba8
SITL: rename SIM_Gimbal files to SIM_SoloGimbal
2024-07-21 14:22:05 +10:00
Willian Galvani
aca9940534
AP_Scripting: add Readme.md for generating message definitions
2024-07-20 20:45:41 +01:00
Peter Barker
9c1fe4e1c9
SIM_VectorNav: stop using nmea_printf on buffer data
...
can't use nmea_printf here as the buffer data won't be null-terminated
2024-07-20 22:44:19 +10:00
Peter Barker
dcf342d7e3
SITL: add instructions on testing simulated mavlink gimbal
2024-07-20 22:44:10 +10:00
Peter Barker
2584cfd786
SITL: use distinct source system for gimbal
...
gimbal was sending mavlink into ArduPilot with the target system's own sysid/compid tuple. ArduPilot was simply discarding these as its own messages being looped back to it
2024-07-20 22:44:10 +10:00
Peter Barker
16a9e53bdb
AP_Mount: tidy Solo defines
2024-07-20 22:44:10 +10:00
Peter Barker
70729df4c0
AP_HAL: enable Solo Gimbal in SITL
2024-07-20 22:44:10 +10:00
Rhys Mainwaring
5919ef69cb
AP_DDS: add param DDS_DOMAIN_ID
...
- Require reboot.
- Set DDS_DOMAIN_ID range: 0 to 232..
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-07-20 19:13:53 +10:00
Stephen Dade
887a890c4a
SITL: Add skid steering motorboat
2024-07-20 19:10:09 +10:00
Peter Barker
1626611e0b
SITL: add documentation for SIM_ACC?_RND parameters
2024-07-20 13:43:44 +10:00
bugobliterator
5a54d9a2ec
AP_Networking: allow reconnection to TCP server or client
2024-07-17 18:20:14 +10:00
Peter Barker
7e722eeb94
hwdef: prune out redundant lines
...
these have been merged with bad lines in them
2024-07-17 17:49:57 +10:00
BLash
3f00280628
AP_ExternalAHRS_VectorNav: Move allocation to local scope
...
Move receive_buf to method scope allocation rather than class scope
2024-07-17 17:49:18 +10:00
BLash
b3961ec2eb
AP_ExternalAHRS_VectorNav: Update VectorNav sim to respond to received commands
...
Aside from the RRG,1 call, the simulation should reply with exactly what was received as a receipt confirmation to allow the driver to proceed past init
2024-07-17 17:49:18 +10:00
BLash
34031cc6b6
AP_ExternalAHRS_VectorNav: Bugfixes and review comment address
...
"VNERR" does not match beginning of message_to_send, so have to prevent it from returning due to the string compare. Also must prevent exiting the decode before the sentence has completed so that we can go on to print the error code term.
Fix bug preventing disabling of ASCII measurements
Instead of snprintf the command to message_to_send then executing run_command, allow run_command to accept a string and format spec
Add check to ensure message_to_send is greater than length 6 before attempting to read past 6
2024-07-17 17:49:18 +10:00
BLash
ed6ee51783
AP_ExternalAHRS_VectorNav: Minor code clarity improvements
...
Add clarity to send_command_blocking by improving comment and directly returning instead of breaking
2024-07-17 17:49:18 +10:00
BLash
1288810c70
AP_ExternalAHRS_VectorNav: Handle VNERR responses
...
Print received VNERR response to console and continually retry sending the configuration message, instead of panicing
2024-07-17 17:49:18 +10:00
BLash
024d50ed09
AP_ExternalAHRS: VectorNav: Disable ASCII messages on both ports, rather than just active port
...
This change prevents a commonly seen baudrate overflow error on the unused port.
Also pause asynchronous communications during initial configuration.
2024-07-17 17:49:18 +10:00
BLash
d5ff3ed35a
AP_ExternalAHRS: VectorNav: Add response validation to all sent commands
...
Expands wait_register_response (and renames to send_command_blocking)
to accept any arbitrary command, and uses the new method for all sent
commands
2024-07-17 17:49:18 +10:00
Peter Barker
d4adb1923a
hwdef: stop hwdefs defining HAL_GPIO_LED_ON to 0
2024-07-17 17:42:01 +10:00
Peter Barker
9a1a99fd61
AP_HAL_Boards: stop users specifying HAL_GPIO_LED_ON as the default value
2024-07-17 17:42:01 +10:00
bugobliterator
d466618b11
AP_HAL_ChibiOS: add flash ecc corrupt method
2024-07-17 17:31:15 +10:00
bugobliterator
ceea189fa3
AP_HAL_ChibiOS: enable heap allocation if flash space for bootloader is > 128K
2024-07-17 17:31:15 +10:00
Peter Barker
fd80d331cb
AP_HAL: add simulator for 1-LED boards
2024-07-17 17:18:27 +10:00
Peter Barker
647048f703
SITL: add simulator for 1-LED boards
2024-07-17 17:18:27 +10:00
Peter Barker
7a15b4aae5
AP_Notify: add support for blinking 1 LED for notify
2024-07-17 17:18:27 +10:00
Peter Barker
338e347427
AP_Notify: remove unused BUZZER_ON/OFF defines
...
replaced by HAL_BUZZER_ON
2024-07-17 11:14:05 +09:00
Oleksiy Protas
5190aee9ae
AP_Camera: proper string formatting
...
Incoming strings are 32 bytes and may not be null-terminated if the full width is used
2024-07-17 10:39:46 +10:00
Thomas Watson
63ab7bec69
AP_HAL_ESP32: use correct unformatted system ID length
...
Avoids stuffing uninitialized data into the ID.
2024-07-17 09:08:51 +10:00
Thomas Watson
a3aa278589
AP_HAL_SITL: improve periph simulation efficiency
...
Removes busywait for simulation state packet, dramatically reducing CPU
usage. The dominant wait time in AP_Periph is 1024 microseconds as this
is the default value of HAL_PERIPH_LOOP_DELAY_US, so a 1ms wait is
unlikely to be a problem.
2024-07-17 09:06:16 +10:00
Andrew Tridgell
0179dc0a68
GCS_MAVLink: default MAVLink HAGL support off on low flash boards
2024-07-17 08:03:18 +10:00
Andrew Tridgell
42a1717676
AP_Scripting: added MAV_CMD_SET_HAGL example
...
for external height source for fixed wing landing
2024-07-17 08:03:18 +10:00
Peter Barker
43dbae54a3
AP_HAL: SIMState: include SITL glider header
...
used if you want to use the Glider model in Sim-on-Hardware
2024-07-16 22:28:57 +10:00
Rhys Mainwaring
4de8e04679
AR_Motors: add frame type Omni3Mecanum
...
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-07-16 16:28:06 +09:00
Andrew Tridgell
e93b3722c9
HAL_QURT: implement safety switch
...
this ensures no outputs during initialisation
2024-07-16 10:54:03 +10:00
Andrew Tridgell
a7363d4c14
HAL_QURT: remove ESC order mapping
...
this is not consistent between ModalAI vehicles, so best done with
SERVOn_FUNCTION parameters
2024-07-16 10:54:03 +10:00
Thomas Watson
1c54dd9e5d
AP_HAL_SITL: allow disabling CAN interfaces
...
Also corrects an issue where setting an invalid type could result in
undefined behavior.
2024-07-16 10:13:11 +10:00
Thomas Watson
ca0cd9a7e8
SITL: allow disabling CAN interfaces
...
Also corrects an issue where setting an invalid type could result in
undefined behavior.
2024-07-16 10:13:11 +10:00
Peter Barker
501d0d8759
AP_Notify: stop using linux board subtype in Notify LED setup
...
... instead have the board definitions define things like we do for ChibiOS
2024-07-16 10:11:40 +10:00
Peter Barker
55308e6d79
AP_HAL: stop using linux board subtype in Notify LED setup
...
... instead have the board definitions define things like we do for ChibiOS
2024-07-16 10:11:40 +10:00
Valentin Berman
4938a6bb42
AP_EFI: DroneCAN: set the last_updated_ms field of efi_state
...
The last_update_ms variable was never set in the DroneCAN implementation of the Electronic Fuel Injector sensor. This causes the function bool AP_EFI::is_healthy to always return false. Solved by adding one line of code to set the variable to the correct value.
2024-07-14 20:19:31 +10:00
Willian Galvani
ef9763fdd7
AP_GPS: hdop and vdop are unitless
2024-07-14 17:23:15 +10:00
Iampete1
b75c62d267
AP_HAL_SITL: AnalogIn: return false for set pin to `ANALOG_INPUT_NONE`
2024-07-14 17:11:47 +10:00
George Zogopoulos
fb40a7f19d
AP_Logger: Fix logged units
2024-07-14 17:07:11 +10:00
Andrew Tridgell
cd8b93e1c5
HAL_QURT: adjustments to support different frames
...
added docs and service files, and support reboot
2024-07-13 14:38:31 +10:00
Andrew Tridgell
f8ce4183b8
AP_Filesystem: support QURT with posix filesystem
...
some features disabled
2024-07-12 15:56:48 +10:00
Andrew Tridgell
3a6024e8ab
AP_Common: support QURT
2024-07-12 15:56:48 +10:00
Andrew Tridgell
4e8f1e6092
AP_HAL: added QURT board type and header
2024-07-12 15:56:48 +10:00
Andrew Tridgell
2fe08b6177
HAL_QURT: revived QURT HAL
...
based around new SDK for ModalAI Voxl2 vehicles
2024-07-12 15:56:48 +10:00
Peter Barker
75f9c4e4fc
AP_HAL: chiibos.h: die nicely if HAL_HAVE_PIXRACER_LED is used
2024-07-11 20:08:13 +10:00
Peter Barker
e42c9a588e
SITL: add support for simulated GPIO LEDs
2024-07-11 20:08:13 +10:00
Peter Barker
bad755f4a5
AP_HAL: add support for simulated GPIO LEDs
2024-07-11 20:08:13 +10:00
Clyde McQueen
630d3fa8a7
AP_NavEKF3: log mag fusion selection to XKFS
2024-07-11 16:16:27 +10:00
Iampete1
a551b4f296
AP_SerialManager: remove Volz port config
2024-07-11 13:07:24 +10:00
Iampete1
8eceff2d7a
AP_Volz_Protocol: move output to thread
2024-07-11 13:07:24 +10:00
Iampete1
0c5160f05c
AP_Volz_Protocol: add range parameter allowing smaller range for improved PWM resolution
2024-07-11 13:07:24 +10:00
Iampete1
71f3dbf098
AP_Volz_Protocol: use popcount
2024-07-11 13:07:24 +10:00
Iampete1
871e9101ff
AP_Volz_Protocol: add CMD union helper
2024-07-11 13:07:24 +10:00
Andrew Tridgell
b34d0c9c87
AP_HAL: removed vector based I2C get_device
...
this is unused and prevents building on QURT
2024-07-11 11:20:47 +10:00
Andrew Tridgell
dbba4559ee
HAL_Linux: removed unused I2C vector get_device
2024-07-11 11:20:47 +10:00
Andrew Tridgell
192972e502
AP_HAL: avoid vector include in I2C API
...
this doesn't work on QURT build and is unused
2024-07-11 11:20:47 +10:00
Andrew Tridgell
ebc7cc2daf
AP_OpticalFlow: cleanup printf warnings
2024-07-11 09:34:29 +10:00
Andrew Tridgell
c40099a162
AP_Rangefinder: cleanup printf warnings
2024-07-11 09:34:29 +10:00
Andrew Tridgell
991ea6326d
AP_Compass: cleanup warnings in printf calls
2024-07-11 09:34:29 +10:00
Peter Barker
f4f79905cc
AP_Notify: example: do not instantiate AP_BoardLED unless the board supports it
2024-07-11 09:34:00 +10:00
Peter Barker
71332dd039
AP_GPS: example: do not instantiate AP_BoardLED unless the board supports it
2024-07-11 09:34:00 +10:00
Peter Barker
ab43668c45
AP_Notify: adjust hwdef files for define renames
2024-07-11 09:34:00 +10:00
Peter Barker
3b764c5812
AP_HAL: adjust hwdef files for define renames
2024-07-11 09:34:00 +10:00
Peter Barker
956ac243e1
AP_HAL_ChibiOS: adjust hwdef files for define renames
2024-07-11 09:34:00 +10:00
Peter Barker
8370e0b08b
AP_Notify: create sanity in GPIO-based LED defines
2024-07-11 09:34:00 +10:00
Andrew Tridgell
393cd3252b
AP_HAL_SITL: switched ENABLE_HEAP to an #if
2024-07-11 09:28:17 +10:00
Andrew Tridgell
3980cbbb82
AP_HAL_Linux: switched ENABLE_HEAP to an #if
2024-07-11 09:28:17 +10:00
Andrew Tridgell
f235b71f6b
AP_HAL: switched ENABLE_HEAP to an #if
2024-07-11 09:28:17 +10:00
Andrew Tridgell
15ef6b1192
AP_HAL_ESP32: switched ENABLE_HEAP to an #if
2024-07-11 09:28:17 +10:00
Andrew Tridgell
64f6abd4d4
AP_HAL_ChibiOS: switched ENABLE_HEAP to an #if
2024-07-11 09:28:17 +10:00
Andrew Tridgell
429294fa1d
AP_Baro: avoid i2c errors with ICP101XX
...
this sensor doesn't like reading at higher than expected rate
2024-07-11 09:27:33 +10:00
Andrew Tridgell
a02cd4b432
AP_Baro: fixed link with clang for shared library
...
avoid unused symbols
2024-07-11 09:27:09 +10:00
Andrew Tridgell
3608a78398
AP_Baro: fixed build with clang
2024-07-11 09:27:09 +10:00
Andrew Tridgell
60f582a6b2
AP_BattMonitor: support I2C INA231 battery monitor
2024-07-11 09:26:17 +10:00
Andrew Tridgell
75ebf96adb
AP_Filesystem: allow for filesystem with no dtype
2024-07-11 09:25:05 +10:00
Andrew Tridgell
64ed86a82e
GCS_MAVLINK: cope with dirent not having dtype
2024-07-11 09:25:05 +10:00
Andrew Tridgell
c2e52af1e2
AP_Filesystem: make fgets() much more efficient
...
normally fgets is on a buffered FILE handle. For AP_Filesystem we use
an unbuffered file descriptor. This means we were reading one byte at
a time from the file
this uses lseek to make fgets() much more efficient by reading the max
buffer size at a time in the file
2024-07-11 09:24:38 +10:00
Peter Barker
b2a7fcda5c
AP_GPS: resolve compilation problem with timeval
...
./../libraries/AP_GPS/AP_GPS_SITL.cpp:37:27: error: aggregate 'timeval first_tv' has incomplete type and cannot be defined
37 | static struct timeval first_tv;
| ^~~~~~~~
compilation terminated due to -Wfatal-errors.
Waf: Leaving directory `/ardupilot/src/build/sitl'
Build failed
-> task in 'objs/AP_GPS' failed (exit status 1):
{task 135805090486368: cxx AP_GPS_SITL.cpp -> AP_GPS_SITL.cpp.0.o}
2024-07-11 09:22:12 +10:00
Andrew Tridgell
7477c4e205
AP_Scripting: fixed remove call
...
need to use AP_Filesystem
2024-07-11 07:43:35 +10:00
Andrew Tridgell
ffc78722f7
HAL_ESP32: removed run_debug_shell
2024-07-11 07:42:54 +10:00
Andrew Tridgell
c4addb7dd0
AP_HAL_SITL: removed run_debug_shell
2024-07-11 07:42:54 +10:00
Andrew Tridgell
2374d6f444
AP_HAL_Linux: removed run_debug_shell
2024-07-11 07:42:54 +10:00
Andrew Tridgell
d54b69a5fe
AP_HAL: removed run_debug_shell
2024-07-11 07:42:54 +10:00
Andrew Tridgell
04bd5aa010
AP_HAL_Empty: removed run_debug_shell
2024-07-11 07:42:54 +10:00
Andrew Tridgell
e86e012896
AP_HAL_ChibiOS: removed run_debug_shell
2024-07-11 07:42:54 +10:00
Andrew Tridgell
4d5095cea1
AP_DDS: fixed cell voltages
...
the std:copy was copying from uint16_t to float
2024-07-11 07:25:33 +10:00
Peter Barker
7f0f851243
hwdef: remove bogus EK2_RPRIMARY from Cube defaults files
...
looks likely, but hasn't ever existed
2024-07-10 22:35:51 +10:00
Peter Barker
4231275f50
AP_Compass: remove default clause from set_status switch
...
forces someone to consider what they need to do for any new state
2024-07-10 18:18:31 +10:00
Peter Barker
afd8d8255f
AP_Compass: use switch statement in failed() method
2024-07-10 18:18:31 +10:00
Peter Barker
ef0de65347
AP_InertialSensor: tidy IMU killing
2024-07-10 18:17:00 +10:00
muramura
d6a79c0e02
RC_Channel: Add a MOUNT2 retract
...
Update libraries/RC_Channel/RC_Channel.cpp
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2024-07-10 17:45:28 +10:00
Peter Barker
31f3a796f1
AP_Proximity: avoid use of int16_t-read call
2024-07-10 17:01:09 +10:00
MattKear
2025712505
AP_RPM: Improve rpm logging
2024-07-10 12:24:15 +10:00
Michael du Breuil
aafa2f3998
AP_Math: Remove template parameter from constructor
...
Not valid in C++20, and makes GCC 14.1.1 very unhappy.
2024-07-10 10:07:24 +10:00
muramura
e48044dc45
AP_InertialSensor: Clearly state the maximum G-force
2024-07-10 10:07:16 +10:00
muramura
9f6edd8d55
AP_Mount: Increment the serial instance
2024-07-10 08:31:25 +09:00
Ep Pravitra
f3d55d821e
SITL: fix json airspeed
...
Airspeed calculation for JSON was not quite working because velocity_air_ef was not updated in SIM_JSON.cpp
Update libraries/SITL/SIM_JSON.cpp
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
Update libraries/SITL/SIM_JSON.cpp
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
comment changes
remove redundant airspeed calculation
2024-07-10 08:24:19 +10:00
James O'Shannessy
9924462618
AP_Mission: Allow Param4 to be uploaded with NaN
...
By default, QGroundControl will attempt to upload Loiter Unlimited with a NaN in param4.
Given this field could be NaN, we allow it through the parser.
See: https://mavlink.io/en/messages/common.html#MAV_CMD_NAV_LOITER_UNLIM
2024-07-09 22:39:57 +10:00
Peter Barker
481e0301dd
hwdef: H757_EVAL: make it not-AP_Periph
...
avoids this compilation error:
../../Tools/AP_Periph/can.cpp:152:33: error: static assertion failed: DroneCAN bootloader cannot support external flash
152 | static_assert(EXT_FLASH_SIZE_MB == 0, "DroneCAN bootloader cannot support external flash");
compilation terminated due to -Wfatal-errors.
2024-07-09 12:00:52 +10:00
Randy Mackay
5a8ed5fb51
AP_NavEKF: option to align extnav to optflow pos estimate
2024-07-09 11:59:36 +10:00
Thomas Watson
1249388f23
AP_Common: use template parameter in bitmask functions
...
Substantially improves code optimization and reduces memory usage.
2024-07-09 11:51:41 +10:00
Thomas Watson
6a4520e8fd
AP_Common: clean up bitmask operators
...
Code already won't compile if there are different numbers of bits as the
template parameter will be different.
2024-07-09 11:51:41 +10:00
Thomas Watson
b030b8e789
AP_Common: correctly bound bitmask datatypes
...
Probably won't work correctly (and of questionable use) if less than 1.
The `first_set()` function might not be able to return a valid value if
greater than INT16_MAX.
unsigned int needs to be >= uint32_t so that the shift ops are in range.
2024-07-09 11:51:41 +10:00
Thomas Watson
0b320fe303
AP_Common: unify bitmask out of bounds checking
...
Ensures out-of-bounds reads and writes are never performed for setting,
clearing, and checking. Fixes test failure when the number of bits
evenly divides the word size.
2024-07-09 11:51:41 +10:00
Thomas Watson
9a89223531
AP_Common: fix bitmask setall()
...
Fixes an issue where the last word was not set to all 1s if the number
of bits evenly divided the word size.
Also fixes UB if there were 31 valid bits.
2024-07-09 11:51:41 +10:00
Thomas Watson
122cd72d9c
AP_Common: improve bitmask test coverage
2024-07-09 11:51:41 +10:00
Thomas Watson
4a2f03f851
AP_Common: test more bitmask bit widths
...
Actually test different widths and reveal problems with edge cases.
2024-07-09 11:51:41 +10:00
Thomas Watson
521cf00964
AP_Common: templatify bitmask tests
...
Enables testing of different widths and edge cases.
2024-07-09 11:51:41 +10:00
Peter Barker
aff3af67e6
AP_Logger: remove short-filename compatability code
...
We used to produce files hwih looked like log1.BIN. We moved to 00000001.BIN instead so things collate.
This code allowed the autopilot to return data from SD cards which had old logs on them.
2024-07-09 11:34:40 +10:00
Iampete1
f3743b869d
AC_PID: correct error caculation to use latest target
2024-07-09 11:33:03 +10:00
Andrew Tridgell
b19186980a
AP_Mount: added sending of position data to Siyi gimbal
...
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
this will allow for exif tags of position for photos
2024-07-09 11:28:57 +10:00
Peter Barker
99fb5a994e
AC_WPNav: correct calculation of predict-accel when zeroing pilot desired accel
2024-07-09 10:52:14 +10:00
Peter Barker
c8a20726ff
AP_NavEKF3: do not store prediction-enabled as state
...
this is only used in one place, and that place is called from the same routine setting the persistent state. The only other place which calls readIMUData shouldn't be running the prediction step, but mmay, depending on the previous setting of the prediction step.
We are not initialising this state on filter reset, so it's possible that the state will be set when we do an InitialiseFilterBootstrap, which is probably not desired
2024-07-09 10:45:03 +10:00
Peter Barker
3208491983
AP_Logger: remove twin paths for writing FMT messages
...
This stops us tracking formats-written in two places.
The Write() method will now emit formats as required and set the relevant bit in the backend-owned bitmask of formats sent.
2024-07-09 10:40:08 +10:00
Willian Galvani
64e859ecc5
AP_Compass: warn user if fix_radius() is skipped
2024-07-09 10:13:34 +10:00
Willian Galvani
325d6f6c94
AP_Compass: use ahrs for location instead of GPS directly for calibration
2024-07-09 10:13:34 +10:00