1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2025-03-16 08:29:15 +01:00

Merge branch 'laurent/OP-1718_Fixed_wing_servo_setup+RcInput_calibration' into next

This commit is contained in:
Laurent Lalanne 2015-02-18 22:17:14 +01:00
commit cb188ed317
2 changed files with 25 additions and 5 deletions

View File

@ -1698,12 +1698,31 @@ void ConfigInputWidget::resetChannelSettings()
void ConfigInputWidget::resetActuatorSettings() void ConfigInputWidget::resetActuatorSettings()
{ {
actuatorSettingsData = actuatorSettingsObj->getData(); actuatorSettingsData = actuatorSettingsObj->getData();
// Clear all output data : Min, max, neutral = 1500
// 1500 = servo middle, can be applied to all outputs because board is 'Alwaysdisarmed' UAVDataObject *mixer = dynamic_cast<UAVDataObject *>(getObjectManager()->getObject(QString("MixerSettings")));
Q_ASSERT(mixer);
QString mixerType;
// Clear all output data : Min, max, neutral at same value
// 1000 for motors and 1500 for all others (Reversable motor included)
for (unsigned int output = 0; output < 12; output++) { for (unsigned int output = 0; output < 12; output++) {
actuatorSettingsData.ChannelMax[output] = 1500; QString mixerNumType = QString("Mixer%1Type").arg(output + 1);
actuatorSettingsData.ChannelMin[output] = 1000; UAVObjectField *field = mixer->getField(mixerNumType);
actuatorSettingsData.ChannelNeutral[output] = 1500; Q_ASSERT(field);
if (field) {
mixerType = field->getValue().toString();
}
if ((mixerType == "Motor") || (mixerType == "Disabled")) {
actuatorSettingsData.ChannelMax[output] = 1000;
actuatorSettingsData.ChannelMin[output] = 1000;
actuatorSettingsData.ChannelNeutral[output] = 1000;
} else {
actuatorSettingsData.ChannelMax[output] = 1500;
actuatorSettingsData.ChannelMin[output] = 1500;
actuatorSettingsData.ChannelNeutral[output] = 1500;
}
actuatorSettingsObj->setData(actuatorSettingsData); actuatorSettingsObj->setData(actuatorSettingsData);
} }
} }

View File

@ -40,6 +40,7 @@
#include "manualcontrolcommand.h" #include "manualcontrolcommand.h"
#include "manualcontrolsettings.h" #include "manualcontrolsettings.h"
#include "actuatorsettings.h" #include "actuatorsettings.h"
#include "mixersettings.h"
#include "flightmodesettings.h" #include "flightmodesettings.h"
#include "receiveractivity.h" #include "receiveractivity.h"
#include <QGraphicsView> #include <QGraphicsView>