Low level bootloader protocol structures.
More...
|
| tl_dfu |
|
| Ui |
|
| uploader |
|
| Core |
| The Core namespace contains all classes that make up the Core plugin which constitute the basic functionality of the GCS.
|
|
|
enum | tl_dfu::bl_commands {
tl_dfu::BL_MSG_RESERVED = 0,
tl_dfu::BL_MSG_CAP_REQ,
tl_dfu::BL_MSG_CAP_REP,
tl_dfu::BL_MSG_ENTER_DFU,
tl_dfu::BL_MSG_JUMP_FW,
tl_dfu::BL_MSG_RESET,
tl_dfu::BL_MSG_OP_ABORT,
tl_dfu::BL_MSG_WRITE_CONT,
tl_dfu::BL_MSG_OP_END,
tl_dfu::BL_MSG_READ_START,
tl_dfu::BL_MSG_READ_CONT,
tl_dfu::BL_MSG_STATUS_REQ,
tl_dfu::BL_MSG_STATUS_REP,
tl_dfu::BL_MSG_WIPE_PARTITION,
tl_dfu::BL_MSG_WRITE_START
} |
|
enum | tl_dfu::dfu_partition_label {
tl_dfu::DFU_PARTITION_FW,
tl_dfu::DFU_PARTITION_DESC,
tl_dfu::DFU_PARTITION_BL,
tl_dfu::DFU_PARTITION_SETTINGS,
tl_dfu::DFU_PARTITION_AUTOTUNE,
tl_dfu::DFU_PARTITION_LOG,
tl_dfu::DFU_PARTITION_LOADABLE_EXTENSION
} |
|
enum | tl_dfu::Status {
tl_dfu::DFUidle,
tl_dfu::uploading,
tl_dfu::wrong_packet_received,
tl_dfu::too_many_packets,
tl_dfu::too_few_packets,
tl_dfu::Last_operation_Success,
tl_dfu::downloading,
tl_dfu::idle,
tl_dfu::Last_operation_failed,
tl_dfu::uploadingStarting,
tl_dfu::outsideDevCapabilities,
tl_dfu::CRC_Fail,
tl_dfu::failed_jump,
tl_dfu::abort,
tl_dfu::not_in_dfu
} |
|
enum | tl_dfu::DFUObject::ThreadJobStruc::Actions { tl_dfu::DFUObject::ThreadJobStruc::Download,
tl_dfu::DFUObject::ThreadJobStruc::Upload
} |
|
enum | UpgradeAssistantDialog::UpgradeAssistantStep {
UpgradeAssistantDialog::STEP_FIRST = 0,
UpgradeAssistantDialog::STEP_ENTERLOADER = 0,
UpgradeAssistantDialog::STEP_CHECKCLOUD,
UpgradeAssistantDialog::STEP_UPGRADEBOOTLOADER,
UpgradeAssistantDialog::STEP_DOWNLOADSETTINGS,
UpgradeAssistantDialog::STEP_TRANSLATESETTINGS,
UpgradeAssistantDialog::STEP_ERASESETTINGS,
UpgradeAssistantDialog::STEP_FLASHFIRMWARE,
UpgradeAssistantDialog::STEP_BOOT,
UpgradeAssistantDialog::STEP_IMPORT,
UpgradeAssistantDialog::STEP_DONE,
UpgradeAssistantDialog::STEP_NUM = STEP_DONE
} |
|
enum | uploader::StatusIcon { uploader::STATUSICON_OK,
uploader::STATUSICON_RUNNING,
uploader::STATUSICON_FAIL,
uploader::STATUSICON_INFO
} |
|
|
| __attribute__ ((packed)) |
|
| PACK (struct msg_xfer_start{uint32_t packets_in_transfer;uint8_t label;uint8_t words_in_last_packet;uint32_t expected_crc;}) |
|
| PACK (union msg_contents{struct msg_capabilities_req cap_req;struct msg_capabilities_rep_all cap_rep_all;struct msg_capabilities_rep_specific cap_rep_specific;struct msg_enter_dfu enter_dfu;struct msg_jump_fw jump_fw;struct msg_reset reset;struct msg_op_abort op_abort;struct msg_op_end op_end;struct msg_xfer_start xfer_start;struct msg_xfer_cont xfer_cont;struct msg_status_req status_req;struct msg_status_rep status_rep;struct msg_wipe_partition wipe_partition;uint8_t pad[62];}) |
|
| PACK (struct bl_messages{uint8_t flags_command;union msg_contents v;}) |
|
static quint32 | tl_dfu::DFUObject::CRCFromQBArray (QByteArray array, quint32 Size) |
|
| tl_dfu::DFUObject::DFUObject () |
|
| tl_dfu::DFUObject::~DFUObject () |
|
int | tl_dfu::DFUObject::JumpToApp (bool) |
|
int | tl_dfu::DFUObject::ResetDevice (void) |
|
bool | tl_dfu::DFUObject::OpenBootloaderComs (USBPortInfo port) |
|
void | tl_dfu::DFUObject::CloseBootloaderComs () |
|
bool | tl_dfu::DFUObject::UploadPartitionThreaded (QByteArray &sourceArray, dfu_partition_label partition, int size) |
|
bool | tl_dfu::DFUObject::DownloadPartitionThreaded (QByteArray *firmwareArray, dfu_partition_label partition, int size) |
|
bool | tl_dfu::DFUObject::WipePartition (dfu_partition_label partition) |
|
QByteArray | tl_dfu::DFUObject::DownloadDescriptionAsByteArray (int const &numberOfChars) |
|
void | tl_dfu::DFUObject::run () |
|
| UpgradeAssistantDialog::UpgradeAssistantDialog (QWidget *parent=nullptr) |
|
| UpgradeAssistantDialog::~UpgradeAssistantDialog () |
|
void | UpgradeAssistantDialog::setOperatingMode (bool upgradingBootloader, bool blankFC) |
|
int | UpgradeAssistantDialog::PromptUser (QString promptText, QString detailText, QStringList buttonText) |
|
void | UpgradeAssistantDialog::onStepChanged (UpgradeAssistantStep step) |
|
void | UpgradeAssistantDialog::closeEvent (QCloseEvent *event) |
|
| uploader::UploaderGadget::UploaderGadget (QString classId, UploaderGadgetWidget *widget, QWidget *parent=nullptr) |
|
| uploader::UploaderGadget::~UploaderGadget () |
|
QWidget * | uploader::UploaderGadget::widget () |
|
void | uploader::UploaderGadget::loadConfiguration (IUAVGadgetConfiguration *config) |
|
| uploader::UploaderGadgetFactory::UploaderGadgetFactory (QObject *parent=nullptr) |
|
| uploader::UploaderGadgetFactory::~UploaderGadgetFactory () |
|
Core::IUAVGadget * | uploader::UploaderGadgetFactory::createGadget (QWidget *parent) |
|
IUAVGadgetConfiguration * | uploader::UploaderGadgetFactory::createConfiguration (QSettings *qSettings) |
|
| uploader::UploaderGadgetWidget::UploaderGadgetWidget (QWidget *parent=nullptr) |
| Class constructor, sets signal to slot connections, creates actions, creates utility classes instances, etc. More...
|
|
| uploader::UploaderGadgetWidget::~UploaderGadgetWidget () |
| Class destructor, nothing needs to be destructed ATM. More...
|
|
bool | uploader::UploaderGadgetWidget::active () const |
| active More...
|
|
Low level bootloader protocol structures.
The Tau Labs uploader plugin.
The Tau Labs uploader plugin main widget.
The Tau Labs uploader plugin factory.
The Tau Labs uploader plugin gadget.
The upgrade assistant dialog box.
Low level bootloader protocol functions.
Enumerator |
---|
Download |
|
Upload |
|
Definition at line 147 of file tl_dfu.h.
Enumerator |
---|
BL_MSG_RESERVED |
|
BL_MSG_CAP_REQ |
|
BL_MSG_CAP_REP |
|
BL_MSG_ENTER_DFU |
|
BL_MSG_JUMP_FW |
|
BL_MSG_RESET |
|
BL_MSG_OP_ABORT |
|
BL_MSG_WRITE_CONT |
|
BL_MSG_OP_END |
|
BL_MSG_READ_START |
|
BL_MSG_READ_CONT |
|
BL_MSG_STATUS_REQ |
|
BL_MSG_STATUS_REP |
|
BL_MSG_WIPE_PARTITION |
|
BL_MSG_WRITE_START |
|
Definition at line 50 of file bl_messages.h.
Enumerator |
---|
DFU_PARTITION_FW |
|
DFU_PARTITION_DESC |
|
DFU_PARTITION_BL |
|
DFU_PARTITION_SETTINGS |
|
DFU_PARTITION_AUTOTUNE |
|
DFU_PARTITION_LOG |
|
DFU_PARTITION_LOADABLE_EXTENSION |
|
Definition at line 96 of file bl_messages.h.
Enumerator |
---|
DFUidle |
|
uploading |
|
wrong_packet_received |
|
too_many_packets |
|
too_few_packets |
|
Last_operation_Success |
|
downloading |
|
idle |
|
Last_operation_failed |
|
uploadingStarting |
|
outsideDevCapabilities |
|
CRC_Fail |
|
failed_jump |
|
abort |
|
not_in_dfu |
|
Definition at line 44 of file tl_dfu.h.
Enumerator |
---|
STATUSICON_OK |
|
STATUSICON_RUNNING |
|
STATUSICON_FAIL |
|
STATUSICON_INFO |
|
Definition at line 53 of file uploadergadgetwidget.h.
Enumerator |
---|
STEP_FIRST |
|
STEP_ENTERLOADER |
|
STEP_CHECKCLOUD |
|
STEP_UPGRADEBOOTLOADER |
|
STEP_DOWNLOADSETTINGS |
|
STEP_TRANSLATESETTINGS |
|
STEP_ERASESETTINGS |
|
STEP_FLASHFIRMWARE |
|
STEP_BOOT |
|
STEP_IMPORT |
|
STEP_DONE |
|
STEP_NUM |
|
Definition at line 46 of file upgradeassistantdialog.h.
bool UploaderGadgetWidget::active |
( |
| ) |
const |
void DFUObject::CloseBootloaderComs |
( |
| ) |
|
void UpgradeAssistantDialog::closeEvent |
( |
QCloseEvent * |
event | ) |
|
|
protected |
quint32 DFUObject::CRCFromQBArray |
( |
QByteArray |
array, |
|
|
quint32 |
Size |
|
) |
| |
|
static |
Utility function Calculates the CRC value of an array after padding it to the format used with the bootloader
Definition at line 698 of file tl_dfu.cpp.
IUAVGadgetConfiguration * UploaderGadgetFactory::createConfiguration |
( |
QSettings * |
qSettings | ) |
|
|
virtual |
QByteArray DFUObject::DownloadDescriptionAsByteArray |
( |
int const & |
numberOfChars | ) |
|
Downloads the description string for the current device. You have to call enterDFU before calling this function.
Definition at line 146 of file tl_dfu.cpp.
bool DFUObject::DownloadPartitionThreaded |
( |
QByteArray * |
firmwareArray, |
|
|
dfu_partition_label |
partition, |
|
|
int |
size |
|
) |
| |
Starts a partition download
- Parameters
-
firmwareArray | pointer to the location where we should store the firmware |
partition | the partition to download |
size | the number of bytes to transfer |
Definition at line 159 of file tl_dfu.cpp.
int DFUObject::JumpToApp |
( |
bool |
safeboot | ) |
|
Starts the firmware (leaves bootloader and boots the main software)
Definition at line 353 of file tl_dfu.cpp.
void uploader::UploaderGadget::loadConfiguration |
( |
IUAVGadgetConfiguration * |
config | ) |
|
|
virtual |
Opens bootloader coms to a given USB port
- Parameters
-
- Returns
- operation success
Definition at line 459 of file tl_dfu.cpp.
PACK |
( |
struct msg_xfer_start{uint32_t packets_in_transfer;uint8_t label;uint8_t words_in_last_packet;uint32_t expected_crc;} |
| ) |
|
PACK |
( |
struct bl_messages{uint8_t flags_command;union msg_contents v;} |
| ) |
|
int UpgradeAssistantDialog::PromptUser |
( |
QString |
promptText, |
|
|
QString |
detailText, |
|
|
QStringList |
buttonText |
|
) |
| |
int DFUObject::ResetDevice |
( |
void |
| ) |
|
Runs the upload or download operations.
Definition at line 191 of file tl_dfu.cpp.
void UpgradeAssistantDialog::setOperatingMode |
( |
bool |
upgradingBootloader, |
|
|
bool |
blankFC |
|
) |
| |
UpgradeAssistantDialog::UpgradeAssistantDialog |
( |
QWidget * |
parent = nullptr | ) |
|
|
explicit |
uploader::UploaderGadget::UploaderGadget |
( |
QString |
classId, |
|
|
UploaderGadgetWidget * |
widget, |
|
|
QWidget * |
parent = nullptr |
|
) |
| |
UploaderGadgetFactory::UploaderGadgetFactory |
( |
QObject * |
parent = nullptr | ) |
|
UploaderGadgetWidget::UploaderGadgetWidget |
( |
QWidget * |
parent = nullptr | ) |
|
Class constructor, sets signal to slot connections, creates actions, creates utility classes instances, etc.
Definition at line 58 of file uploadergadgetwidget.cpp.
bool DFUObject::UploadPartitionThreaded |
( |
QByteArray & |
sourceArray, |
|
|
dfu_partition_label |
partition, |
|
|
int |
size |
|
) |
| |
Asynchronously uploads a partition to the board
- Parameters
-
sourceArray | array containing the data to upload |
partition | destination partition |
size | size of the data to upload |
- Returns
- status of the board after upload
Definition at line 542 of file tl_dfu.cpp.
QWidget* uploader::UploaderGadget::widget |
( |
| ) |
|
|
inlinevirtual |
Wipes a partition
- Parameters
-
partition | number of the partition to wipe |
Definition at line 179 of file tl_dfu.cpp.
DFUObject::~DFUObject |
( |
| ) |
|
UpgradeAssistantDialog::~UpgradeAssistantDialog |
( |
| ) |
|
uploader::UploaderGadget::~UploaderGadget |
( |
| ) |
|
UploaderGadgetFactory::~UploaderGadgetFactory |
( |
| ) |
|
UploaderGadgetWidget::~UploaderGadgetWidget |
( |
| ) |
|
quint32 tl_dfu::DFUObject::statusReport::additional |
uint32_t msg_status_rep::additional_state |
quint8 tl_dfu::device::BL_Version |
uint8_t msg_capabilities_rep_specific::bl_version |
uint8_t msg_capabilities_rep_specific::board_rev |
uint16_t msg_capabilities_rep_specific::cap_extension_magic |
bool tl_dfu::device::CapExt |
uint32_t msg_xfer_cont::current_packet_number |
uint8_t msg_status_rep::current_state |
uint8_t msg_xfer_cont::data[XFER_BYTES_PER_PACKET] |
uint8_t msg_capabilities_rep_specific::desc_size |
uint16_t msg_capabilities_rep_specific::device_id |
uint8_t msg_capabilities_req::device_number |
uint8_t msg_capabilities_rep_specific::device_number |
uint8_t msg_enter_dfu::device_number |
quint32 tl_dfu::device::FW_CRC |
uint32_t msg_capabilities_rep_specific::fw_crc |
uint32_t msg_capabilities_rep_specific::fw_size |
int tl_dfu::device::HW_Rev |
quint16 tl_dfu::device::ID |
uint8_t msg_wipe_partition::label |
quint8 tl_dfu::DFUObject::messagePackets::lastPacketCount |
uint16_t msg_capabilities_rep_all::number_of_devices |
quint32 tl_dfu::DFUObject::messagePackets::numberOfPackets |
int tl_dfu::DFUObject::messagePackets::pad |
quint32 tl_dfu::DFUObject::ThreadJobStruc::partition_size |
uint32_t msg_capabilities_rep_specific::partition_sizes[10] |
QVector<quint32> tl_dfu::device::PartitionSizes |
bool tl_dfu::device::Readable |
Actions tl_dfu::DFUObject::ThreadJobStruc::requestedOperation |
qint32 tl_dfu::DFUObject::ThreadJobStruc::requestSize |
QByteArray* tl_dfu::DFUObject::ThreadJobStruc::requestStorage |
dfu_partition_label tl_dfu::DFUObject::ThreadJobStruc::requestTransferType |
uint16_t msg_jump_fw::safe_word |
quint32 tl_dfu::device::SizeOfCode |
int tl_dfu::device::SizeOfDesc |
uint8_t msg_capabilities_req::unused[4] |
uint8_t msg_capabilities_rep_all::unused[4] |
uint8_t msg_enter_dfu::unused[4] |
uint8_t msg_jump_fw::unused[4] |
uint8_t msg_jump_fw::unused2[2] |
uint16_t msg_capabilities_rep_all::wrflags |
bool tl_dfu::device::Writable |
void tl_dfu::DFUObject::downloadFinished |
( |
bool |
| ) |
|
|
signal |
void uploader::UploaderGadgetWidget::enteredLoader |
( |
| ) |
|
|
signal |
void tl_dfu::DFUObject::operationProgress |
( |
QString |
status, |
|
|
int |
progress |
|
) |
| |
|
signal |
device DFUObject::findCapabilities |
( |
| ) |
|
|
slot |
Ask the bootloader for the current device characteristics
Definition at line 400 of file tl_dfu.cpp.
Converts a partition enum label to string
- Parameters
-
label | partition label enum value |
- Returns
- partition string representation
Definition at line 794 of file tl_dfu.cpp.