Randy Mackay
cfd1e98333
AP_Mount: topotek safely parses version
2024-07-24 17:28:24 +10:00
Randy Mackay
1b77751aef
AP_SmartRTL: add point made public
2024-07-24 17:22:44 +10:00
Henry Wurzburg
76abc6850f
Filter: add "source" to option 5
2024-07-24 17:20:30 +10:00
Randy Mackay
a1579bc31e
SITL: integrate SlungPayload
2024-07-24 17:09:06 +10:00
Randy Mackay
5c2b758f42
SITL: add SlungPayload
2024-07-24 17:09:06 +10:00
George Zogopoulos
e170710de9
SITL: Glider improvements
...
Fixed balloon going below ground.
Enabled glider torque logging.
2024-07-24 17:03:48 +10:00
Peter Barker
478d26d69c
AP_Notify: rename LED_1 pin define to AP_NOTIFY_GPIO_LED_1_PIN
2024-07-24 09:13:50 +10:00
Peter Barker
a4577685a7
AP_HAL_ChibiOS: rename LED_1 pin define to AP_NOTIFY_GPIO_LED_1_PIN
2024-07-24 09:13:50 +10:00
Peter Barker
cc190f537f
AP_OSD: correct compilation with AP_RRSI_ENABLED false
...
Co-authored-by: David Buzz <davidbuzz@gmail.com>
2024-07-24 09:11:39 +10:00
Peter Barker
1afa801b19
AP_LTM_Telem: correct compilation with AP_RRSI_ENABLED false
...
Co-authored-by: David Buzz <davidbuzz@gmail.com>
2024-07-24 09:11:39 +10:00
Andy Piper
ccfbfddf7e
AC_Fence: address minor review comments
2024-07-24 08:24:06 +10:00
Andy Piper
55075961b2
AP_Mission: address minor review comments
2024-07-24 08:24:06 +10:00
Andrew Tridgell
68f2593089
AC_Fence: fixed FENCE_AUTOENABLE=2
...
needs to auto-enable on takeoff complete
2024-07-24 08:24:06 +10:00
Andy Piper
5bc3727145
AC_Fence: support FENCE_OPTIONS on copter
2024-07-24 08:24:06 +10:00
Andy Piper
29a320b310
AC_Avoidance: correctly set back away speed for minimum alt fences
2024-07-24 08:24:06 +10:00
Andy Piper
37e0923ec2
AP_Arming: allow precise wording of fence pre-arm messages
2024-07-24 08:24:06 +10:00
Andy Piper
f0456f29dd
AC_Fence: always disable Min Alt fence on landing
...
allow precise pre-arm messages
2024-07-24 08:24:06 +10:00
Andy Piper
255fac215f
AP_Mission: generic fence handling in missions
2024-07-24 08:24:06 +10:00
Andy Piper
04dd7de1ed
AC_Fence: disable fences for landing by suppressing in the fence check rather than using a state machine
...
simplify takeoff auto-enablement
2024-07-24 08:24:06 +10:00
Andy Piper
d5c6f3fe06
AC_Fence: add reset_fence_floor_enable() and use it in plane when landing is aborted
2024-07-24 08:24:06 +10:00
Peter Barker
a4c7819117
AC_Fence: clear breach of disabled fence
...
skip breach checks if no fences
correct initialisation of _num_fences in the case of no fences in eeprom
2024-07-24 08:24:06 +10:00
Andy Piper
3fabec4158
AP_Arming: ensure fence enablement on arming is inverted on disarming
2024-07-24 08:24:06 +10:00
Andy Piper
174d5f07bb
AC_Fence: ensure fence enablement on arming is inverted on disarming
...
correct detection of polyfence
2024-07-24 08:24:06 +10:00
Andy Piper
f0f8187c7f
AC_Fence: add ability to auto-enable fence floor while doing fence checks
...
control copter floor fence with autoenable
autoenable floor fence with a margin
check for manual recovery only after having checked the fences
make auto-disabling for minimum altitude fence an option
output message when fence floor auto-enabled
re-use fence floor auto-enable/disable from plane
auto-disable on landing
do not update enable parameter when controlling through mavlink
make sure get_enabled_fences() actually returns enabled fences.
make current fences enabled internal state rather than persistent
implement auto options correctly and on copter
add fence names utility
use ExpandingString for constructing fence names
correctly check whether fences are enabled or not and disable min alt for landing in all auto modes
add enable_configured() for use by mavlink and rc
add events for all fence types
make sure that auto fences are no longer candidates after manual updates
add fence debug
make sure rc switch is the ultimate authority on fences
reset auto mask when enabling or disabling fencing
ensure auto-enable on arming works as intended
simplify printing fence notices
reset autofences when auot-enablement is changed
2024-07-24 08:24:06 +10:00
Andy Piper
370b0d7b9c
AP_Logger: add events for all fence types
2024-07-24 08:24:06 +10:00
Andy Piper
0288e1e79c
RC_Channel: use fence enable_configured()
2024-07-24 08:24:06 +10:00
Andy Piper
d16615923d
AP_Frsky_Telem: use fence enable_configured()
2024-07-24 08:24:06 +10:00
Andy Piper
0c6ea4790d
AP_Common: fix initialization of ExpandingString so that it can be used on the stack
...
zero out passed in buffers for ExpandingString
2024-07-24 08:24:06 +10:00
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
Peter Barker
df0b4cdf6d
AP_HAL_ChibiOS: chibios_hwdef.py: correct flake8 issues
2024-07-09 10:13:00 +10:00
Oleksiy Protas
6d27f69c96
GCS_MAVLink: correct a debugging message
...
Probably changed from a pointer to reference at some point and forgot to update a normally disabled block
2024-07-09 10:10:52 +10:00
Andy Piper
1b5febe046
AP_HAL_ChibiOS: iFlight 2RAWH743
2024-07-09 09:43:38 +10:00
Randy Mackay
b6c5ad450d
AP_Common: char_to_hex returns 0 on invalid char
2024-07-09 09:08:51 +10:00
laozhou
611fb94660
AP_Mount: integrate topotek gimbal driver
...
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2024-07-09 09:08:51 +10:00
laozhou
d5d1b9885c
AP_Mount: add topotek backend
...
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2024-07-09 09:08:51 +10:00
HiRCBro
8c58334173
AP_HAL_ChibiOS: longBowF405WING
2024-07-09 09:05:27 +10:00
Peter Barker
933aed5f91
AP_Scripting: add missing scheduler include
...
corrects compilation of cubeorange-periph-heavy
2024-07-09 07:40:03 +10:00
cuav-chen2
f906fffff7
hwdef: fixed pin definition for C-RTK2-HP
2024-07-08 22:10:27 +10:00
Andrew Tridgell
db19bce1d2
AP_Common: wrap _malloc_r on cygwin
...
fixes dual allocation heap bug
See https://cygwin.com/pipermail/cygwin/2000-July/038916.html
2024-07-07 07:11:59 +10:00
Andrew Tridgell
842a4f507b
AP_Scripting: added NMEA 2000 EFI driver
...
this has been tested on a marine engine, and correctly produces key
telemetry data
the NMEA_2000.lua module is broken out to make it easier to add other
NMEA 2000 based drivers
2024-07-06 07:19:25 +10:00
Peter Barker
9090420db0
SITL: remove duplicated crc code
...
same as one we already have
2024-07-05 23:02:18 +10:00
Peter Barker
c1c3580f8b
AP_Logger: remove unused _log_file_size_bytes variable
...
AP_Logger: comment corection
2024-07-05 21:42:21 +10:00
BLash
0e4124060c
SITL: VectorNav: Add support for sensors outside VN-100 and VN-300
...
Includes naming changes to match new broadened usage
2024-07-05 21:41:22 +10:00
BLash
271f08fc03
AP_ExternalAHRS: VectorNav: Add support for sensors outside VN-100 and VN-300
...
Includes naming changes to match new broadened usage
2024-07-05 21:41:22 +10:00
Peter Barker
1916490ae6
AC_Sprayer: create and use an AP_Sprayer_config.h
2024-07-05 14:27:45 +10:00
bugobliterator
b93c9256c7
AP_HAL_ChibiOS:hwdef/common: disable second core on dual core MCUs
2024-07-05 14:16:27 +10:00
bugobliterator
c8fe71b6b0
AP_HAL_ChibiOS: use debug option 3 which includes defines as well
2024-07-05 14:16:27 +10:00
Peter Barker
6ce7e179d7
RC_Channel: produce error if feature compiled out and aux func initialised
2024-07-04 19:41:07 +10:00
Peter Barker
ce48932f4d
AP_NavEKF3: remove storedRange member variable if rangefinder measurements disabled
2024-07-04 19:21:44 +10:00
Peter Barker
3dff46b2b2
AC_AutoTune: remove unused variables
2024-07-04 13:19:12 +10:00
Peter Barker
35bdadb8ec
AC_AutoTune: adjust variable names to include _cd postfix
2024-07-04 13:19:12 +10:00
Vincent Poon
fba47e641d
Update Pixhawk6C hwdef.dat
...
Fix https://github.com/ArduPilot/ardupilot/issues/25840
The overcurrent detection of the HIPOWER current limiting chip is connected to PC11 on the Pixhawk 6C.
2024-07-04 06:37:58 +10:00
George Zogopoulos
61c910b08b
AP_Scripting: Added script for Quad-X CoM compensation
...
The script uses the scripting matrix to produce non-equal
front and back thrust, compensating for the lever arm between the center
of thrust and the center of mass.
2024-07-03 18:44:36 +10:00
George Zogopoulos
2cd5413b0d
SITL: Documented SIM_WIND_DIR_Z
2024-07-03 18:13:11 +10:00
Willian Galvani
cb74ebbddd
EKF3: allow earth-frame fields to be estimated with an origin but no GPS
2024-07-03 16:49:27 +10:00
bnsgeyer
5fa2fcfa56
AC_AutoTune: return freqresp ring buffers to original implementation
2024-07-01 22:57:55 -04:00
bnsgeyer
475663e199
AC_AutoTune: use ring buffer only for dwells
2024-07-01 22:57:55 -04:00
bnsgeyer
bb6c52d508
AC_AutoTune: remove deletion of ring buffers
2024-07-01 22:57:55 -04:00
bnsgeyer
f50bb54112
AC_AutoTune: more suggested changes
2024-07-01 22:57:55 -04:00
bnsgeyer
088b7ec094
AC_AutoTune: incorporate suggested changes
2024-07-01 22:57:55 -04:00
Bill Geyer
41ed4d1321
AC_AutoTune: use new new macro
...
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2024-07-01 22:57:55 -04:00
bnsgeyer
c4f4067fd5
AC_AttitudeControl: add accessors to set rate limit
2024-07-01 22:57:55 -04:00
bnsgeyer
b13efc86af
AC_AutoTune: use attitude controller to enforce rate and accel limits
2024-07-01 22:57:55 -04:00
bnsgeyer
ad1b01cd56
AC_AutoTune: improve RFF dwell test and data processing
2024-07-01 22:57:55 -04:00
Bill Geyer
30c2e1f53b
AC_AutoTune: general cleanup and protect against freq exceedences
2024-07-01 22:57:55 -04:00
bnsgeyer
cc7e43d643
AC_AutoTune: max gain, rate p and d tuning use common search method
2024-07-01 22:57:55 -04:00
bnsgeyer
cf50aa1321
AC_AutoTune: trad heli variable cleanup
2024-07-01 22:57:55 -04:00
bnsgeyer
ad58f3e1f8
AC_AutoTune: reworked updating max gains
2024-07-01 22:57:55 -04:00
bnsgeyer
989f48f97a
AC_AutoTune: reworked updating angle p up
2024-07-01 22:57:55 -04:00
bnsgeyer
cd18607f25
AC_AutoTune: reworked updating rate p and d up
2024-07-01 22:57:55 -04:00
bnsgeyer
61182c0e96
AC_AutoTune: reworked dwell_test and updating ff up
2024-07-01 22:57:55 -04:00
bnsgeyer
2339c7daed
AC_AutoTune: moved more into dwell_test_init
2024-07-01 22:57:55 -04:00
bnsgeyer
7ff99a39f0
AC_AutoTune: fix tests to work better
2024-07-01 22:57:55 -04:00
bnsgeyer
3943a69b33
AC_AutoTune: fix object buffers to dynamically size
2024-07-01 22:57:55 -04:00
bnsgeyer
528b7eb438
AC_AutoTune: general cleanup to make code more efficient
2024-07-01 22:57:55 -04:00
bnsgeyer
9e4d118cc9
AC_AutoTune: remove sweep for Rate D up
2024-07-01 22:57:55 -04:00
bnsgeyer
32af6216b7
AC_Autotune: tradheli use dwell for FF test
2024-07-01 22:57:55 -04:00
bnsgeyer
dd1f0cdcf7
AC_AutoTune: make rate freq sweeps safer
2024-07-01 22:57:55 -04:00
Henry Wurzburg
48e27c382a
AP_RSSI: make metadata more consistent
2024-07-02 11:34:29 +10:00
Henry Wurzburg
f087e9d25d
AP_RangeFinder: make metadata more consistent
2024-07-02 11:34:29 +10:00
Henry Wurzburg
a03ccd1a8a
AP_BattMonitor: make metadata more consistent
2024-07-02 11:34:29 +10:00
Henry Wurzburg
59db5de78c
AP_Airspeed: make metadata more consistent
2024-07-02 11:34:29 +10:00
Thomas Watson
717c5ff863
AP_Scripting: ignore hidden Lua files
...
On macOS, sometimes ._script.lua is created to store metadata when the
user copies script.lua over to their SD card. Previously, the scripting
engine would barf since the file is not Lua. Now, these files are
ignored.
Also avoids a case where a hidden and valid script might be loaded
without the user's knowledge.
2024-07-02 11:07:40 +10:00
Peter Barker
0056ef2d90
AP_Logger: write formats out as required rather than at start of log
2024-07-02 10:59:55 +10:00
Andrew Tridgell
681e2d7993
AP_GPS: don't consider uBlox PVT time correct unless we have 2D fix
...
the time may be set by an offline assistance client and may not be
accurate
2024-07-02 10:25:03 +10:00
Peter Barker
f3a75661d9
AP_Frsky_Telem: avoid use if int16-t read call
2024-07-02 10:14:28 +10:00
Peter Barker
85f89812d5
AP_Generator: avoid use of int16_t-read
2024-07-02 10:13:24 +10:00
Peter Barker
42805aa892
AP_GPS: confine inter-instance DroneCAN state checks to DroneCAN GPSs
...
stop these looking at parameters/state for all GPSs, focus on DroneCAN GPSs
2024-07-02 09:56:40 +10:00
Peter Barker
ebfbcacfe3
AP_GPS: tidy pre_arm_checks
2024-07-02 09:56:40 +10:00
Peter Barker
3e57edf37c
AP_Arming: tidy pre_arm_checks
2024-07-02 09:56:40 +10:00
Iampete1
a9eb6051fa
AP_BatteryMonitor: add missing failsafe with no action
2024-07-02 09:54:36 +10:00
Bill Geyer
c5585f84af
AC_AttitudeControl: various suggested cleanup items
...
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2024-07-02 08:39:33 +09:00
Bill Geyer
29897f99af
AP_Motors: Clean up spacing
...
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2024-07-02 08:39:33 +09:00
Bill Geyer
805480e5a2
AC_AttitudeControl: only allow angle boost when not autorotating
2024-07-02 08:39:33 +09:00
Bill Geyer
a19b72e895
AP_Motors: helper function to determine when heli is in autorotation
2024-07-02 08:39:33 +09:00
bnsgeyer
f06bbd471f
AC_AttitudeControl: tradheli-add support for inverted and throttle boost features
2024-07-02 08:39:33 +09:00
Peter Barker
4550f7dcb1
hwdef: make H757I_EVAL a periph
...
its bootloader is marked as a bootloader peripheral, the main firmware is notistent in our message.
2024-07-02 09:17:26 +10:00
Peter Barker
6e5198a50c
AP_Frsky_Telem: make AP_RANGEFINDER_ENABLED remove more code
2024-07-02 09:17:26 +10:00
Peter Barker
e88d76d72d
AP_Scripting: rangefinder singleton requires AP_RANGEFINDER_ENABLED
...
.... or HAL_PERIPH_ENABLE_RANGEFINDER
2024-07-02 09:17:26 +10:00
Peter Barker
118f3b41ac
AP_RangeFinder: create a AP_RANGEFINDER_BACKEND_CAN_ENABLED
...
avoid cmpilation problems when rangefinder not enabled but CAN is
2024-07-02 09:17:26 +10:00
Peter Barker
fe6b120a73
AP_Vehicle: make AP_RANGEFINDER_ENABLED remove more code
2024-07-02 09:17:26 +10:00
Peter Barker
f9a94fd7dd
AP_RangeFinder: make AP_RANGEFINDER_ENABLED remove more code
2024-07-02 09:17:26 +10:00
Peter Barker
37964011df
AP_OSD: make AP_RANGEFINDER_ENABLED remove more code
2024-07-02 09:17:26 +10:00
Peter Barker
07e76a7cae
AP_NavEKF: make AP_RANGEFINDER_ENABLED remove more code
2024-07-02 09:17:26 +10:00
Peter Barker
13e7d04497
AP_NavEKF3: make AP_RANGEFINDER_ENABLED remove more code
2024-07-02 09:17:26 +10:00
Peter Barker
0f47cd7e8b
AP_NavEKF2: make AP_RANGEFINDER_ENABLED remove more code
2024-07-02 09:17:26 +10:00
Peter Barker
a715ee1ce2
AP_HAL_ChibiOS: make AP_RANGEFINDER_ENABLED remove more code
2024-07-02 09:17:26 +10:00
Peter Barker
abc0179a53
AP_DAL: make AP_RANGEFINDER_ENABLED remove more code
2024-07-02 09:17:26 +10:00
Peter Barker
955245e4b7
AP_Arming: make AP_RANGEFINDER_ENABLED remove more code
2024-07-02 09:17:26 +10:00
Andrew Tridgell
38ca478178
AP_Scripting: added gcs:run_command_int() binding
2024-07-01 20:08:29 +10:00
Andrew Tridgell
0116e1e80d
GCS_MAVLink: added lua_command_int_packet()
...
for lua access to MAV_CMD_xxx
2024-07-01 20:08:29 +10:00
Henry Wurzburg
4ed1b6b357
AP_Temperature:expand metadata for analog sensors
2024-07-01 14:01:19 +10:00
Peter Barker
e2f18d9217
AP_NavEKF2: remove unused initFailureReason
2024-07-01 09:04:05 +09:00
bnsgeyer
9c2d43f6c4
SITL: improve dual heli dynamics model
2024-06-30 18:21:21 -04:00
Andrew Tridgell
077c5f38f7
SITL: added comments on how to fly the glider
2024-06-30 10:02:15 +10:00
Peter Barker
780352cd75
AP_Logger: correct enumeration name -> AP_SmartRTL::Action
2024-06-28 10:11:57 +10:00
Peter Barker
2c89622f09
AP_SmartRTL: use enum class for Action, number entries
...
we log these values, so number them explicitly
2024-06-28 10:11:57 +10:00
George Zogopoulos
2717470df1
AP_Scripting: Misc. small improvements.
...
Typo fix
Removed unused variable
2024-06-28 10:05:29 +10:00
Thomas Watson
6e0d7bddf1
AP_Scripting: add serial device simulation example
2024-06-27 12:00:18 +10:00
Thomas Watson
f9b138724c
AP_Scripting: add serial loopback test script
...
Tests that data can flow both ways with one end using protocol 28
(Scripting) and the other using the serial device simulation feature.
2024-06-27 12:00:18 +10:00
Thomas Watson
46e204dd6c
AP_Scripting: clear serial device sim buffers appropriately
...
Ensures the script won't process data created before it started, and
that the protocol won't process data created after the script stopped.
2024-06-27 12:00:18 +10:00
Thomas Watson
4cb684e8a9
AP_Vehicle: initialize scripting serial device sim ports early
...
Necessary for mavlink in particular to notice the port and hook up the
protocol internally.
2024-06-27 12:00:18 +10:00
Thomas Watson
a077e4a3ed
AP_Scripting: introduce serial device simulation support
...
Allows a script to simulate a device attached via any serial protocol.
The script can read and write data and have it handled according to the
protocol as if exchanged over a serial port. The script can then do
protocol translation, data filtering and validation,
hardware-in-the-loop simulation, experimentation, etc., especially in
combination with the scripting protocol which lets the script itself
handle an attached device and so interpose any communication.
2024-06-27 12:00:18 +10:00
Thomas Watson
4df2a1bce7
AP_Scripting/generator: generate depends for manual functions on singletons
2024-06-27 12:00:18 +10:00
Thomas Watson
c18f9f733e
AP_Scripting: add writestring for serial
...
Enables more efficient scripting.
2024-06-27 12:00:18 +10:00
Thomas Watson
d93aa15f2a
AP_Scripting: refactor serial readstring
...
Using `luaL_Buffer` avoids the need for any heap allocation in the
common case (count <= 512 bytes) and avoids stressing out the system
heap for large reads, instead using the script heap.
Zero net flash usage change.
2024-06-27 12:00:18 +10:00
Thomas Watson
e18449b1b8
AP_Scripting: use generic access userdata for serial ports
...
Adding another layer instead of just exposing UARTDriver bindings allows
substitution of the different functions for device simulation later.
Also take the opportunity to rework the docs a little.
2024-06-27 12:00:18 +10:00
Thomas Watson
c37dba60de
AP_Scripting/generator: allow disabling userdata creation from Lua
...
Passing -1 to the argument count for the `creation` tag (name does not
matter) will stop the generator from giving Lua a function to construct
that userdata. The C `new_<name>` function still works.
2024-06-27 12:00:18 +10:00
Thomas Watson
7fb65aece3
AP_SerialManager: allocate port IDs for scripting serial device ports
2024-06-27 12:00:18 +10:00
Peter Barker
0ee787325a
AC_AutoTune: NFC whitespace, ordering and add trailing comma to enumeration
2024-06-27 10:12:30 +10:00
Pierre Kancir
396bca359d
AP_Scripting: add an example to use Copter Standby mode in SITL with LUA
2024-06-27 10:11:53 +10:00
Andrew Tridgell
10c6020a66
AP_Scripting: update docs
2024-06-27 10:11:14 +10:00
Andrew Tridgell
bcfc273799
hwdef: enable an ADC on CubePilot-PPPGW
...
allows for mcu temp
2024-06-27 10:11:14 +10:00
Andrew Tridgell
98479658d4
HAL_ChibiOS: support H7 at 200MHz
2024-06-27 10:11:14 +10:00
Andrew Tridgell
d87404adfa
AP_Scripting: added mcu_temperature binding
2024-06-27 10:11:14 +10:00
Andrew Tridgell
f532f7a9e6
AP_SerialManager: added docs for SERIALn_PROTCOL=PPP
2024-06-27 10:11:14 +10:00
Andrew Tridgell
5a795ccba0
AP_Networking: added TCP reflection test
...
TCP to an echo server, testing bi-directional transfer
2024-06-27 10:11:14 +10:00
Andrew Tridgell
34815f9fb0
HAL_ChibiOS: scale RTS threshold to make software CTS more effective
2024-06-27 10:11:14 +10:00
Andrew Tridgell
ebc4ee99a9
AP_HAL_ChibiOS: add support for GPIO pins as software CTS
2024-06-27 10:11:14 +10:00
bugobliterator
b6cdb8b1a6
hwdef: fix hwdef for updated CubePilot-PPPGW
2024-06-27 10:11:14 +10:00
bugobliterator
0a0d5a3e49
AP_HAL_ChibiOS: add support for PPP on CubeOrangePlus
2024-06-27 10:11:14 +10:00
Peter Barker
2425023331
AP_Notify: flash green lights based off location not GPS
...
Your Copter in stabilize mode can flash rapid-green indicating a good DGPS lock or better, and yet your vehicle still doesn't have a good idea of where it is.
That means that your vehicle may end up RTL'ing onto a point somewhere along your flight path, when you were given an all-green indication by teh vehicle before you armed in stabilize.
Past this PR, we require the same GPS as before, but in addition we must have been happy enough with our location to set the navigation origin, *and* currently be able to get a location.
A user will receive slow-flashing blue lights if they can't currently get a location, or the navigation origin isn't set, even if they've got a "good" fix.
We also require a good location to get a solid green light - you will get a solid blue light if you can't get a location or don't have a navigation origin, even if you have a good GPS lock
2024-06-26 18:39:43 +10:00
Randy Mackay
3439ced236
AP_Mount: add Siyi ZT6 support
2024-06-26 18:37:42 +10:00
Peter Barker
c55a5abcd9
AP_RCProtocol: remove redundant check for crsf telem on iomcu
...
the hwdef for the iomcu already removes crsf
2024-06-26 18:13:01 +10:00
bugobliterator
178cf7c2da
AP_GPS: use 64 bit time in the pps interrupt callback in ublox driver
2024-06-26 17:51:31 +10:00
Andy Piper
651f4f15eb
AP_RCTelemetry: use get_max_rpm_esc()
2024-06-26 17:36:54 +10:00
Andy Piper
451c1ae347
AP_OSD: use get_max_rpm_esc()
...
allow ESC index to be specified for OSD ESC info
2024-06-26 17:36:54 +10:00
Andy Piper
038735657a
AP_ESC_Telem: add get_max_rpm_esc()
2024-06-26 17:36:54 +10:00
Andy Piper
a86f4fdc8f
AP_InertialSensor: move gyro and accel instance ids into AP_InertialSensor_Backend
2024-06-26 17:14:56 +10:00
Peter Barker
5911b87ae3
GCS_MAVLink: rename ins get_primary_accel to get_first_usable_accel
2024-06-26 17:12:12 +10:00
Peter Barker
563c3e7c62
AP_NavEKF3: rename ins get_primary_accel to get_first_usable_accel
2024-06-26 17:12:12 +10:00
Peter Barker
025888a7d1
AP_NavEKF2: rename ins get_primary_accel to get_first_usable_accel
2024-06-26 17:12:12 +10:00
Peter Barker
8302e0d1e2
AP_Mount: rename ins get_primary_accel to get_first_usable_accel
2024-06-26 17:12:12 +10:00
Peter Barker
8ddac54b17
AP_InertialSensor: rename ins get_primary_accel to get_first_usable_accel
2024-06-26 17:12:12 +10:00
Peter Barker
243e095b4e
AP_DAL: rename ins get_primary_accel to get_first_usable_accel
2024-06-26 17:12:12 +10:00
Peter Barker
a325ddbfa9
AP_AHRS: rename ins get_primary_accel to get_first_usable_accel
2024-06-26 17:12:12 +10:00
Leonard Hall
7047e11090
AC_AttitudeControl: Change input_quaternion to use body frame rates
2024-06-26 11:22:54 +10:00
Peter Barker
580199dfba
AP_Logger: disable HAL_LOGGING_BLOCK_ENABLED if not HAL_LOGGING_ENABLED
...
HAL_LOGGING_DATAFLASH_ENABLED is set unconditionally in some hwdefs, but we still need to honour HAL_LOGGING_ENABLED
2024-06-25 18:32:41 +10:00
Clyde McQueen
0e6543f0e4
AP_NavEKF3: sub update for yaw reset and inFlight checks
...
on sub, request final yaw reset after diving 0.5m.
Also update rangefinder tests for sub
2024-06-25 18:09:37 +10:00
Andrew Tridgell
ed58758ce6
hwdef: don't use DEFAULTGPIO in bootloaders
...
setting up a DEFAULTGPIO pulldown in bootloaders is a bad idea as it
overrides any hardware pullups that have been put in place as part of
a "hold in bootloader" mechanism. See discussion in #27360 for ELRS
note that this only impacts one board that I can see, the
BlitzF745AIO, due to the MCU vs DEFAULTGPIO interaction
2024-06-25 12:05:40 +10:00
Peter Barker
9bb343938f
AP_Scripting: correct use-after-free in script statistics
...
run_next_script can free the script if the script runs over-time.
... so stop using data from that freed script structure!
2024-06-25 11:07:07 +10:00
Peter Barker
7dd50cd036
hwdef: JHEMCU-H743HD correct for rename of W25 dataflash driver
2024-06-25 11:05:22 +10:00
Iampete1
cc99ebf872
AP_Scripting: allow logging lua boolean with uint8 format B
2024-06-25 11:01:10 +10:00
Andrew Tridgell
32750476be
AP_Scripting: added more telemetry for INF Inject
2024-06-25 09:34:18 +10:00
Andrew Tridgell
b108d9cf09
AP_Scripting: added throttle and ignition control for INF_INject
...
allows full control over serial
2024-06-25 09:34:18 +10:00
TsuyoshiKawamura
b9bf7acbf1
AP_Scripting: add test samples of get_target_location/update_target_location for copter
2024-06-25 08:29:57 +09:00
Leonard Hall
5ab2aaffff
AC_Autotune: Clean up Multi Variables and non functional changes
2024-06-24 19:11:41 +10:00
Peter Barker
87d694414b
AP_Beacon: use enum class for type
2024-06-24 18:24:11 +10:00
bugobliterator
96682b1b1b
AP_Networking: add timeout to swap the UDP Server client target
2024-06-21 20:31:31 +10:00
bugobliterator
d07e8d16df
AP_Networking: use IP4_STR_LEN instead of value 16
2024-06-21 20:31:31 +10:00
bugobliterator
a82729589c
AP_Networking: allow UDP Server to talk to different clients on the same run
2024-06-21 20:31:31 +10:00
bugobliterator
bace8d4c85
AP_HAL: add methods that deal in ip address as uint32_t
2024-06-21 20:31:31 +10:00
bugobliterator
3c69f156f4
AP_HAL: make recv call to be undirected but also get the ip:port of received packet
2024-06-21 20:31:31 +10:00
bugobliterator
43615f22b7
AP_HAL: add AP_MAVLINK_PACKETISE_ENABLE option
2024-06-21 20:31:31 +10:00
MattKear
e1a1d15f62
AP_Mount: Alexmos: Improve angle precision and move defines to cpp
2024-06-20 15:13:48 +10:00
muramura
80b1a07de3
AP_Baro: Group device headers
2024-06-20 15:13:01 +10:00
Peter Barker
f07ac41c65
AP_Notify: rename Notify buzzertype enumeration
2024-06-20 14:47:20 +10:00
Peter Barker
6b490a4c47
AP_HAL_ChibiOS: rename Notify buzzertype enumeration
2024-06-20 14:47:20 +10:00
Peter Barker
56a7e520b6
AP_Gripper: correct emitting of grabbed/released messages
...
these strigs would only be released if release() or grab were called a second time
2024-06-20 10:59:14 +10:00
George Zogopoulos
5ca8c0058c
AP_TECS: Small legibility improvements
...
AP_TECS: Fixed bad whitespace
2024-06-20 09:12:50 +10:00
George Zogopoulos
9a3f6ae9c7
AP_Math: Created CentiDegreesToRadians
2024-06-20 09:12:50 +10:00
Siddharth Bharat Purohit
f89923fcbe
AP_HAL_ChibiOS: mark CONS RX/TX as NC for ADSB Carrier board
2024-06-19 19:09:36 +10:00
bugobliterator
04879d2c42
AP_HAL_ChibiOS: add passthrough from secondary through primary while in bootloader
2024-06-19 19:09:10 +10:00
robot-to-society
b86094978d
Mission: add is_resume method
2024-06-19 17:12:17 +10:00
Peter Barker
05a22aaffc
AP_ADSB: cache course-over-ground for GPS message
...
stops the vehicle flipping around as speed goes to/comes from 0
2024-06-19 10:14:50 +10:00
Simon Hancock
43c604f1db
AP_Compass: Fix fewer multipliers than params on MAGH log message
2024-06-19 09:38:59 +10:00
Simon Hancock
d6f0d9b57c
AP_GPS: Update description of VDop and HDop log params
2024-06-19 09:38:59 +10:00
Peter Barker
b5b42f9446
AP_Logger: tidy running of LoggerMessageWriter sub-writers
...
... use the fact these all have a common base class to reduce effectively duplicate code.
Also un-virtualise and const a function which wasn't overridden and can be const
2024-06-19 08:51:28 +10:00
Peter Barker
12197b2d60
SITL: correct and improve Hirth simulator
...
we weren't sending an ACK for the set-values message
2024-06-19 08:48:32 +10:00
Thomas Watson
4ef2d49d92
hwdef: CubeRedPrimary: ICM45686 as ICM20649 alternative
...
Empirically what is present on Cube Reds built on/after 2024-04-14.
2024-06-18 10:53:08 +09:00
Iampete1
a322ba4f77
AP_Scripting: add binding for GPS time_epoch_usec
2024-06-18 10:37:13 +10:00
Iampete1
1c26c241f1
AP_Scripting: add uint64 userdata
2024-06-18 10:37:13 +10:00
Iampete1
574b9939a5
AP_Scripting: allow auto generation of uint32 operators
2024-06-18 10:37:13 +10:00
Andrew Tridgell
003f931d9c
AP_Arming: added eeprom full arming check
...
tell users if params may not persist
2024-06-18 10:29:55 +10:00
Andrew Tridgell
ae8ee5325c
AP_Param: added get_eeprom_full()
...
for arming check
2024-06-18 10:29:55 +10:00
Iampete1
b68af03419
AP_HAL_ChibiOS: update relay parameter names
2024-06-18 08:59:34 +09:00
Andy Piper
608d396fd6
AP_Logger: take a blocking semaphore when writing messages using the block logger
2024-06-18 09:54:09 +10:00
Iampete1
fe814a66e4
AP_Vehicle: add new mode reason AUX_FUNCTION
2024-06-18 09:49:20 +10:00
koehlert
7092cb4717
GCS_MAVLink: support HIGHRES_IMU
...
HIGHRES_IMU MAVLink message. Built in to 2MB boards or not by default.
2024-06-18 09:29:04 +10:00
SCRainbow
0f011a4b61
AP_HAL_ChibiOS: Added support for JHEMCU H743 HD
...
commit 7d01b9e3cb09e89afea4bcb903d54b9ce8cdb1be
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Fri Apr 19 07:06:45 2024 +0800
AP_HAL_ChibiOS: Added support for JHEMCU H743 HD
commit d1e4ba0ef307e3ab3cc0f4218dd08e2f5c8f6ad0
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Fri Apr 19 04:38:22 2024 +0800
board_types.txt: Reverted change for seperate PR
hwdef-bl.dat: revert flash size to 2mb
hwdef.dat: flash size set to 2mb, corrected syntax, realigned imus
commit ee465524a7c37509d89ae17ae277a42328cb1cfd
Merge: b1a55e0e3d 0f0023e62d
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Tue Apr 16 10:59:31 2024 +0800
Merge branch 'master' into master
commit b1a55e0e3d10a1fc3eff7af14c837271d0a3d131
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Tue Apr 16 10:59:08 2024 +0800
Create defaults.parm
output 9 is setup as serial LED
commit 8437b6277c9f1d00a333ebd4f96946f02bf2bfc1
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Tue Apr 16 10:56:44 2024 +0800
Update JHEMCU-H743HD/README.md
Changed default UART6 protocol to displayport
Co-authored-by: Henry Wurzburg <hwurzburg@yahoo.com>
commit 186740cbc038a0ed4dd3bfc9035504bdd165b5aa
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Tue Apr 16 10:56:28 2024 +0800
Update JHEMCU-H743HD/hwdef.dat
Changed default UART6 protocol to displayport
Co-authored-by: Henry Wurzburg <hwurzburg@yahoo.com>
commit 48cfc0daaf58fecfe75a9338c91f4543aed4b14c
Merge: 789b71d709 5a21d0cb8a
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Mon Apr 15 10:25:49 2024 +0800
Merge branch 'master' into master
commit 789b71d709b2b01c2a5134f8293f785917a787fd
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Sat Apr 13 19:37:37 2024 +0800
Update hwdef-bl.dat
Corrected FLASH_SIZE_KB to 1024 as H743VGT6 have only 1M flash
commit cfa26b8f014c1775aa0270168682deca8ae16e78
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Sat Apr 13 19:37:04 2024 +0800
Update hwdef.dat
Corrected FLASH_SIZE_KB to 1024 as H743VGT6 have only 1M flash
commit 3ae8a2c6ca2b0e95c076b652622adfe53275575a
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Sat Apr 13 18:40:31 2024 +0800
Update hwdef.dat
Fixed BIDIR labels, they are now in pairs, only on M1, M3, M5 and M7
commit 200e22d5f06f6a0aef30463f4d2702872fe6f063
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Sat Apr 13 18:20:42 2024 +0800
Update hwdef.dat
Included OTG2, default serial 3 protocol is set to None.
commit 8f561c17efa9708acbd257759f12b056f44ea5f6
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Sat Apr 13 18:10:01 2024 +0800
Update README.md
Corrected title
commit 404b49f399d756561727571132ec38f3f89188a3
Merge: b1d353b185 77cccd08a3
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Sat Apr 13 09:56:53 2024 +0800
Merge branch 'master' into master
commit b1d353b185721c1e319f2b758f8e4ea1b1d30968
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Fri Apr 12 17:51:57 2024 +0800
Added JHEMCU H743 HD support
commit 299841b23628431dc1b0172bb5fc50968acf2fd1
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Fri Apr 12 17:25:01 2024 +0800
Added JHEMCU-H743HD
commit 39d10456894bbbc4f73dfba65ee7cace7659ae17
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Fri Apr 12 17:21:14 2024 +0800
Update README.md
commit 048780fe44aace829173b0e701bc5a2ff874ee49
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Fri Apr 12 17:18:23 2024 +0800
Added initial hwdef for JHEMCU H743 HD board
commit d4021681ec6d47f81973e6b346a67b757f3908d2
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Fri Apr 19 07:06:46 2024 +0800
Tools: Added support for JHEMCU H743 HD
commit d1e4ba0ef307e3ab3cc0f4218dd08e2f5c8f6ad0
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Fri Apr 19 04:38:22 2024 +0800
board_types.txt: Reverted change for seperate PR
hwdef-bl.dat: revert flash size to 2mb
hwdef.dat: flash size set to 2mb, corrected syntax, realigned imus
commit ee465524a7c37509d89ae17ae277a42328cb1cfd
Merge: b1a55e0e3d 0f0023e62d
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Tue Apr 16 10:59:31 2024 +0800
Merge branch 'master' into master
commit b1a55e0e3d10a1fc3eff7af14c837271d0a3d131
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Tue Apr 16 10:59:08 2024 +0800
Create defaults.parm
output 9 is setup as serial LED
commit 8437b6277c9f1d00a333ebd4f96946f02bf2bfc1
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Tue Apr 16 10:56:44 2024 +0800
Update JHEMCU-H743HD/README.md
Changed default UART6 protocol to displayport
Co-authored-by: Henry Wurzburg <hwurzburg@yahoo.com>
commit 186740cbc038a0ed4dd3bfc9035504bdd165b5aa
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Tue Apr 16 10:56:28 2024 +0800
Update JHEMCU-H743HD/hwdef.dat
Changed default UART6 protocol to displayport
Co-authored-by: Henry Wurzburg <hwurzburg@yahoo.com>
commit 48cfc0daaf58fecfe75a9338c91f4543aed4b14c
Merge: 789b71d709 5a21d0cb8a
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Mon Apr 15 10:25:49 2024 +0800
Merge branch 'master' into master
commit 789b71d709b2b01c2a5134f8293f785917a787fd
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Sat Apr 13 19:37:37 2024 +0800
Update hwdef-bl.dat
Corrected FLASH_SIZE_KB to 1024 as H743VGT6 have only 1M flash
commit cfa26b8f014c1775aa0270168682deca8ae16e78
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Sat Apr 13 19:37:04 2024 +0800
Update hwdef.dat
Corrected FLASH_SIZE_KB to 1024 as H743VGT6 have only 1M flash
commit 3ae8a2c6ca2b0e95c076b652622adfe53275575a
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Sat Apr 13 18:40:31 2024 +0800
Update hwdef.dat
Fixed BIDIR labels, they are now in pairs, only on M1, M3, M5 and M7
commit 200e22d5f06f6a0aef30463f4d2702872fe6f063
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Sat Apr 13 18:20:42 2024 +0800
Update hwdef.dat
Included OTG2, default serial 3 protocol is set to None.
commit 8f561c17efa9708acbd257759f12b056f44ea5f6
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Sat Apr 13 18:10:01 2024 +0800
Update README.md
Corrected title
commit 404b49f399d756561727571132ec38f3f89188a3
Merge: b1d353b185 77cccd08a3
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Sat Apr 13 09:56:53 2024 +0800
Merge branch 'master' into master
commit b1d353b185721c1e319f2b758f8e4ea1b1d30968
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Fri Apr 12 17:51:57 2024 +0800
Added JHEMCU H743 HD support
commit 299841b23628431dc1b0172bb5fc50968acf2fd1
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Fri Apr 12 17:25:01 2024 +0800
Added JHEMCU-H743HD
commit 39d10456894bbbc4f73dfba65ee7cace7659ae17
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Fri Apr 12 17:21:14 2024 +0800
Update README.md
commit 048780fe44aace829173b0e701bc5a2ff874ee49
Author: SCRainbow <139575368+SCRainbow@users.noreply.github.com>
Date: Fri Apr 12 17:18:23 2024 +0800
Added initial hwdef for JHEMCU H743 HD board
2024-06-18 08:21:16 +09:00
xianglunkai
5b05a171a2
AP_HAL_Linux: remove unused includes
2024-06-17 09:51:38 +10:00
cuav-chen2
869ef0ee04
AP_Baro: Add in BMP581 Driver
2024-06-17 09:50:47 +10:00
Peter Barker
a737a34cd0
AP_Logger: correct comment about reserved range for vehicle IDs
2024-06-17 08:24:52 +10:00
Henry Wurzburg
247f5e5446
AP_OSD:Update HD fonts
2024-06-12 20:11:00 -04:00
Peter Barker
1d945cc5ac
AP_Common: Location: allow retrieval of Vector3p from vector-from-origin
2024-06-11 19:50:18 +10:00
Peter Barker
0fc6fc4e9c
AP_Math: move definition of HAL_WITH_POSTYPE_DOUBLE into AP_HAL_Boards.h
...
other libraries need to know if we are doing double-precision offsets
2024-06-11 19:50:18 +10:00
Peter Barker
d70f5b92e0
AP_HAL: move definition of HAL_WITH_POSTYPE_DOUBLE into AP_HAL_Boards.h
...
other libraries need to know if we are doing double-precision offsets
2024-06-11 19:50:18 +10:00
Peter Barker
50401b749b
AP_Follow: factor out separate methods for handling mavlink messages
...
handle_message was a bit of a monster
2024-06-11 16:20:20 +10:00
Peter Barker
89eade0836
AP_Follow: factor out a Log_Write_FOLL method
2024-06-11 16:20:20 +10:00
Peter Barker
6765838a3c
AP_Follow: factor out a should_handle_message method
2024-06-11 16:20:20 +10:00
Peter Barker
7ea2e60b5a
AP_AHRS: clarify frame of get_location_from_origin_offset
...
... by renaming it get_location_from_origin_offset_NED
2024-06-11 14:57:56 +10:00
Peter Barker
5994664bf9
SITL: add simulated tie-down clamp
2024-06-11 09:56:43 +10:00
Peter Barker
911375fa9a
AP_Common: rearrange get_vector_from_origin_NEU to be less destructive
...
this change means that if the origin call failes we don't half-update the object before returning false
2024-06-11 09:47:14 +10:00
Peter Barker
500ca22c75
AP_Follow: clarify what we're doing when rotating a vector
...
odd sort of a transform, make it clear what's happening
2024-06-11 09:41:32 +10:00
Peter Barker
9c42a5d9dd
GCS_MAVLink: warn on use of old fence point / rally point protocols
2024-06-11 09:39:56 +10:00
Peter Barker
c5f902919e
AC_Fence: warn on use of old fence point / rally point protocols
2024-06-11 09:39:56 +10:00
Peter Barker
2d7a4b318d
AP_NavEKF: tidy creation of vectors
2024-06-11 09:38:54 +10:00
Peter Barker
4fb8408e80
GCS_MAVLink: clarify timeline on removal of HIL_GPS and BATTERY2
...
try to move to a standard greppable pattern for code to be removed
2024-06-11 09:37:56 +10:00
Peter Barker
d250d9cb2b
GCS_MAVLink: remove MOUNT_CONFIGURE/MOUNT_CONTROL handling by default
2024-06-11 09:37:56 +10:00
Peter Barker
fc560e8219
GCS_MAVLink: avoid casting DroneCAN backend to incorrect type
...
- split get_type into allocated_type and configured_type
- check allocated type rather than configured type when looking at backends
Prevents overwrite of random memory when backends are changed at runtime.
2024-06-11 09:31:46 +10:00
Peter Barker
029e0b15b3
AP_BattMonitor: avoid casting DroneCAN backend to incorrect type
...
- split get_type into allocated_type and configured_type
- check allocated type rather than configured type when looking at backends
Prevents overwrite of random memory when backends are changed at runtime.
2024-06-11 09:31:46 +10:00
Peter Barker
dd56f2465b
SITL: make simulated SBP2 vastly more accurate
...
I have no idea if this is actually the sort of number which these devices will return.
However, for the EKF to be happy with the GPS the reported speed accuracy must be much lower than the SBP2 driver reports when we give it these numbers.
It might be that we are interpretting these fields incorrectly in the driver and that the simulator is, in fact, correct.
2024-06-11 09:29:14 +10:00
Brad Bosch
3b150d2e4c
GCS_MAVLink: Add support for parity to Serial passthrough
...
Add code to reflect USB ACM parity setting to the passthrough port alongside existing support for ACM baud rate changes. Some use cases for serial passthrough require specific parity settings.
For example, even parity is used and required by the USART protocol used in the STM32 system bootloader. This enhancement allows the use of standard flash programming tools such as STM32CubeProgrammer to flash connected STM based peripherals such as Receivers and Telemetry radios via serial passthrough. Some examples of such peripherals include the FrSky R9 receivers as well as various other STM based LoRa modules used by the mLRS project.
2024-06-11 09:24:32 +10:00
Brad Bosch
f2f9349419
AP_HAL: Add support for parity to Serial passthrough
...
Add code to reflect USB ACM parity setting to the passthrough port alongside existing support for ACM baud rate changes. Some use cases for serial passthrough require specific parity settings.
For example, even parity is used and required by the USART protocol used in the STM32 system bootloader. This enhancement allows the use of standard flash programming tools such as STM32CubeProgrammer to flash connected STM based peripherals such as Receivers and Telemetry radios via serial passthrough. Some examples of such peripherals include the FrSky R9 receivers as well as various other STM based LoRa modules used by the mLRS project.
2024-06-11 09:24:32 +10:00
Martin Luessi
3201622d38
AP_HAL_ChibiOS: Update readme for RADIX2HD
2024-06-11 09:11:09 +10:00
Peter Barker
6751bce0fc
SITL: log number of times sim paused on serial0 buffer
...
SITL pauses the simulation if we do not have a minimum amount of space in its out queue.
Log the number of times we do this.
2024-06-11 08:51:25 +10:00
Peter Barker
6ae0b5ec5b
AP_HAL_SITL: log number of times sim paused on serial0 buffer
...
SITL pauses the simulation if we do not have a minimum amount of space in its out queue.
Log the number of times we do this.
2024-06-11 08:51:25 +10:00
subashchandar
7e59b8c5a0
hwdef: update PixFlamingo_f767 README
2024-06-11 08:42:56 +10:00
Andy Piper
2af6358c07
AP_GPS: dynamically allocate config_GNSS
2024-06-10 06:53:23 +10:00
Andy Piper
90f7222f98
AP_HAL_ChibiOS: enable LEDs on Here4AP
2024-06-10 06:53:23 +10:00
Andy Piper
a9dc7b440f
AP_GPS: support GPSx_GNSS_MODE for F9P
...
support detecting F9P hardware variant
fix bug in extension buffer management
support NEO-F9P GNSS configuration
allow multiple configuration values to be set in one go
phase F9 configuration to account for GNSS reset
2024-06-10 06:53:23 +10:00
Bill Geyer
c77f688032
AP_Motors: fix spacing
...
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2024-06-09 13:24:38 -04:00
MattKear
3a311a9d69
AP_Motors: Heli: Fix SWSH logging for reversed collectives
2024-06-09 13:24:38 -04:00
Paul Riseborough
61874da020
AP_NavEKF3: Rework method of synthesising airspeed for dead reckoning
...
The previous method resulted in data incest and fusion of predicted airspeed on every EKF internal time step.
This was not apparent during flight where the vehicle was turning, but during long straight legs did not constrain along track drift.
2024-06-09 14:25:02 +10:00
Paul Riseborough
720c2da807
AP_NavEKF3: Rework GPS jamming resiliency
...
Make it user selectable.
Remove potential for a race condition between decisions based on latest data and the EKF fusion processing which operates on a delayed time horizon. This is achieved by preventing data entering the buffer if awaiting checks to pass ensuring that no EKF fusion time horizon processes can use data that hasn't passed checks.
Log the waitingForGpsChecks class variable
2024-06-09 14:25:02 +10:00
Paul Riseborough
996bf7d4df
AP_NavEKF3: Log gpsGoodToAlign
2024-06-09 14:25:02 +10:00
Paul Riseborough
eb2ff2192d
AP_NavEKF3: Don't block no compass planes from running GPS alignment checks
2024-06-09 14:25:02 +10:00
Paul Riseborough
6baeb1cd9d
AP_NavEKF3: Fix bug causing in flight yaw align to not complete
2024-06-09 14:25:02 +10:00
Paul Riseborough
ffde7f815c
AP_NavEKF3: Allow wind to relearn rapidly when GPS is re-enabled
2024-06-09 14:25:02 +10:00
Paul Riseborough
87bf8d9997
AP_NavEKF3: Treat wind as truth when deadreckoning with no airspeed sensor
2024-06-09 14:25:02 +10:00
Paul Riseborough
568972c0f0
AP_NavEKF3: Fix bug preventing use of default or synthetic airspeed
2024-06-09 14:25:02 +10:00
Paul Riseborough
2c3174b77b
AP_NavEKF3: Strengthen protection against GPS jamming
...
These changes prevent the EKF from consuming GPS data too soon when it is recovering from jamming if the EKF is able to navigate using dead reckoning.
2024-06-09 14:25:02 +10:00
Paul Riseborough
324d5da811
AP_NavEKF3: Use last observed wind states to enable dead reckoning
...
These changes enable the EKF to use the last observable wind velocity vector estimate to synthesise an airspeed measurement if operating without an airspeed sensor and when all other measurement types that can constrain velocoty drift are lost. This enables the EKF to use dead reckoning to continue after loss of GPS when there is no air speed sensor fitted and without the need to set a default airspeed value.
The logic used to fuse a default airspeed value has also been cleaned up and the call to FuseAirSpeed() from inside SelectBetaDragFusion() has been removed.
AP_NavEKF3: Fix error in default airspeed observation variance
AP_NavEKF3: Enable shadow fusion of airspeed when sensor is disabled
2024-06-09 14:25:02 +10:00
Paul Riseborough
e53416e77b
AP_NavEKF3: Apply GPS quality checks following loss of 3D fix if velocity error is bounded
2024-06-09 14:25:02 +10:00
MattKear
5784abde1f
AP_Motors: Heli dual: Constrain cyclic roll for intermeshing
2024-06-08 23:13:28 -04:00
Andrew Tridgell
c783f632c1
AP_Scription: added CANF logging to Halo6000 EFI driver
...
allows for easier debugging
2024-06-09 08:37:44 +10:00
Iampete1
1c5c80d244
AP_Scripting: Docs: remove stray grave
2024-06-08 07:29:53 +10:00
Andrew Tridgell
e9d39d80f4
AP_InertialSensor: fixed ICM42670
...
highres sampling is not working on the ICM42670 on some versions of
the Pixhawk6X. Disable for now.
2024-06-07 19:44:48 +10:00
Iampete1
cb22a6389d
AP_Scripting: add virtual class in docs to avoid need nil check warning
2024-06-07 06:30:22 +10:00
muramura
dfc04cd53a
AP_Notify: Convert the ENUM definition to a class
2024-06-06 15:15:14 -04:00
George Zogopoulos
d2901dc9c9
SITL: Removed trailing underscore
2024-06-05 19:03:31 +10:00
Peter Barker
78fcf7057c
GCS_MAVLink: move switch for sending camera messages into AP_Camera
...
neatens GCS_Common a bit, reduces repetitive code
2024-06-05 10:29:01 +10:00
Peter Barker
5538f6735f
AP_Camera: move switch for sending camera messages into AP_Camera
...
neatens GCS_Common a bit, reduces repetitive code
2024-06-05 10:29:01 +10:00
Iampete1
364419be81
AP_Scripting: docs: allow overload of manual bindings to allow documentation of optional arguments
2024-06-04 09:29:49 +10:00
Iampete1
f54ca766df
AP_Scripting: tests: luacheck.lua: ignore lua-language-server
2024-06-04 09:29:49 +10:00
Iampete1
93642026aa
AP_Scripting: tests: check.json: check files it gitignore but not self
2024-06-04 09:29:49 +10:00
Henry Wurzburg
3b86c0527f
AP_BLHeli:expand metadata of 3d and Reverse masks
2024-06-04 09:24:41 +10:00
Henry Wurzburg
887e4713e6
AP_HAL_ChibiOS:remove fetaures to allow boards to build
2024-06-04 09:23:43 +10:00
Andrew Tridgell
6233bc0e10
HAL_Empty: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
ceac4969d5
AP_Networking: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
e97a6c7089
AP_InertialSensor: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
35a8f6c7b2
AP_DroneCAN: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
265e2a4d6b
StorageManager: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
3682e3aad3
SRV_Channel: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
4e1b2b95d4
SITL: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
9b046f5a12
GCS_MAVLink: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
5859250651
Filter: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
db6bcdb725
AP_WindVane: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
76d16e2d78
AP_Winch: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
20a5ec4348
AP_WheelEncoder: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
659ecf6159
AP_VisualOdom: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
6a96df4792
AP_Vehicle: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
30228f5e6e
AP_Torqeedo: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
65822c01ed
AP_TemperatureSensor: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
93484ec81d
AP_TempCalibration: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
a2459c6e61
AP_Scripting: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
5af89a4291
AP_Scheduler: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
c1bdf15c1d
AP_RPM: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
01f02867a6
AP_RCTelemetry: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
51d5f85b83
AP_RCProtocol: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
8554081be5
AP_RangeFinder: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
5130e26f4c
AP_Radio: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
c681701f81
AP_Proximity: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
6bd2be548b
AP_Param: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
a5672b0105
AP_OSD: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
7235c146fa
AP_OpticalFlow: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
014b3bba70
AP_OpenDroneID: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
cead1ee264
AP_ONVIF: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
530cbf1eca
AP_Notify: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
4d5aa1b8e3
AP_Networking: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
242a3741e3
AP_NavEKF: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
94cbd7cbfb
AP_NavEKF3: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
5e88d67571
AP_NavEKF2: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
5ca4bdbd8d
AP_MSP: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
28da263e16
AP_Mount: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
e5a63eaad0
AP_Motors: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
3912c6a5e0
AP_Module: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
e180359757
AP_Menu: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
ad6502c9f1
APM_Control: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
72c77b3453
AP_Math: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00
Andrew Tridgell
20070b7e37
AP_Logger: use NEW_NOTHROW for new(std::nothrow)
2024-06-04 09:20:21 +10:00