Commit Graph

75 Commits

Author SHA1 Message Date
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
Peter Barker f158533fe9 GCS_MAVLink: allow private channels to also be active
This will allow for logging of private channels.
2020-06-09 10:37:32 +10:00
Peter Barker 8b9281eaa1 GCS_MAVLink: log number of times message not sent due to no space 2020-04-17 22:21:14 +10:00
Randy Mackay a9c1eb5af4 GCS_MAVLink: fill in sys_status vision position bits 2020-04-09 19:41:08 +09:00
Peter Barker 727c12c388 GCS_MAVLink: move initialisation of serial and gcs to AP_Vehicle 2020-02-25 11:50:55 +11:00
Andrew Tridgell 32ecd904bd GCS_MAVLink: use MAV_SYS_STATUS_PREARM_CHECK
this allows GCS to continually display prearm check status
2020-02-18 15:16:02 +11:00
Peter Barker a9f62f196e GCS_MAVLink: consolidate places we snprintf statustexts 2020-01-14 10:38:43 +11:00
Peter Barker ebbcd00873 GCS_MAVLink: send statustext to all GCSs until update_send is called
until update_send it called we don't mark channels as streaming, so
send_statustext won't send to that channel.

Calculating the streaming mask could have been done as part of the init
call, but this fix may allow for information getting to the user in the
case that the streaming parameters are all zero, too.
2019-12-18 14:36:58 +11:00
Peter Barker b48da34c61 GCS_MAVLink: move setting of GPS SYS_STATUS bits up to base class 2019-12-05 13:02:19 +11:00
Michael du Breuil 7582a5b4a4 GCS_MAVLink: Send GPS logging as part of the logging status bits 2019-11-20 11:06:16 -07:00
Peter Barker 7d2557b316 GCS_MAVLink: correct txspace return value issues
- checking of space in send_to_active_channels was incorrect - did not
take into account locked status of the channel

 - corrected return value on comm_get_txspace - took a uint32_t, cast it
to int16_t, checked it for zero, then cast it to uint16_t on return.
That's just... odd.
2019-11-12 16:33:12 +11:00
Mark Whitehorn a25846b8a2 GCS_MAVLink: change in_sensor_config_error to in_config_error 2019-11-08 10:14:34 +11:00
Andrew Tridgell c03796d7de GCS_MAVLink: fixed uninitialised bytes in send_named_float()
this fixes an issue with mavproxy with python3
2019-10-17 13:50:35 +11:00
Peter Barker 6d0c5da84a GCS_MAVLink: allow upload of fence using mission item protocol
GCS_MAVLink: add support for fence inclusion circles

GCS_MAVLink: factor out a transfer_is_complete; start commenting properly
2019-09-28 07:58:48 +09:00
Peter Barker 9da0efaaef GCS_MAVLink: fill SYS_STATUS bits from AC_Fence 2019-09-03 09:12:24 +10:00