Skip to content

Commit

Permalink
Initial commit of APM2.5 Firmware loading config screen via Avrdude
Browse files Browse the repository at this point in the history
  • Loading branch information
malcom2073 committed Jul 29, 2013
1 parent 95e4e9b commit 56efe88
Show file tree
Hide file tree
Showing 50 changed files with 18,571 additions and 7 deletions.
15,478 changes: 15,478 additions & 0 deletions avrdude/avrdude.conf

Large diffs are not rendered by default.

Binary file added avrdude/avrdude.exe
Binary file not shown.
Binary file added avrdude/libusb0.dll
Binary file not shown.
2,008 changes: 2,008 additions & 0 deletions files/images/firmware/FW icons 2013+logos.ai

Large diffs are not rendered by default.

Binary file added files/images/firmware/Tir_off.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/Tir_on.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/X8.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/X8_on.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/Y6_off.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/Y6_on.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/apmcopter.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/apmplane.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/apmrover.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/heli.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/heli_off.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/heli_on.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/hexa_off.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/hexa_on.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/hexaplus.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/hexax.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/hexay.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/octaplus.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/octax.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/octo_off.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/octo_on.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/octx.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/plane.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/plane_off.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/plane_on.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added files/images/firmware/quad_T_off.png
Binary file added files/images/firmware/quad_T_on.png
Binary file added files/images/firmware/quad_off.png
Binary file added files/images/firmware/quad_on.png
Binary file added files/images/firmware/quadplus.png
Binary file added files/images/firmware/quadx.png
Binary file added files/images/firmware/quady.png
Binary file added files/images/firmware/rover.png
Binary file added files/images/firmware/rover_off.png
Binary file added files/images/firmware/rover_on.png
Binary file added files/images/firmware/triy.png
13 changes: 9 additions & 4 deletions qgroundcontrol.pro
Expand Up @@ -262,8 +262,9 @@ FORMS += src/ui/MainWindow.ui \
src/ui/configuration/AdvParameterList.ui \
src/ui/configuration/ArduRoverPidConfig.ui \
src/ui/configuration/terminalconsole.ui \
src/ui/configuration/SerialSettingsDialog.ui

src/ui/configuration/SerialSettingsDialog.ui \
src/ui/configuration/ApmFirmwareConfig.ui \
src/ui/configuration/ApmFirmwareStatus.ui
INCLUDEPATH += src \
src/ui \
src/ui/linechart \
Expand Down Expand Up @@ -453,7 +454,9 @@ HEADERS += src/MG.h \
src/ui/configuration/console.h \
src/ui/configuration/SerialSettingsDialog.h \
src/ui/configuration/terminalconsole.h \
src/ui/configuration/ApmHighlighter.h
src/ui/configuration/ApmHighlighter.h \
src/ui/configuration/ApmFirmwareConfig.h \
src/ui/configuration/ApmFirmwareStatus.h

# Google Earth is only supported on Mac OS and Windows with Visual Studio Compiler
macx|macx-g++|macx-g++42|win32-msvc2008|win32-msvc2010|win32-msvc2012::HEADERS += src/ui/map3D/QGCGoogleEarthView.h
Expand Down Expand Up @@ -662,7 +665,9 @@ SOURCES += src/main.cc \
src/ui/configuration/terminalconsole.cpp \
src/ui/configuration/console.cpp \
src/ui/configuration/SerialSettingsDialog.cc \
src/ui/configuration/ApmHighlighter.cc
src/ui/configuration/ApmHighlighter.cc \
src/ui/configuration/ApmFirmwareConfig.cc \
src/ui/configuration/ApmFirmwareStatus.cc

# Enable Google Earth only on Mac OS and Windows with Visual Studio compiler
macx|macx-g++|macx-g++42|win32-msvc2008|win32-msvc2010|win32-msvc2012::SOURCES += src/ui/map3D/QGCGoogleEarthView.cc
Expand Down
37 changes: 37 additions & 0 deletions qgroundcontrol.qrc
Expand Up @@ -119,6 +119,43 @@
<file>files/images/devices/cameraGimalRoll1.png</file>
<file>files/images/devices/cameraGimalYaw.png</file>
<file>files/images/devices/Shutter.png</file>
<file>files/images/firmware/apmcopter.png</file>
<file>files/images/firmware/apmplane.png</file>
<file>files/images/firmware/apmrover.png</file>
<file>files/images/firmware/FW icons 2013+logos.ai</file>
<file>files/images/firmware/heli.png</file>
<file>files/images/firmware/heli_off.png</file>
<file>files/images/firmware/heli_on.png</file>
<file>files/images/firmware/hexa_off.png</file>
<file>files/images/firmware/hexa_on.png</file>
<file>files/images/firmware/hexaplus.png</file>
<file>files/images/firmware/hexax.png</file>
<file>files/images/firmware/hexay.png</file>
<file>files/images/firmware/octaplus.png</file>
<file>files/images/firmware/octax.png</file>
<file>files/images/firmware/octo_off.png</file>
<file>files/images/firmware/octo_on.png</file>
<file>files/images/firmware/octx.png</file>
<file>files/images/firmware/plane.png</file>
<file>files/images/firmware/plane_off.png</file>
<file>files/images/firmware/plane_on.png</file>
<file>files/images/firmware/quad_off.png</file>
<file>files/images/firmware/quad_on.png</file>
<file>files/images/firmware/quad_T_off.png</file>
<file>files/images/firmware/quad_T_on.png</file>
<file>files/images/firmware/quadplus.png</file>
<file>files/images/firmware/quadx.png</file>
<file>files/images/firmware/quady.png</file>
<file>files/images/firmware/rover.png</file>
<file>files/images/firmware/rover_off.png</file>
<file>files/images/firmware/rover_on.png</file>
<file>files/images/firmware/Tir_off.png</file>
<file>files/images/firmware/Tir_on.png</file>
<file>files/images/firmware/triy.png</file>
<file>files/images/firmware/X8.png</file>
<file>files/images/firmware/X8_on.png</file>
<file>files/images/firmware/Y6_off.png</file>
<file>files/images/firmware/Y6_on.png</file>
</qresource>
<qresource prefix="/general">
<file alias="vera.ttf">files/styles/Vera.ttf</file>
Expand Down
412 changes: 412 additions & 0 deletions src/ui/configuration/ApmFirmwareConfig.cc

Large diffs are not rendered by default.

55 changes: 55 additions & 0 deletions src/ui/configuration/ApmFirmwareConfig.h
@@ -0,0 +1,55 @@
#ifndef APMFIRMWARECONFIG_H
#define APMFIRMWARECONFIG_H

#include <QWidget>
#include <QNetworkAccessManager>
#include <QNetworkRequest>
#include <QNetworkReply>
#include <QDebug>
#include <QTemporaryFile>
#include <QProcess>
#include "qserialport.h"
#include "ui_ApmFirmwareConfig.h"
#include "ApmFirmwareStatus.h"

class ApmFirmwareConfig : public QWidget
{
Q_OBJECT

public:
explicit ApmFirmwareConfig(QWidget *parent = 0);
~ApmFirmwareConfig();
private slots:
void firmwareListFinished();
void firmwareListError(QNetworkReply::NetworkError error);
void burnButtonClicked();
void betaFirmwareButtonClicked();
void downloadFinished();
void firmwareProcessFinished(int status);
void firmwareProcessReadyRead();
void firmwareProcessError(QProcess::ProcessError error);
private:
ApmFirmwareStatus *firmwareStatus;
QTemporaryFile *m_tempFirmwareFile;
QNetworkAccessManager *m_networkManager;
void requestFirmwares(bool beta);
bool stripVersionFromGitReply(QString url,QString reply,QString type,QString stable,QString *out);
bool m_betaFirmwareChecked;
QMap<QPushButton*,QString> m_buttonToUrlMap;
Ui::ApmFirmwareConfig ui;
class FirmwareDef
{
public:
QString url;
QString url2560;
QString url25602;
QString urlpx4;
QString type;
QString name;
QString desc;
int version;
};
QList<FirmwareDef> m_firmwareList;
};

#endif // APMFIRMWARECONFIG_H

0 comments on commit 56efe88

Please sign in to comment.