Commit da71154c authored by Gus Grubba's avatar Gus Grubba

Vehicle UID

parent 2f17ab70
...@@ -147,6 +147,7 @@ Vehicle::Vehicle(LinkInterface* link, ...@@ -147,6 +147,7 @@ Vehicle::Vehicle(LinkInterface* link,
, _firmwareCustomPatchVersion(versionNotSetValue) , _firmwareCustomPatchVersion(versionNotSetValue)
, _firmwareVersionType(FIRMWARE_VERSION_TYPE_OFFICIAL) , _firmwareVersionType(FIRMWARE_VERSION_TYPE_OFFICIAL)
, _gitHash(versionNotSetValue) , _gitHash(versionNotSetValue)
, _uid(0)
, _lastAnnouncedLowBatteryPercent(100) , _lastAnnouncedLowBatteryPercent(100)
, _rollFact (0, _rollFactName, FactMetaData::valueTypeDouble) , _rollFact (0, _rollFactName, FactMetaData::valueTypeDouble)
, _pitchFact (0, _pitchFactName, FactMetaData::valueTypeDouble) , _pitchFact (0, _pitchFactName, FactMetaData::valueTypeDouble)
...@@ -310,6 +311,7 @@ Vehicle::Vehicle(MAV_AUTOPILOT firmwareType, ...@@ -310,6 +311,7 @@ Vehicle::Vehicle(MAV_AUTOPILOT firmwareType,
, _firmwareCustomPatchVersion(versionNotSetValue) , _firmwareCustomPatchVersion(versionNotSetValue)
, _firmwareVersionType(FIRMWARE_VERSION_TYPE_OFFICIAL) , _firmwareVersionType(FIRMWARE_VERSION_TYPE_OFFICIAL)
, _gitHash(versionNotSetValue) , _gitHash(versionNotSetValue)
, _uid(0)
, _lastAnnouncedLowBatteryPercent(100) , _lastAnnouncedLowBatteryPercent(100)
, _rollFact (0, _rollFactName, FactMetaData::valueTypeDouble) , _rollFact (0, _rollFactName, FactMetaData::valueTypeDouble)
, _pitchFact (0, _pitchFactName, FactMetaData::valueTypeDouble) , _pitchFact (0, _pitchFactName, FactMetaData::valueTypeDouble)
...@@ -745,6 +747,9 @@ void Vehicle::_handleAutopilotVersion(LinkInterface *link, mavlink_message_t& me ...@@ -745,6 +747,9 @@ void Vehicle::_handleAutopilotVersion(LinkInterface *link, mavlink_message_t& me
mavlink_autopilot_version_t autopilotVersion; mavlink_autopilot_version_t autopilotVersion;
mavlink_msg_autopilot_version_decode(&message, &autopilotVersion); mavlink_msg_autopilot_version_decode(&message, &autopilotVersion);
_uid = (quint64)autopilotVersion.uid;
emit vehicleUIDChanged();
if (autopilotVersion.flight_sw_version != 0) { if (autopilotVersion.flight_sw_version != 0) {
int majorVersion, minorVersion, patchVersion; int majorVersion, minorVersion, patchVersion;
FIRMWARE_VERSION_TYPE versionType; FIRMWARE_VERSION_TYPE versionType;
...@@ -780,6 +785,22 @@ void Vehicle::_handleAutopilotVersion(LinkInterface *link, mavlink_message_t& me ...@@ -780,6 +785,22 @@ void Vehicle::_handleAutopilotVersion(LinkInterface *link, mavlink_message_t& me
_startPlanRequest(); _startPlanRequest();
} }
QString Vehicle::vehicleUIDStr()
{
QString uid;
uint8_t* pUid = (uint8_t*)(void*)&_uid;
uid.sprintf("%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X",
pUid[0] & 0xff,
pUid[1] & 0xff,
pUid[2] & 0xff,
pUid[3] & 0xff,
pUid[4] & 0xff,
pUid[5] & 0xff,
pUid[6] & 0xff,
pUid[7] & 0xff);
return uid;
}
void Vehicle::_handleHilActuatorControls(mavlink_message_t &message) void Vehicle::_handleHilActuatorControls(mavlink_message_t &message)
{ {
mavlink_hil_actuator_controls_t hil; mavlink_hil_actuator_controls_t hil;
......
...@@ -361,6 +361,8 @@ public: ...@@ -361,6 +361,8 @@ public:
Q_PROPERTY(int firmwareCustomMinorVersion READ firmwareCustomMinorVersion NOTIFY firmwareCustomVersionChanged) Q_PROPERTY(int firmwareCustomMinorVersion READ firmwareCustomMinorVersion NOTIFY firmwareCustomVersionChanged)
Q_PROPERTY(int firmwareCustomPatchVersion READ firmwareCustomPatchVersion NOTIFY firmwareCustomVersionChanged) Q_PROPERTY(int firmwareCustomPatchVersion READ firmwareCustomPatchVersion NOTIFY firmwareCustomVersionChanged)
Q_PROPERTY(QString gitHash READ gitHash NOTIFY gitHashChanged) Q_PROPERTY(QString gitHash READ gitHash NOTIFY gitHashChanged)
Q_PROPERTY(quint64 vehicleUID READ vehicleUID NOTIFY vehicleUIDChanged)
Q_PROPERTY(QString vehicleUIDStr READ vehicleUIDStr NOTIFY vehicleUIDChanged)
/// Resets link status counters /// Resets link status counters
Q_INVOKABLE void resetCounters (); Q_INVOKABLE void resetCounters ();
...@@ -643,6 +645,8 @@ public: ...@@ -643,6 +645,8 @@ public:
static const int versionNotSetValue = -1; static const int versionNotSetValue = -1;
QString gitHash(void) const { return _gitHash; } QString gitHash(void) const { return _gitHash; }
quint64 vehicleUID(void) const { return _uid; }
QString vehicleUIDStr();
bool soloFirmware(void) const { return _soloFirmware; } bool soloFirmware(void) const { return _soloFirmware; }
void setSoloFirmware(bool soloFirmware); void setSoloFirmware(bool soloFirmware);
...@@ -754,6 +758,7 @@ signals: ...@@ -754,6 +758,7 @@ signals:
void firmwareVersionChanged(void); void firmwareVersionChanged(void);
void firmwareCustomVersionChanged(void); void firmwareCustomVersionChanged(void);
void gitHashChanged(QString hash); void gitHashChanged(QString hash);
void vehicleUIDChanged();
/// New RC channel values /// New RC channel values
/// @param channelCount Number of available channels, cMaxRcChannels max /// @param channelCount Number of available channels, cMaxRcChannels max
...@@ -1008,6 +1013,7 @@ private: ...@@ -1008,6 +1013,7 @@ private:
FIRMWARE_VERSION_TYPE _firmwareVersionType; FIRMWARE_VERSION_TYPE _firmwareVersionType;
QString _gitHash; QString _gitHash;
quint64 _uid;
int _lastAnnouncedLowBatteryPercent; int _lastAnnouncedLowBatteryPercent;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment