diff --git a/ArduCopter/Copter.h b/ArduCopter/Copter.h index 5088176a66..7293c74599 100644 --- a/ArduCopter/Copter.h +++ b/ArduCopter/Copter.h @@ -633,7 +633,6 @@ private: void send_rpm(mavlink_channel_t chan); void rpm_update(); void send_pid_tuning(mavlink_channel_t chan); - void send_statustext(mavlink_channel_t chan); bool telemetry_delayed(mavlink_channel_t chan); void gcs_send_message(enum ap_message id); void gcs_send_mission_item_reached_message(uint16_t mission_index); diff --git a/ArduCopter/GCS_Mavlink.cpp b/ArduCopter/GCS_Mavlink.cpp index 293b05362e..83824ecd80 100644 --- a/ArduCopter/GCS_Mavlink.cpp +++ b/ArduCopter/GCS_Mavlink.cpp @@ -13,6 +13,7 @@ void Copter::gcs_send_heartbeat(void) void Copter::gcs_send_deferred(void) { gcs_send_message(MSG_RETRY_DEFERRED); + GCS_MAVLINK::service_statustext(); } /* @@ -491,16 +492,6 @@ void Copter::send_pid_tuning(mavlink_channel_t chan) } } - -void NOINLINE Copter::send_statustext(mavlink_channel_t chan) -{ - mavlink_statustext_t *s = &gcs[chan-MAVLINK_COMM_0].pending_status; - mavlink_msg_statustext_send( - chan, - s->severity, - s->text); -} - // are we still delaying telemetry to try to avoid Xbee bricking? bool Copter::telemetry_delayed(mavlink_channel_t chan) { @@ -663,9 +654,8 @@ bool GCS_MAVLINK::try_send_message(enum ap_message id) break; case MSG_STATUSTEXT: - CHECK_PAYLOAD_SIZE(STATUSTEXT); - copter.send_statustext(chan); - break; + // depreciated, use GCS_MAVLINK::send_statustext* + return false; case MSG_LIMITS_STATUS: #if AC_FENCE == ENABLED @@ -2090,11 +2080,7 @@ void Copter::gcs_check_input(void) void Copter::gcs_send_text(MAV_SEVERITY severity, const char *str) { - for (uint8_t i=0; ivsnprintf((char *)gcs[0].pending_status.text, - sizeof(gcs[0].pending_status.text), fmt, arg_list); va_end(arg_list); - gcs[0].send_message(MSG_STATUSTEXT); - for (uint8_t i=1; ivsnprintf((char *)str, sizeof(str), fmt, arg_list); + GCS_MAVLINK::send_statustext(severity, 0xFF, str); }