diff --git a/flight/targets/boards/sparky2/firmware/pios_board.c b/flight/targets/boards/sparky2/firmware/pios_board.c index 20965326c..5435c5e6e 100644 --- a/flight/targets/boards/sparky2/firmware/pios_board.c +++ b/flight/targets/boards/sparky2/firmware/pios_board.c @@ -837,8 +837,8 @@ void PIOS_Board_Init(void) case HWSETTINGS_RM_RCVRPORT_PPM: #if defined(PIOS_INCLUDE_PPM) PIOS_Board_configure_ppm(&pios_ppm_cfg); - break; #endif /* PIOS_INCLUDE_PPM */ + break; case HWSETTINGS_RM_RCVRPORT_SBUS: #if defined(PIOS_INCLUDE_SBUS) { diff --git a/ground/gcs/src/plugins/config/config.pro b/ground/gcs/src/plugins/config/config.pro index 29b8b3375..97b8c8c99 100644 --- a/ground/gcs/src/plugins/config/config.pro +++ b/ground/gcs/src/plugins/config/config.pro @@ -55,6 +55,7 @@ HEADERS += \ calibration/calibrationuiutils.h \ configoplinkwidget.h \ configrevonanohwwidget.h \ + configsparky2hwwidget.h \ failsafechannelform.h SOURCES += \ @@ -97,6 +98,7 @@ SOURCES += \ calibration/gyrobiascalibrationmodel.cpp \ configoplinkwidget.cpp \ configrevonanohwwidget.cpp \ + configsparky2hwwidget.cpp \ failsafechannelform.cpp FORMS += \ @@ -123,6 +125,7 @@ FORMS += \ configrevohwwidget.ui \ oplink.ui \ configrevonanohwwidget.ui \ + configsparky2hwwidget.ui \ failsafechannelform.ui OTHER_FILES += \ diff --git a/ground/gcs/src/plugins/config/configgadget.qrc b/ground/gcs/src/plugins/config/configgadget.qrc index 8c194d320..b7e9b3ec7 100644 --- a/ground/gcs/src/plugins/config/configgadget.qrc +++ b/ground/gcs/src/plugins/config/configgadget.qrc @@ -57,5 +57,6 @@ images/error.svg images/nano_top.png images/cc3d_top.png + images/sparky2_top.png diff --git a/ground/gcs/src/plugins/config/configgadgetwidget.cpp b/ground/gcs/src/plugins/config/configgadgetwidget.cpp index e658a4ff7..25e710f03 100644 --- a/ground/gcs/src/plugins/config/configgadgetwidget.cpp +++ b/ground/gcs/src/plugins/config/configgadgetwidget.cpp @@ -2,7 +2,8 @@ ****************************************************************************** * * @file configgadgetwidget.cpp - * @author E. Lafargue & The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @author The LibrePilot Project, http://www.librepilot.org Copyright (C) 2015. + * E. Lafargue & The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. * @addtogroup GCSPlugins GCS Plugins * @{ * @addtogroup ConfigPlugin Config Plugin @@ -39,6 +40,7 @@ #include "configoplinkwidget.h" #include "configrevowidget.h" #include "configrevonanohwwidget.h" +#include "configsparky2hwwidget.h" #include "defaultattitudewidget.h" #include "defaulthwsettingswidget.h" #include "uavobjectutilmanager.h" @@ -200,6 +202,12 @@ void ConfigGadgetWidget::onAutopilotConnect() qwd = new ConfigRevoNanoHWWidget(this); } stackWidget->replaceTab(ConfigGadgetWidget::hardware, qwd); + } else if ((board & 0xff00) == 0x0b00) { + // Sparky2 + QWidget *qwd = new ConfigRevoWidget(this); + stackWidget->replaceTab(ConfigGadgetWidget::sensors, qwd); + qwd = new ConfigSparky2HWWidget(this); + stackWidget->replaceTab(ConfigGadgetWidget::hardware, qwd); } else { // Unknown board qDebug() << "Unknown board " << board; diff --git a/ground/gcs/src/plugins/setupwizard/connectiondiagram.cpp b/ground/gcs/src/plugins/setupwizard/connectiondiagram.cpp index 433b0b57d..b0581d43d 100644 --- a/ground/gcs/src/plugins/setupwizard/connectiondiagram.cpp +++ b/ground/gcs/src/plugins/setupwizard/connectiondiagram.cpp @@ -94,6 +94,9 @@ void ConnectionDiagram::setupGraphicsScene() case VehicleConfigurationSource::CONTROLLER_NANO: elementsToShow << "controller-nano"; break; + case VehicleConfigurationSource::CONTROLLER_SPARKY2: + elementsToShow << "controller-sparky2"; + break; case VehicleConfigurationSource::CONTROLLER_OPLINK: default: elementsToShow << "controller-cc"; @@ -181,6 +184,9 @@ void ConnectionDiagram::setupGraphicsScene() case VehicleConfigurationSource::CONTROLLER_NANO: prefix = "nano-"; break; + case VehicleConfigurationSource::CONTROLLER_SPARKY2: + prefix = "sparky2-"; + break; default: break; } diff --git a/ground/gcs/src/plugins/setupwizard/pages/controllerpage.cpp b/ground/gcs/src/plugins/setupwizard/pages/controllerpage.cpp index 41f2f5022..10d88cd53 100644 --- a/ground/gcs/src/plugins/setupwizard/pages/controllerpage.cpp +++ b/ground/gcs/src/plugins/setupwizard/pages/controllerpage.cpp @@ -117,6 +117,9 @@ SetupWizard::CONTROLLER_TYPE ControllerPage::getControllerType() case 0x0905: return SetupWizard::CONTROLLER_NANO; + case 0x0b01: + return SetupWizard::CONTROLLER_SPARKY2; + default: return SetupWizard::CONTROLLER_UNKNOWN; } @@ -139,6 +142,7 @@ void ControllerPage::setupBoardTypes() ui->boardTypeCombo->addItem(tr("OpenPilot OPLink Radio Modem"), SetupWizard::CONTROLLER_OPLINK); ui->boardTypeCombo->addItem(tr("OpenPilot DiscoveryF4"), SetupWizard::CONTROLLER_DISCOVERYF4); ui->boardTypeCombo->addItem(tr("OpenPilot Nano"), SetupWizard::CONTROLLER_NANO); + ui->boardTypeCombo->addItem(tr("TauLabs Sparky 2.0"), SetupWizard::CONTROLLER_SPARKY2); } void ControllerPage::setControllerType(SetupWizard::CONTROLLER_TYPE type) @@ -225,6 +229,11 @@ void ControllerPage::connectionStatusChanged() ui->boardImg->setPixmap(boardPic.scaled(picSize, Qt::KeepAspectRatio)); break; + case SetupWizard::CONTROLLER_SPARKY2: + boardPic.load(":/configgadget/images/sparky2_top.png"); + ui->boardImg->setPixmap(boardPic.scaled(picSize, Qt::KeepAspectRatio)); + break; + default: ui->boardImg->setPixmap(QPixmap()); break; diff --git a/ground/gcs/src/plugins/setupwizard/pages/escpage.cpp b/ground/gcs/src/plugins/setupwizard/pages/escpage.cpp index fe1e85654..0a9b4b1cf 100644 --- a/ground/gcs/src/plugins/setupwizard/pages/escpage.cpp +++ b/ground/gcs/src/plugins/setupwizard/pages/escpage.cpp @@ -2,7 +2,8 @@ ****************************************************************************** * * @file escpage.cpp - * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2014. + * @author The LibrePilot Project, http://www.librepilot.org Copyright (C) 2015. + * The OpenPilot Team, http://www.openpilot.org Copyright (C) 2014. * @addtogroup * @{ * @addtogroup EscPage @@ -98,6 +99,7 @@ bool EscPage::isSynchOrOneShotAvailable() } break; case SetupWizard::CONTROLLER_REVO: + case SetupWizard::CONTROLLER_SPARKY2: available = true; break; default: diff --git a/ground/gcs/src/plugins/setupwizard/pages/inputpage.cpp b/ground/gcs/src/plugins/setupwizard/pages/inputpage.cpp index 5db75c3cb..dbf692dd2 100644 --- a/ground/gcs/src/plugins/setupwizard/pages/inputpage.cpp +++ b/ground/gcs/src/plugins/setupwizard/pages/inputpage.cpp @@ -2,7 +2,8 @@ ****************************************************************************** * * @file inputpage.cpp - * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2012. + * @author The LibrePilot Project, http://www.librepilot.org Copyright (C) 2015. + * The OpenPilot Team, http://www.openpilot.org Copyright (C) 2012. * @addtogroup * @{ * @addtogroup InputPage @@ -111,6 +112,7 @@ bool InputPage::restartNeeded(VehicleConfigurationSource::INPUT_TYPE selectedTyp case SetupWizard::CONTROLLER_REVO: case SetupWizard::CONTROLLER_DISCOVERYF4: case SetupWizard::CONTROLLER_NANO: + case SetupWizard::CONTROLLER_SPARKY2: { switch (selectedType) { case VehicleConfigurationSource::INPUT_PWM: diff --git a/ground/gcs/src/plugins/setupwizard/pages/vehiclepage.cpp b/ground/gcs/src/plugins/setupwizard/pages/vehiclepage.cpp index a5cf5f109..9a0ba54b2 100644 --- a/ground/gcs/src/plugins/setupwizard/pages/vehiclepage.cpp +++ b/ground/gcs/src/plugins/setupwizard/pages/vehiclepage.cpp @@ -2,7 +2,8 @@ ****************************************************************************** * * @file vehiclepage.cpp - * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2012. + * @author The LibrePilot Project, http://www.librepilot.org Copyright (C) 2015. + * The OpenPilot Team, http://www.openpilot.org Copyright (C) 2012. * @addtogroup * @{ * @addtogroup VehiclePage @@ -61,5 +62,6 @@ bool VehiclePage::validatePage() void VehiclePage::initializePage() { // ui->fixedwingButton->setEnabled(getWizard()->getControllerType() == SetupWizard::CONTROLLER_REVO || - // getWizard()->getControllerType() == SetupWizard::CONTROLLER_NANO); + // getWizard()->getControllerType() == SetupWizard::CONTROLLER_NANO || + // getWizard()->getControllerType() == SetupWizard::CONTROLLER_SPARKY2); } diff --git a/ground/gcs/src/plugins/setupwizard/setupwizard.cpp b/ground/gcs/src/plugins/setupwizard/setupwizard.cpp index e9cb8ac94..e28d8a2ff 100644 --- a/ground/gcs/src/plugins/setupwizard/setupwizard.cpp +++ b/ground/gcs/src/plugins/setupwizard/setupwizard.cpp @@ -2,7 +2,8 @@ ****************************************************************************** * * @file setupwizard.cpp - * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2012. + * @author The LibrePilot Project, http://www.librepilot.org Copyright (C) 2015. + * The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. * @addtogroup GCSPlugins GCS Plugins * @{ * @addtogroup Setup Wizard Plugin @@ -98,6 +99,7 @@ int SetupWizard::nextId() const case CONTROLLER_CC: case CONTROLLER_CC3D: case CONTROLLER_REVO: + case CONTROLLER_SPARKY2: case CONTROLLER_DISCOVERYF4: return PAGE_INPUT; @@ -156,6 +158,7 @@ int SetupWizard::nextId() const switch (getControllerType()) { case CONTROLLER_REVO: case CONTROLLER_NANO: + case CONTROLLER_SPARKY2: return PAGE_GPS; default: @@ -168,6 +171,7 @@ int SetupWizard::nextId() const switch (getControllerType()) { case CONTROLLER_REVO: case CONTROLLER_NANO: + case CONTROLLER_SPARKY2: return PAGE_GPS; default: @@ -213,6 +217,7 @@ int SetupWizard::nextId() const case CONTROLLER_CC3D: case CONTROLLER_REVO: case CONTROLLER_NANO: + case CONTROLLER_SPARKY2: case CONTROLLER_DISCOVERYF4: switch (getVehicleType()) { case VEHICLE_FIXEDWING: @@ -254,6 +259,9 @@ QString SetupWizard::getSummaryText() case CONTROLLER_NANO: summary.append(tr("OpenPilot Nano")); break; + case CONTROLLER_SPARKY2: + summary.append(tr("TauLabs Sparky 2.0")); + break; case CONTROLLER_OPLINK: summary.append(tr("OpenPilot OPLink Radio Modem")); break; @@ -427,7 +435,7 @@ QString SetupWizard::getSummaryText() } // Show GPS Type - if (getControllerType() == CONTROLLER_REVO || getControllerType() == CONTROLLER_NANO) { + if (getControllerType() == CONTROLLER_REVO || getControllerType() == CONTROLLER_NANO || getControllerType() == CONTROLLER_SPARKY2) { summary.append(""); summary.append("").append(tr("GPS type: ")).append(""); switch (getGpsType()) { @@ -452,7 +460,8 @@ QString SetupWizard::getSummaryText() } // Show Airspeed sensor type - if ((getControllerType() == CONTROLLER_REVO || getControllerType() == CONTROLLER_NANO) && getVehicleType() == VEHICLE_FIXEDWING) { + if ((getControllerType() == CONTROLLER_REVO || getControllerType() == CONTROLLER_NANO || getControllerType() == CONTROLLER_SPARKY2) + && getVehicleType() == VEHICLE_FIXEDWING) { summary.append(""); summary.append("").append(tr("Airspeed Sensor: ")).append(""); switch (getAirspeedType()) { diff --git a/ground/gcs/src/plugins/setupwizard/vehicleconfigurationhelper.cpp b/ground/gcs/src/plugins/setupwizard/vehicleconfigurationhelper.cpp index f46148dc4..ace6b0685 100644 --- a/ground/gcs/src/plugins/setupwizard/vehicleconfigurationhelper.cpp +++ b/ground/gcs/src/plugins/setupwizard/vehicleconfigurationhelper.cpp @@ -27,7 +27,6 @@ */ #include "vehicleconfigurationhelper.h" - #include "extensionsystem/pluginmanager.h" #include "uavobjectutilmanager.h" @@ -187,13 +186,15 @@ void VehicleConfigurationHelper::applyHardwareConfiguration() break; case VehicleConfigurationSource::CONTROLLER_REVO: case VehicleConfigurationSource::CONTROLLER_NANO: + case VehicleConfigurationSource::CONTROLLER_SPARKY2: case VehicleConfigurationSource::CONTROLLER_DISCOVERYF4: // Reset all ports to their defaults data.RM_RcvrPort = HwSettings::RM_RCVRPORT_DISABLED; data.RM_FlexiPort = HwSettings::RM_FLEXIPORT_DISABLED; - // Revo uses inbuilt Modem do not set mainport to be active telemetry link for the Revo - if (m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_REVO) { + // Revo/Sparky2 uses inbuilt Modem do not set mainport to be active telemetry link for Revo/Sparky2 + if (m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_REVO + || m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_SPARKY2) { data.RM_MainPort = HwSettings::RM_MAINPORT_DISABLED; } else { data.RM_MainPort = HwSettings::RM_MAINPORT_TELEMETRY; @@ -207,10 +208,14 @@ void VehicleConfigurationHelper::applyHardwareConfiguration() data.RM_RcvrPort = HwSettings::RM_RCVRPORT_PPM; break; case VehicleConfigurationSource::INPUT_SBUS: - data.RM_MainPort = HwSettings::RM_MAINPORT_SBUS; - // We have to set telemetry on flexiport since s.bus needs the mainport on all but Revo. - if (m_configSource->getControllerType() != VehicleConfigurationSource::CONTROLLER_REVO) { - data.RM_FlexiPort = HwSettings::RM_FLEXIPORT_TELEMETRY; + if (m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_SPARKY2) { + data.RM_RcvrPort = HwSettings::RM_RCVRPORT_SBUS; + } else { + data.RM_MainPort = HwSettings::RM_MAINPORT_SBUS; + // We have to set telemetry on flexport since s.bus needs the mainport on all but Revo. + if (m_configSource->getControllerType() != VehicleConfigurationSource::CONTROLLER_REVO) { + data.RM_FlexiPort = HwSettings::RM_FLEXIPORT_TELEMETRY; + } } break; case VehicleConfigurationSource::INPUT_DSM: @@ -484,7 +489,8 @@ void VehicleConfigurationHelper::applyActuatorConfiguration() // Servo always on channel 4 data.BankUpdateFreq[0] = escFrequence; data.BankMode[0] = bankMode; - if (m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_REVO) { + if (m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_REVO + || m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_SPARKY2) { data.BankUpdateFreq[1] = escFrequence; data.BankMode[1] = bankMode; data.BankUpdateFreq[2] = servoFrequence; @@ -502,7 +508,8 @@ void VehicleConfigurationHelper::applyActuatorConfiguration() data.BankMode[0] = bankMode; data.BankUpdateFreq[1] = escFrequence; data.BankMode[1] = bankMode; - if (m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_REVO) { + if (m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_REVO + || m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_SPARKY2) { data.BankUpdateFreq[2] = escFrequence; data.BankMode[2] = bankMode; } else if (m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_NANO) { @@ -566,7 +573,8 @@ void VehicleConfigurationHelper::applyActuatorConfiguration() if (i == 1) { data.BankUpdateFreq[i] = escFrequence; } - } else if (m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_REVO) { + } else if (m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_REVO + || m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_SPARKY2) { // Motor output4, bank3 if (i == 2) { data.BankUpdateFreq[i] = escFrequence; @@ -611,7 +619,8 @@ void VehicleConfigurationHelper::applyActuatorConfiguration() if (i == 1) { data.BankUpdateFreq[i] = escFrequence; } - } else if (m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_REVO) { + } else if (m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_REVO + || m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_SPARKY2) { // Motor output4, bank3 if (i == 1) { data.BankUpdateFreq[i] = escFrequence; @@ -718,6 +727,7 @@ void VehicleConfigurationHelper::applySensorBiasConfiguration() } case VehicleConfigurationSource::CONTROLLER_REVO: case VehicleConfigurationSource::CONTROLLER_NANO: + case VehicleConfigurationSource::CONTROLLER_SPARKY2: { RevoCalibration *revolutionCalibration = RevoCalibration::GetInstance(m_uavoManager); Q_ASSERT(revolutionCalibration); diff --git a/ground/gcs/src/plugins/setupwizard/vehicleconfigurationsource.h b/ground/gcs/src/plugins/setupwizard/vehicleconfigurationsource.h index 73f66b32f..62fbc926f 100644 --- a/ground/gcs/src/plugins/setupwizard/vehicleconfigurationsource.h +++ b/ground/gcs/src/plugins/setupwizard/vehicleconfigurationsource.h @@ -57,7 +57,7 @@ class VehicleConfigurationSource { public: VehicleConfigurationSource(); - enum CONTROLLER_TYPE { CONTROLLER_UNKNOWN, CONTROLLER_CC, CONTROLLER_CC3D, CONTROLLER_REVO, CONTROLLER_NANO, CONTROLLER_OPLINK, CONTROLLER_DISCOVERYF4 }; + enum CONTROLLER_TYPE { CONTROLLER_UNKNOWN, CONTROLLER_CC, CONTROLLER_CC3D, CONTROLLER_REVO, CONTROLLER_NANO, CONTROLLER_SPARKY2, CONTROLLER_OPLINK, CONTROLLER_DISCOVERYF4 }; enum VEHICLE_TYPE { VEHICLE_UNKNOWN, VEHICLE_MULTI, VEHICLE_FIXEDWING, VEHICLE_HELI, VEHICLE_SURFACE }; enum VEHICLE_SUB_TYPE { MULTI_ROTOR_UNKNOWN, MULTI_ROTOR_TRI_Y, MULTI_ROTOR_QUAD_X, MULTI_ROTOR_QUAD_PLUS, MULTI_ROTOR_QUAD_H, MULTI_ROTOR_HEXA, MULTI_ROTOR_HEXA_H, MULTI_ROTOR_HEXA_X, MULTI_ROTOR_HEXA_COAX_Y, MULTI_ROTOR_OCTO, diff --git a/ground/gcs/src/plugins/setupwizard/vehicletemplateexportdialog.ui b/ground/gcs/src/plugins/setupwizard/vehicletemplateexportdialog.ui index d2069645c..4fc7630df 100644 --- a/ground/gcs/src/plugins/setupwizard/vehicletemplateexportdialog.ui +++ b/ground/gcs/src/plugins/setupwizard/vehicletemplateexportdialog.ui @@ -247,6 +247,11 @@ Nano + + + Sparky2 + + diff --git a/ground/gcs/src/plugins/uavobjectutil/devicedescriptorstruct.h b/ground/gcs/src/plugins/uavobjectutil/devicedescriptorstruct.h index a392886d7..72929df4f 100644 --- a/ground/gcs/src/plugins/uavobjectutil/devicedescriptorstruct.h +++ b/ground/gcs/src/plugins/uavobjectutil/devicedescriptorstruct.h @@ -59,6 +59,10 @@ public: // Nano return QString("RevoNano"); + case 0x0b01: + // Sparky 2.0 + return QString("Sparky2"); + default: return QString(""); diff --git a/ground/gcs/src/plugins/uploader/devicewidget.cpp b/ground/gcs/src/plugins/uploader/devicewidget.cpp index 300ac4ee4..ae45d7c7d 100644 --- a/ground/gcs/src/plugins/uploader/devicewidget.cpp +++ b/ground/gcs/src/plugins/uploader/devicewidget.cpp @@ -2,7 +2,8 @@ ****************************************************************************** * * @file devicewidget.cpp - * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @author The LibrePilot Project, http://www.librepilot.org Copyright (C) 2015. + * The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. * @addtogroup GCSPlugins GCS Plugins * @{ * @addtogroup Uploader Serial and USB Uploader Plugin @@ -108,6 +109,9 @@ void DeviceWidget::populate() case 0x0905: devicePic.load(":/uploader/images/gcs-board-nano.png"); break; + case 0x0b01: + devicePic.load(":/uploader/images/gcs-board-sparky2.png"); + break; default: // Clear devicePic.load(""); diff --git a/ground/gcs/src/plugins/uploader/images/gcs-board-sparky2.png b/ground/gcs/src/plugins/uploader/images/gcs-board-sparky2.png new file mode 100644 index 000000000..ee9c3a830 --- /dev/null +++ b/ground/gcs/src/plugins/uploader/images/gcs-board-sparky2.png @@ -0,0 +1,1931 @@ + + + + + + + + f5soh / LibrePilot + / source / ground / gcs / src / plugins / uploader / images / gcs-board-sparky2.png + — Bitbucket + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Linked applications + + + + + + + + + + + Bitbucket + + + + + + + Bamboo + + + + + + + + Confluence + + + + + + + + + + JIRA + + + + + + + + + + + + + + + Bitbucket + + + + + + + + + + + + Dashboard + + + + + + + + Overview + + + + Pull requests + + + + Issues + + + + Snippets + + + + + + + + + + + Teams + + + + + Organize your team's work and supercharge repository administration. + + + Create team + + + + + + + + + Repositories + + + + + + + + + Create repository + + + + + Import repository + + + + + + + + + Snippets + + + + + + + + + Create snippet + + + + + + + + + Create + + + + + + + Create repository + + + + Create snippet + + + + + + + + + + + + + + + + + + + owner/repository + + + + + + + + + + + + + + + + + + + + + + + + + View profile + + + Manage account + + + Add-ons + + + Inbox + + + Invite a friend + + + + + + + + + Log out + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + f5soh + + + + + LibrePilot + + + + + + + + + + + Actions + + + + + + + + + + Clone + + + + + + + + + Compare + + + + + + + + + Fork + + + + + + + + + Navigation + + + + + + + + + Overview + + + + + + + + Source + + + + + + + + Commits + + + + + + + + Branches + + + + + + + + Pull requests + + + + + + + + Downloads + + + + + + + + Settings + + + + + + + + + + + + + + + + + + + + + + + HTTPS + + + + + HTTPS + + + + SSH + + + + + + + + Need help cloning? Learn how to + clone a repository. + + + + + + + + + Clone in SourceTree + + + + + + + Atlassian SourceTree + is a free Git and Mercurial client for Windows. + + + + + Atlassian SourceTree + is a free Git and Mercurial client for Mac. + + + + + + + + + + + + + + + + + Source + + + + + + + + + + + + + + + + + + + Branch + + laurent/LP-72_Sparky_artwork + + + + + Check out branch + + + + + + + + + + + Source + + + Diff + + + History + + + + + + + + LibrePilot / + + + + + + ground / + + + + + + + + gcs / + + + + + + + + src / + + + + + + + + plugins / + + + + + + + + uploader / + + + + + + + + images / + + + + + + + + gcs-board-sparky2.png + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 2fb2e89 + + + + + + + + Full commit + + + + + + + Raw + + + + Edit + + + + + + + + + + + Default File Viewer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Help + + + + + + + + + + Online help + + + + + Learn Git + + + + Keyboard shortcuts + + + + Latest features + + + + + Bitbucket tutorials + + + + + Site status + + + + + Support + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ground/gcs/src/plugins/uploader/runningdevicewidget.cpp b/ground/gcs/src/plugins/uploader/runningdevicewidget.cpp index aa5caafcb..330c4b55a 100644 --- a/ground/gcs/src/plugins/uploader/runningdevicewidget.cpp +++ b/ground/gcs/src/plugins/uploader/runningdevicewidget.cpp @@ -2,7 +2,8 @@ ****************************************************************************** * * @file runningdevicewidget.cpp - * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @author The LibrePilot Project, http://www.librepilot.org Copyright (C) 2015. + * The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. * @addtogroup GCSPlugins GCS Plugins * @{ * @addtogroup Uploader Serial and USB Uploader Plugin @@ -91,6 +92,9 @@ void RunningDeviceWidget::populate() case 0x0905: devicePic.load(":/uploader/images/gcs-board-nano.png"); break; + case 0x0b01: + devicePic.load(":/uploader/images/gcs-board-sparky2.png"); + break; default: // Clear devicePic.load(""); diff --git a/ground/gcs/src/plugins/uploader/uploader.qrc b/ground/gcs/src/plugins/uploader/uploader.qrc index 642cca091..5c9e8eb26 100644 --- a/ground/gcs/src/plugins/uploader/uploader.qrc +++ b/ground/gcs/src/plugins/uploader/uploader.qrc @@ -19,5 +19,6 @@ images/gcs-board-oplink.png images/gcs-board-revo.png images/gcs-board-nano.png + images/gcs-board-sparky2.png diff --git a/ground/gcs/src/plugins/uploader/uploadergadgetwidget.cpp b/ground/gcs/src/plugins/uploader/uploadergadgetwidget.cpp index 2db5c9a88..1ac53b3e5 100644 --- a/ground/gcs/src/plugins/uploader/uploadergadgetwidget.cpp +++ b/ground/gcs/src/plugins/uploader/uploadergadgetwidget.cpp @@ -773,6 +773,9 @@ bool UploaderGadgetWidget::autoUpdate(bool erase) case 0x905: filename = "fw_revonano"; break; + case 0xb01: + filename = "fw_sparky2"; + break; default: emit progressUpdate(FAILURE, QVariant(tr("Unknown board id '0x%1'").arg(QString::number(m_dfu->devices[0].ID, 16)))); emit autoUpdateFailed();
Organize your team's work and supercharge repository administration.
Need help cloning? Learn how to + clone a repository.
+ + Atlassian SourceTree + is a free Git and Mercurial client for Windows. + +
+ + Atlassian SourceTree + is a free Git and Mercurial client for Mac. + +