From c87e44f66f50b31ea17d188044358b2bd0aa0f18 Mon Sep 17 00:00:00 2001 From: dogmaphobic Date: Sat, 16 Jan 2016 10:28:20 -0500 Subject: [PATCH] Show ESP8266 Firmware Version in Summary Panel --- .../Common/ESP8266ComponentController.cc | 18 ++++++++++++++++++ .../Common/ESP8266ComponentController.h | 4 ++++ .../Common/ESP8266ComponentSummary.qml | 12 ++++-------- 3 files changed, 26 insertions(+), 8 deletions(-) diff --git a/src/AutoPilotPlugins/Common/ESP8266ComponentController.cc b/src/AutoPilotPlugins/Common/ESP8266ComponentController.cc index 548f9a9..576fcc8 100644 --- a/src/AutoPilotPlugins/Common/ESP8266ComponentController.cc +++ b/src/AutoPilotPlugins/Common/ESP8266ComponentController.cc @@ -56,6 +56,8 @@ ESP8266ComponentController::ESP8266ComponentController() connect(paswd, &Fact::valueChanged, this, &ESP8266ComponentController::_passwordChanged); Fact* baud = getParameterFact(MAV_COMP_ID_UDP_BRIDGE, "UART_BAUDRATE"); connect(baud, &Fact::valueChanged, this, &ESP8266ComponentController::_baudChanged); + Fact* ver = getParameterFact(MAV_COMP_ID_UDP_BRIDGE, "SW_VER"); + connect(ver, &Fact::valueChanged, this, &ESP8266ComponentController::_versionChanged); } //----------------------------------------------------------------------------- @@ -66,6 +68,15 @@ ESP8266ComponentController::~ESP8266ComponentController() //----------------------------------------------------------------------------- QString +ESP8266ComponentController::version() +{ + uint32_t uv = getParameterFact(MAV_COMP_ID_UDP_BRIDGE, "SW_VER")->rawValue().toUInt(); + QString versionString = QString("%1.%2.%3").arg(uv >> 24).arg((uv >> 16) & 0xFF).arg(uv & 0xFFFF); + return versionString; +} + +//----------------------------------------------------------------------------- +QString ESP8266ComponentController::wifiSSID() { uint32_t s1 = getParameterFact(MAV_COMP_ID_UDP_BRIDGE, "WIFI_SSID1")->rawValue().toUInt(); @@ -316,3 +327,10 @@ ESP8266ComponentController::_baudChanged(QVariant) { emit baudIndexChanged(); } + +//----------------------------------------------------------------------------- +void +ESP8266ComponentController::_versionChanged(QVariant) +{ + emit versionChanged(); +} diff --git a/src/AutoPilotPlugins/Common/ESP8266ComponentController.h b/src/AutoPilotPlugins/Common/ESP8266ComponentController.h index ab5515c..5a5f5ab 100644 --- a/src/AutoPilotPlugins/Common/ESP8266ComponentController.h +++ b/src/AutoPilotPlugins/Common/ESP8266ComponentController.h @@ -51,6 +51,7 @@ public: ~ESP8266ComponentController (); Q_PROPERTY(int componentID READ componentID CONSTANT) + Q_PROPERTY(QString version READ version NOTIFY versionChanged) Q_PROPERTY(QString wifiSSID READ wifiSSID WRITE setWifiSSID NOTIFY wifiSSIDChanged) Q_PROPERTY(QString wifiPassword READ wifiPassword WRITE setWifiPassword NOTIFY wifiPasswordChanged) Q_PROPERTY(QStringList wifiChannels READ wifiChannels CONSTANT) @@ -62,6 +63,7 @@ public: Q_INVOKABLE void reboot(); int componentID () { return MAV_COMP_ID_UDP_BRIDGE; } + QString version (); QString wifiSSID (); QString wifiPassword (); QStringList wifiChannels () { return _channels; } @@ -74,6 +76,7 @@ public: void setBaudIndex (int idx); signals: + void versionChanged (); void wifiSSIDChanged (); void wifiPasswordChanged (); void baudIndexChanged (); @@ -85,6 +88,7 @@ private slots: void _ssidChanged (QVariant value); void _passwordChanged (QVariant value); void _baudChanged (QVariant value); + void _versionChanged (QVariant value); private: void _reboot (); diff --git a/src/AutoPilotPlugins/Common/ESP8266ComponentSummary.qml b/src/AutoPilotPlugins/Common/ESP8266ComponentSummary.qml index 50b3792..1cd4465 100644 --- a/src/AutoPilotPlugins/Common/ESP8266ComponentSummary.qml +++ b/src/AutoPilotPlugins/Common/ESP8266ComponentSummary.qml @@ -29,6 +29,10 @@ FactPanel { anchors.fill: parent anchors.margins: 8 VehicleSummaryRow { + labelText: "Firmware Version:" + valueText: esp8266.version + } + VehicleSummaryRow { labelText: "WiFi Channel:" valueText: wifiChannel.valueString } @@ -41,14 +45,6 @@ FactPanel { valueText: esp8266.wifiPassword } VehicleSummaryRow { - labelText: "QGC UDP Port:" - valueText: wifiHostPort.valueString - } - VehicleSummaryRow { - labelText: "UAV UDP Port:" - valueText: wifiClientPort.valueString - } - VehicleSummaryRow { labelText: "UART Baud Rate:" valueText: uartBaud.valueString }