QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
FirmwareUpgradeController Class Reference

Supported firmware types. If you modify these you will need to update the qml file as well. More...

#include <FirmwareUpgradeController.h>

+ Inheritance diagram for FirmwareUpgradeController:
+ Collaboration diagram for FirmwareUpgradeController:

Classes

class  FirmwareIdentifier
 

Public Types

enum  AutoPilotStackType_t { AutoPilotStackPX4 = 0 , AutoPilotStackAPM , SiKRadio , SingleFirmwareMode }
 
enum  FirmwareBuildType_t { StableFirmware = 0 , BetaFirmware , DeveloperFirmware , CustomFirmware }
 
enum  FirmwareVehicleType_t {
  CopterFirmware = 0 , HeliFirmware , PlaneFirmware , RoverFirmware ,
  SubFirmware , DefaultVehicleFirmware
}
 

Signals

void boardFound (void)
 
void showFirmwareSelectDlg (void)
 
void noBoardFound (void)
 
void boardGone (void)
 
void flashComplete (void)
 
void flashCancelled (void)
 
void error (void)
 
void eraseStarted (void)
 
void selectedFirmwareBuildTypeChanged (FirmwareBuildType_t firmwareType)
 
void apmFirmwareNamesChanged (void)
 
void px4StableVersionChanged (const QString &px4StableVersion)
 
void px4BetaVersionChanged (const QString &px4BetaVersion)
 
void downloadingFirmwareListChanged (bool downloadingFirmwareList)
 
void availablePortsChanged (void)
 

Public Member Functions

 FirmwareUpgradeController (void)
 @Brief Constructs a new FirmwareUpgradeController Widget. This widget is used within the PX4VehicleConfig set of screens.
 
 ~FirmwareUpgradeController ()
 
Q_INVOKABLE void startBoardSearch (void)
 TextArea for log output.
 
Q_INVOKABLE void flashPort (const QString &systemLocation)
 Selects which serial port to flash. The worker will wait for this port to be in bootloader mode and then handshake.
 
Q_INVOKABLE void cancel (void)
 Cancels whatever state the upgrade worker thread is in.
 
Q_INVOKABLE void flash (AutoPilotStackType_t stackType, FirmwareBuildType_t firmwareType=StableFirmware, FirmwareVehicleType_t vehicleType=DefaultVehicleFirmware)
 Called when the firmware type has been selected by the user to continue the flash process.
 
Q_INVOKABLE void flashFirmwareUrl (QString firmwareUrl)
 
Q_INVOKABLE void flashSingleFirmwareMode (FirmwareBuildType_t firmwareType)
 Called to flash when upgrade is running in singleFirmwareMode.
 
Q_INVOKABLE FirmwareVehicleType_t vehicleTypeFromFirmwareSelectionIndex (int index)
 
void flash (const FirmwareIdentifier &firmwareId)
 
QQuickItem * progressBar (void)
 
void setProgressBar (QQuickItem *progressBar)
 
QQuickItem * statusLog (void)
 
void setStatusLog (QQuickItem *statusLog)
 
QString boardPort (void)
 
QString boardDescription (void)
 
FirmwareBuildType_t selectedFirmwareBuildType (void)
 
void setSelectedFirmwareBuildType (FirmwareBuildType_t firmwareType)
 
QString firmwareTypeAsString (FirmwareBuildType_t type) const
 returns firmware type as a string
 
QString px4StableVersion (void)
 
QString px4BetaVersion (void)
 
bool pixhawkBoard (void) const
 
Q_INVOKABLE QStringList availableBoardsName (void)
 Return a human friendly string of available boards.
 

Detailed Description

Supported firmware types. If you modify these you will need to update the qml file as well.

Definition at line 22 of file FirmwareUpgradeController.h.

Member Enumeration Documentation

◆ AutoPilotStackType_t

Enumerator
AutoPilotStackPX4 
AutoPilotStackAPM 
SiKRadio 
SingleFirmwareMode 

Definition at line 30 of file FirmwareUpgradeController.h.

◆ FirmwareBuildType_t

Enumerator
StableFirmware 
BetaFirmware 
DeveloperFirmware 
CustomFirmware 

Definition at line 37 of file FirmwareUpgradeController.h.

◆ FirmwareVehicleType_t

Enumerator
CopterFirmware 
HeliFirmware 
PlaneFirmware 
RoverFirmware 
SubFirmware 
DefaultVehicleFirmware 

Definition at line 44 of file FirmwareUpgradeController.h.

Constructor & Destructor Documentation

◆ FirmwareUpgradeController()

◆ ~FirmwareUpgradeController()

FirmwareUpgradeController::~FirmwareUpgradeController ( )

Member Function Documentation

◆ apmFirmwareNamesChanged

void FirmwareUpgradeController::apmFirmwareNamesChanged ( void  )
signal

◆ availableBoardsName()

QStringList FirmwareUpgradeController::availableBoardsName ( void  )

Return a human friendly string of available boards.

Returns
availableBoardNames

Definition at line 237 of file FirmwareUpgradeController.cc.

References QGCSerialPortInfo::availablePorts().

◆ availablePortsChanged

void FirmwareUpgradeController::availablePortsChanged ( void  )
signal

◆ boardDescription()

QString FirmwareUpgradeController::boardDescription ( void  )
inline

Definition at line 133 of file FirmwareUpgradeController.h.

References QSerialPortInfo::description().

◆ boardFound

void FirmwareUpgradeController::boardFound ( void  )
signal

◆ boardGone

void FirmwareUpgradeController::boardGone ( void  )
signal

◆ boardPort()

QString FirmwareUpgradeController::boardPort ( void  )
inline

Definition at line 132 of file FirmwareUpgradeController.h.

References QSerialPortInfo::portName().

◆ cancel()

void FirmwareUpgradeController::cancel ( void  )

Cancels whatever state the upgrade worker thread is in.

Definition at line 213 of file FirmwareUpgradeController.cc.

References PX4FirmwareUpgradeThreadController::cancel().

◆ downloadingFirmwareListChanged

void FirmwareUpgradeController::downloadingFirmwareListChanged ( bool  downloadingFirmwareList)
signal

◆ eraseStarted

void FirmwareUpgradeController::eraseStarted ( void  )
signal

◆ error

void FirmwareUpgradeController::error ( void  )
signal

◆ firmwareTypeAsString()

QString FirmwareUpgradeController::firmwareTypeAsString ( FirmwareBuildType_t  type) const

returns firmware type as a string

Definition at line 460 of file FirmwareUpgradeController.cc.

References BetaFirmware, DeveloperFirmware, and StableFirmware.

◆ flash() [1/2]

void FirmwareUpgradeController::flash ( AutoPilotStackType_t  stackType,
FirmwareBuildType_t  firmwareType = StableFirmware,
FirmwareVehicleType_t  vehicleType = DefaultVehicleFirmware 
)

Called when the firmware type has been selected by the user to continue the flash process.

Definition at line 176 of file FirmwareUpgradeController.cc.

Referenced by flash(), and flashSingleFirmwareMode().

◆ flash() [2/2]

◆ flashCancelled

void FirmwareUpgradeController::flashCancelled ( void  )
signal

◆ flashComplete

void FirmwareUpgradeController::flashComplete ( void  )
signal

◆ flashFirmwareUrl()

void FirmwareUpgradeController::flashFirmwareUrl ( QString  firmwareUrl)

Definition at line 192 of file FirmwareUpgradeController.cc.

◆ flashPort()

void FirmwareUpgradeController::flashPort ( const QString &  systemLocation)

Selects which serial port to flash. The worker will wait for this port to be in bootloader mode and then handshake.

Definition at line 223 of file FirmwareUpgradeController.cc.

References PX4FirmwareUpgradeThreadController::setTargetPort().

◆ flashSingleFirmwareMode()

void FirmwareUpgradeController::flashSingleFirmwareMode ( FirmwareBuildType_t  firmwareType)

Called to flash when upgrade is running in singleFirmwareMode.

Definition at line 208 of file FirmwareUpgradeController.cc.

References DefaultVehicleFirmware, flash(), and SingleFirmwareMode.

◆ noBoardFound

void FirmwareUpgradeController::noBoardFound ( void  )
signal

◆ pixhawkBoard()

bool FirmwareUpgradeController::pixhawkBoard ( void  ) const
inline

Definition at line 142 of file FirmwareUpgradeController.h.

References QGCSerialPortInfo::BoardTypePixhawk.

◆ progressBar()

QQuickItem * FirmwareUpgradeController::progressBar ( void  )
inline

Definition at line 126 of file FirmwareUpgradeController.h.

Referenced by setProgressBar().

◆ px4BetaVersion()

QString FirmwareUpgradeController::px4BetaVersion ( void  )
inline

Definition at line 140 of file FirmwareUpgradeController.h.

◆ px4BetaVersionChanged

void FirmwareUpgradeController::px4BetaVersionChanged ( const QString &  px4BetaVersion)
signal

◆ px4StableVersion()

QString FirmwareUpgradeController::px4StableVersion ( void  )
inline

Definition at line 139 of file FirmwareUpgradeController.h.

◆ px4StableVersionChanged

void FirmwareUpgradeController::px4StableVersionChanged ( const QString &  px4StableVersion)
signal

◆ selectedFirmwareBuildType()

FirmwareBuildType_t FirmwareUpgradeController::selectedFirmwareBuildType ( void  )
inline

Definition at line 135 of file FirmwareUpgradeController.h.

◆ selectedFirmwareBuildTypeChanged

void FirmwareUpgradeController::selectedFirmwareBuildTypeChanged ( FirmwareBuildType_t  firmwareType)
signal

◆ setProgressBar()

void FirmwareUpgradeController::setProgressBar ( QQuickItem *  progressBar)
inline

Definition at line 127 of file FirmwareUpgradeController.h.

References progressBar().

◆ setSelectedFirmwareBuildType()

void FirmwareUpgradeController::setSelectedFirmwareBuildType ( FirmwareBuildType_t  firmwareType)

Definition at line 555 of file FirmwareUpgradeController.cc.

References selectedFirmwareBuildTypeChanged().

◆ setStatusLog()

void FirmwareUpgradeController::setStatusLog ( QQuickItem *  statusLog)
inline

Definition at line 130 of file FirmwareUpgradeController.h.

References statusLog().

◆ showFirmwareSelectDlg

void FirmwareUpgradeController::showFirmwareSelectDlg ( void  )
signal

◆ startBoardSearch()

void FirmwareUpgradeController::startBoardSearch ( void  )

TextArea for log output.

Progress bar for you know what Starts searching for boards on the background thread

Definition at line 161 of file FirmwareUpgradeController.cc.

References LinkManager::disconnectAll(), LinkManager::instance(), MultiVehicleManager::instance(), LinkManager::setConnectionsSuspended(), and PX4FirmwareUpgradeThreadController::startFindBoardLoop().

◆ statusLog()

QQuickItem * FirmwareUpgradeController::statusLog ( void  )
inline

Definition at line 129 of file FirmwareUpgradeController.h.

Referenced by setStatusLog().

◆ vehicleTypeFromFirmwareSelectionIndex()

FirmwareUpgradeController::FirmwareVehicleType_t FirmwareUpgradeController::vehicleTypeFromFirmwareSelectionIndex ( int  index)

Definition at line 617 of file FirmwareUpgradeController.cc.

References CopterFirmware.


The documentation for this class was generated from the following files: