From 461671eaf3c6469ef196c66afb99d35a4d589634 Mon Sep 17 00:00:00 2001 From: Tom Pittenger Date: Mon, 26 Jun 2023 09:24:30 -0700 Subject: [PATCH] AP_DroneCAN: add NotifyState.landing & taking off --- libraries/AP_DroneCAN/AP_DroneCAN.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/libraries/AP_DroneCAN/AP_DroneCAN.cpp b/libraries/AP_DroneCAN/AP_DroneCAN.cpp index b192d752e6..82a86e8b99 100644 --- a/libraries/AP_DroneCAN/AP_DroneCAN.cpp +++ b/libraries/AP_DroneCAN/AP_DroneCAN.cpp @@ -29,6 +29,7 @@ #include #include #include +#include #include #include #include @@ -813,6 +814,18 @@ void AP_DroneCAN::notify_state_send() msg.vehicle_state |= 1 << ARDUPILOT_INDICATION_NOTIFYSTATE_VEHICLE_STATE_THROW_READY; } +#ifndef HAL_BUILD_AP_PERIPH + const AP_Vehicle* vehicle = AP::vehicle(); + if (vehicle != nullptr) { + if (vehicle->is_landing()) { + msg.vehicle_state |= 1 << ARDUPILOT_INDICATION_NOTIFYSTATE_VEHICLE_STATE_IS_LANDING; + } + if (vehicle->is_taking_off()) { + msg.vehicle_state |= 1 << ARDUPILOT_INDICATION_NOTIFYSTATE_VEHICLE_STATE_IS_TAKING_OFF; + } + } +#endif // HAL_BUILD_AP_PERIPH + msg.aux_data_type = ARDUPILOT_INDICATION_NOTIFYSTATE_VEHICLE_YAW_EARTH_CENTIDEGREES; uint16_t yaw_cd = (uint16_t)(360.0f - degrees(AP::ahrs().get_yaw()))*100.0f; const uint8_t *data = (uint8_t *)&yaw_cd;