From e2fa5c2857c20e3911506308cbcc4bd68b76e5b9 Mon Sep 17 00:00:00 2001 From: Lorenz Meier Date: Sat, 6 May 2017 12:38:28 +0200 Subject: [PATCH] MAVLink: Remove status text output The MAVLink app was logging the status to a file on the SD card, however, this has been integrated into the ulog format since. Having these in multiple locations is unnecessarily confusing to the user and induces load to the system. --- src/modules/mavlink/mavlink_messages.cpp | 91 ++---------------------- 1 file changed, 5 insertions(+), 86 deletions(-) diff --git a/src/modules/mavlink/mavlink_messages.cpp b/src/modules/mavlink/mavlink_messages.cpp index 04e9c4b3ec..4a8ed483b4 100644 --- a/src/modules/mavlink/mavlink_messages.cpp +++ b/src/modules/mavlink/mavlink_messages.cpp @@ -1,6 +1,6 @@ /**************************************************************************** * - * Copyright (c) 2012-2016 PX4 Development Team. All rights reserved. + * Copyright (c) 2012-2017 PX4 Development Team. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -33,7 +33,7 @@ /** * @file mavlink_messages.cpp - * MAVLink 1.0 message formatters implementation. + * MAVLink 2.0 message formatters implementation. * * @author Lorenz Meier * @author Anton Babushkin @@ -375,26 +375,11 @@ private: MavlinkStreamStatustext(MavlinkStreamStatustext &); MavlinkStreamStatustext &operator = (const MavlinkStreamStatustext &); - unsigned _write_err_count = 0; - static const unsigned write_err_threshold = 5; -#if !defined(__PX4_POSIX_EAGLE) && !defined(__PX4_POSIX_EXCELSIOR) - FILE *_fp = nullptr; -#endif - protected: explicit MavlinkStreamStatustext(Mavlink *mavlink) : MavlinkStream(mavlink) {} - ~MavlinkStreamStatustext() - { -#if !defined(__PX4_POSIX_EAGLE) && !defined(__PX4_POSIX_EXCELSIOR) - - if (_fp != nullptr) { - fclose(_fp); - } - -#endif - } + ~MavlinkStreamStatustext() {} void send(const hrt_abstime t) @@ -405,78 +390,12 @@ protected: if (_mavlink->get_logbuffer()->get(&mavlink_log)) { - mavlink_statustext_t msg = {}; + mavlink_statustext_t msg; msg.severity = mavlink_log.severity; strncpy(msg.text, (const char *)mavlink_log.text, sizeof(msg.text)); msg.text[sizeof(msg.text) - 1] = '\0'; mavlink_msg_statustext_send_struct(_mavlink->get_channel(), &msg); - -// TODO: the logging doesn't work on Snapdragon yet because of file paths. -#if !defined(__PX4_POSIX_EAGLE) && !defined(__PX4_POSIX_EXCELSIOR) - /* write log messages in first instance to disk - * timestamp each message with gps time - */ - timespec ts; - px4_clock_gettime(CLOCK_REALTIME, &ts); - time_t gps_time_sec = ts.tv_sec + (ts.tv_nsec / 1e9); - struct tm tt = {}; - gmtime_r(&gps_time_sec, &tt); - char tstamp[22]; - strftime(tstamp, sizeof(tstamp) - 1, "%Y_%m_%d_%H_%M_%S", &tt); - - if (_mavlink->get_instance_id() == 0/* && _mavlink->get_logging_enabled()*/) { - if (_fp != nullptr) { - fputs(tstamp, _fp); - fputs(": ", _fp); - - if (EOF == fputs(msg.text, _fp)) { - _write_err_count++; - - } else { - _write_err_count = 0; - } - - if (_write_err_count >= write_err_threshold) { - (void)fclose(_fp); - _fp = nullptr; - PX4_WARN("mavlink logging disabled"); - - } else { - (void)fputs("\n", _fp); -#ifdef __PX4_NUTTX - fsync(fileno(_fp)); -#endif - } - - } else if (_write_err_count < write_err_threshold) { - /* string to hold the path to the log */ - char log_file_path[128]; - - /* use GPS time for log file naming, e.g. /fs/microsd/2014-01-19/19_37_52.bin */ - - /* store the log file in the root directory */ - snprintf(log_file_path, sizeof(log_file_path) - 1, PX4_ROOTFSDIR"/fs/microsd/msgs_%s.txt", tstamp); - _fp = fopen(log_file_path, "ab"); - - if (_fp != nullptr) { - /* write first message */ - fputs(tstamp, _fp); - fputs(": ", _fp); - fputs(msg.text, _fp); - fputs("\n", _fp); -#ifdef __PX4_NUTTX - fsync(fileno(_fp)); -#endif - - } else { - PX4_WARN("Failed to open MAVLink log: %s", log_file_path); - _write_err_count = write_err_threshold; //only try to open the file once - } - } - } - -#endif } } } @@ -531,7 +450,7 @@ protected: void send(const hrt_abstime t) { - struct vehicle_command_s cmd = {}; + struct vehicle_command_s cmd; if (_cmd_sub->update(&_cmd_time, &cmd)) { /* only send commands for other systems/components */