1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2025-02-21 11:54:15 +01:00

OP-1556 Setting ActuatorCommand to 0 after calibration.

This commit is contained in:
m_thread 2014-10-21 19:51:41 +02:00
parent 21820045a4
commit c409d75eed

View File

@ -35,6 +35,8 @@
#include "vehicleconfigurationhelper.h" #include "vehicleconfigurationhelper.h"
#include "actuatorsettings.h" #include "actuatorsettings.h"
#include <QThread>
EscCalibrationPage::EscCalibrationPage(SetupWizard *wizard, QWidget *parent) : EscCalibrationPage::EscCalibrationPage(SetupWizard *wizard, QWidget *parent) :
AbstractWizardPage(wizard, parent), AbstractWizardPage(wizard, parent),
ui(new Ui::EscCalibrationPage), m_isCalibrating(false) ui(new Ui::EscCalibrationPage), m_isCalibrating(false)
@ -44,7 +46,7 @@ EscCalibrationPage::EscCalibrationPage(SetupWizard *wizard, QWidget *parent) :
ui->outputHigh->setEnabled(false); ui->outputHigh->setEnabled(false);
ui->outputLow->setEnabled(true); ui->outputLow->setEnabled(true);
ui->outputLevel->setEnabled(true); ui->outputLevel->setEnabled(true);
ui->outputLevel->setText(QString(tr("%1 µs")).arg(LOW_PWM_OUTPUT_PULSE_LENGTH_MICROSECONDS)); ui->outputLevel->setText(QString(tr("%1 µs")).arg(0));
connect(ui->startStopButton, SIGNAL(clicked()), this, SLOT(startStopButtonClicked())); connect(ui->startStopButton, SIGNAL(clicked()), this, SLOT(startStopButtonClicked()));
@ -102,7 +104,7 @@ void EscCalibrationPage::startStopButtonClicked()
Q_ASSERT(field); Q_ASSERT(field);
if (field->getValue().toString() == field->getOptions().at(VehicleConfigurationHelper::MIXER_TYPE_MOTOR)) { if (field->getValue().toString() == field->getOptions().at(VehicleConfigurationHelper::MIXER_TYPE_MOTOR)) {
OutputCalibrationUtil *output = new OutputCalibrationUtil(); OutputCalibrationUtil *output = new OutputCalibrationUtil();
output->startChannelOutput(i, LOW_PWM_OUTPUT_PULSE_LENGTH_MICROSECONDS); output->startChannelOutput(i, 0);
output->setChannelOutputValue(HIGH_PWM_OUTPUT_PULSE_LENGTH_MICROSECONDS); output->setChannelOutputValue(HIGH_PWM_OUTPUT_PULSE_LENGTH_MICROSECONDS);
m_outputs << output; m_outputs << output;
} }
@ -112,13 +114,22 @@ void EscCalibrationPage::startStopButtonClicked()
} else { } else {
m_isCalibrating = false; m_isCalibrating = false;
ui->startStopButton->setEnabled(false); ui->startStopButton->setEnabled(false);
ui->outputHigh->setEnabled(false);
foreach(OutputCalibrationUtil * output, m_outputs) {
output->setChannelOutputValue(LOW_PWM_OUTPUT_PULSE_LENGTH_MICROSECONDS);
}
ui->outputLevel->setText(QString(tr("%1 µs")).arg(LOW_PWM_OUTPUT_PULSE_LENGTH_MICROSECONDS));
qApp->processEvents(QEventLoop::AllEvents);
QThread::msleep(1000);
foreach(OutputCalibrationUtil * output, m_outputs) { foreach(OutputCalibrationUtil * output, m_outputs) {
output->stopChannelOutput(); output->stopChannelOutput();
delete output; delete output;
} }
ui->outputLevel->setText(QString(tr("%1 µs")).arg(0));
ui->outputHigh->setEnabled(false); ui->outputHigh->setEnabled(false);
ui->outputLow->setEnabled(true); ui->outputLow->setEnabled(true);
ui->outputLevel->setText(QString(tr("%1 µs")).arg(LOW_PWM_OUTPUT_PULSE_LENGTH_MICROSECONDS));
m_outputs.clear(); m_outputs.clear();
m_isCalibrating = false; m_isCalibrating = false;
resetAllSecurityCheckboxes(); resetAllSecurityCheckboxes();