Commit Graph

64978 Commits

Author SHA1 Message Date
Peter Barker 9cbb494092 RC_Channel: avoid nullptr dereference on bad rcmap value entry 2024-09-10 22:00:50 +10:00
Peter Barker d6386cc1fd autotest: add test we don't die with bad RC channel for roll 2024-09-10 22:00:50 +10:00
Randy Mackay 1f61b64fbe modules: update mavlink to include camera-thermal-range 2024-09-10 20:59:49 +09:00
Randy Mackay c3a1e53bfb Tools: add camera-thermal-range build option 2024-09-10 20:59:49 +09:00
Randy Mackay aa65a2ab54 AP_Mount: siyi supports camera-thermal-range 2024-09-10 20:59:49 +09:00
Randy Mackay 6f2a88f707 AP_Camera: support send-thermal-range 2024-09-10 20:59:49 +09:00
Randy Mackay 2db7a9520a GCS_MAVLink: support camera-thermal-range 2024-09-10 20:59:49 +09:00
Ryan Friedman d18a2b22f9 Tools: Give ardupilot venv access to system packages
* When possible, we can use the apt-installed python packages which are
  ABI stable
* Same for the other OS's that have VENV setup scripts

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-09-10 15:11:00 +10:00
Ryan Friedman d4a62f22e2 Tools: Use apt for pexpect
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-09-10 15:11:00 +10:00
Ryan Friedman 33d75f10e7 Tools: ros2: Add missing dep and improved instructions
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-09-10 12:46:33 +10:00
Ryan Friedman 1f0f41297b Tools: ros2: Add geopose test
* Add missing deps
* Reduce some duplication

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-09-10 12:46:33 +10:00
Thomas Watson dcd34dd39e AP_Periph: clean up node ID parameter handling
Properly document the range and behavior.

Rename storage variable as it doesn't connect to the DNA preferred ID
feature.
2024-09-10 12:36:34 +10:00
Thomas Watson aca624486d AP_DroneCAN: DNAServer: don't "allocate" broadcast ID
While technically legal, it's unlikely to have been tested and an
allocatee might do silly things. Also makes the logic a bit more clear
and improves the failure message.
2024-09-10 12:35:04 +10:00
Thomas Watson 5a1c825ea2 AP_DroneCAN: DNAServer: clean up and optimize allocation 2024-09-10 12:35:04 +10:00
Thomas Watson 4427cbee71 AP_DroneCAN: DNAServer: avoid clearing node ID during allocation
Not necessary and wastes flash.
2024-09-10 12:35:04 +10:00
Andrew Tridgell a9455ec3d3 waf: fixed app signature in elf files
this fixes an issue when developing for ChibiOS AP_Periph targets
where loading the elf file in gdb doesn't allow it to run as it
doesn't have the correct AP_Periph signature (crc, board type etc)

This patch modifies the elf file to fill in the signature, so when you
load in gdb the bootloader will be able to run the signature checks
and load the firmware
2024-09-10 12:33:45 +10:00
Thomas Watson ebcb753acc AP_Periph: reject allocation of broadcast node ID
It is technically legal to receive an "allocation" of the broadcast node
ID. Fortunately, this was already ignored by `canardSetLocalNodeID`,
though it would trigger an assertion failure if those were enabled.

Fix by rejecting that ID. There is effectively no change in behavior
(except possibly fixes using moving baseline GPSes) but the code now
correctly ignores that ID and retries the allocation as it did before.
2024-09-10 12:31:19 +10:00
Thomas Watson 854b769cfe hwdef: remove non-ublox GPSes from MatekL431-Periph
Saves enough flash to get it building again (11K now free). These
backends are default for other boards and so are built in CI.
2024-09-10 12:30:23 +10:00
Peter Barker 222a26ee20 AP_Scripting: tweak conditions for scripting-requires-filesystem
AP_FILESYSTEM_READING_ENABLED isn't quite right as we can't read scripts from @SYS.
2024-09-10 11:47:37 +10:00
Peter Barker 78f0175e20 GCS_MAVLink: reject SET_MESSAGE_INTERVAL commands with p3 set
this is going to be used for changing the rate of a specific instance of a message at some stage

we have to reject it for now so that when the index is used the GCS is told that their message is invalid in this older version of the autopilot
2024-09-10 11:43:52 +10:00
olliw42 3c9965f5e5 AP_DroneCAN: set protocol in tunnel.Targetted message according to protocol parameter 2024-09-10 11:41:59 +10:00
Andy Piper 62806c6cd6 Tracker: log attitude target in degrees 2024-09-10 10:54:55 +10:00
Andy Piper 53fb7b1e20 Rover: log attitude target in degrees 2024-09-10 10:54:55 +10:00
Andy Piper d309275866 Plane: log attitude target in degrees 2024-09-10 10:54:55 +10:00
Andy Piper ca451f7df4 Sub: log attitude target in degrees 2024-09-10 10:54:55 +10:00
Andy Piper d5b939fe76 Copter: log attitude target in degrees 2024-09-10 10:54:55 +10:00
Andy Piper 8dee817acf AP_AHRS: log attitude and attitude target at full resolution in degrees 2024-09-10 10:54:55 +10:00
Andrew Tridgell 65e15f2bd9 Plane: don't run TECS update_speed_height() when in idle mode 2024-09-10 10:15:34 +10:00
Andrew Tridgell d27d34987c autotest: added GliderPullup test 2024-09-10 10:15:34 +10:00
Andrew Tridgell 2f19dfef8a Plane: added glider pullup support 2024-09-10 10:15:34 +10:00
Andrew Tridgell c0b89eccd1 Tools: added AP_PLANE_GLIDER_PULLUP_ENABLED feature 2024-09-10 10:15:34 +10:00
Andrew Tridgell 05fbc4767d SRV_Channel: added lift_release
for releasing a balloon or other lift device
2024-09-10 10:15:34 +10:00
Iampete1 b1fe1f18d4 AP_Airspeed: healthy: check enabled first for instance range check 2024-09-10 09:48:31 +10:00
Andrew Tridgell ae6376fcd6 autotest: added CommonOrigin test
test EK2 and EK3 common origin
2024-09-10 09:28:50 +10:00
Andrew Tridgell cf45dbf284 AP_NavEKF2: fixed return of common origin
when common origin is set we should return that, not backends private
origin
2024-09-10 09:28:50 +10:00
Andrew Tridgell be5ecab686 AP_AHRS: added common origin logic
this aligns the origin between EKF2, EKF3 and ExternalAHRS, making for
smooth transitions between AHRS backends in flight
2024-09-10 09:28:50 +10:00
Andrew Tridgell 91a5cfea6b AP_ExternalAHRS: added set_origin() call
and remove code that aligns origin to AHRS, this will be handled by
the AHRS common origin logic
2024-09-10 09:28:50 +10:00
Andrew Tridgell 3444de06b1 AP_NavEKF2: allow setOrigin when using GPS
this allows for use of a common origin between backends, and aligns
with EKF3 behaviour
2024-09-10 09:28:50 +10:00
Peter Barker 777aab6e0c AP_Scripting: no warning if no ./scripts and no real filesystem
it is possible to build for boards without storage (so no Posix, no Fatafs), but still have scripts in ROMFS.

In this case we will use the backend AP_Filesystem_backend base class when doing file operations.  This will alway fail to open directories, so when we try to load scripts from SCRIPTS_DIRECTORY it will always fail.

This leads to a warning being emitted:

Lua: State memory usage: 2796 + 5227
AP: Lua: open directory (./scripts) failed
AP: hello, world
Time has wrapped

Which isn't great.

Detect we are working on this filesystem and don't warn.
2024-09-10 09:10:49 +10:00
Peter Barker 61de480f62 AP_AHRS: log DCM errrp and erryaw into DCM message 2024-09-09 15:17:15 +10:00
Andrew Tridgell 9726e8e218 Filter: only update notch on init if fixed 2024-09-09 09:29:32 +10:00
Andy Piper 1ef89d31f2 autotest: static notch test 2024-09-09 09:29:32 +10:00
Andy Piper a8575e0646 Filter: ensure harmonic notch filters are always working 2024-09-09 09:29:32 +10:00
junan 4ee5b0ea12 AP_HAL_Linux: keep "dfd" open util fsync is done.
Since we want to do a fsync on "dfd", it can not be closed before that.

Signed-off-by: junan <junan76@163.com>
2024-09-09 09:28:51 +10:00
Peter Barker 1e8e250459 autotest: add test for ahrs-source.lua 2024-09-08 10:02:29 +10:00
Tatsuya Yamaguchi 253d98dd53 RC_Channel: use SourceSetSelection enum class 2024-09-08 10:02:29 +10:00
Tatsuya Yamaguchi a7f9abcff9 GCS_MAVLink: use SourceSetSelection enum class 2024-09-08 10:02:29 +10:00
Tatsuya Yamaguchi 29b9157a20 AP_Scripting: use SourceSetSelection enum class 2024-09-08 10:02:29 +10:00
Tatsuya Yamaguchi f58d88d144 AP_AHRS: use SourceSetSelection enum class 2024-09-08 10:02:29 +10:00
Tatsuya Yamaguchi 83c544f792 AP_NavEKF3: use SourceSetSelection enum class 2024-09-08 10:02:29 +10:00