Commit Graph
89 Commits
Author SHA1 Message Date
Andrew Tridgell 5b05a7dc2a GCS_MAVLink: added MAV_GCS_SYSID_HI
this allows for multiple MAVLink source system IDs to be treated as
valid GCS nodes, allowing for multiple ground stations for GCS
failsafe handling
2025-07-29 09:34:08 +10:00
Peter Barker a285940f6d GCS_MAVLink: protect control sensor flag bitmasks with a semaphore
nothing says get_sensor_status_flags can't be called from multiple threads.

If it is called from multiple threads then there's a reasonably obvious race where the mask can be cleared while some other process is already updating the flags.  That can cause a caller to report something as unhealthy when it isn't.
2025-06-03 09:31:10 +10:00
Peter Barker 0854c067bb GCS_MAVLink: tweak MAV parameter names 2025-04-07 10:58:41 +10:00
Peter Barker b8ca2688ac GCS_MAVLink: move telem_delay up into MAV_TELEM_DELAY 2025-04-07 10:58:41 +10:00
Peter Barker 5004002e76 GCS_MAVLink: SYSID_MYGCS and enforce move up to GCS, change to MAV_MYGCS_ENFRCE 2025-04-07 10:58:41 +10:00
Peter Barker 6d7b41a277 GCS_MAVLink: move streamrate parameters to GCS_MAVLINK base class 2025-04-07 10:58:41 +10:00
Peter Barker 6e6a39f970 GCS_MAVLink: create and use MAV_ parameter namespace
Move serveral parameters in
2025-04-07 10:58:41 +10:00
Peter Barker 2576c48637 GCS_MAVLink: log sent named value floats 2025-03-19 13:00:53 +11:00
Peter Barkerandmuramura 4dac24796d GCS_MAVLink: use GCS_SEND_TEXT rather than gcs().send_text
Co-authored-by: muramura <ma2maru@gmail.com>
2024-08-07 18:33:16 +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
Peter Barker ee038cdf1f GCS_MAVLink: adjust for AP_SCHEDULER_ENABLED being false 2024-04-18 08:25:15 +10:00
Stephen Dade faf2ae3a9c GCS_MAVLink: filter out additional messages for High Latency link 2024-03-12 21:13:47 +11:00
Peter Barker 5cc48a12e2 GCS_MAVLink: remove code based on ENABLE parameters 2024-02-27 11:02:48 +11:00
Peter Barker c23ba04638 GCS_MAVLink: move RC bits in mavlink to common code
Plane's semantics change to be like Copter. Rover, Sub and Tracker will start reporting the bits
2024-02-10 11:46:44 +11:00
Peter Barker cedcd190fc GCS_MAVLink: add ASSERT_STORAGE_SIZE macro
saves havin gto name the dummy variable yourself
2024-01-22 22:44:05 +11:00
Peter Barker 4cf71de646 GCS_MAVLink: allow compilation with HAL_LOGGING_ENABLED false 2024-01-17 18:25:55 +11:00
Peter Barker 5b5ee4e95d GCS_MAVLink: correct compilation when AP_AHRS_ENABLED is off
e.g. CubeOrange-periph-heavy
2024-01-16 16:14:04 +11:00
Peter Barker 273b9ea354 GCS_MAVLink: correct sensors when no baros found
GCSs will know we have no baros on-board, as will the RC telemetry library
2023-09-19 07:28:30 +10:00
Peter Barker ed5da4ead2 GCS_MAVLink: allow more libraries to compile with no HAL_GCS_ENABLED 2023-09-05 22:23:51 +10:00
Peter Barker a2ecaf737d GCS_MAVLink: correct define around use of ins singleton 2023-06-21 22:28:48 +10:00
Peter Barker a6a691cce3 GCS_MAVLink: add and use AP_GPS_ENABLED 2023-06-21 22:28:48 +10:00
Peter Barker 61affcf4e4 GCS_MAVLink: add and use AP_BARO_ENABLED 2023-06-21 22:28:48 +10:00
Peter Barker fc55bf0bc4 GCS_MAVLink: add and use AP_COMPASS_ENABLED 2023-06-21 22:28:48 +10:00
Peter Barker 42e42dc991 GCS_MAVLink: add and use AP_AHRS_ENABLED 2023-06-21 22:28:48 +10:00
Peter Barker 07bf38d7f8 GCS_MAVLink: create and use AP_BATTERY_ENABLED
simply as a way to get HAL_PERIPH_ENABLE_BATTERY out of the main code
2023-06-21 22:28:48 +10:00
Peter Barker adb364cd98 GCS_MAVLink: have GCS_MAVLINK::send_message(id, buffer) check size 2023-02-25 17:41:44 +11:00
Stephen Dade a39a933cbd GCS_Mavlink: Move high_latency_link_enabled to GCS 2023-02-21 22:32:32 +11:00
Peter Barker 74978ac577 GCS_MAVLink: add nullptr check in gcs_out_of_space_to_send
If a library were to send on a channel for which we have not allocated a GCS_MAVLINK this could lead to a nullptr dereference.  We do some odd things in uAvionix in terms of which channel to send on, so worth a check.
2023-02-07 10:07:39 +11:00
Peter Barker 26d714e9a9 GCS_MAVLink: tidy valid-channel check in install_alternative_protocol
- stop getting link multiple times
 - rely on chan() returning nullptr rather than explicitly checking num_gcs
2023-02-07 10:07:39 +11:00
Andrew Tridgell b80dca38ff GCS_MAVLINK: added check_payload_size() method
this saves flash by moving common code to cpp
2023-01-06 22:50:42 +11:00
Peter Barker 54a4b7a98b GCS_MAVLink: use chibios_hwdef.py to disable fence on AP_Periph 2023-01-06 12:39:06 +11:00
Peter Barker 70a5d8be76 GCS_MAVLink: remove unnecessary include of OpticalFlow header in GCS.h
introduces unnecessary dependencies
2022-12-15 21:07:31 +11:00
Peter Barker 342a5a71a9 GCS_MAVLink: move setting of MAV_SYS_STATUS_SENSOR_OPTICAL_FLOW sensors flags up 2022-10-19 21:00:48 +11:00
Peter Barker 0f359c6a4e GCS_MAVLink: remove individual static members for fence, mission and rally 2022-10-04 11:17:35 +11:00
Iampete1 31bc6d9ec4 GCS_MAVLink: change AC_FENCE to AP_FENCE_ENABLED 2022-07-27 19:04:56 +10:00
Iampete1 5fa29eb01a GCS_MAVLink: fix complation without fence 2022-07-27 19:04:56 +10:00
Peter Barker 38119e17c7 GCS_MAVLink: correct gcs_out_of_space_to_send methodname
the "_count" is incorrect given the method which this calles on the link object
2022-07-12 11:10:53 +10:00
Peter Barker 17ad710866 GCS_MAVLink: tidy includes 2022-05-03 09:14:58 +10:00
Stephen Dade 1344a0f41a GCS_MAVLink: Add support for High Latency MAVLink protocol 2022-03-03 14:56:15 +11:00
Peter Barker 7638cbf001 GCS_MAVLink: include cleanups 2022-03-01 11:21:33 +11:00
Andrew Tridgell ab8c40d9bc GCS_MAVLink: report airspeed unhealthy when being rejected
this gives the pilot feedback on airspeed failing EKF innnovation
checks and switching to synthetic airspeed
2022-02-07 14:13:49 +11:00
Josh Henderson fa9a852ef7 GCS_MAVLINK: move AP_Airspeed to AP_Vehicle 2022-01-19 18:21:32 +11:00
Peter Barker f461605d88 GCS_MAVLink: make logging dependent on HAL_LOGGING_ENABLED not HAL_BUILD_AP_PERIPH 2021-12-14 10:34:06 +11:00
Tom Pittenger 6ac1b7daf2 GCS_MAVLink: fix periph-heavy compile errors with different things enabled 2021-09-24 10:47:13 -05:00
Peter Barker 431c186306 GCS_MAVLink: use AP::compass().available in place of enabled() 2021-07-30 12:19:42 +10:00
bugobliterator 3d03979b16 GCS_MAVLink: add support for mavlink out on AP_Periph 2021-07-26 13:45:43 +10:00
Peter Barker 09f4961a63 GCS_MAVLink: increase statustext queue size to 7 on low-mem boards
... and SITL....

Copter currently spits out so many messages on a banner-send (e.g what
we do when parameters are fetched) that it puses the first sent message
straight out of the queue before it gets a chance to be sent from the
queue.
2021-05-27 12:39:04 +10:00
Andrew Tridgell 45daff9f47 GCS_MAVLINK: mag health reported in SYS_STATUS should not depend on AHRS use
When using external yaw, EKF3 always reports use_compass as false,
which causes the GCS to get a bad compass health message.

thanks to Argosdyne for reporting
2021-05-14 08:05:08 +09:00
Peter Hall c1a831bbf4 GCS_MAVLink: sensor flags, only mark AHRS as enabled once initialised 2021-02-16 12:54:28 +11:00
Andrew Tridgell 6df118e7b4 GCS_MAVLink: convert to using hal.serial() instead of hal.uartX 2020-12-15 10:32:46 +11:00