diff --git a/DONATIONS.txt b/DONATIONS.txt index ad3ac28db..ce06f2e56 100644 --- a/DONATIONS.txt +++ b/DONATIONS.txt @@ -278,7 +278,7 @@ Josep Clodas Sola Thierry Martin Peter Mauro Mitchell Brenner -Ulach Green +Yak Lluis Bullich Rañe Steffen Rohr Eric Jacquin @@ -436,3 +436,30 @@ Axel Stöckle Mike Perkins Erwin Störrle Rodger Hopper +Fernando Cesar +Jonathan Gillis +DK-System +Lexington S Morley +Bernd Koehler +Davis RC +Pete Johnson +Patricia Martin +Florian Tschacher +Brian Spearing +Craig Hall +Joseph Case +Harald Klein +Robert Crockford +Chris Boultinghouse +Kitsew +Georgios Papadopoulos +Fourmost Products +Dennis Miller +Dave Matison +Maximilian Radig +Juan Rodriguez +Robert Sessler +John Murray +Martin Sniedze +David Poole +Manfred Delakowitz diff --git a/companion/src/CMakeLists.txt b/companion/src/CMakeLists.txt index f1ab87ddf..526742415 100644 --- a/companion/src/CMakeLists.txt +++ b/companion/src/CMakeLists.txt @@ -2,7 +2,7 @@ PROJECT( companion ) SET( C9X_VERSION_MAJOR "2" ) SET( C9X_VERSION_MINOR "0" ) -SET( C9X_VERSION_REVISION "1" ) +SET( C9X_VERSION_REVISION "2" ) SET( C9X_VERSION ${C9X_VERSION_MAJOR}.${C9X_VERSION_MINOR}.${C9X_VERSION_REVISION} ) CMAKE_MINIMUM_REQUIRED( VERSION 2.8 ) diff --git a/companion/src/avroutputdialog.cpp b/companion/src/avroutputdialog.cpp index ea60109ea..40c0d0012 100644 --- a/companion/src/avroutputdialog.cpp +++ b/companion/src/avroutputdialog.cpp @@ -159,11 +159,11 @@ void avrOutputDialog::doCopy() dest.close(); } else { - QMessageBox::warning(this, tr("Error"),tr("Cannot write destination")); + QMessageBox::warning(this, tr("Error"),tr("Cannot write destination") + ": " + dest.errorString()); } } else { - QMessageBox::warning(this, tr("Error"),tr("Cannot open source file")); + QMessageBox::warning(this, tr("Error"),tr("Cannot open source file") + ": " + source.errorString()); } source.close(); @@ -438,7 +438,7 @@ void avrOutputDialog::doFinished(int code=0) if (hasErrors || code) { if (!cmdLine.isEmpty()) { if (getProgrammer()!="AVRDUDE") { - QMessageBox::critical(this, "Companion", getProgrammer() + " " + tr("did not finish correctly")); + QMessageBox::critical(this, "Companion", getProgrammer() + " " + tr("did not finish correctly")); } else { int res = QMessageBox::question(this, "Companion",getProgrammer() + " " + tr("did not finish correctly!\nDo you want some help ?"),QMessageBox::Yes | QMessageBox::No); @@ -446,8 +446,9 @@ void avrOutputDialog::doFinished(int code=0) errorWizard(); } } - } else { - QMessageBox::critical(this, "Companion", tr("Copy did not finish correctly")); + } + else { + QMessageBox::critical(this, "Companion", tr("Copy did not finish correctly")); } // reject(); } @@ -467,8 +468,6 @@ void avrOutputDialog::doFinished(int code=0) default: //AVR_DIALOG_KEEP_OPEN break; } - - } void avrOutputDialog::doProcessStarted() diff --git a/companion/src/avroutputdialog.h b/companion/src/avroutputdialog.h index b62a69cef..52099ace7 100644 --- a/companion/src/avroutputdialog.h +++ b/companion/src/avroutputdialog.h @@ -20,7 +20,7 @@ class avrOutputDialog : public QDialog { Q_OBJECT -public: + public: explicit avrOutputDialog(QWidget *parent, QString prog, QStringList arg, QString wTitle, int closeBehaviour=AVR_DIALOG_CLOSE_IF_SUCCESSFUL, bool displayDetails=false); ~avrOutputDialog(); @@ -29,7 +29,7 @@ public: void waitForFinish(); void addReadFuses(); -protected slots: + protected slots: void doAddTextStdOut(); void doAddTextStdErr(); void doProcessStarted(); @@ -41,7 +41,7 @@ protected slots: void killTimerElapsed(); void errorWizard(); -private: + private: QString getProgrammer(); Ui::avrOutputDialog *ui; diff --git a/companion/src/burndialog.cpp b/companion/src/burndialog.cpp index 21bdc3f19..87abea369 100644 --- a/companion/src/burndialog.cpp +++ b/companion/src/burndialog.cpp @@ -193,7 +193,7 @@ void burnDialog::checkFw(QString fileName) ui->FramFWInfo->show(); ui->DateField->setText(flash.getDate() + " " + flash.getTime()); ui->versionField->setText(flash.getVersion()); - ui->ModField->setText(flash.getEEprom()); + ui->ModField->setText(flash.getEEpromId()); ui->SplashFrame->hide(); if (flash.hasSplash()) { diff --git a/companion/src/eeprominterface.cpp b/companion/src/eeprominterface.cpp index 16318dd0c..787d94beb 100644 --- a/companion/src/eeprominterface.cpp +++ b/companion/src/eeprominterface.cpp @@ -263,7 +263,7 @@ QString RawSource::toString() static const QString telemetry[] = { QObject::tr("Batt"), QObject::tr("Time"), QObject::tr("Timer1"), QObject::tr("Timer2"), - QObject::tr("SWR"), QObject::tr("RSSI Tx"), QObject::tr("RSSI Rx"), QObject::tr("Rx Batt"), + QObject::tr("SWR"), QObject::tr("RSSI Tx"), QObject::tr("RSSI Rx"), QObject::tr("A1"), QObject::tr("A2"), QObject::tr("A3"), QObject::tr("A4"), QObject::tr("Alt"), QObject::tr("Rpm"), QObject::tr("Fuel"), QObject::tr("T1"), QObject::tr("T2"), QObject::tr("Speed"), QObject::tr("Dist"), QObject::tr("GPS Alt"), @@ -852,11 +852,16 @@ GeneralSettings::GeneralSettings() calibSpanPos[i] = 0x180; } - if (IS_TARANIS(GetEepromInterface()->getBoard())) { + BoardEnum board = GetEepromInterface()->getBoard(); + if (IS_TARANIS(board)) { potsType[0] = 1; potsType[1] = 1; } + if (IS_ARM(board)) { + speakerVolume = 12; + } + templateSetup = g.profile[g.id()].channelOrder(); stickMode = g.profile[g.id()].defaultMode(); @@ -991,7 +996,6 @@ void FrSkyData::clear() memset(this, 0, sizeof(FrSkyData)); rssiAlarms[0].clear(2, 45); rssiAlarms[1].clear(3, 42); - rxBattAlarms[1] = round(43.0*255/132); varioSource = 2/*VARIO*/; blades = 2; } @@ -1073,11 +1077,11 @@ void ModelData::clear() moduleData[0].protocol=PPM; moduleData[1].protocol=OFF; } - for (int i=0; i= 216 && IS_ARM(board)) { + if (i==TELEMETRY_SOURCE_RSSI_RX) + val += 1; if (i==TELEMETRY_SOURCE_TX_TIME) val += 5; if (i==TELEMETRY_SOURCE_DTE) @@ -414,7 +416,7 @@ class TelemetrySourcesConversionTable: public ConversionTable { addConversion(1+TELEMETRY_SOURCE_RSSI_TX, val++); addConversion(1+TELEMETRY_SOURCE_RSSI_RX, val++); if (IS_ARM(board) && version >= 216) - addConversion(1+TELEMETRY_SOURCE_RX_BATT, val++); + addConversion(1+TELEMETRY_SOURCE_RESERVE, val++); addConversion(1+TELEMETRY_SOURCE_A1, val++); addConversion(1+TELEMETRY_SOURCE_A2, val++); if (IS_ARM(board) && version >= 216) { @@ -1247,13 +1249,20 @@ class CurvesField: public TransformedField { for (int i=0; itype == CurveData::CURVE_TYPE_CUSTOM ? curve->count * 2 - 2 : curve->count); - if (offset+size > maxPoints) { - EEPROMWarnings += ::QObject::tr("OpenTX only accepts %1 points in all curves").arg(maxPoints) + "\n"; - break; + if (IS_TARANIS(board) && version >= 216) { + offset += (curve->type == CurveData::CURVE_TYPE_CUSTOM ? curve->count * 2 - 2 : curve->count); + if (offset > maxPoints) { + EEPROMWarnings += ::QObject::tr("OpenTX only accepts %1 points in all curves").arg(maxPoints) + "\n"; + break; + } } - if (!IS_TARANIS(board) || version < 216) { - _curves[i] = offset - (5*i); + else { + offset += (curve->type == CurveData::CURVE_TYPE_CUSTOM ? curve->count * 2 - 2 : curve->count) - 5; + if (offset > maxPoints - 5 * maxCurves) { + EEPROMWarnings += ::QObject::tr("OpenTx only accepts %1 points in all curves").arg(maxPoints) + "\n"; + break; + } + _curves[i] = offset; } for (int j=0; jcount; j++) { *cur++ = curve->points[j].y; @@ -1263,7 +1272,6 @@ class CurvesField: public TransformedField { *cur++ = curve->points[j].x; } } - offset += size; } } @@ -1783,7 +1791,7 @@ class ArmCustomFunctionField: public TransformedField { { _mode = 0; - if (fn.func == FuncPlaySound || fn.func == FuncPlayPrompt || fn.func == FuncPlayValue) + if (fn.func == FuncPlaySound || fn.func == FuncPlayPrompt || fn.func == FuncPlayValue || fn.func == FuncPlayHaptic) _active = (version >= 216 ? fn.repeatParam : (fn.repeatParam/5)); else _active = (fn.enabled ? 1 : 0); @@ -1855,7 +1863,7 @@ class ArmCustomFunctionField: public TransformedField { virtual void afterImport() { - if (fn.func == FuncPlaySound || fn.func == FuncPlayPrompt || fn.func == FuncPlayValue) + if (fn.func == FuncPlaySound || fn.func == FuncPlayPrompt || fn.func == FuncPlayValue || fn.func == FuncPlayHaptic) fn.repeatParam = (version >= 216 ? _active : (_active*5)); else fn.enabled = (_active & 0x01); @@ -2202,8 +2210,6 @@ class TelemetryVoltsSourceConversionTable: public ConversionTable TelemetryVoltsSourceConversionTable(BoardEnum board, unsigned int version) { int val = 0; - if (IS_ARM(board) && version >= 216) - addConversion(TELEMETRY_VOLTS_SOURCE_RXBATT, val++); addConversion(TELEMETRY_VOLTS_SOURCE_A1, val++); addConversion(TELEMETRY_VOLTS_SOURCE_A2, val++); if (IS_ARM(board) && version >= 216) { @@ -2569,8 +2575,7 @@ OpenTxModelData::OpenTxModelData(ModelData & modelData, BoardEnum board, unsigne } if (IS_ARM(board) && version >= 216) { - internalField.Append(new UnsignedField<8>(modelData.frsky.rxBattAlarms[0])); - internalField.Append(new UnsignedField<8>(modelData.frsky.rxBattAlarms[1])); + internalField.Append(new SpareBitsField<16>()); } } @@ -2704,7 +2709,7 @@ OpenTxGeneralData::OpenTxGeneralData(GeneralSettings & generalData, BoardEnum bo internalField.Append(new SignedField<2>((int &)generalData.hapticMode)); if (IS_ARM(board)) - internalField.Append(new UnsignedField<8>(generalData.switchesDelay)); + internalField.Append(new SignedField<8>(generalData.switchesDelay)); else internalField.Append(new SpareBitsField<8>()); @@ -2740,6 +2745,7 @@ OpenTxGeneralData::OpenTxGeneralData(GeneralSettings & generalData, BoardEnum bo } if (IS_ARM(board)) { + internalField.Append(new UnsignedField<8>(generalData.backlightBright)); internalField.Append(new SignedField<8>(generalData.currentCalib)); if (version >= 213) { internalField.Append(new SignedField<8>(generalData.temperatureWarn)); // TODO @@ -2809,7 +2815,8 @@ void OpenTxGeneralData::beforeExport() void OpenTxGeneralData::afterImport() { for (int i=0; i<4; i++) { - if (i<2 && generalData.potsType[i] == 0) + generalData.potsType[i] = potsType[i]; + if (i<2 && potsType[i] == 0) generalData.potsType[i] = 1; } } diff --git a/companion/src/firmwares/opentx/opentxinterface.cpp b/companion/src/firmwares/opentx/opentxinterface.cpp index 930cb1628..ee24329cc 100644 --- a/companion/src/firmwares/opentx/opentxinterface.cpp +++ b/companion/src/firmwares/opentx/opentxinterface.cpp @@ -154,7 +154,7 @@ bool OpenTxEepromInterface::loadModelVariant(unsigned int index, ModelData &mode int numbytes = efile->readRlc2((uint8_t *)eepromData.data(), eepromData.size()); if (numbytes) { open9xModel.Import(eepromData); - // open9xModel.Dump(); + open9xModel.Dump(); model.used = true; } else { @@ -504,7 +504,7 @@ int OpenTxFirmware::getCapability(const Capability capability) return 1; case GvarsAreNamed: case GvarsFlightModes: - return ((IS_ARM(board)||(board==BOARD_GRUVIN9X)) ? 1 : 0); + return ((IS_ARM(board) || board==BOARD_GRUVIN9X) ? 1 : 0); case Mixes: return (IS_ARM(board) ? O9X_ARM_MAX_MIXERS : O9X_MAX_MIXERS); case OffsetWeight: @@ -659,6 +659,7 @@ int OpenTxFirmware::getCapability(const Capability capability) case LuaInputs: case LimitsPer1000: case EnhancedCurves: + return IS_TARANIS(board); case HasFasOffset: return (IS_STOCK(board) ? false : true); case HasMahPersistent: diff --git a/companion/src/firmwares/th9x/th9xeeprom.cpp b/companion/src/firmwares/th9x/th9xeeprom.cpp index daafb48b2..8762b5328 100644 --- a/companion/src/firmwares/th9x/th9xeeprom.cpp +++ b/companion/src/firmwares/th9x/th9xeeprom.cpp @@ -85,7 +85,6 @@ Th9xGeneral::operator GeneralSettings () } result.stickMode = stickMode; result.inactivityTimer = inactivityMin; - result.filterInput = adcFilt; return result; } diff --git a/companion/src/flashinterface.cpp b/companion/src/flashinterface.cpp index c0024a404..0104cd6c4 100644 --- a/companion/src/flashinterface.cpp +++ b/companion/src/flashinterface.cpp @@ -69,7 +69,17 @@ FlashInterface::FlashInterface(QString fileName): version = seekLabel(VERS_MARK); date = seekLabel(DATE_MARK); time = seekLabel(TIME_MARK); - eeprom = seekLabel(EEPR_MARK); + eepromId = seekLabel(EEPR_MARK); + + if (eepromId.contains('-')) { + QStringList list = eepromId.split('-'); + eepromVersion = list[0].toInt(); + eepromVariant = list[1].toInt(); + } + else { + eepromVersion = eepromId.toInt(); + } + versionId = version2index(version); SeekSplash(); isValidFlag = true; diff --git a/companion/src/flashinterface.h b/companion/src/flashinterface.h index db6b8fa87..bd10b7765 100644 --- a/companion/src/flashinterface.h +++ b/companion/src/flashinterface.h @@ -49,7 +49,9 @@ class FlashInterface int getSize() { return flash_size; } inline QString getVersion() { return version; } unsigned int getVersionId() { return versionId; } - inline QString getEEprom() { return eeprom; } + inline int getEEpromVersion() { return eepromVersion; } + inline int getEEpromVariant() { return eepromVariant; } + inline QString getEEpromId() { return eepromId; } QImage getSplash(); bool setSplash(const QImage & newsplash); bool hasSplash(); @@ -72,7 +74,9 @@ class FlashInterface QString time; QString version; int versionId; - QString eeprom; + QString eepromId; + int eepromVersion; + int eepromVariant; QByteArray splash; uint splash_offset; uint splash_size; diff --git a/companion/src/generaledit.cpp b/companion/src/generaledit.cpp index c9e30be10..56373f649 100644 --- a/companion/src/generaledit.cpp +++ b/companion/src/generaledit.cpp @@ -88,7 +88,8 @@ GeneralEdit::GeneralEdit(RadioData &radioData, QWidget *parent) : if (!GetCurrentFirmware()->getCapability(MultiLangVoice)) { ui->VoiceLang_label->hide(); ui->voiceLang_CB->hide(); - } else { + } + else { voiceLangEditLock=true; populateVoiceLangCB(ui->voiceLang_CB, g_eeGeneral.ttsLanguage); voiceLangEditLock=false; @@ -97,7 +98,8 @@ GeneralEdit::GeneralEdit(RadioData &radioData, QWidget *parent) : if (!mavlink) { ui->mavbaud_CB->hide(); ui->mavbaud_label->hide(); - } else { + } + else { mavbaudEditLock=true; ui->mavbaud_CB->setCurrentIndex(g_eeGeneral.mavbaud); populateVoiceLangCB(ui->voiceLang_CB, g_eeGeneral.ttsLanguage); @@ -170,7 +172,8 @@ GeneralEdit::GeneralEdit(RadioData &radioData, QWidget *parent) : ui->volume_SB->hide(); ui->volume_SB->setDisabled(true); ui->label_volume->hide(); - } else { + } + else { ui->volume_SB->setMaximum(GetCurrentFirmware()->getCapability(MaxVolume)); } if (!GetCurrentFirmware()->getCapability(HasBrightness)) { @@ -307,13 +310,15 @@ GeneralEdit::GeneralEdit(RadioData &radioData, QWidget *parent) : } if (IS_ARM(eepromInterface->getBoard())) { - ui->switchesDelay->setValue(10*g_eeGeneral.switchesDelay); + ui->switchesDelay->setValue(10*(g_eeGeneral.switchesDelay+15)); } else { ui->switchesDelay->hide(); ui->switchesDelayLabel->hide(); } + disableMouseScrolling(); + ga.sendPageView(getBoardName(GetCurrentFirmware()->getBoard()) + " GeneralEdit"); } @@ -527,7 +532,7 @@ void GeneralEdit::on_backlightautoSB_editingFinished() void GeneralEdit::on_switchesDelay_valueChanged() { - g_eeGeneral.switchesDelay = ui->switchesDelay->value() / 10; + g_eeGeneral.switchesDelay = (ui->switchesDelay->value() / 10) - 15; updateSettings(); } @@ -1076,7 +1081,8 @@ void GeneralEdit::on_calstore_PB_clicked() if (name.isEmpty()) { ui->calstore_PB->setDisabled(true); return; - } else { + } + else { QString calib=g.profile[profile_id].stickPotCalib(); if (!(calib.isEmpty())) { int ret = QMessageBox::question(this, "Companion", @@ -1115,7 +1121,50 @@ void GeneralEdit::on_calstore_PB_clicked() } } -void GeneralEdit::shrink() { - resize(100,100); - resize(0,0); +void GeneralEdit::shrink() +{ + resize(100, 100); + resize(0, 0); +} + +bool GeneralEdit::eventFilter(QObject *object, QEvent * event) +{ + QWidget * widget = qobject_cast(object); + if (widget) { + if (event->type() == QEvent::Wheel) { + if (widget->focusPolicy() == Qt::WheelFocus) { + event->accept(); + return false; + } + else { + event->ignore(); + return true; + } + } + else if (event->type() == QEvent::FocusIn) { + widget->setFocusPolicy(Qt::WheelFocus); + } + else if (event->type() == QEvent::FocusOut) { + widget->setFocusPolicy(Qt::StrongFocus); + } + } + return QWidget::eventFilter(object, event); +} + +void GeneralEdit::disableMouseScrolling() +{ + Q_FOREACH(QComboBox * cb, findChildren()) { + cb->installEventFilter(this); + cb->setFocusPolicy(Qt::StrongFocus); + } + + Q_FOREACH(QAbstractSpinBox * sb, findChildren()) { + sb->installEventFilter(this); + sb->setFocusPolicy(Qt::StrongFocus); + } + + Q_FOREACH(QSlider * slider, findChildren()) { + slider->installEventFilter(this); + slider->setFocusPolicy(Qt::StrongFocus); + } } diff --git a/companion/src/generaledit.h b/companion/src/generaledit.h index 5a08469f3..8bd86e2d8 100644 --- a/companion/src/generaledit.h +++ b/companion/src/generaledit.h @@ -12,12 +12,12 @@ class GeneralEdit : public QDialog { Q_OBJECT -public: + public: explicit GeneralEdit(RadioData &radioData, QWidget *parent = 0); ~GeneralEdit(); void updateSettings(); -private: + private: Ui::GeneralEdit *ui; RadioData &radioData; GeneralSettings g_eeGeneral; @@ -28,6 +28,10 @@ private: void getGeneralSwitchDefPos(int i, bool val); void setSwitchDefPos(); void updateVarioPitchRange(); + void disableMouseScrolling(); + + protected: + virtual bool eventFilter(QObject *obj, QEvent *event); signals: void modelValuesChanged(); diff --git a/companion/src/generaledit.ui b/companion/src/generaledit.ui index e9dbb4759..9943a015e 100644 --- a/companion/src/generaledit.ui +++ b/companion/src/generaledit.ui @@ -1977,7 +1977,7 @@ Mode 4: - Switches Delay (mid position) + Play Delay (switch mid position) @@ -2004,7 +2004,7 @@ p, li { white-space: pre-wrap; } 0 - 250 + 300 10 diff --git a/companion/src/images/library/00003.png b/companion/src/images/library/00003.png index a179deadf..6e45e310a 100644 Binary files a/companion/src/images/library/00003.png and b/companion/src/images/library/00003.png differ diff --git a/companion/src/images/library/00008.png b/companion/src/images/library/00008.png index 6e45e310a..1399c91ae 100644 Binary files a/companion/src/images/library/00008.png and b/companion/src/images/library/00008.png differ diff --git a/companion/src/images/library/00009.png b/companion/src/images/library/00009.png index 99fbf404d..e71a38cae 100644 Binary files a/companion/src/images/library/00009.png and b/companion/src/images/library/00009.png differ diff --git a/companion/src/images/library/00010.png b/companion/src/images/library/00010.png index 410af7418..fa973998b 100644 Binary files a/companion/src/images/library/00010.png and b/companion/src/images/library/00010.png differ diff --git a/companion/src/images/library/00011.png b/companion/src/images/library/00011.png index 410af7418..f5f61be96 100644 Binary files a/companion/src/images/library/00011.png and b/companion/src/images/library/00011.png differ diff --git a/companion/src/images/library/00012.png b/companion/src/images/library/00012.png index 410af7418..8af4d4fc4 100644 Binary files a/companion/src/images/library/00012.png and b/companion/src/images/library/00012.png differ diff --git a/companion/src/mainwindow.cpp b/companion/src/mainwindow.cpp index bd9a465d1..8e30b3041 100644 --- a/companion/src/mainwindow.cpp +++ b/companion/src/mainwindow.cpp @@ -152,7 +152,8 @@ MainWindow::MainWindow(): if (!(printing && (model >=0 && modelgetMaxModels()) && !printfilename.isEmpty() )) { statusBar()->showMessage(tr("File loaded"), 2000); child->show(); - } else { + } + else { child->show(); child->print(model,printfilename); child->close(); @@ -990,7 +991,6 @@ bool MainWindow::readFirmwareFromRadio(const QString filename) ad->setWindowIcon(CompanionIcon("read_flash.png")); ad->exec(); delete ad; - sleep(1); result = true; } } @@ -1025,7 +1025,6 @@ bool MainWindow::writeFirmwareToRadio(const QString filename) ad->setWindowIcon(CompanionIcon("write_flash.png")); ad->exec(); delete ad; - sleep(1); result = true; } } @@ -1068,7 +1067,6 @@ bool MainWindow::readEepromFromRadio(const QString filename, const QString messa ad->setWindowIcon(CompanionIcon("read_eeprom.png")); ad->exec(); delete ad; - sleep(1); result = true; } } @@ -1079,7 +1077,6 @@ bool MainWindow::readEepromFromRadio(const QString filename, const QString messa ad->setWindowIcon(CompanionIcon("read_eeprom.png")); ad->exec(); delete ad; - sleep(1); result = true; } @@ -1113,22 +1110,20 @@ bool MainWindow::writeEepromToRadio(const QString filename, const QString messag if (!path.isEmpty()) { QStringList str; str << filename << path; - avrOutputDialog *ad = new avrOutputDialog(this, "", str, message); - ad->setWindowIcon(CompanionIcon("read_eeprom.png")); + avrOutputDialog *ad = new avrOutputDialog(this, "", str, message, AVR_DIALOG_SHOW_DONE); + ad->setWindowIcon(CompanionIcon("write_eeprom.png")); ad->exec(); delete ad; - sleep(1); result = true; } } if (result == false && !IS_TARANIS(GetCurrentFirmware()->getBoard())) { QStringList str = GetSendEEpromCommand(filename); - avrOutputDialog *ad = new avrOutputDialog(this, GetAvrdudeLocation(), str, "Write Backup To Radio", AVR_DIALOG_SHOW_DONE); + avrOutputDialog *ad = new avrOutputDialog(this, GetAvrdudeLocation(), str, "Write EEPROM To Radio", AVR_DIALOG_SHOW_DONE); ad->setWindowIcon(CompanionIcon("write_eeprom.png")); ad->exec(); delete ad; - sleep(1); result = true; } @@ -1270,11 +1265,8 @@ bool MainWindow::convertEEPROM(QString backupFile, QString restoreFile, QString if (!flash.isValid()) return false; - unsigned int version = 0; - unsigned int variant = 0; - - QString fwEEprom = flash.getEEprom(); - version = fwEEprom.toInt(); + unsigned int version = flash.getEEpromVersion(); + unsigned int variant = flash.getEEpromVariant(); QFile file(backupFile); int eeprom_size = file.size(); @@ -1336,7 +1328,7 @@ void MainWindow::writeFlash(QString fileToFlash) if (backupEnable) { QDateTime datetime; backupFile.clear(); - backupFile=backupPath+"/backup-"+QDateTime().currentDateTime().toString("yyyy-MM-dd-hhmmss")+".bin"; + backupFile = backupPath+"/backup-"+QDateTime().currentDateTime().toString("yyyy-MM-dd-hhmmss")+".bin"; } if (readEepromFromRadio(backupFile, tr("Backup Models and Settings From Radio"))) { @@ -1428,6 +1420,7 @@ void MainWindow::compare() void MainWindow::logFile() { logsDialog *fd = new logsDialog(this); + fd->setWindowFlags(Qt::Window); //to show minimize an maximize buttons fd->setAttribute(Qt::WA_DeleteOnClose, true); fd->show(); } @@ -1480,8 +1473,9 @@ MdiChild *MainWindow::createMdiChild() { MdiChild * child = new MdiChild(); mdiArea->addSubWindow(child); - if(!child->parentWidget()->isMaximized() && !child->parentWidget()->isMinimized()) + if (!child->parentWidget()->isMaximized() && !child->parentWidget()->isMinimized()) { child->parentWidget()->resize(400, 400); + } connect(child, SIGNAL(copyAvailable(bool)),cutAct, SLOT(setEnabled(bool))); connect(child, SIGNAL(copyAvailable(bool)),copyAct, SLOT(setEnabled(bool))); diff --git a/companion/src/mdichild.cpp b/companion/src/mdichild.cpp index e9c5b1317..a4f81e98a 100644 --- a/companion/src/mdichild.cpp +++ b/companion/src/mdichild.cpp @@ -71,13 +71,13 @@ MdiChild::MdiChild(): fileChanged(false) { ui->setupUi(this); - this->setWindowIcon(CompanionIcon("open.png")); + setWindowIcon(CompanionIcon("open.png")); ui->SimulateTxButton->setIcon(CompanionIcon("simulate.png")); setAttribute(Qt::WA_DeleteOnClose); eepromInterfaceChanged(); - if(!(this->isMaximized() || this->isMinimized())) { + if (!(this->isMaximized() || this->isMinimized())) { adjustSize(); } diff --git a/companion/src/modeledit/channels.cpp b/companion/src/modeledit/channels.cpp index 80b47cc34..634a5344b 100644 --- a/companion/src/modeledit/channels.cpp +++ b/companion/src/modeledit/channels.cpp @@ -136,6 +136,8 @@ Channels::Channels(QWidget * parent, ModelData & model, GeneralSettings & genera } // Push the rows up addVSpring(gridLayout, 0,firmware->getCapability(Outputs)+1); + + disableMouseScrolling(); } Channels::~Channels() diff --git a/companion/src/modeledit/curves.cpp b/companion/src/modeledit/curves.cpp index 72657d9ef..65d665411 100644 --- a/companion/src/modeledit/curves.cpp +++ b/companion/src/modeledit/curves.cpp @@ -180,6 +180,8 @@ Curves::Curves(QWidget * parent, ModelData & model, GeneralSettings & generalSet addTemplate(tr("Symmetrical f(x)=-f(-x)"), CURVE_COEFF_ENABLE, curveSymmetricalY); addTemplate(tr("Symmetrical f(x)=f(-x)"), CURVE_COEFF_ENABLE | CURVE_YMID_ENABLE, curveSymmetricalX); + disableMouseScrolling(); + lock = false; } @@ -246,12 +248,13 @@ void Curves::updateCurveType() index = model.curves[currentCurve].count - 2; } else { + ui->curveSmooth->hide(); if (model.curves[currentCurve].count == 5) - index += 2; + index = 1; else if (model.curves[currentCurve].count == 9) - index += 4; + index = 2; else if (model.curves[currentCurve].count == 17) - index += 6; + index = 3; } ui->curvePoints->setCurrentIndex(index); diff --git a/companion/src/modeledit/customfunctions.cpp b/companion/src/modeledit/customfunctions.cpp index f3e1dc4c3..259a8010a 100644 --- a/companion/src/modeledit/customfunctions.cpp +++ b/companion/src/modeledit/customfunctions.cpp @@ -87,7 +87,7 @@ CustomFunctionsPanel::CustomFunctionsPanel(QWidget * parent, ModelData & model, lang="en"; path.append(lang); QDir qd(path); - int vml= firmware->getCapability(VoicesMaxLength)+4; + int vml= firmware->getCapability(VoicesMaxLength); if (qd.exists()) { QStringList filters; filters << "*.wav" << "*.WAV"; @@ -573,10 +573,10 @@ void CustomFunctionsPanel::fsw_customContextMenuRequested(QPoint pos) bool hasData = mimeData->hasFormat("application/x-companion-fsw"); QMenu contextMenu; - contextMenu.addAction(CompanionIcon("clear.png"), tr("&Delete"),this,SLOT(fswDelete()),tr("Delete")); contextMenu.addAction(CompanionIcon("copy.png"), tr("&Copy"),this,SLOT(fswCopy()),tr("Ctrl+C")); contextMenu.addAction(CompanionIcon("cut.png"), tr("&Cut"),this,SLOT(fswCut()),tr("Ctrl+X")); contextMenu.addAction(CompanionIcon("paste.png"), tr("&Paste"),this,SLOT(fswPaste()),tr("Ctrl+V"))->setEnabled(hasData); + contextMenu.addAction(CompanionIcon("clear.png"), tr("&Delete"),this,SLOT(fswDelete()),tr("Delete")); contextMenu.exec(globalPos); } diff --git a/companion/src/modeledit/flightmodes.cpp b/companion/src/modeledit/flightmodes.cpp index 651733f43..5f0996dfb 100644 --- a/companion/src/modeledit/flightmodes.cpp +++ b/companion/src/modeledit/flightmodes.cpp @@ -121,7 +121,7 @@ FlightModePanel::FlightModePanel(QWidget * parent, ModelData & model, int phaseI } // GVars - if (gvCount > 0) { + if (gvCount > 0 && (firmware->getCapability(GvarsFlightModes) || phaseIdx == 0) ) { QGridLayout *gvLayout = new QGridLayout(ui->gvGB); for (int i=0; igvGB->hide(); } + disableMouseScrolling(); + update(); } @@ -200,13 +202,14 @@ void FlightModePanel::update() trimUpdate(i); } - for (int i=0; isetText(model.gvars_names[i]); - gvValues[i]->setDisabled(model.isGVarLinked(phaseIdx, i)); - if (IS_TARANIS(GetEepromInterface()->getBoard())) { + if (ui->gvGB->isVisible()) { + for (int i=0; isetText(model.gvars_names[i]); + gvValues[i]->setDisabled(model.isGVarLinked(phaseIdx, i)); gvValues[i]->setValue(model.getGVarValue(phaseIdx, i)); - if (phaseIdx == 0) + if (IS_TARANIS(GetEepromInterface()->getBoard()) && phaseIdx == 0) { gvPopups[i]->setChecked(model.gvars_popups[i]); + } } } @@ -296,14 +299,6 @@ void FlightModePanel::GVName_editingFinished() } } -void FlightModePanel::GVSource_currentIndexChanged(int index) -{ - QComboBox *comboBox = qobject_cast(sender()); - int gvar = comboBox->property("index").toInt(); - model.gvsource[gvar] = index; - emit modified(); -} - void FlightModePanel::phaseGVUse_currentIndexChanged(int index) { if (!lock) { diff --git a/companion/src/modeledit/flightmodes.h b/companion/src/modeledit/flightmodes.h index e2127ac5c..f64fa9b50 100644 --- a/companion/src/modeledit/flightmodes.h +++ b/companion/src/modeledit/flightmodes.h @@ -35,7 +35,6 @@ class FlightModePanel : public ModelPanel void phaseTrim_valueChanged(); void phaseTrimSlider_valueChanged(); void GVName_editingFinished(); - void GVSource_currentIndexChanged(int index); void phaseGVValue_editingFinished(); void phaseGVUse_currentIndexChanged(int index); void phaseGVPopupToggled(bool checked); diff --git a/companion/src/modeledit/heli.cpp b/companion/src/modeledit/heli.cpp index 3b56e19fb..3fda9f91e 100644 --- a/companion/src/modeledit/heli.cpp +++ b/companion/src/modeledit/heli.cpp @@ -14,6 +14,8 @@ HeliPanel::HeliPanel(QWidget *parent, ModelData & model, GeneralSettings & gener connect(ui->swashInvertELE, SIGNAL(stateChanged(int)), this, SLOT(edited())); connect(ui->swashInvertAIL, SIGNAL(stateChanged(int)), this, SLOT(edited())); connect(ui->swashInvertCOL, SIGNAL(stateChanged(int)), this, SLOT(edited())); + + disableMouseScrolling(); } HeliPanel::~HeliPanel() diff --git a/companion/src/modeledit/logicalswitches.cpp b/companion/src/modeledit/logicalswitches.cpp index ddbf381b5..df17c0ce3 100644 --- a/companion/src/modeledit/logicalswitches.cpp +++ b/companion/src/modeledit/logicalswitches.cpp @@ -116,6 +116,9 @@ LogicalSwitchesPanel::LogicalSwitchesPanel(QWidget * parent, ModelData & model, } // Push rows upward addVSpring(gridLayout,0,firmware->getCapability(LogicalSwitches)+1); + + disableMouseScrolling(); + lock = false; } @@ -437,10 +440,10 @@ void LogicalSwitchesPanel::csw_customContextMenuRequested(QPoint pos) bool hasData = mimeData->hasFormat("application/x-companion-csw"); QMenu contextMenu; - contextMenu.addAction(CompanionIcon("clear.png"), tr("&Delete"),this,SLOT(cswDelete()),tr("Delete")); contextMenu.addAction(CompanionIcon("copy.png"), tr("&Copy"),this,SLOT(cswCopy()),tr("Ctrl+C")); contextMenu.addAction(CompanionIcon("cut.png"), tr("&Cut"),this,SLOT(cswCut()),tr("Ctrl+X")); contextMenu.addAction(CompanionIcon("paste.png"), tr("&Paste"),this,SLOT(cswPaste()),tr("Ctrl+V"))->setEnabled(hasData); + contextMenu.addAction(CompanionIcon("clear.png"), tr("&Delete"),this,SLOT(cswDelete()),tr("Delete")); contextMenu.exec(globalPos); } diff --git a/companion/src/modeledit/mixes.cpp b/companion/src/modeledit/mixes.cpp index 5c21fa698..75c8793f3 100644 --- a/companion/src/modeledit/mixes.cpp +++ b/companion/src/modeledit/mixes.cpp @@ -191,9 +191,8 @@ QString MixesPanel::getMixerText(int dest, bool * new_ch) str += " " + Qt::escape(tr("Switch(%1)").arg(md->swtch.toString())); } - if (md->carryTrim) { - str += " " + Qt::escape(tr("NoTrim")); - } + if (md->carryTrim>0) str += " " + Qt::escape(tr("NoTrim")); + else if (md->carryTrim<0) str += " " + RawSource(SOURCE_TYPE_TRIM, (-(md->carryTrim)-1)).toString(); if (firmware->getCapability(HasNoExpo) && md->noExpo) str += " " + Qt::escape(tr("No DR/Expo")); if (md->sOffset) str += " " + Qt::escape(tr("Offset(%1)").arg(getGVarString(md->sOffset))); diff --git a/companion/src/modeledit/modelpanel.cpp b/companion/src/modeledit/modelpanel.cpp index 157ecbf95..0ea59652d 100644 --- a/companion/src/modeledit/modelpanel.cpp +++ b/companion/src/modeledit/modelpanel.cpp @@ -94,4 +94,9 @@ void ModelPanel::disableMouseScrolling() sb->installEventFilter(this); sb->setFocusPolicy(Qt::StrongFocus); } + + Q_FOREACH(QSlider * slider, findChildren()) { + slider->installEventFilter(this); + slider->setFocusPolicy(Qt::StrongFocus); + } } diff --git a/companion/src/modeledit/setup.cpp b/companion/src/modeledit/setup.cpp index 6a4b62f99..bc7b96448 100644 --- a/companion/src/modeledit/setup.cpp +++ b/companion/src/modeledit/setup.cpp @@ -28,6 +28,8 @@ TimerPanel::TimerPanel(QWidget *parent, ModelData & model, TimerData & timer, Ge if (IS_ARM(GetEepromInterface()->getBoard()) || IS_2560(GetEepromInterface()->getBoard())) ui->countdownBeep->addItem(tr("Voice"), 2); + disableMouseScrolling(); + lock = false; } @@ -157,6 +159,8 @@ ModulePanel::ModulePanel(QWidget *parent, ModelData & model, ModuleData & module } } + disableMouseScrolling(); + lock = false; } @@ -478,6 +482,9 @@ SetupPanel::SetupPanel(QWidget *parent, ModelData & model, GeneralSettings & gen ui->label_potWarning->hide(); ui->potWarningMode->hide(); } + + disableMouseScrolling(); + lock = false; } diff --git a/companion/src/modeledit/telemetry.cpp b/companion/src/modeledit/telemetry.cpp index 655776f3e..46f9cf942 100644 --- a/companion/src/modeledit/telemetry.cpp +++ b/companion/src/modeledit/telemetry.cpp @@ -50,6 +50,8 @@ TelemetryAnalog::TelemetryAnalog(QWidget *parent, FrSkyChannelData & analog, Mod else { ui->label_Max->setText(tr("Range")); } + + disableMouseScrolling(); } void TelemetryAnalog::update() @@ -324,6 +326,8 @@ TelemetryCustomScreen::TelemetryCustomScreen(QWidget *parent, ModelData & model, ui->screenBarsLayout->addWidget(maxSB[l], l, 3, 1, 1); } + disableMouseScrolling(); + update(); } @@ -516,6 +520,8 @@ TelemetryPanel::TelemetryPanel(QWidget *parent, ModelData & model, GeneralSettin ui->bladesCount->setMaximum(128); } + disableMouseScrolling(); + setup(); } @@ -530,20 +536,6 @@ void TelemetryPanel::setup() lock = true; - if (IS_ARM(firmware->getBoard())) { - ui->rxbattAlarm1DSB->setValue((13.2*model.frsky.rxBattAlarms[0])/255); - ui->rxbattAlarm2DSB->setValue((13.2*model.frsky.rxBattAlarms[1])/255); - } - else { - ui->rxbattLabel->hide(); - ui->rxbattAlarm1Label->hide(); - ui->rxbattAlarm2Label->hide(); - ui->rxbattAlarm1CB->hide(); - ui->rxbattAlarm2CB->hide(); - ui->rxbattAlarm1DSB->hide(); - ui->rxbattAlarm2DSB->hide(); - } - ui->rssiAlarm1SB->setValue(model.frsky.rssiAlarms[0].value); ui->rssiAlarm2SB->setValue(model.frsky.rssiAlarms[1].value); if (!IS_TARANIS(GetEepromInterface()->getBoard())) { @@ -692,9 +684,6 @@ void TelemetryPanel::populateVoltsSource() { QUnsignedAutoComboBox * cb = ui->frskyVoltCB; cb->setField(&model.frsky.voltsSource, this); - if (IS_ARM(firmware->getBoard())) { - cb->addItem(tr("RxBatt"), TELEMETRY_VOLTS_SOURCE_RXBATT); - } cb->addItem(tr("A1"), TELEMETRY_VOLTS_SOURCE_A1); cb->addItem(tr("A2"), TELEMETRY_VOLTS_SOURCE_A2); if (IS_ARM(firmware->getBoard())) { @@ -790,18 +779,6 @@ void TelemetryPanel::on_varioLimitMin_DSB_editingFinished() emit modified(); } -void TelemetryPanel::on_rxbattAlarm1DSB_editingFinished() -{ - model.frsky.rxBattAlarms[0] = round(ui->rxbattAlarm1DSB->value()/(13.2/255)); - emit modified(); -} - -void TelemetryPanel::on_rxbattAlarm2DSB_editingFinished() -{ - model.frsky.rxBattAlarms[1] = round(ui->rxbattAlarm2DSB->value()/(13.2/255)); - emit modified(); -} - void TelemetryPanel::on_varioLimitMax_DSB_editingFinished() { model.frsky.varioMax = round(ui->varioLimitMax_DSB->value()-10); diff --git a/companion/src/modeledit/telemetry.h b/companion/src/modeledit/telemetry.h index 631f6d785..6694ae319 100644 --- a/companion/src/modeledit/telemetry.h +++ b/companion/src/modeledit/telemetry.h @@ -93,8 +93,6 @@ class TelemetryPanel : public ModelPanel void on_rssiAlarm2CB_currentIndexChanged(int index); void on_rssiAlarm1SB_editingFinished(); void on_rssiAlarm2SB_editingFinished(); - void on_rxbattAlarm1DSB_editingFinished(); - void on_rxbattAlarm2DSB_editingFinished(); void on_AltitudeGPS_ChkB_toggled(bool checked); void on_varioLimitMin_DSB_editingFinished(); void on_varioLimitMax_DSB_editingFinished(); diff --git a/companion/src/modeledit/telemetry.ui b/companion/src/modeledit/telemetry.ui index df30da3fc..24ca7eb31 100644 --- a/companion/src/modeledit/telemetry.ui +++ b/companion/src/modeledit/telemetry.ui @@ -437,356 +437,6 @@ - - - - - 0 - 0 - - - - false - - - - 0 - - - 0 - - - 3 - - - 3 - - - - - - 0 - 0 - - - - - 0 - 0 - - - - Alarm 2 - - - - - - - - 0 - 0 - - - - - 0 - 0 - - - - - - - Alarm 1 - - - - - - - - 75 - true - - - - RxBatt - - - - - - - false - - - - 0 - 0 - - - - - Critical Alarm - - - - - - - - - 0 - 0 - - - - - 0 - 0 - - - - - - - Alarm 1 - - - - - - - - 0 - 0 - - - - - ---- - - - - - Yellow - - - - - Orange - - - - - Red - - - - - - - - true - - - - 0 - 0 - - - - - - - 20 - - - 80 - - - 1 - - - 50 - - - - - - - - 0 - 0 - - - - - 0 - 0 - - - - Alarm 2 - - - - - - - - 0 - 0 - - - - - ---- - - - - - Yellow - - - - - Orange - - - - - Red - - - - - - - - true - - - - 0 - 0 - - - - - - - 20 - - - 80 - - - 1 - - - 50 - - - - - - - - 75 - true - - - - RSSI - - - - - - - false - - - - 0 - 0 - - - - - Low Alarm - - - - - - - - Qt::Vertical - - - - 20 - 0 - - - - - - - - - 0 - 0 - - - - 2 - - - 0.000000000000000 - - - 13.199999999999999 - - - 0.050000000000000 - - - 4.300000000000000 - - - - - - - - 0 - 0 - - - - 2 - - - 0.000000000000000 - - - 13.199999999999999 - - - 0.051764000000000 - - - 4.300000000000000 - - - - - - @@ -1213,6 +863,216 @@ + + + + + 0 + 0 + + + + false + + + + 0 + + + 0 + + + 3 + + + 3 + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + + + Alarm 1 + + + + + + + + 0 + 0 + + + + + ---- + + + + + Yellow + + + + + Orange + + + + + Red + + + + + + + + true + + + + 0 + 0 + + + + + + + 20 + + + 80 + + + 1 + + + 50 + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + Alarm 2 + + + + + + + + 0 + 0 + + + + + ---- + + + + + Yellow + + + + + Orange + + + + + Red + + + + + + + + true + + + + 0 + 0 + + + + + + + 20 + + + 80 + + + 1 + + + 50 + + + + + + + + 75 + true + + + + RSSI + + + + + + + Qt::Vertical + + + + 20 + 0 + + + + + + + diff --git a/companion/src/printdialog.cpp b/companion/src/printdialog.cpp index 94d4ba623..10ac6afc3 100644 --- a/companion/src/printdialog.cpp +++ b/companion/src/printdialog.cpp @@ -347,9 +347,8 @@ void PrintDialog::printMixes() str += " " + Qt::escape(tr("Switch(%1)").arg(md->swtch.toString())); } - if (md->carryTrim) { - str += " " + Qt::escape(tr("NoTrim")); - } + if (md->carryTrim>0) str += " " + Qt::escape(tr("NoTrim")); + else if (md->carryTrim<0) str += " " + RawSource(SOURCE_TYPE_TRIM, (-(md->carryTrim)-1)).toString(); if (firmware->getCapability(HasNoExpo) && md->noExpo) str += " " + Qt::escape(tr("No DR/Expo")); if (md->sOffset) str += " " + Qt::escape(tr("Offset(%1)").arg(getGVarString(md->sOffset))); diff --git a/companion/src/translations/companion_cs.ts b/companion/src/translations/companion_cs.ts index 2037978ef..5b3f1e2f5 100644 --- a/companion/src/translations/companion_cs.ts +++ b/companion/src/translations/companion_cs.ts @@ -4,27 +4,27 @@ AileronsPage - + No Ne - + Yes, controlled by a single channel Ano, ovládané jedním kanálem - + Yes, controlled by two channels Ano, ovládané dvěma kanály - + <br>First Aileron Channel: <br>První kanál křidélek: - + Second Aileron Channel: <br>Druhý kanál křidélek: @@ -32,27 +32,27 @@ AirbrakesPage - + No Ne - + Yes, controlled by a single channel Ano, ovládané jedním kanálem - + Yes, controlled by two channels Ano, ovládané dvěma kanály - + <br>First Airbrake Channel: <br>První kanál brzdících klapek: - + Second Airbrake Channel: <br>Druhý kanál brzdících klapek: @@ -1166,7 +1166,7 @@ Může být jiná než verze firmwaru ConclusionPage - + OK, I understand. OK, rozuměl jsem. @@ -1316,17 +1316,17 @@ Může být jiná než verze firmwaru Symetrická f(x)=f(-x) - + Are you sure you want to reset curve %1 ? Opravdu chcete vymazat křivku %1 ? - + Editing curve %1 Upravit křivku k%1 - + Not enough free points in EEPROM to store the curve. V nastavení modelu již nejsou volné body k uložení této křivky. @@ -1365,52 +1365,52 @@ Může být jiná než verze firmwaru - + Error Chyba - + Unable to find sound file %1! Nemohu nalézt zvukový soubor %1! - + &Delete &Odstranit - + Delete - + &Copy &Kopírovat - + Ctrl+C - + &Cut V&yjmout - + Ctrl+X - + &Paste &Vložit - + Ctrl+V @@ -1418,22 +1418,22 @@ Může být jiná než verze firmwaru CyclicPage - + 90 - + 120 - + 120x - + 140 @@ -1441,14 +1441,14 @@ Může být jiná než verze firmwaru ElevonsPage - + <br>First Elevon Channel: - <br>První kanál elevonů: + <br>První kanál elevonů: - + Second Elevon Channel: - <br>Druhý kanál elevonů: + <br>Druhý kanál elevonů: @@ -1618,22 +1618,22 @@ Pokud není použito, vstup je AKTIVNÍ stále. FblPage - + Throttle Channel: Kanál plynu: - + Yaw Channel: Kanál bočení: - + Pitch Channel: Kanál klopení: - + Roll Channel: Kanál klonění: @@ -1742,27 +1742,27 @@ Může být jiná než verze firmwaru FlapsPage - + No Ne - + Yes, controlled by a single channel Ano, ovládané jedním kanálem - + Yes, controlled by two channels Ano, ovládané dvěma kanály - + <br>First Flap Channel: <br>První kanál klapek: - + Second Flap Channel: <br>Druhý kanál klapek: @@ -1870,17 +1870,17 @@ Může být jiná než verze firmwaru FlightModesPanel - + Flight Mode %1 Letový režim %1 - + (%1) - + (default) (výchozí) @@ -1888,17 +1888,17 @@ Může být jiná než verze firmwaru FlybarSelectionPage - + Has Flybar Má stabilizátor(Flybar) - + Flybarless Bez stabilizátoru (Flybarless) - + Flybar: Stabilizátor: @@ -2082,17 +2082,17 @@ Mode 4: - - - - - - - - - - - + + + + + + + + + + + Beeper volume 0 - Quiet. No beeps at all. @@ -2135,15 +2135,16 @@ p, li { white-space: pre-wrap; } Mód zvuku - - - - + + + + Off Vypnuto + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2702,6 +2703,7 @@ který kanál patří ke kterému výstupu. + ms @@ -2711,164 +2713,169 @@ který kanál patří ke kterému výstupu. Opakování varia na nule - + + Play Delay (switch mid position) + + + + Trainer Trenér - + Mode Mód - + Input Vstup - + Weight Váha - + Pot. 4 - + Pot. 3 - + Pot. 2 - + Pot. 1 - + Stick 3 Páka 3 - + Stick 1 Páka 1 - + Stick 2 Páka 2 - + Stick 4 Páka 4 - + S3 Type Typ S3 - + OFF VYP - + S-Port Mirror - + Debug - + Serial Port Seriový port - + PPM 1 - - - - + + + + chn1 Kanál 1 - + Rud Směrovka - - - - + + + + chn2 Kanál 2 - - - - + + + + chn3 Kanál 3 - - - - + + + + chn4 Kanál 4 - + Ele Výškovka - + Thr Plyn - + Ail Křidélka - + PPM 2 - + PPM 3 - + PPM 4 - + Calibration Kalibrace @@ -2877,20 +2884,20 @@ který kanál patří ke kterému výstupu. PÁKA 3 - - + + Negative span Negativní - - + + Mid value Střed - - + + Positive span Pozitivní @@ -2907,74 +2914,74 @@ který kanál patří ke kterému výstupu. PÁKA 4 - - - + + + None Žádný - - - + + + Pot (normal) Potenciometr (klasický) - - - + + + Multipos Switch Vícepolohový přepínač - + S1 Type Typ S1 - + S2 Type Typ S2 - - - - + + + + += (Sum) += (Sečíst) - - - - + + + + := (Replace) := (Nahradit) - + Battery Baterie - + v V - + PPM Multiplier PPM Násobič - + Current Proud - + If you enable FAI, you loose the vario, the play functions, the telemetry screen. This function cannot be disabled by the radio. Are you sure ? @@ -2984,28 +2991,28 @@ Tuto funkci nelze vypnout v menu rádia. Opravdu to takto chcete ? - - + + Warning Pozor - + Wrong data in profile, radio calibration was not retrieved Špatná data v profilu, není možné získat parametry kalibrace - + Wrong data in profile, hw related parameters were not retrieved Špatná data v profilu, není možné získat HW parametry - + Do you want to store calibration in %1 profile<br>overwriting existing calibration? Chcete uložit kalibraci do profilu %1<br>Přepsat existující kalibraci? - + Calibration and HW parameters saved. Kalibrace a HW parametry byly uloženy. @@ -3013,17 +3020,17 @@ Opravdu to takto chcete ? GyroPage - + No Ne - + Yes, controled by a switch Ano, ovládané spínačem - + Yes, controlled by a pot Ano, ovládané potenciomerem @@ -3094,22 +3101,22 @@ Opravdu to takto chcete ? HeliPage - + Throttle Channel: Kanál plynu: - + Yaw Channel: Kanál bočení: - + Pitch Channel: Kanál klopení: - + Roll Channel: Kanál klonění: @@ -3303,42 +3310,42 @@ Opravdu to takto chcete ? - + &Delete Vy&mazat - + Delete - + &Copy &Kopírovat - + Ctrl+C - + &Cut V&yjmout - + Ctrl+X - + &Paste &Vložit - + Ctrl+V @@ -3349,7 +3356,7 @@ Opravdu to takto chcete ? - + File loaded Soubor byl načten @@ -3401,21 +3408,21 @@ Opravdu to takto chcete ? - - - - - - - + + + + + + + Error Chyba - - - + + + Error opening file %1: %2. Chyba při otevírání souboru %1: @@ -3494,6 +3501,7 @@ Chcete ho nyní stáhnout ? Poznámky k vydání + Do you want to download release %1 now ? Chcete nyní stáhnout vydání %1 ? @@ -3537,37 +3545,37 @@ Chcete ji stáhnout nyní ? %2. - - - + + + Backup is impossible Není možné zálohovat - - - + + + The backup dir set in preferences does not exist Složka pro zálohování zvolená v předvolbách neexistuje - - + + Warning Varování - + Conversion failed Porovnání selhalo - + Restore failed Zápis selhal - + Backup failed Zálohování selhalo @@ -3591,9 +3599,8 @@ Verze %2 je dostupná. Chcete ho stáhnout nyní? - Do you want to download release %1 %2 now ? - Chcete nyní stáhnout vydání %1 %2 ? + Chcete nyní stáhnout vydání %1 %2 ? @@ -3636,7 +3643,7 @@ Chcete ji stáhnout nyní ? Zvolená velikost ikon bude použita při příštím spuštění Companion. - + The file %1 has not been recognized as a valid Models and Settings file Write anyway ? @@ -3645,17 +3652,17 @@ neobsahuje platná data modelů a nastavení Chcete ho přesto zapsat ? - + Cannot check Models and Settings compatibility! Continue anyway? Nelze ověřit kompatibilitu dat modelů a nastavení! Chcete přesto pokračovat? - + Cannot convert Models and Settings for use with this firmware, original data will be used Nemohu konvertovat modely a nastavení pro použití s tímto firmwarem, budou použita původní data - + Firmware write failed Zápis firmware selhal @@ -3686,35 +3693,35 @@ Chcete ho přesto zapsat ? Načíst modely a nastavení z rádia - + Write Radio Backup from %1 to the radio? Zapsat zálohu z %1 do rádia? - - - - + + + + Backup Models and Settings From Radio Zálohovat modely a nastavení z rádia - + The radio firmware belongs to another product family, check file and preferences! Firmware rádia je z jiné rodiny produktů , zkontrolujte nastavení předvoleb! - + The radio firmware is outdated, please upgrade! Firmware rádia je zastaralý, aktualizujte ho prosím! - + Write Backup To Radio Zapsat zálohu do rádia - + Write Firmware To Radio Zapsat firmware do rádia @@ -3724,37 +3731,37 @@ Chcete ho přesto zapsat ? Načíst firmware z rádia - + Restore Models and Settings To Radio Obnovit modely a nastavení rádia - + Could not restore Models and Settings to Radio. The models and settings data file can be found at: %1 Nelze obnovit modely a nastavení rádia. Data modelů a nastavení naleznete v %1 - + Could not write firmware to radio. The models and settings data file can be found at: %1 Nelze zapsat firmware do rádia. Data modelů a nastavení naleznete v %1 - + Cannot backup existing Models and Settings from Radio. Firmware write process aborted Nelze zálohovat stávající modely a nastavení z rádia. Zápis firmware byl přerušen - + Save Radio Backup to File Uložit zálohu rádia do souboru - + Read Radio Backup Načíst zálohu rádia - + Read Radio Firmware to File Načíst firmware rádia do souboru @@ -4322,13 +4329,13 @@ Chcete ho přesto zapsat ? Nové rádio - - + + Invalid Models and Settings File %1 Neplatný soubor modelů a nastavení %1 - + Invalid binary Models and Settings File %1 Neplatný binární soubor modelů a nastavení %1 @@ -4411,7 +4418,7 @@ Chcete ho přesto zapsat ? Nemohu nalézt soubor %1! - + Error reading file %1: %2. Chyba při otevírání souboru %1: @@ -4432,155 +4439,155 @@ Chcete ho přesto zapsat ? - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + Error Chyba - + Unable to find file %1! Nemohu nalézt soubor %1! - - - - + + + + Error opening file %1: %2. Chyba při otevírání souboru %1: %2. - - + + Invalid EEPROM File %1 Neplatný soubor EEPROM %1 - - + + Error reading file %1: %2. Chyba při otevírání souboru %1: %2. - + Invalid binary EEPROM File %1 Neplatný binární soubor EEPROM %1 - - - - + + + + Save As Uložit jako - - - - + + + + Cannot write file %1: %2. Nelze zapsat soubor %1: %2. - - + + Error writing file %1: %2. Chyba při zápisuí souboru %1: %2. - - + + Backup EEPROM From Radio Zálohovat modely a nastavení z rádia - + Write EEPROM To Radio Zapsat modely a nastavení do rádia - + Open backup Models and Settings file Otevřít zálohu modelů a nastavení rádia - + Companion - + %1 has been modified. Do you want to save your changes? %1 byl změněn. Chcete ho uložit? - + Backup is impossible Není možné zálohovat - + The backup dir set in preferences does not exist Složka pro zálohování zvolená v předvolbách neexistuje - + Cannot write temporary file! Nelze zapsat dočasný soubor! - + Cannot check eeprom compatibility! Continue anyway? Nelze ověřit kompatibilitu EEprom! Mám přesto pokračovat? - - + + Warning Varování - + Firmware in radio is of a different family of eeprom written, check file and preferences! Firmware rádia je z jiné rodiny než EEprom, zkontrolujte nastavení předvoleb! - + Firmware in flash is outdated, please upgrade! Firmware rádia je zastaralý, aktualizujte ho prosím! - + Invalid binary backup File %1 Neplatný binární soubor zálohy %1 @@ -4821,25 +4828,25 @@ p, li { white-space: pre-wrap; } MixesPanel - + Move Up Posunout nahoru - + Ctrl+Up Ctrl+Nahoru - + Move Down Posunout dolů - + Ctrl+Down Ctrl+Dolů @@ -4863,92 +4870,92 @@ p, li { white-space: pre-wrap; } Žádný trim - + NoTrim Žádný trim - + No DR/Expo Bez DR/Expo - + Offset(%1) Ofset(%1) - + Delay(u%1:d%2) Zpoždění(u%1:d%2) - + Slow(u%1:d%2) Zpomalení(u%1:d%2) - + Warn(%1) Varování(%1) - + Not enough available mixers! Není k dispozici dostatek mixů! - + Delete Selected Mixes? Odstranit vybrané mixy? - + &Add &Přidat - + Ctrl+A - + &Edit &Upravit - + Enter - + &Toggle highlight Přepnout &zvýraznění - + Ctrl+T - + &Delete &Odstranit - + Delete - + &Copy &Kopírovat - + Ctrl+C @@ -4957,42 +4964,42 @@ p, li { white-space: pre-wrap; } &Vyjmout - + Ctrl+X - + C&ut &Vyjmout - + &Paste &Vložit - + Ctrl+V - + Du&plicate &Duplikovat - + Ctrl+U - + Clear Mixes? Vymazat mixy? - + Really clear all the mixes? Opravdu vymazat všechny mixy? @@ -5060,12 +5067,12 @@ p, li { white-space: pre-wrap; } Telemetrie - + Clear Curves? Vymazat křivky? - + Really clear all the curves? Opravdu vymazat všechny křivky? @@ -5073,27 +5080,27 @@ p, li { white-space: pre-wrap; } ModelSelectionPage - + Plane Letadlo - + Multirotor - + Helicopter Helikoptéra - + Model Name: Název modelu: - + Model Type: Typ modelu: @@ -5346,28 +5353,28 @@ p, li { white-space: pre-wrap; } ModulePanel - + Trainer Port Port Trenér - + Internal Radio System Interní vysílací modul - + External Radio Module Externí vysílací modul - - + + Radio System Vysílací modul - + Extra Radio System Extra modul @@ -5375,22 +5382,22 @@ p, li { white-space: pre-wrap; } MultirotorPage - + Throttle Channel: Kanál plynu: - + Yaw Channel: Kanál bočení: - + Pitch Channel: Kanál klopení: - + Roll Channel: Kanál klonění: @@ -5398,17 +5405,17 @@ p, li { white-space: pre-wrap; } OptionsPage - + Throttle Cut Zámek plynu (spínač THR) - + Throttle Timer Stopky na plynu - + Flight Timer Letové stopky @@ -5447,9 +5454,9 @@ p, li { white-space: pre-wrap; } - - - + + + Name Název @@ -5486,7 +5493,7 @@ p, li { white-space: pre-wrap; } - + Enabled Povoleno @@ -5538,7 +5545,7 @@ p, li { white-space: pre-wrap; } - + Switch Spínač @@ -5614,9 +5621,9 @@ p, li { white-space: pre-wrap; } Mixy - - - + + + CH @@ -5625,21 +5632,21 @@ p, li { white-space: pre-wrap; } Žádný trim - - - - - + + + + + Offset Ofset - + Delay(u%1:d%2) Zpoždění(u%1:d%2) - + Slow(u%1:d%2) Zpomalení(u%1:d%2) @@ -5648,120 +5655,120 @@ p, li { white-space: pre-wrap; } Varování - + Limits Limity - - - - + + + + Min - - - - + + + + Max - - - + + + Invert Invertovat - - - + + + INV - - - + + + NOR --- - + Curves Křivky - - - + + + Curve Křivka - + pt %1 bod %1 - + Logical Switches Logické spínače - + Global Variables Globální proměnné - + GV GP - + Special Functions Speciální funkce - + Function Funkce - + Parameter Parametr - + Repeat Opakování - - + + Telemetry Settings Nastavení telemetrie - - + + Alarm 1 - - + + Alarm 2 - - + + Analog @@ -5772,7 +5779,7 @@ p, li { white-space: pre-wrap; } - + NoTrim Žádný trim @@ -5787,108 +5794,108 @@ p, li { white-space: pre-wrap; } Spínač(%1) - + No DR/Expo Bez DR/Expo - + Offset(%1) Ofset(%1) - + Warn(%1) Varování(%1) - + L - + SF%1 - + Range Rozsah - + Alarms Alarmy - + Low Alarm Nízký alarm - + Critical Alarm Kriticky alarm - + RSSI - + Unit Jednotky - + Scale Měřítko + - + - Type Typ + - + - Condition Podmínka + - + - Value Hodnota - - - + + + A%1 - + RSSI Alarm - + Frsky serial protocol Sériový protokol Frsky - + Units system Systém jednotek @@ -5897,45 +5904,45 @@ p, li { white-space: pre-wrap; } Systém jednotek - - + + Blades Počet listů vrtule - - + + Custom Telemetry View Vlastní zobrazení telemetrie - + Telemetry Bars Telemetrické ukazatele - + Bar Number Číslo ukazatele - + Source Zdroj - + Print Document Vytisknout dokument - + Select PDF output file Vyberte cílový PDF soubor - + ODF files (*.odt);;PDF Files(*.pdf);;HTML-Files (*.htm *.html);;All Files (*) soubor ODF (*.odt);;soubor PDF (*.pdf);;soubor HTML (*.htm *.html);;Všechny (*) @@ -5969,45 +5976,45 @@ p, li { white-space: pre-wrap; } - + P1 Potenciometr P1 - + P2 Potenciometr P2 - + P3 Potenciometr P3 - + S1 - + S2 - + LS - + RS @@ -6034,14 +6041,14 @@ p, li { white-space: pre-wrap; } - + REa Otočný enkodér REa - + REb Otočný enkodér REb @@ -6269,10 +6276,10 @@ p, li { white-space: pre-wrap; } - - + + THR - + Plyn @@ -6313,238 +6320,89 @@ p, li { white-space: pre-wrap; } !Křivka(%1) - - + + Support for frsky telemetry mod Podpora frsky telemetrie tj. zobrazení telemetrických dat na displeji rádia (je potřeba upravit HW, bez této úpravy nebudou fungovat dva přepínače! a pochopitelně nebudou zobrazena žádná telem. data.) - - + + Support for jeti telemetry mod Podpora telemetrie JETI - - + + Support for receiving ardupilot data telemetrie - podpora pro příjem ardupilot dat - - + + Support for receiving NMEA data telemetrie - podpora pro příjem NMEA dat - + Support for telemetry easy board Podpora pro desku TelemetrEZ - - + + Support for MAVLINK devices Podpora pro zařízení s MAVLINK - + Rotary Encoder use in menus navigation Použít Rotary Encoder pro navigaci v menu - + Possibility to enable FAI MODE at field Možnost povolit FAI MODE v menu rádia. FAI je soutěžní mód (www.fai.org), zablokuje vario, zobrazení telemetrie a funkce hlasového hlášení. - + FAI MODE always enabled FAI MODE vždy aktivní (nelze vypnout v menu rádia) FAI je soutěžní mód (www.fai.org), zablokuje vario, zobrazení telemetrie a funkce hlasového hlášení. - - - - - - - Enable heli menu and cyclic mix support - Funkce pro heli, nastavení typu mechaniky - - - - Enable TEMPLATES menu - Přidá menu s jednoduchými -šablonami modelu + Enable heli menu and cyclic mix support + Funkce pro heli, nastavení typu mechaniky - No splash screen - Bez úvodního loga -Firmware nebude obsahovat žádné logo, ani podporu pro něj. -Toto se hodí pokud je potřeba ušetřit místo v paměti FLASH pro jiné funkce + + + + Enable TEMPLATES menu + Přidá menu s jednoduchými +šablonami modelu - - - - No flight modes - Firmware nebude obsahovat podporu Letových Režimů - - - - OpenTX for 9XR-PRO - OpenTX pro 9XR-PRO - - - In model setup menus automatically set source by moving some of them - V menu nastavení modelu automaticky nastavíte Zdroj jeho pohybem - - - - - Support for Lua model scripts - Podpora pro Lua skripty. --miniaplikace spustitelné z SD karty - - - - OpenTX for FrSky Taranis Plus - OpenTX pro FrSky Taranis Plus - - - - - - - - - - - - Use alternative SQT5 font - Použít alternativní znakovou sadu písma (jiný font) - - - - EEprom write progress bar - Progresbar zobrazující zápis do EEPROM -(tj. ukládání nastavení) - - - - - No Winged Shadow How High support - Bez podpory - Winged Shadow How High - - - - - No vario support - Bez podpory varia - - - - - No GPS support - Bez podpory GPS - - - - - No gauges in the custom telemetry screen - Bez grafických ukazatelů hodnoty na obrazovkách telemetrie - - - - Allow compensating for offset errors in FrSky FAS current sensors - Povolit možnost kompenzace chyby ofsetu u Frsky FAS proudového senzoru, pokud je to potřeba - - - - - Add support for reversing stick inputs (e.g. needed for FrSky gimbals) - Přidá podporu pro revers os kniplů. -To je nutné zejména pro osazení FrSky kniplů do 9X. - - - - OpenTX for M128 / 9X board - OpenTX pro M128 / 9X - - - - OpenTX for 9XR - OpenTX pro 9XR - - - - OpenTX for 9XR with M128 chip - OpenTX pro 9XR s M128 čipem - - - - OpenTX for Gruvin9x board / 9X - OpenTX pro Gruvin9x desku / 9X - - - - OpenTX for Sky9x board / 9X - OpenTX pro Sky9x desku / 9X - - - - Haptic module installed - Podpora pro vibrační modul - - - OpenTX for FrSky Taranis Rev4a - OpenTX pro FrSky Taranis Rev4a - - - - - Use FrSky Taranis sticks in a 9X/9XR - Použití pák z Taranis (hardware) v rádiu 9X/9XR - - - - OpenTX for FrSky Taranis - OpenTX pro FrSky Taranis - - - - - Disable HELI menu and cyclic mix support - Odstranit funkce pro heli a nastavení typu mechaniky - - - Disable TEMPLATES menu - Odstranit menu s jednoduchými -šablonami modelu - - - - - Disable Global variables - Odstranit Globální proměnné + No splash screen + Bez úvodního loga +Firmware nebude obsahovat žádné logo, ani podporu pro něj. +Toto se hodí pokud je potřeba ušetřit místo v paměti FLASH pro jiné funkce @@ -6554,14 +6412,163 @@ To je nutné zejména pro osazení FrSky kniplů do 9X. - Disable curves menus - Bez uživatelsky definovatelných křivek + No flight modes + Firmware nebude obsahovat podporu Letových Režimů + + + + OpenTX for 9XR-PRO + OpenTX pro 9XR-PRO + + + In model setup menus automatically set source by moving some of them + V menu nastavení modelu automaticky nastavíte Zdroj jeho pohybem + + + + + Support for Lua model scripts + Podpora pro Lua skripty. +-miniaplikace spustitelné z SD karty + + + + OpenTX for FrSky Taranis Plus + OpenTX pro FrSky Taranis Plus + + + + + + + + + + + + Use alternative SQT5 font + Použít alternativní znakovou sadu písma (jiný font) + + + + EEprom write progress bar + Progresbar zobrazující zápis do EEPROM +(tj. ukládání nastavení) + + + + + No Winged Shadow How High support + Bez podpory - Winged Shadow How High + + + + + No vario support + Bez podpory varia + + + + + No GPS support + Bez podpory GPS + + + + + No gauges in the custom telemetry screen + Bez grafických ukazatelů hodnoty na obrazovkách telemetrie + + + + Allow compensating for offset errors in FrSky FAS current sensors + Povolit možnost kompenzace chyby ofsetu u Frsky FAS proudového senzoru, pokud je to potřeba + + + + + Add support for reversing stick inputs (e.g. needed for FrSky gimbals) + Přidá podporu pro revers os kniplů. +To je nutné zejména pro osazení FrSky kniplů do 9X. + + + + OpenTX for M128 / 9X board + OpenTX pro M128 / 9X + + + + OpenTX for 9XR + OpenTX pro 9XR + + + + OpenTX for 9XR with M128 chip + OpenTX pro 9XR s M128 čipem + + + + OpenTX for Gruvin9x board / 9X + OpenTX pro Gruvin9x desku / 9X + + + + OpenTX for Sky9x board / 9X + OpenTX pro Sky9x desku / 9X + + + + Haptic module installed + Podpora pro vibrační modul + + + OpenTX for FrSky Taranis Rev4a + OpenTX pro FrSky Taranis Rev4a + + + + + Use FrSky Taranis sticks in a 9X/9XR + Použití pák z Taranis (hardware) v rádiu 9X/9XR + + + + OpenTX for FrSky Taranis + OpenTX pro FrSky Taranis + + + + + Disable HELI menu and cyclic mix support + Odstranit funkce pro heli a nastavení typu mechaniky + + + Disable TEMPLATES menu + Odstranit menu s jednoduchými +šablonami modelu + + + + + Disable Global variables + Odstranit Globální proměnné + + + + Disable curves menus + Bez uživatelsky definovatelných křivek + + + + + + Support for radio modified with regular speaker Vylepšený zvukový výstup, funkční i s origo pípákem, @@ -6569,49 +6576,37 @@ ale doporučuje se provést instalaci reproduktoru - - - - - + + + + + Used if you have modified your radio with voice mode Hlasový výstup pro telemetrii, nutno zastavět hlasový modul - - - - + + + + Used if you have modified your radio with haptic mode Výstrahy pomocí vibračního motoru (je třeba osadit) - - - - - - - - - + + + + + + + + + Channel values displayed in us Hodnoty kanálů budou zobrazeny v us (mikrosekundy) místo procent - - - - - - - - - In model setup menus automatically set source by moving the control - Výběr spínače v mixu atd. -se provádí jeho sepnutím - @@ -6620,40 +6615,52 @@ se provádí jeho sepnutím + In model setup menus automatically set source by moving the control + Výběr spínače v mixu atd. +se provádí jeho sepnutím + + + + + + + + + In model setup menus automatically set switch by moving the control Výběr spínače v mixu atd. se provádí jeho sepnutím - - - - - - - + + + + + + + Battery graph Grafické znázornění stavu baterie - - - - + + + + Enable the throttle trace in Statistics Přidat Stopu Plynu (Throttle-trace) v panelu STATISTIKA - + Support of FrSky PXX protocol Podpora pro Frsky PXX protokol - - - - - + + + + + Support for DSM2 modules Podpora DSM2 modulů @@ -6665,18 +6672,18 @@ se provádí jeho sepnutím velikost eeprom je 4096B, ale pouze prvních 2048B je použito - + OpenTX for 9X board OpenTX pro 9X desku - - - - - - - + + + + + + + PPM center adjustment in limits Možnost nastavovat střed serva šířkou pulzu @@ -6685,13 +6692,13 @@ velikost eeprom je 4096B, ale pouze prvních 2048B je použito Hodnoty PPM budou zobrazeny v us (mikrosekundy) - - - - - - - + + + + + + + Symetrical Limits Symetrické limity Přidá možnost volby mezi @@ -6702,20 +6709,20 @@ Přidá možnost volby mezi nastavené limity tedy nemusí být rovny hodnotě -100% a 100%, ale budou pouze maximem výchylky) - - - - - - + + + + + + Pots use in menus navigation Moznost zadávat hodnoty a pohybovat se v menu pomocí potenciometrů - - + + SmartieParts 2.2 Backlight support Podpora pro modul SmartieParts 2.2 (programátor/podsvícení) @@ -6727,11 +6734,11 @@ Není určeno pro starší verze Smartie Parts se provádí jeho sepnutím - - - - - + + + + + Enable resetting values by pressing up and down at the same time Rychlé nastavení hodnoty současným stiskem dvou tlačítek. (+) a (-) invertuje hodnotu @@ -6740,24 +6747,24 @@ se provádí jeho sepnutím (UP) a (DN) vastaví výchozí hodnotu - - - - - - - + + + + + + + No graphical check boxes and sliders Nahrazeni posuvníku a zatržítek (checkboxu) textem - - - - - - - + + + + + + + Don't use bold font for highlighting active items Vypnout zvýraznění aktivních mixů/spínačů tučným písmem. Pokud není tato volby vybrána, @@ -6766,38 +6773,38 @@ zobrazovány tučným pismem. Neaktivní mixy/spínače budou zobrazeny normálním písmem - - - - + + + + EEprom write Progress bar Progresbar zobrazující zápis do EEPROM (tj. ukládání nastavení) - - - - - + + + + + Imperial units Imerialní jednotky pro telemetrii (stopy, palce, míle atd.) - - + + Bluetooth interface - - - - - - - + + + + + + + Global variables Aktivuje Globální Proměnné Jsou to proměnné, které lze použít pro konfiguraci místo některých pevných číselných hodnot. @@ -6806,18 +6813,18 @@ Jejich hodnoty naleznete u originální 9x desky v seznamu křivek. U ostatních Nastavení hodnoty se provádí přímo v seznamu proměnných, nebo pomocí Funkce - + Support for SD memory card Podpora paměťové karty SD - + Support for DSM2 modules using ppm instead of true serial Podpora DSM2 modulů s použitím PPM místo sériového protokolu - - + + Enable HELI menu and cyclic mix support Funkce pro heli, nastavení typu mechaniky @@ -6942,7 +6949,7 @@ Nastavení hodnoty se provádí přímo v seznamu proměnných, nebo pomocí Fun - + S3 @@ -6956,11 +6963,6 @@ Nastavení hodnoty se provádí přímo v seznamu proměnných, nebo pomocí Fun RSSI Rx - - - Rx Batt - - A3 @@ -7377,17 +7379,17 @@ Nastavení hodnoty se provádí přímo v seznamu proměnných, nebo pomocí Fun THs - PL> + Pln> TH% - PL% + Pln% THt - PL* + Pln* @@ -7595,7 +7597,7 @@ Nastavení hodnoty se provádí přímo v seznamu proměnných, nebo pomocí Fun <font color=red><b>parametr není konzistentní</b></font> - + Rotary Encoder Rotační enkodér @@ -7775,7 +7777,7 @@ Nastavení hodnoty se provádí přímo v seznamu proměnných, nebo pomocí Fun - + CH%1 @@ -7802,7 +7804,7 @@ Nastavení hodnoty se provádí přímo v seznamu proměnných, nebo pomocí Fun - + Timer1 Stopky1 @@ -7810,7 +7812,7 @@ Nastavení hodnoty se provádí přímo v seznamu proměnných, nebo pomocí Fun - + Timer2 Stopky2 @@ -7847,14 +7849,14 @@ Nastavení hodnoty se provádí přímo v seznamu proměnných, nebo pomocí Fun - + All Vše - + Telemetry Telemetrie @@ -7887,22 +7889,22 @@ Nastavení hodnoty se provádí přímo v seznamu proměnných, nebo pomocí Fun - + Value Hodnota - + Source Zdroj - + GVAR Proměnná - + Increment Upravit @@ -7957,27 +7959,32 @@ Nastavení hodnoty se provádí přímo v seznamu proměnných, nebo pomocí Fun Současné použití expa a křivek již není podporováno - + OpenTX only accepts %1 points in all curves V OpenTX je možné zadat pouze %1 bodů dohromady ve všech křivkách - - - - + + OpenTx only accepts %1 points in all curves + + + + + + + OpenTX on this board doesn't accept this function OpenTX nepodporuje tuto funkci na této zákl. desce - - - + + + OpenTX doesn't accept this protocol OpenTX nepodporuje tento protokol - + OpenTX doesn't allow this number of channels V OpenTX nelze použít tento počet kanálů @@ -8045,33 +8052,33 @@ Tým OpenTX. No Radio Found - + Rádio nebylo nalezeno <html><head/><body><p>No Radio was found!</p><p>Make sure that you hold the lower trim buttons towards the center while you turn it on.</p><p>Then connect the USB wire.</p></body></html> - + <html><head/><body><p>Rádio nebylo nalezeno!</p><p>Ujistěte se, že během zapínání rádia, držíte spodní trimy proti sobě.</p><p>Až poté připojte USB kabel.</p></body></html> OK - + RudderPage - + No Ne - + Yes Ano - + <br>Rudder Channel: <br>Kanál směrovky: @@ -8141,7 +8148,7 @@ Tým OpenTX. Throttle Source - Zdroj PL stopek + Stopa plynu Timer Source @@ -8218,7 +8225,7 @@ Funkce trimu bude opačná, stejně tak i varování polohy páky plynu. SimpleTailPage - + Elevator Channel: Kanál výškovky: @@ -8386,7 +8393,7 @@ Funkce trimu bude opačná, stejně tak i varování polohy páky plynu. StandardPage - + Channel %1 Kanál %1 @@ -8394,12 +8401,12 @@ Funkce trimu bude opačná, stejně tak i varování polohy páky plynu. TailPage - + Rudder Channel: Kanál směrovky: - + Elevator Channel: Kanál výškovky: @@ -8407,22 +8414,22 @@ Funkce trimu bude opačná, stejně tak i varování polohy páky plynu. TailSelectionPage - + Elevator and Rudder Výškovka a směrovka - + Only Elevator Jen výškovka - + V-tail Ocas - V - + Tail Type: Typ ocasu: @@ -8440,58 +8447,55 @@ Funkce trimu bude opačná, stejně tak i varování polohy páky plynu. Telem. vstup A2 - + RSSI - - + Alarm 1 FrSky S.PORT - + FrSky D - + - Critical Alarm - Kritický alarm + Kritický alarm - - + + ---- - - + + Yellow Žlutá - - + + Orange Oranžová - - + + Red Červená - - + Alarm 2 @@ -8565,92 +8569,86 @@ Funkce trimu bude opačná, stejně tak i varování polohy páky plynu. Počet listů vrtule - - RxBatt - - - - + Sink Max Klesání Max - + Off Vypnuto - + Climb Max Stoupání Max - + Sink Min Klesání Min - + Climb Min Stoupání Min - + Vario source Vario senzor - + Vario limits Rozsah varia - + Use GPS as altitude source Použít GPS jako senzor výšky - + Display altitude in toolbar Zobrazit výšku v nástrojové liště - + Altimetry - + mAh - + A - + Various Různé - + mAh count Počet mAh - Low Alarm - Nízký alarm + Nízký alarm - + FAS Offset Ofset FAS - + Persistent mAh Ukládat hodnoty @@ -8820,94 +8818,89 @@ Funkce trimu bude opačná, stejně tak i varování polohy páky plynu. TelemetryPanel - + Telemetry screen %1 Stránka telemetrie %1 - + Low Alarm Nízký alarm - + Critical Alarm Kriticky alarm - + Winged Shadow How High - + Winged Shadow How High (not supported) Winged Shadow How High (nepodporován) - - RxBatt - - - - - - + + + A1 Telem. vstup A1 - + Alti - + Alti+ - + VSpeed - - - + + + A2 Telem. vstup A2 - + dTE - - + + A3 Telem. vstup A3 - - + + A4 Telem. vstup A4 - - + + FAS - + Cells - + --- @@ -8915,17 +8908,17 @@ Funkce trimu bude opačná, stejně tak i varování polohy páky plynu. ThrottlePage - + Yes Ano - + No Ne - + <br>Throttle Channel: <br>Kanál plynu: @@ -8951,17 +8944,17 @@ Funkce trimu bude opačná, stejně tak i varování polohy páky plynu. TimerPanel - + Silent Tichý - + Beeps Zvuk - + Voice Hlas @@ -8969,12 +8962,12 @@ Funkce trimu bude opačná, stejně tak i varování polohy páky plynu. VTailPage - + First Tail Channel: První kanál: - + Second Tail Channel: Druhý kanál: @@ -8982,12 +8975,12 @@ Funkce trimu bude opačná, stejně tak i varování polohy páky plynu. WingtypeSelectionPage - + Standard Wing Běžné křídlo - + Flying Wing / Deltawing Samokřídlo / Delta @@ -9071,7 +9064,7 @@ Funkce trimu bude opačná, stejně tak i varování polohy páky plynu. Select the elevons channels - + Zvolte kanál elevonů @@ -9188,22 +9181,22 @@ Funkce trimu bude opačná, stejně tak i varování polohy páky plynu. Ručně zkontrolujte směr každé řídicí plochy a nastavte revers těch co se pohybují v opačném směru. Raději odstraňte vrtuli / vrtule, než se poprvé pokusíte ovládat svůj model.<br>Vezměte prosím na vědomí, že pokud budete pokračovat, dojde k odstranění všech starých nastavení tohoto modelu! - + Enter a name for your model and select model type. Zvolte název a typ modelu. - + Select the receiver channel that is connected to your ESC or throttle servo.<br><br>Throttle - Spektrum: CH1, Futaba: CH3 Zvolte kanál přijímače, který je připojen k ESC, nebo servu plynu.<br><br>Spektrum: CH1, Futaba: CH3 - + Most aircraft have a main wing and a tail with control surfaces. Flying wings and delta winged aircraft only have a single wing. The main control surface on a standard wing controls the roll of the aircraft. This surface is called an aileron.<br>The control surface of a delta wing controls both roll and pitch. This surface is called an elevon. Většina letadel má hlavní křídlo a ocas s ovládacími plochami. Samokřídla a delty mají jen jedno křídlo. Hlavní řídicí plochy na standardním křídle ovládájí klonění letadla. Tyto plochy se nazývají křidélka. <br> Ovládací plochy delta křídla řídí podélný i příčný náklon. Tyto plochy se nazývají elevony. - + Models use one or two channels to control the ailerons.<br>A so called Y-cable can be used to connect a single receiver channel to two separate aileron servos. If your servos are connected by a Y-cable you should select the single-servo option.<br><br>Aileron - Spektrum: CH2, Futaba: CH1 Modely používají jeden, nebo dva kanály pro ovládání křidélek.<br>Tzv. Y-kabel lze použít pro připojení dvou samostatných serv křidélek do jednoho kanálu přijímače. Pokud jsou vaše serva spojeny Y-kabelem, měli byste zvolit možnost "jeden kanál"<br><br>Spektrum: CH2, Futaba: CH1 @@ -9212,102 +9205,102 @@ Funkce trimu bude opačná, stejně tak i varování polohy páky plynu. Modely používají jeden, nebo dva kanály pro ovládání elevonů.<br>Tzv. Y-kabel lze použít pro připojení dvou samostatných serv elevonů do jednoho kanálu přijímače. Pokud jsou vaše serva spojeny Y-kabelem, měli byste zvolit možnost "jeden kanál". - + This wizard assumes that your flaps are controlled by a switch. If your flaps are controlled by a potentiometer you can change that manually later. Tento průvodce předpokládá, že vaše klapky jsou ovládány spínačem. Pokud jsou vaše klapky řízeny potenciometrem můžete toto změnit později ručně. - + Air brakes are used to reduce the speed of advanced sail planes.<br>They are very uncommon on other types of planes. Vzduchové brzdy se používají ke snížení rychlosti moderních kluzáků.<br>Na jiných typech letadel nejsou příliš obvyklé. - + Models use two channels to control the elevons.<br>Select these two channels - + Modely používají dva kanály pro ovládání elevonů.<br>Vyberte je - + Select the receiver channel that is connected to your rudder.<br><br>Rudder - Spektrum: CH4, Futaba: CH4 Zvolte kanál přijímače, který je připojen k vaší směrovce.<br>Spektrum:. CH4, Futaba: CH4 - + Select the tail type of your plane. Zvolte typ ocasu vašeho modelu. - - + + Select the Rudder and Elevator channels.<br><br>Rudder - Spektrum: CH4, Futaba: CH4<br>Elevator - Spektrum: CH3, Futaba: CH2 Zvolte kanály směrovky a výškovky.<br><br>Směrovka - Spektrum: CH4, Futaba: CH4<br>Výškovka - Spektrum: CH3, Futaba: CH2 - + Select the Elevator channel.<br><br>Elevator - Spektrum: CH3, Futaba: CH2 Zvolte kanál výškovky.<br><br>Spektrum: CH3, Futaba: CH2 - - - - - - - + + + + + + + TBD. - + Select the control channels for your multirotor.<br><br>Throttle - Spektrum: CH1, Futaba: CH3<br>Yaw - Spektrum: CH4, Futaba: CH4<br>Pitch - Spektrum: CH3, Futaba: CH2<br>Roll - Spektrum: CH2, Futaba: CH1 Zvolte ovládací kanály vaší multikoptéry.<br><br>Plyn - Spektrum: CH1, Futaba: CH3<br>Bočení - Spektrum: CH4, Futaba: CH4<br>Klopení - Spektrum: CH3, Futaba: CH2<br>Klonění - Spektrum: CH2, Futaba: CH1 - + There is no help available for the current page. Pro tuto stránku není dostupná žádná nápověda. - + Model Wizard Help Nápověda průvodce nastavením modelu WizardPrinter - - - Plane - Letadlo - - - - Multicopter - - - Helicopter - Helikoptéra + Plane + Letadlo - + + Multicopter + Multikoptéra + + + + Helicopter + Helikoptéra + + + Model Name: Název modelu: - + Model Type: Typ modelu: - + Options: Volby: - + Channel %1: Kanál %1: @@ -9702,29 +9695,29 @@ Do you want some help ? Chcete poradit ? - + Copy did not finish correctly Kopírování nebylo správně dokončeno - + finished correctly finished correctly dokončeno v pořádku - + Copy finished correctly Kopírování dokončeno v pořádku - + Started Started Zahájeno - + FUSES: Low=%1 High=%2 Ext=%3 POJISTKY: Low=%1 High=%2 Ext=%3 @@ -10043,28 +10036,28 @@ m2560 pro V4 desky - - - - - + + + + + Warning Varování - - - - - - - - - - - - + + + + + + + + + + + + Error Chyba @@ -10074,35 +10067,35 @@ m2560 pro V4 desky Nemohu nalézt soubor %1! - - - + + + Error opening file %1: %2. Chyba při otevírání souboru %1: %2. - - - + + + Invalid binary Models and Settings File %1, Proceed anyway ? Neplatný soubor s binárními daty modelů a nastavení %1, Přesto pokračovat ? - + Error reading file %1: %2. Chyba při otevírání souboru %1: %2. - + Profile image %1 is invalid. Obrázek profilu %1 není platný. - + Images (%1) obrázky (%1) @@ -10137,65 +10130,65 @@ m2560 pro V4 desky %1 nemusí být platný soubor firmwaru - + The firmware file is not valid. Soubor firmwaru není platný. - + There is no start screen image in the firmware file. Soubor firmware neobsahuje žádné logo. - + Open image file to use as radio start screen Otevřít soubor obrázku pro použití jako úvodní logo - + Image could not be loaded from %1 Nelze načíst obrázek z %1 - + The library image could not be loaded Nelze načíst obrázek z knihovny - + Cannot save customized firmware Nelze uložit upravený firmware - + Custom image not found Vlastní obrázek nebyl nalezen - + No firmware selected nebyl vybrán firmware - + Wrong radio calibration data in profile, Settings not patched Profil neobsahuje platná kalibrační data, nastavení nebyla upravena - + Wrong radio setting data in profile, Settings not patched Profil neobsahuje platná data nastavení rádia, nastavení nebyla upravena - - + + Cannot write file %1: %2. Nelze zapsat soubor %1: %2. - + Error writing file %1: %2. Chyba při zápisuí souboru %1: @@ -11064,17 +11057,17 @@ Tlačítkem Zrušit přerušíte kalibraci %2. - + Select your log file Vyberte soubor s logy - + Available fields Dostupná pole - + The selected logfile contains %1 invalid lines out of %2 total lines Zvolený soubor logu obsahuje %1neplatných řádků z celkových %2 diff --git a/companion/src/translations/companion_fr.ts b/companion/src/translations/companion_fr.ts index b5177908e..c83e99e38 100644 --- a/companion/src/translations/companion_fr.ts +++ b/companion/src/translations/companion_fr.ts @@ -4,27 +4,27 @@ AileronsPage - + No Non - + Yes, controlled by a single channel Oui, contrôlés par un seul canal - + Yes, controlled by two channels Oui, contrôlés par 2 canaux - + <br>First Aileron Channel: <br>Premier canal d'ailerons: - + Second Aileron Channel: Deuxième canal d'ailerons: @@ -32,27 +32,27 @@ AirbrakesPage - + No Non - + Yes, controlled by a single channel Oui, contrôlés par un seul canal - + Yes, controlled by two channels Oui, contrôlés par 2 canaux - + <br>First Airbrake Channel: <br>Premier canal de volets: - + Second Airbrake Channel: Deuxième canal de volets: @@ -1156,7 +1156,7 @@ Peut être différente de la langue du firmware ConclusionPage - + OK, I understand. OK, compris! @@ -1298,17 +1298,17 @@ Peut être différente de la langue du firmware Symétrique f(x)=f(-x) - + Are you sure you want to reset curve %1 ? Voulez-vous vraiment réinitialiser la courbe %1 ? - + Editing curve %1 Édition de la courbe %1 - + Not enough free points in EEPROM to store the curve. Pas assez de points disponibles en mémoire pour enregistrer la courbe. @@ -1346,52 +1346,52 @@ Peut être différente de la langue du firmware - + Error Erreur - + Unable to find sound file %1! Impossible de trouver le fichier son %1! - + &Delete &Supprimer - + Delete Supprimer - + &Copy &Copier - + Ctrl+C - + &Cut C&ouper - + Ctrl+X - + &Paste Co&ller - + Ctrl+V @@ -1399,22 +1399,22 @@ Peut être différente de la langue du firmware CyclicPage - + 90 - + 120 - + 120x - + 140 @@ -1422,16 +1422,233 @@ Peut être différente de la langue du firmware ElevonsPage - + <br>First Elevon Channel: <br>Premier canal d'élevons: - + Second Elevon Channel: Deuxième canal d'élevons: + + Er9x::Templates + + + Simple 4-CH + + + + + T-Cut + + + + + Sticky T-Cut + + + + + V-Tail + Empennage en V + + + + Elevon\Delta + + + + + Heli Setup + + + + + Heli Setup with gyro gain control + + + + + Gyro gain control + + + + + Heli Setup (Futaba's channel assignment style) + + + + + Heli Setup with gyro gain control (Futaba's channel assignment style) + + + + + Gyro gain control (Futaba's channel assignment style) + + + + + Servo Test + + + + + MultiCopter + + + + + Use Model Config Wizard + + + + + Apply Template? + + + + + Apply template "%1"? + + + + + + + + + + + RUD + + + + + + + + + + + + + + ELE + + + + + + + THR + + + + + + + + + + + + AIL + + + + + + + + AIL2 + + + + + + + + ELE2 + + + + + + + + + + FLAPS + + + + + + + + + + FLAP%1 + + + + + + + + PITCH + + + + + + + + + + + + GYRO + + + + + + SPOIL + + + + + + SPOIL%1 + + + + + + RUD2 + + + + + + Clear Mixes? + Effacer tous les mixages ? + + + + Really clear existing mixes on CH6? + + + + + Really clear existing mixes on CH5? + + + ExpoDialog @@ -1561,22 +1778,22 @@ Si vide, la ligne est toujours active. FblPage - + Throttle Channel: Canal des gaz: - + Yaw Channel: Canal du lacet: - + Pitch Channel: Canal du tangage: - + Roll Channel: Canal du roulis: @@ -1679,27 +1896,27 @@ Peut être différente de la langue du firmware FlapsPage - + No Non - + Yes, controlled by a single channel Oui, contrôlés par un seul canal - + Yes, controlled by two channels Oui, contrôlés par 2 canaux - + <br>First Flap Channel: <br>Premier canal de volets: - + Second Flap Channel: Deuxième canal de volets: @@ -1807,17 +2024,17 @@ Peut être différente de la langue du firmware FlightModesPanel - + Flight Mode %1 Phase de vol %1 - + (%1) - + (default) (par défaut) @@ -1825,17 +2042,17 @@ Peut être différente de la langue du firmware FlybarSelectionPage - + Has Flybar Avec barre de Bell - + Flybarless Sans barre de Bell - + Flybar: Barre de Bell: @@ -1843,7 +2060,7 @@ Peut être différente de la langue du firmware GeneralEdit - + v @@ -1864,6 +2081,7 @@ Peut être différente de la langue du firmware + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -1907,17 +2125,17 @@ Réinitialisation en agissant sur n'importe lequel des manches / touches de - - - - - - - - - - - + + + + + + + + + + + Beeper volume 0 - Quiet. No beeps at all. @@ -2013,7 +2231,7 @@ Seuil auquel se déclenche l'alarme de batterie. Plage de valeurs: 5v...10v - + Calibration Étalonnage @@ -2099,82 +2317,82 @@ p, li { white-space: pre-wrap; } - + Rud Dir - + Ele Prf - + Thr Gaz - + Ail Ail - + PPM Multiplier Coeff. multiplicateur PPM - - - - + + + + Off Désactivé - + Trainer Ecolage - + PPM 1 - - - - + + + + chn1 Can. 1 - - - - + + + + chn2 Can. 2 - - - - + + + + chn3 Can. 3 - - - - + + + + chn4 Can. 4 - + Mode Mode @@ -2615,67 +2833,72 @@ p, li { white-space: pre-wrap; } Inversion manche (ordre ci-dessus) - + + Play Delay (switch mid position) + Délai de Play (switches au centre) + + + Pot. 4 - + Pot. 3 - + Pot. 2 - + Pot. 1 - + Stick 3 Manche 3 - + Stick 1 Manche 1 - + Stick 2 Manche 2 - + Stick 4 Manche 4 - + S3 Type Type S3 - + OFF - + S-Port Mirror Recopie S. Port - + Debug Débogage - + Serial Port Port série @@ -2787,6 +3010,7 @@ p, li { white-space: pre-wrap; } + ms @@ -2796,135 +3020,135 @@ p, li { white-space: pre-wrap; } Répétition du vario à 0 - + Input Entrée - + Weight Ratio - - - - + + + + += (Sum) += (Additionne) - - - - + + + + := (Replace) := (Remplace) - + PPM 2 - + PPM 3 PPM 3 - + PPM 4 PPM 4 - - + + Negative span Amplitude nég. - - + + Mid value Centre - - + + Positive span Amplitude pos. - + Current Courant - - - + + + None Aucun - - - + + + Pot (normal) Potentiomètre (normal) - - - + + + Multipos Switch Inter multipos. - + S1 Type Type S1 - + S2 Type Type S2 - + Battery Batterie - + If you enable FAI, you loose the vario, the play functions, the telemetry screen. This function cannot be disabled by the radio. Are you sure ? Lorsque le mode FAI est activé, le variomètre ainsi que l'écran et la lecture des valeurs de télémesure sont désactivés.\nCe mode ne peut pas être désactivé sur la radio.\nEtes-vous sûr? - - + + Warning Avertissement - + Wrong data in profile, radio calibration was not retrieved Données du profil erronnées, l'étalonnage n'a pas été lu - + Wrong data in profile, hw related parameters were not retrieved Données du profil erronnées, les paramètres hw n'ont pas été lus - + Do you want to store calibration in %1 profile<br>overwriting existing calibration? Voulez-vous stocker l'étalonnage dans le profil %1<br> et écraser l'étalonnage existant? - + Calibration and HW parameters saved. Etalonnage et paramètres hw enregistrés avec succès. @@ -2932,17 +3156,17 @@ Are you sure ? GyroPage - + No Non - + Yes, controled by a switch Oui, contrôlé par un inter - + Yes, controlled by a pot Oui, contrôlé par un potentiomètre @@ -3013,22 +3237,22 @@ Are you sure ? HeliPage - + Throttle Channel: Canal des gaz: - + Yaw Channel: Canal du lacet: - + Pitch Channel: Canal du tangage: - + Roll Channel: Canal du roulis: @@ -3217,42 +3441,42 @@ Are you sure ? - + &Delete &Supprimer - + Delete Supprimer - + &Copy &Copier - + Ctrl+C - + &Cut C&ouper - + Ctrl+X - + &Paste Co&ller - + Ctrl+V @@ -3260,54 +3484,54 @@ Are you sure ? MainWindow - - + + Edit Edition - - + + File Fichier - + Display previous warning again at startup ? Afficher les alertes précédentes lors du prochain démarrage ? - + New release available Nouvelle version disponible - - - - - - - - - - - + + + + + + + + + + + Error Erreur - - - - + + + + Error opening file %1: %2. Erreur à l'ouverture du fichier %1: %2. - + Compilation server termporary failure, try later Erreur temporaire du serveur de compilation, veuillez réessayer plus tard @@ -3320,40 +3544,41 @@ Are you sure ? Erreur temporaire du serveur de compilation, veuillez réessayer plus tard - + Compilation server too busy, try later Serveur de compilation trop occupé, veuillez réessayer plus tard - + Unknown server failure, try later Erreur inconnue du serveur de compilation, veuillez réessayer plus tard - + Do you want to write the firmware to the radio now ? Voulez vous transférer le firmware à la radio maintenant? - - + + Yes Oui - - + + No Non - - + + Release Notes Notes de version - + + Do you want to download release %1 now ? Voulez-vous télécharger la version %1 maintenant? @@ -3362,39 +3587,39 @@ Are you sure ? Les notes de version contiennent des informations très importantes. Voulez-vous les voir maintenant? - + Firmware updates Mises à jour de firmware - + Current firmware does not provide release notes informations. Le firmware actuel ne contient pas de notes de version. - + Cannot write file %1: %2. Ecriture fichier %1 impossible: %2. - + Backup is impossible Sauvegarde impossible - + The backup dir set in preferences does not exist Le dossier de sauvegarde configuré dans les préférences n'existe pas - + Warning Avertissement @@ -3414,314 +3639,314 @@ Are you sure ? Erreur lors de la sauvegarde - + Load backup from file Charger une sauvegarde à partir du fichier - + Compare models Comparer les modèles - + Show fuses dialog Afficher les réglages des fusibles - + A monochrome black icon theme Thème avec icônes monochromes noires - + New Nouveau - + Open... Ouvrir... - + Copy Model Copier le modèle - + A monochrome white icon theme Thème avec icônes monochromes blanches - + A monochrome blue icon theme Thème avec icônes monochromes bleues - + Small Petites - + Use small toolbar icons Petites icônes de barre d'outils - + Use normal size toolbar icons Icônes de barre d'outils normales - + Normal Normales - + Use big toolbar icons Grosses icônes de barre d'outils - + Big Grandes - + Use huge toolbar icons Immenses icônes de barre d'outils - + Huge Immenses - + Czech Tchèque - + Use Czech in menus Menus en Tchèque - + German Allemand - + Use German in menus Menus en Allemand - + English Anglais - + Use English in menus Menus en Anglais - + French Français - + Use French in menus Menus en Français - + Italian Italien - + Use Italian in menus Menus en Italien - + Polish Polonais - + Use Polish in menus Menus en Polonais - + Swedish Suédois - + Use Swedish in menus Menus en Suédois - + List programmers... Lister les programmateurs... - + Fuses... Fusibles... - + Read Firmware from Radio Lire le firmware de la radio - + Read firmware from Radio Lire le firmware de la radio - + Write Firmware to Radio Transférer le firmware à la radio - + Write firmware to Radio Transférer le firmware à la radio - + Add Radio Profile Ajouter un profil de radio - + Create a new Radio Setting Profile Créér un nouveau profil de radio - + Manuals and other Documents Manuels et documents - + Open the OpenTX document page in a web browser Ouvre la page de documentation d'OpenTX dans un navigateur - + Write Models and Settings To Radio Transférer les réglages et modèles à la radio - + Write Models and Settings to Radio Transférer les réglages et modèles à la radio - + Read Models and Settings from Radio Lire les réglages et modèles depuis la radio - + Configure Communications... Configurer les communications... - + Configure software for communicating with the Radio Configurer le programme gérant les communications avec la radio - + Write Backup to Radio Transférer une sauvegarde à la radio - + Write Backup from file to to Radio Transférer une sauvegarde à la radio - + Backup Radio to File Sauvegarder la radio - + Save a complete backup file of all settings and model data in the Radio Créer une copie de sauvegarde de tous les réglages et modèles de la radio - + Contributors... Contributeurs... - + A tribute to those who have contributed to OpenTX and Companion Remerciements à tout ceux qui ont contribué à OpenTX et Companion - + Recent Files Fichiers récents - + Recent Models+Settings Fichiers de réglages et modèles récents - + Set Icon Theme Choisir le thème d'icônes - + Set Icon Size Choisir la taille des icônes - + Write Ecrire - + Unable to find file %1! Fichier %1 introuvable! - + Error reading file %1: %2. Fichier %1 corrompu: %2. - + A new version of Companion is available (version %1)<br>Would you like to download it? Une nouvelle version de Companion est disponible (version %1)<br>Voulez-vous la télécharger? - + Compilation server requires registration, please check OpenTX web site Le serveur de compilation requiert l'enregistrement, veuillez vous référer au site web d'OpenTX - + OpenTX Home Page: <a href='%1'>%1</a> Page d'accueil d'OpenTX: <a href='%1'>%1</a> @@ -3730,86 +3955,86 @@ Are you sure ? Le projet OpenTX Companion a été créé à partir d'<a href='%2'>eePe</a> - + If you've found this program useful, please support by <a href='%1'>donating</a> Si vous trouvez ce programme utile, merci de le supporter par une <a href='%1'>donation</a> - + Show the list of radio profiles Voir la liste des profils de radio - + Ready Prêt - + Show the application's About box Afficher la fenêtre "A propos" de l'application - - - + + + File loaded Fichier chargé - + A new release of Companion is available, please check the OpenTX website! Une nouvelle version de companion est disponible, veuillez vous référer au site web d'OpenTX! - + Not enough memory for all the selected firmware options Pas assez de mémoire disponible pour toutes les options sélectionnées - - + + Open Models and Settings file Ouvrir un fichier de réglages et modèles - - + + File saved Fichier sauvegardé - - + + Read Models and Settings From Radio Lire les réglages et modèles depuis la radio - + Write Radio Backup from %1 to the radio? Transférer la sauvegarde %1 à la radio? - - + + Backup Models and Settings From Radio Sauvegarder les réglages et modèles depuis la radio - + The radio firmware belongs to another product family, check file and preferences! Ce firmware ne correspond pas à la radio sélectionnée, vérifiez le fichier et les préférences! - + The radio firmware is outdated, please upgrade! Le firmware de la radio est obsolète, veuillez mettre à jour! - + Write Backup To Radio Transférer une sauvegarde à la radio @@ -3819,7 +4044,7 @@ Are you sure ? Transférer le firmware à la radio - + Firmware %1 does not seem to have ever been downloaded. Release %2 is available. Do you want to download it now? @@ -3828,12 +4053,11 @@ La version %2 est disponible. Voulez-vous la télécharger maintenant ? - Do you want to download release %1 %2 now ? - Voulez-vous télécharger la version %1 %2 maintenant? + Voulez-vous télécharger la version %1 %2 maintenant? - + A new version of %1 firmware is available: - current is %2 - newer is %3 @@ -3846,12 +4070,12 @@ Do you want to download it now ? Voulez vous la télécharger maintenant ? - + Ignore this release %1? Ignorer la version %1? - + Read Firmware From Radio Sauvegarder le firmware de la radio @@ -3891,271 +4115,271 @@ Voulez vous la télécharger maintenant ? Sauvegarder le firmware de la radio - + The OpenTX Companion project was originally forked from <a href='%1'>eePe</a> Le projet OpenTX Companion a été créé à partir d'<a href='%1'>eePe</a> - + Copyright OpenTX Team - + OpenTX Companion - FW: %1 - Profile: %2 OpenTX Companion - FW: %1 - Profil: %2 - + Create a new Models and Settings file Créer un nouveau fichier de réglages et modèles - - + + Save Models and Settings file Enregistrer le fichier de réglages et modèles - + Save Enregistrer - + Save As... Enregistrer sous... - + Exit the application Quitter l'application - + Exit Quitter - + Cut Model Couper le modèle - + Cut current model to the clipboard Couper le modèle courant dans le presse-papier - + Copy current model to the clipboard Copier le modèle courant dans le presse-papier - + Paste model from clipboard Coller le modèle depuis le presse-papier - + Paste Model Coller le modèle - + Classical Classique - + The classic companion9x icon theme Thème d'icônes classique de companion - + Yerico - + Yellow round honey sweet icon theme Thème d'icônes rondes jaunes - + Monochrome - + MonoWhite - + MonoBlue - + System language Langue du système - + Use system language in menus Utiliser la langue système dans les menus - + Finnish Finlandais - + Use Finnish in menus Menus en Finlandais - + About... A propos... - + Print... Imprimer... - + Print current model Imprimer le modèle courant - + Simulate... Simuler... - + Simulate current model Simuler le modèle courant - + Alt+S - + Load Backup... Ouvrir la sauvegarde... - + View Log File... Ouvrir un log... - + Open and view log file Ouvrir et visualiser un log - + Settings... Préférences... - + Edit Settings Modifier les réglages - + Download... Télécharger... - + Download firmware and voice files Télécharger firmware et fichiers son - + Check for Updates... Vérifier les mises à jour... - + Check OpenTX and Companion updates Vérifier les mises à jour d'OpenTX et companion - + Companion Changes... Changements de companion... - + Show Companion change log Voir l'historique des changements de companion - + Firmware Changes... Changements du firmware... - + Show firmware change log Voir l'historique des changements du firmware - + Compare Models... Comparer 2 modèles... - + Edit Radio Splash Image... Modifier l'écran d'accueil de la radio... - + Edit the splash image of your Radio Modifier l'écran d'accueil de la radio - + List available programmers Lister les programmateurs supportés - - - + + + Save As Enregistrer Sous - + Executable (*.exe) Exécutable (*.exe) - - + + No updates available at this time. Aucune mise à jour disponible. - + Unable to check for updates. Impossible de rechercher des mises à jour. - + Would you like to launch the installer? Voulez-vous lancer l'installation ? @@ -4170,13 +4394,13 @@ Voulez vous la télécharger maintenant ? Ignorer cette version (r%1)? - - + + Help Aide - + Checking for updates Recherche de mises à jour @@ -4189,29 +4413,29 @@ La version %2 est disponible. Voulez-vous la télécharger maintenant ? - + The selected language will be used the next time you start Companion. La langue sélectionnée sera utilisée lors du prochain lancement de companion. - - - + + + OK - + The new theme will be loaded the next time you start Companion. Le nouveau thème sera utilisé lors du prochain lancement de companion. - + The icon size will be used the next time you start Companion. La nouvelle taille d'icônes sera utilisée lors du prochain lancement de companion. - + The file %1 has not been recognized as a valid Models and Settings file Write anyway ? @@ -4220,7 +4444,7 @@ n'a pas été reconnu comme un fichier de réglages et modèles valide. Ecrire quand même? - + Cannot check Models and Settings compatibility! Continue anyway? Impossible de vérifier la compatibilité des réglages et modèles. Continuer quand même? @@ -4235,54 +4459,54 @@ Ecrire quand même? L'écriture du firmware a échoué - + About Companion A propos de companion - + Set Menu Language Choisir la langue des menus - + Settings Réglages - + Read/Write Transfert - - + + Radio Profile Profil de radio - + Show recent Models+Settings documents Voir les fichiers récents - + %2 - + New Radio Nouvelle radio - - + + Invalid Models and Settings File %1 Fichier de réglages et modèles invalide: %1 - + Invalid binary Models and Settings File %1 Fichier binaire de réglages et modèles invalide: %1 @@ -4291,33 +4515,33 @@ Ecrire quand même? MdiChild - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + Error Erreur - - - - + + + + Cannot write file %1: %2. Ecriture fichier %1 impossible: @@ -4325,20 +4549,20 @@ Ecrire quand même? - + Unable to find file %1! Fichier %1 introuvable! - - - - + + + + Save As Enregister Sous - + Cannot write temporary file! Ecriture de fichier temporaire impossible! @@ -4348,26 +4572,26 @@ Ecrire quand même? Édition du modèle %1 : - - + + Error writing file %1: %2. Erreur d'écriture fichier %1: %2. - - + + Error reading file %1: %2. Fichier %1 corrompu: %2. - - - - + + + + Error opening file %1: %2. Erreur à l'ouverture du fichier %1: @@ -4379,75 +4603,75 @@ Ecrire quand même? octets libres - + Companion - - + + Invalid EEPROM File %1 Fichier EEPROM %1 invalide - + Invalid binary EEPROM File %1 Fichier binaire %1 invalide - + Backup is impossible Impossible de sauvegarder - + The backup dir set in preferences does not exist Le dossier de sauvegarde configuré dans les préférences n'existe pas - - + + Backup EEPROM From Radio Sauvegarder l'EEPROM de la radio - + Write EEPROM To Radio Transférer l'EEPROM à la radio - + Open backup Models and Settings file Ouvrir la sauvegarde de réglages et modèles - + Cannot check eeprom compatibility! Continue anyway? Impossible de vérifier la compatibilité de l'EEPROM! Continuer quand même? - - + + Warning Avertissement - + Firmware in radio is of a different family of eeprom written, check file and preferences! Le firmware de la radio n'est pas compatible avec la version de l'EEPROM à transférer, vérifier le fichier et les préférences! - + Firmware in flash is outdated, please upgrade! Le firmware de la radio est obsolète, veuillez mettre à jour! - + Invalid binary backup File %1 Fichier de sauvegarde %1 invalide - + %1 has been modified. Do you want to save your changes? %1 a été modifié. @@ -4691,25 +4915,25 @@ p, li { white-space: pre-wrap; } MixesPanel - + Move Up Monter - + Ctrl+Up Ctrl+Haut - + Move Down Descendre - + Ctrl+Down Ctrl+Bas @@ -4733,132 +4957,132 @@ p, li { white-space: pre-wrap; } Pas de Trim - + NoTrim Pas de trim - + No DR/Expo Pas d'expo/DR - + Offset(%1) Décalage(%1) - + Delay(u%1:d%2) Délai(h%1:b%2) - + Slow(u%1:d%2) Ralenti(h%1:b%2) - + Warn(%1) Alerte(%1) - + Not enough available mixers! Plus de mixages disponibles ! - + Delete Selected Mixes? Supprimer mixages sélectionnés ? - + &Add &Ajouter - + Ctrl+A - + &Edit Éditio&n - + Enter Entrée - + Ctrl+T - + &Toggle highlight (Dé)&sélectionner - + &Delete &Supprimer - + Delete Supprimer - + &Copy &Copier - + Ctrl+C - + Ctrl+X - + C&ut Co&uper - + &Paste Co&ller - + Ctrl+V - + Du&plicate Du&pliquer - + Ctrl+U - + Clear Mixes? Effacer tous les mixages ? - + Really clear all the mixes? Êtes-vous sûr de vraiment vouloir effacer tous les mixages ? @@ -4911,12 +5135,12 @@ p, li { white-space: pre-wrap; } Dialogue - + Clear Curves? Effacer les courbes ? - + Really clear all the curves? Êtes-vous sûr de vraiment vouloir effacer toutes les courbes ? @@ -4939,27 +5163,27 @@ p, li { white-space: pre-wrap; } ModelSelectionPage - + Plane Avion - + Multirotor - + Helicopter Hélicoptère - + Model Name: Nom du modèle: - + Model Type: Type de modèle: @@ -5205,28 +5429,28 @@ p, li { white-space: pre-wrap; } ModulePanel - + Trainer Port Port écolage - + Internal Radio System Module HF interne - + External Radio Module Module HF externe - - + + Radio System Module HF - + Extra Radio System Module HF supplémentaire @@ -5234,22 +5458,22 @@ p, li { white-space: pre-wrap; } MultirotorPage - + Throttle Channel: Canal des gaz: - + Yaw Channel: Canal du lacet: - + Pitch Channel: Canal du tangage: - + Roll Channel: Canal du roulis: @@ -5257,17 +5481,17 @@ p, li { white-space: pre-wrap; } OptionsPage - + Throttle Cut Coupure de gaz - + Throttle Timer Chrono de gaz - + Flight Timer Chrono de vol @@ -5306,9 +5530,9 @@ p, li { white-space: pre-wrap; } - - - + + + Name Nom @@ -5345,7 +5569,7 @@ p, li { white-space: pre-wrap; } - + Enabled Actif @@ -5397,7 +5621,7 @@ p, li { white-space: pre-wrap; } - + Switch Interrupteur @@ -5473,9 +5697,9 @@ p, li { white-space: pre-wrap; } Mixages - - - + + + CH VOIE @@ -5484,21 +5708,21 @@ p, li { white-space: pre-wrap; } Pas de trim - - - - - + + + + + Offset Décalage - + Delay(u%1:d%2) Délai(h%1:b%2) - + Slow(u%1:d%2) Ralenti(h%1:b%2) @@ -5507,66 +5731,66 @@ p, li { white-space: pre-wrap; } Avertissement - + Limits Débattements - - - - + + + + Min Min - - - - + + + + Max Max - - - + + + Invert Inversé - - - + + + INV Inversion - - - + + + NOR Normal - + Curves Courbes - - - + + + Curve Courbe - + pt %1 point %1 - + Logical Switches Inters logiques @@ -5575,56 +5799,56 @@ p, li { white-space: pre-wrap; } IL - + Global Variables Variables globales - + GV VG - + Special Functions Fonctions spéciales - + Function Fonction - + Parameter Paramètre - + Repeat Répétition - - + + Telemetry Settings Paramètres de télémesure - - + + Alarm 1 Alarme 1 - - + + Alarm 2 Alarme 2 - - + + Analog Analogique @@ -5635,7 +5859,7 @@ p, li { white-space: pre-wrap; } - + NoTrim Pas de trim @@ -5650,151 +5874,151 @@ p, li { white-space: pre-wrap; } Inter(%1) - + No DR/Expo Pas d'expo/DR - + Offset(%1) Décalage(%1) - + Warn(%1) Alerte(%1) - + L - + SF%1 FS%1 - + Range Plage - + Alarms Alarmes - + Low Alarm Alarme basse - + Critical Alarm Alarme critique - + RSSI - + Unit Unité - + Scale Echelle + - + - Type Type + - + - Condition Condition + - + - Value Valeur - - - + + + A%1 A%1 - + RSSI Alarm Alarme RSSI - + Frsky serial protocol Protocole Série FrSky - + Units system Système d'unités - - + + Blades Pales - - + + Custom Telemetry View Vue Télémesure personnalisée - + Telemetry Bars Barres de télémesure - + Bar Number Barre no - + Source Source - + Print Document Imprimer le document - + Select PDF output file Choisir le fichier PDF de sortie - + ODF files (*.odt);;PDF Files(*.pdf);;HTML-Files (*.htm *.html);;All Files (*) Fichiers ODF (*.odt);; Fichiers PDF (*.pdf);;Fichiers HTML (*.htm *.html);;Tous les fichiers (*) @@ -5821,7 +6045,7 @@ p, li { white-space: pre-wrap; } - + CH%1 VOIE%1 @@ -5908,7 +6132,7 @@ p, li { white-space: pre-wrap; } - + S3 @@ -5923,9 +6147,8 @@ p, li { white-space: pre-wrap; } - Rx Batt - Batt RX + Batt RX @@ -6601,14 +6824,14 @@ p, li { white-space: pre-wrap; } - + All Tous - + Telemetry Télémesure @@ -6641,22 +6864,22 @@ p, li { white-space: pre-wrap; } - + Value Valeur - + Source - + GVAR VG - + Increment Incrément @@ -6708,7 +6931,7 @@ p, li { white-space: pre-wrap; } Ajuster VG%1 - + Rotary Encoder Encodeur rotatif @@ -6854,8 +7077,8 @@ p, li { white-space: pre-wrap; } - - + + THR @@ -6872,21 +7095,21 @@ p, li { white-space: pre-wrap; } - + P1 - + P2 - + P3 @@ -7091,39 +7314,39 @@ p, li { white-space: pre-wrap; } - + S1 - + S2 - + LS - + RS - + REa - + REb @@ -7261,119 +7484,275 @@ p, li { white-space: pre-wrap; } - - + + Support for frsky telemetry mod Support de la télémétrie FrSky - - + + Support for jeti telemetry mod Support de la télémétrie JETI - - + + Support for receiving ardupilot data Support de la télémétrie ARDUPILOT - - + + Support for receiving NMEA data Support de la télémétrie NMEA - + Support for telemetry easy board Support de la carte TelemetrEZ - - + + Support for MAVLINK devices Support du protocole MAVLINK - + Rotary Encoder use in menus navigation Utiliser un encodeur rotatif pour la navigation - + Possibility to enable FAI MODE at field Possibilité d'activer le mode FAI sur le terrain - + FAI MODE always enabled Mode FAI toujours actif - - - - - - - Enable heli menu and cyclic mix support - Activer le menu hélico et les mixages CCPM - - - - Enable TEMPLATES menu - Inclure les gabarits + Enable heli menu and cyclic mix support + Activer le menu hélico et les mixages CCPM - No splash screen - Pas d'écran de démarrage + + + + Enable TEMPLATES menu + Inclure les gabarits - - - - - - - - Disable curves menus - Désactiver le menu des courbes + + + + + No splash screen + Pas d'écran de démarrage - Support for radio modified with regular speaker - Haut-parleur au lieu du buzzer d'origine + + + + Disable curves menus + Désactiver le menu des courbes - - Used if you have modified your radio with voice mode - Support du module vocal + Support for radio modified with regular speaker + Haut-parleur au lieu du buzzer d'origine + + Used if you have modified your radio with voice mode + Support du module vocal + + + + + + Used if you have modified your radio with haptic mode Support du vibreur + + + + + + + + + + + Channel values displayed in us + Positions de canaux affichées en us + + + + + + + + + + Battery graph + Graphique de batterie + + + + + + + + + + + + Use alternative SQT5 font + Utiliser la police alternative SQT5 + + + + + + + Enable the throttle trace in Statistics + Activer l'historique du manche des gaz dans les statistiques + + + + EEprom write progress bar + Barre de progression pour l'écriture de l'EEPROM + + + + + No Winged Shadow How High support + Supprimer le support du variomètre Winged Shadow How High + + + + + No vario support + Supprimer la fonction variomètre audio + + + + + No GPS support + Supprimer le support du GPS + + + + + No gauges in the custom telemetry screen + Supprimer l'affichage des valeurs de télémesure par barres + + + + Allow compensating for offset errors in FrSky FAS current sensors + Permettre la compensation d'un décalage des capteurs de courant FASxx FrSky + + + + + Add support for reversing stick inputs (e.g. needed for FrSky gimbals) + Ajoute le support de l'inversion des manches (nécessaire pour l'utilisation de manches FrSky) + + + + OpenTX for 9XR-PRO + OpenTX pour 9XR-PRO + + + PPM values displayed in us + Valuers affichées en us + + + + Haptic module installed + Module vibreur installé + + + + + Support for Lua model scripts + Support des scripts Lua + + + + OpenTX for FrSky Taranis Plus + OpenTX pour FrSky Taranis Plus + + + OpenTX for FrSky Taranis Rev4a + OpenTX pour FrSky Taranis Rev4a + + + + Support of FrSky PXX protocol + Support du protocole PXX FrSky + + + + + Use FrSky Taranis sticks in a 9X/9XR + Use FrSky's taranis like sticks + Manches de FrSky Taranis installés dans une 9X/9XR + + + + OpenTX for FrSky Taranis + OpenTX pour FrSky Taranis + + + + + Disable HELI menu and cyclic mix support + Supprimer le menu HELICO et les mixages cycliques + + + Disable TEMPLATES menu + Supprimer le menu des gabarits + + + + + Disable Global variables + Supprimer le support des variables globales + + + + + + + + Support for DSM2 modules + Support du protocole DSM2 + @@ -7382,183 +7761,27 @@ p, li { white-space: pre-wrap; } - - - Channel values displayed in us - Positions de canaux affichées en us - - - - - - - - - - Battery graph - Graphique de batterie - - - - - - - - - - - - Use alternative SQT5 font - Utiliser la police alternative SQT5 - - - - - - - Enable the throttle trace in Statistics - Activer l'historique du manche des gaz dans les statistiques - - - - EEprom write progress bar - Barre de progression pour l'écriture de l'EEPROM - - - - - No Winged Shadow How High support - Supprimer le support du variomètre Winged Shadow How High - - - - - No vario support - Supprimer la fonction variomètre audio - - - - - No GPS support - Supprimer le support du GPS - - - - - No gauges in the custom telemetry screen - Supprimer l'affichage des valeurs de télémesure par barres - - - - Allow compensating for offset errors in FrSky FAS current sensors - Permettre la compensation d'un décalage des capteurs de courant FASxx FrSky - - - - - Add support for reversing stick inputs (e.g. needed for FrSky gimbals) - Ajoute le support de l'inversion des manches (nécessaire pour l'utilisation de manches FrSky) - - - - OpenTX for 9XR-PRO - OpenTX pour 9XR-PRO - - - PPM values displayed in us - Valuers affichées en us - - - - Haptic module installed - Module vibreur installé - - - - - Support for Lua model scripts - Support des scripts Lua - - - - OpenTX for FrSky Taranis Plus - OpenTX pour FrSky Taranis Plus - - - OpenTX for FrSky Taranis Rev4a - OpenTX pour FrSky Taranis Rev4a - - - - Support of FrSky PXX protocol - Support du protocole PXX FrSky - - - - - Use FrSky Taranis sticks in a 9X/9XR - Use FrSky's taranis like sticks - Manches de FrSky Taranis installés dans une 9X/9XR - - - - OpenTX for FrSky Taranis - OpenTX pour FrSky Taranis - - - - - Disable HELI menu and cyclic mix support - Supprimer le menu HELICO et les mixages cycliques - - - Disable TEMPLATES menu - Supprimer le menu des gabarits - - - - - Disable Global variables - Supprimer le support des variables globales - - - - - - - - Support for DSM2 modules - Support du protocole DSM2 - - - - - - - - - PPM center adjustment in limits Neutres PPM ajustables - - - - - - - - Symetrical Limits - Limites symétriques - - - + + + Symetrical Limits + Limites symétriques + + + + + + + + Pots use in menus navigation Support de la navigation dans les menus avec les POTS @@ -7569,108 +7792,97 @@ p, li { white-space: pre-wrap; } Il semblerait que votre radio utilise le mauvais firmware. La taille de l'EEPROM est de 4096, mais seulement les 2048 premiers sont utilisés. Pensez à charger la version pour m128. - + OpenTX for 9X board OpenTX pour 9X - - - - - - - + + + + + + + No flight modes Pas de phases de vol - - + + SmartieParts 2.2 Backlight support Support du rétroéclairage pour la carte SmartieParts 2.2 - - - - - + + + + + Enable resetting values by pressing up and down at the same time Permet la remise à zéro des valeurs en pressant haut-bas en même temps, valeur min avec gauche/bas, valeur max avec haut/droite, inversion avec gauche/droite - - - - - - - + + + + + + + No graphical check boxes and sliders Pas de cases à cocher et de curseurs graphiques - - - - - - - + + + + + + + Don't use bold font for highlighting active items Ne pas mettre les lignes actives en gras - + OpenTX for M128 / 9X board OpenTX pour 9X avec m128 - - - - - EEprom write Progress bar - Barre de progression affichée lors des écritures EEPROM - - - + EEprom write Progress bar + Barre de progression affichée lors des écritures EEPROM + + + + + + + Imperial units Unités Impériales - - + + Bluetooth interface Interface Bluetooth - - - - - - - + + + + + + + Global variables Variables globales - - - - - - - - - In model setup menus automatically set source by moving the control - Sélectionner les sources des mixeurs en bougeant le contrôle désiré - @@ -7679,42 +7891,53 @@ p, li { white-space: pre-wrap; } + In model setup menus automatically set source by moving the control + Sélectionner les sources des mixeurs en bougeant le contrôle désiré + + + + + + + + + In model setup menus automatically set switch by moving the control Sélectionner les interrupteurs en bougeant le contrôle désiré - + OpenTX for 9XR OpenTX pour 9XR - + OpenTX for 9XR with M128 chip OpenTX pour 9XR avec m128 - + OpenTX for Gruvin9x board / 9X OpenTX pour carte Gruvin9x - + Support for SD memory card Support de la carte SD - + Support for DSM2 modules using ppm instead of true serial Support pour les modules DSM2 par le signal PPM - + OpenTX for Sky9x board / 9X OpenTX pour carte Sky9x - - + + Enable HELI menu and cyclic mix support Activer le menu hélico et les mixages CCPM @@ -7722,7 +7945,7 @@ p, li { white-space: pre-wrap; } - + Timer1 Chrono 1 @@ -7730,7 +7953,7 @@ p, li { white-space: pre-wrap; } - + Timer2 Chrono 2 @@ -7777,32 +8000,37 @@ p, li { white-space: pre-wrap; } Le simulateur n'est pas encore disponible pour ce firmware - + th9x on this board doesn't have Rotary Encoders th9x ne supporte pas d'encodeurs rotatifs sur cette carte - + OpenTX only accepts %1 points in all curves OpenTX n'accepte que %1 points au maximum entre toutes les courbes - - - - + + OpenTx only accepts %1 points in all curves + OpenTX n'accepte que %1 points au maximum entre toutes les courbes + + + + + + OpenTX on this board doesn't accept this function OpenTX ne supporte pas cette fonction sur cette carte - - - + + + OpenTX doesn't accept this protocol OpenTX ne supporte pas ce protocole - + OpenTX doesn't allow this number of channels OpenTX ne supporte pas ce nombre de canaux @@ -7877,17 +8105,17 @@ L'équipe OpenTX. RudderPage - + No Non - + Yes Oui - + <br>Rudder Channel: <br>Canal de dérive: @@ -8033,7 +8261,7 @@ Si cette option est cochée, la voie des gaz est inversée: le ralenti est &apo SimpleTailPage - + Elevator Channel: Canal de profondeur: @@ -8185,7 +8413,7 @@ Si cette option est cochée, la voie des gaz est inversée: le ralenti est &apo StandardPage - + Channel %1 Canal %1 @@ -8193,12 +8421,12 @@ Si cette option est cochée, la voie des gaz est inversée: le ralenti est &apo TailPage - + Rudder Channel: Canal de dérive: - + Elevator Channel: Canal de profondeur: @@ -8206,22 +8434,22 @@ Si cette option est cochée, la voie des gaz est inversée: le ralenti est &apo TailSelectionPage - + Elevator and Rudder Profondeur et dérive - + Only Elevator Profondeur uniquement - + V-tail Empennage en V - + Tail Type: Type d'empennage: @@ -8239,13 +8467,12 @@ Si cette option est cochée, la voie des gaz est inversée: le ralenti est &apo - + RSSI - - + Alarm 1 Alarme 1 @@ -8260,42 +8487,39 @@ Si cette option est cochée, la voie des gaz est inversée: le ralenti est &apo - RxBatt - Batt. Rx + Batt. Rx - Critical Alarm - Alarme critique + Alarme critique - - + + ---- ---- - - + + Yellow Jaune - - + + Orange Orange - - + + Red Rouge - - + Alarm 2 Alarme 2 @@ -8385,87 +8609,86 @@ Si cette option est cochée, la voie des gaz est inversée: le ralenti est &apo Vario - + Sink Max Chute max - + Off Désactivé - + Climb Max Montée max - + Sink Min Chute min - + Climb Min Montée min - + Vario source Source vario - + Vario limits Limites vario - + Use GPS as altitude source Utiliser le GPS comme source d'altitude - + Display altitude in toolbar Affichage de l'altitude dans la barre de notifs - + Altimetry Altitude - + mAh - + A - + Various Divers - + mAh count Valeur enregistrée - Low Alarm - Alarme basse + Alarme basse - + FAS Offset Décalage FAS - + Persistent mAh Mémorisation des mAh @@ -8635,94 +8858,93 @@ Si cette option est cochée, la voie des gaz est inversée: le ralenti est &apo TelemetryPanel - + Telemetry screen %1 Ecran de télémesure %1 - + Low Alarm Alarme basse - + Critical Alarm Alarme critique - + Winged Shadow How High Winged Shadow How High - + Winged Shadow How High (not supported) Winged Shadow How High (non supporté) - + Alti Alti - + Alti+ Alti+ - + VSpeed Vitesse V - - - + + + A1 - - - + + + A2 - + dTE - RxBatt - Batt. Rx + Batt. Rx - - + + A3 - - + + A4 - - + + FAS - + Cells Velm - + --- @@ -8730,17 +8952,17 @@ Si cette option est cochée, la voie des gaz est inversée: le ralenti est &apo ThrottlePage - + Yes Oui - + No Non - + <br>Throttle Channel: <br>Canal des gaz: @@ -8766,17 +8988,17 @@ Si cette option est cochée, la voie des gaz est inversée: le ralenti est &apo TimerPanel - + Silent Aucun - + Beeps Bips - + Voice Voix @@ -8784,12 +9006,12 @@ Si cette option est cochée, la voie des gaz est inversée: le ralenti est &apo VTailPage - + First Tail Channel: Premier canal d'empennage: - + Second Tail Channel: Deuxième canal d'empennage: @@ -8797,12 +9019,12 @@ Si cette option est cochée, la voie des gaz est inversée: le ralenti est &apo WingtypeSelectionPage - + Standard Wing Aile standard - + Flying Wing / Deltawing Aile delta @@ -9003,22 +9225,22 @@ Si cette option est cochée, la voie des gaz est inversée: le ralenti est &apo Vérifiez manuellement le sens de chaque commande, et inversez les canaux de celles qui répondent dans le mauvais sens. Attention à bien enlever les hélices du modèle avant de l'alimenter la première fois !<br>Veuillez noter que tous les réglages existants du modèle courant seront écrasés. - + Enter a name for your model and select model type. Entrer un nom pour le modèle et sélectionnez son type. - + Select the receiver channel that is connected to your ESC or throttle servo.<br><br>Throttle - Spektrum: CH1, Futaba: CH3 Sélectionnez le canal du récepteur auquel le contrôleur/servo de gaz est connecté.<br><br>Gaz - Spektrum : CH1, Futaba : CH3 - + Most aircraft have a main wing and a tail with control surfaces. Flying wings and delta winged aircraft only have a single wing. The main control surface on a standard wing controls the roll of the aircraft. This surface is called an aileron.<br>The control surface of a delta wing controls both roll and pitch. This surface is called an elevon. La plupart des aéronefs possèdent une aile principale et un empennage avec des surfaces de contrôle. Les ailes volantes et delta ne possèdent qu'une aile. Les surfaces de contrôle sur une aile standard qui contrôlent le roulis de l'aéronef sont appelées ailerons.<br>Les surfaces de contrôle d'une aile delta contrôlent le roulis ET le tangage, et sont appelées élevons. - + Models use one or two channels to control the ailerons.<br>A so called Y-cable can be used to connect a single receiver channel to two separate aileron servos. If your servos are connected by a Y-cable you should select the single-servo option.<br><br>Aileron - Spektrum: CH2, Futaba: CH1 On utilise en général soit 1, soit 2 canaux pour contrôler les ailerons. Un câble en Y peut être utilisé pour connecter 2 servos à un seul canal, auquel cas il convient de choisir l'option "un seul canal".<br><br>Ailerons - Spektrum : CH2, Futaba : CH1 @@ -9027,64 +9249,64 @@ Si cette option est cochée, la voie des gaz est inversée: le ralenti est &apo On utilise en général soit un, soit 2 canaux pour contrôler les élevons. Un câble en Y peut être utilisé pour connecter 2 servos à un seul canal, auquel cas il convient de choisir l'option "un seul canal". - + This wizard assumes that your flaps are controlled by a switch. If your flaps are controlled by a potentiometer you can change that manually later. Cet assistant considère que les volets sont commandés par un interrupteur. Si vous souhaitez les commander par un potentiomètre il est possible de le paramétrer manuellement plus tard. - + Air brakes are used to reduce the speed of advanced sail planes.<br>They are very uncommon on other types of planes. Les aérofreins sont utilisés pour augmenter le taux de descente des planeurs performants.<br>Ils ne sont pas courants sur les autres types d'aéronefs. - + Models use two channels to control the elevons.<br>Select these two channels Un modéle utilise 2 canaux pour commanderles élevons.<br>Sélectionnez-les ici: - + Select the receiver channel that is connected to your rudder.<br><br>Rudder - Spektrum: CH4, Futaba: CH4 Sélectionnez le canal du récepteur auquel le servo de dérive est connecté.<br><br>Dérive - Spektrum : CH4, Futaba : CH4 - + Select the tail type of your plane. Sélectionnez le type d'empennage de votre avion. - - + + Select the Rudder and Elevator channels.<br><br>Rudder - Spektrum: CH4, Futaba: CH4<br>Elevator - Spektrum: CH3, Futaba: CH2 Sélectionnez les canaux du récepteur auquel les servos de profondeur et dérive sont connectés.<br><br>Dérive - Spektrum : CH4, Futaba : CH4<br>Profondeur - Spektrum : CH3, Futaba : CH2 - + Select the Elevator channel.<br><br>Elevator - Spektrum: CH3, Futaba: CH2 Sélectionnez le canal du récepteur auquel le servo de profondeur est connecté.<br><br>Profondeur - Spektrum : CH3, Futaba : CH2 - - - - - - - + + + + + + + TBD. - Souvent pour s'amuser les hommes d'équipage prennent des albatros, vastes oiseaux des mers qui suivent, indolents companions de voyage, le navire glissant sur les gouffres amers. Charles Baudelaire + Souvent pour s'amuser les hommes d'équipage prennent des albatros, vastes oiseaux des mers qui suivent, indolents companions de voyage, le navire glissant sur les gouffres amers. Charles Baudelaire - + Select the control channels for your multirotor.<br><br>Throttle - Spektrum: CH1, Futaba: CH3<br>Yaw - Spektrum: CH4, Futaba: CH4<br>Pitch - Spektrum: CH3, Futaba: CH2<br>Roll - Spektrum: CH2, Futaba: CH1 Sélectionnez les canaux de votre multirotor.<br><br>Gaz - Spektrum: CH1, Futaba: CH3<br>Lacet - Spektrum: CH4, Futaba : CH4<br>Tangage - Spektrum : CH3, Futaba: CH2<br>Roulis - Spektrum : CH2, Futaba: CH1 - + There is no help available for the current page. Souvent pour s'amuser les hommes d'équipage prennent des albatros, vastes oiseaux des mers qui suivent, indolents companions de voyage, le navire glissant sur les gouffres amers. Charles Baudelaire - + Model Wizard Help Aide de l'assistant de configuration @@ -9092,37 +9314,37 @@ Si cette option est cochée, la voie des gaz est inversée: le ralenti est &apo WizardPrinter - + Plane Avion - + Multicopter Multicoptère - + Helicopter Hélicoptère - + Model Name: Nom du modèle: - + Model Type: Type de modèle: - + Options: - + Channel %1: Canal %1: @@ -9273,29 +9495,29 @@ Do you want some help ? Avez-vous besoin d'aide? - + Copy did not finish correctly La copie ne s'est pas terminée correctement - + finished correctly finished correctly a terminé correctement - + Copy finished correctly La copie s'est terminée correctement - + Started Started Démarré - + FUSES: Low=%1 High=%2 Ext=%3 Fusibles: Bas=%1 Haut=%2 Ext=%3 @@ -9607,38 +9829,38 @@ m2560 for v4.1 boards - - - - - + + + + + Warning Avertissement - + Profile image %1 is invalid. L'image du profil %1 est invalide. - + Images (%1) Images (%1) - - - - - - - - - - - - + + + + + + + + + + + + Error Erreur @@ -9668,23 +9890,23 @@ m2560 for v4.1 boards Fichier %1 introuvable! - - - + + + Error opening file %1: %2. Erreur à l'ouverture du fichier %1: %2. - - - + + + Invalid binary Models and Settings File %1, Proceed anyway ? Fichier binaire de réglages et modèles %1 invalide, continuer quand même? - + Error reading file %1: %2. Fichier %1 corrompu: @@ -9706,65 +9928,65 @@ m2560 for v4.1 boards %1 ne semble pas être un firmware valide - + The firmware file is not valid. Le firmware est invalide. - + There is no start screen image in the firmware file. Aucun écran d'accueil trouvé dans le firmware. - + Open image file to use as radio start screen Ouvrir l'image à utiliser comme écran d'accueil - + Image could not be loaded from %1 L'image %1 n'a pu être chargée - + The library image could not be loaded L'image n'a pu être chargée depuis la bibliothèque - + Cannot save customized firmware Impossible d'enregistrer le firmware personnalisé - + Custom image not found Image personnalisée non trouvée - + No firmware selected Aucun firmware sélectionné - + Wrong radio calibration data in profile, Settings not patched Données de calibration incorrectes dans le profil, les réglages ne seront pas transférés - + Wrong radio setting data in profile, Settings not patched Données de configuration incorrectes dans le profil, les réglages ne seront pas transférés - - + + Cannot write file %1: %2. Ecriture fichier %1 impossible: %2. - + Error writing file %1: %2. Erreur d'écriture fichier %1: @@ -10389,17 +10611,17 @@ Press cancel to abort joystick calibration %2. - + Select your log file Sélectionnez votre fichier log - + Available fields Champs disponibles - + The selected logfile contains %1 invalid lines out of %2 total lines Le fichier de log sélectionné contient %1 lignes invalides sur %2 diff --git a/companion/src/translations/companion_it.ts b/companion/src/translations/companion_it.ts index 6ad6b4455..dd6c3a8cc 100644 --- a/companion/src/translations/companion_it.ts +++ b/companion/src/translations/companion_it.ts @@ -1171,7 +1171,7 @@ Può essere differente dalla lingua del firmware Expo - Expo + Espo @@ -1294,12 +1294,12 @@ Può essere differente dalla lingua del firmware Symmetrical f(x)=-f(-x) - Expo simmetrica f(x)=-f(-x) + Curva simmetrica f(x)=-f(-x) Symmetrical f(x)=f(-x) - Expo simmetrica f(x)=f(-x) + Curva simmetrica f(x)=f(-x) @@ -1428,12 +1428,12 @@ Può essere differente dalla lingua del firmware <br>First Elevon Channel: - <br>Canale primo Elevone: + <br>Canale primo Elevone: Second Elevon Channel: - Canale secondo Elevone: + Canale secondo Elevone: @@ -3802,12 +3802,12 @@ Volete scaricarla ora ? The OpenTX Companion project was originally forked from <a href='%1'>eePe</a> - Il progetto OpenTx-Companion è originariamente derivato da <a href='%2'>eePe</a> {1'?} + Il progetto OpenTx-Companion è originariamente derivato da <a href='%1'>eePe</a> Copyright OpenTX Team - + Copyright OpenTX Team @@ -4884,40 +4884,40 @@ p, li { white-space: pre-wrap; } Move Up - Muovi in Su + Muovi in Su Ctrl+Up - Ctrl+Up + Ctrl+Up Move Down - Muovi in Giù + Muovi in Giù Ctrl+Down - Ctrl+Down + Ctrl+Down Clear Mixes - Cancella Miscelazioni + Cancella Miscelazioni Weight(%1) - Peso(%1) + Peso(%1) Switch(%1) - Interruttore(%1) + Interruttore(%1) No Trim @@ -4926,92 +4926,92 @@ p, li { white-space: pre-wrap; } NoTrim - NoTrim + NoTrim No DR/Expo - No DR/Expo + No DR/Espo Offset(%1) - Offset(%1) + Spostamento(%1) Delay(u%1:d%2) - Ritarda(s%1:g%2) + Ritarda(s%1:g%2) Slow(u%1:d%2) - Rallenta(s%1:g%2) + Rallenta(s%1:g%2) Warn(%1) - Avviso(%1) + Avviso(%1) Not enough available mixers! - Non ci sono più miscelazioni disponibili! + Non ci sono più miscelazioni disponibili! Delete Selected Mixes? - Cancellare le miscelazioni selezionate ? + Cancellare le miscelazioni selezionate ? &Add - &Aggiungi + &Aggiungi Ctrl+A - Ctrl+A + Ctrl+A &Edit - &Modifica + &Modifica Enter - Invio + Invio &Toggle highlight - + Al&terna evidenziazione Ctrl+T - Ctrl+T + Ctrl+T &Delete - &Elimina + &Elimina Delete - Elimina + Elimina &Copy - &Copia + &Copia Ctrl+C - Ctrl+C + Ctrl+C &Cut @@ -5020,42 +5020,42 @@ p, li { white-space: pre-wrap; } Ctrl+X - Ctrl+X + Ctrl+X C&ut - + Ta&glia &Paste - &Incolla + &Incolla Ctrl+V - Ctrl+V + Ctrl+V Du&plicate - Dup&lica + Du&plica Ctrl+U - Ctrl+U + Ctrl+U Clear Mixes? - Cancellare le miscelazioni ? + Cancellare le miscelazioni ? Really clear all the mixes? - Sicuri di voler cancellare le miscelazioni ? + Sicuri di voler cancellare le miscelazioni ? @@ -5136,27 +5136,27 @@ p, li { white-space: pre-wrap; } Plane - Aereo + Aereo Multirotor - Multirotore + Multirotore Helicopter - Elicottero + Elicottero Model Name: - Nome Modello: + Nome Modello: Model Type: - Tipo di Modello + Tipo di modello: @@ -5487,32 +5487,32 @@ p, li { white-space: pre-wrap; } Close - Chiudi + Chiudi Print - Stampa + Stampa Print to file - Stampa su file + Stampa su file Setup for: - Impostazioni per: + Impostazioni per: printed on: %1 - stampato il: %1 + stampato il: %1 General Model Settings - Impostazioni generali del modello + Impostazioni generali del modello @@ -5520,132 +5520,132 @@ p, li { white-space: pre-wrap; } Name - Nome + Nome EEprom Size - Dimensione in EEprom + Dimensione in EEprom Timer1 - Tempo1 + Temporizzatore 1 Timer2 - Tempo2 + Temporizzatore 2 Protocol - Protocollo + Protocollo Pulse Polarity - Polarità impulso + Polarità impulso Throttle Trim - Trim Motore + Trim Motore Enabled - Abilitato + Abilitato Disabled - Disabilitato + Disabilitato Throttle Expo - Esponenziale Motore + Esponenziale Motore Trim Increment - Incremento del Trim + Incremento del Trim Center Beep - Avviso centraggio + Avviso centraggio Flight modes - Fasi di volo + Fasi di volo Fades - Transizioni + Transizioni Trims - Trims + Trims Gvars - Var Glob + Var Glob Rot.Enc. - Enc. Rot. + Enc. Rot. Switch - + Int. Flight mode name - Nome fase di volo + Nome fase di volo IN - Ingr. + Ingr. OUT - Usc. + Usc. Rud - + Dir Ele - + Ele Thr - + Mot Ail - + Ale @@ -5653,86 +5653,86 @@ p, li { white-space: pre-wrap; } FM - FV + FV Inputs - Ingressi + Ingressi Weight - Peso + Peso Source - Sorgente + Sorgente NoTrim - NoTrim + NoTrim DISABLED - DISABILITATO + DISABILITATO Mixers - Miscelazioni + Miscelazioni Weight(%1) - Peso(%1) + Peso(%1) Switch(%1) - Interruttore(%1) + Interruttore(%1) No DR/Expo - No DR/Expo + No DR/Espo Offset(%1) - Offset(%1) + Spostamento(%1) Delay(u%1:d%2) - Ritarda(s%1:g%2) + Ritarda(s%1:g%2) Slow(u%1:d%2) - Rallenta(s%1:g%2) + Rallenta(s%1:g%2) Warn(%1) - Avviso(%1) + Avviso(%1) Limits - Limiti + Limiti CH - CH + CH @@ -5741,7 +5741,7 @@ p, li { white-space: pre-wrap; } Offset - Spostamento + Spostamento @@ -5749,7 +5749,7 @@ p, li { white-space: pre-wrap; } Min - Min + Min @@ -5757,162 +5757,162 @@ p, li { white-space: pre-wrap; } Max - Max + Max Invert - + Inversione INV - INV + INV NOR - NOR + NOR Curves - Curve + Curve Curve - Curva + Curva pt %1 - pt %1 + pt %1 Logical Switches - Interruttori logici + Interruttori logici L - + L Global Variables - Variabili Globali + Variabili Globali GV - VG + VG Special Functions - Funzioni speciali + Funzioni speciali Function - Funzione + Funzione Parameter - Parametro + Parametro Repeat - Ripeti + Ripeti SF%1 - SF%1 + FS%1 Telemetry Settings - Impostazioni telemetria + Impostazioni telemetria Analog - Analogico + Analogico Range - Intervallo + Intervallo A%1 - A%1 + A%1 Alarms - + Allarmi Low Alarm - Allarme basso + Allarme basso Critical Alarm - Allarme critico + Allarme critico RSSI - RSSI + RSSI Blades - Pale dell'elica + Pale dell'elica Alarm 1 - Allarme 1 + Allarme 1 Alarm 2 - Allarme 2 + Allarme 2 Unit - Unità + Unità Scale - Campo di misura + Campo di misura @@ -5920,7 +5920,7 @@ p, li { white-space: pre-wrap; } Type - Tipo + Tipo @@ -5928,7 +5928,7 @@ p, li { white-space: pre-wrap; } Condition - Condizione + Condizione @@ -5936,53 +5936,53 @@ p, li { white-space: pre-wrap; } Value - Valore + Valore RSSI Alarm - Allarmi RSSI + Allarmi RSSI Frsky serial protocol - Protocollo seriale FrSky + Protocollo seriale FrSky Units system - + Sistema di misura Custom Telemetry View - Schermata personalizzata dati telemetrici + Schermata personalizzata dati telemetrici Telemetry Bars - Barre Telemetria + Barre Telemetria Bar Number - Numero Barra + Barra Numero Print Document - Stampa documento + Stampa documento Select PDF output file - Scegliere il nome del file PDF + Scegliere il nome del file PDF ODF files (*.odt);;PDF Files(*.pdf);;HTML-Files (*.htm *.html);;All Files (*) - Documenti ODF (*.odt);;Documenti PDF (*.pdf);;Documenti HTML (*.htm *.html);;Tutti i documenti (*) + Documenti ODF (*.odt);;Documenti PDF (*.pdf);;Documenti HTML (*.htm *.html);;Tutti i documenti (*) @@ -5996,12 +5996,12 @@ p, li { white-space: pre-wrap; } Input%1 - Ingresso%1 + Ingresso%1 Polish - Polacco + Polacco @@ -6009,7 +6009,7 @@ p, li { white-space: pre-wrap; } CH%1 - CH%1 + CH%1 @@ -6019,57 +6019,57 @@ p, li { white-space: pre-wrap; } RotEnc A - EncRot A + EncRot A Rot Enc B - EncRot B + EncRot B Rot Enc C - EncRot C + EncRot C Rot Enc D - EncRot D + EncRot D Rot Enc E - EncRot E + EncRot E Safety %1 - Sicurezza %1 + Sicurezza %1 Trainer - Allievo + Allievo Trainer RUD - RUD Allievo + Allievo DIR Trainer ELE - ELE Allievo + Allievo ELE Trainer THR - TRH Allievo + Allievo MOT Trainer AIL - AIL Allievo + Allievo ALE @@ -6079,526 +6079,526 @@ p, li { white-space: pre-wrap; } Play Sound - Suona + Suona Play Track - Suona Traccia + Suona Traccia Start Logs - Avvia Log + Avvia Log Play Haptic - Vibrazione + Vibrazione S3 - S3 + S3 RSSI Tx - + RSSI Rx - + Rx Batt - + Batt Rx A3 - A3 + A3 A4 - A4 + A4 Cells - + Celle dTE - + Hdg - + AirSpeed - + A3- - A2- {3-?} + A2- {3-?} A4- - A2- {4-?} + A2- {4-?} Speed+ - + Velocità+ Dist+ - + AirSpeed+ - + Cell- - + Cella- Cells- - + Vfas- - + Curr+ - + Corr- Powr+ - + ACC - + GPS Time - + Ora GPS L1 - + L2 - + L3 - + L4 - + L5 - + L6 - + L7 - + L8 - + L9 - + L10 - + L11 - + L12 - + L13 - + L14 - + L15 - + L16 - + L17 - + L18 - + L19 - + L20 - + L21 - + L22 - + L23 - + L24 - + L25 - + L26 - + L27 - + L28 - + L29 - + L30 - + L31 - + L32 - + [I%1] - + [I%1] TR%1 - + FM0 - + FV0 FM1 - + FV1 FM2 - + FV2 FM3 - + FV3 FM4 - + FV4 FM5 - + FV5 FM6 - + FV6 FM7 - + FV7 FM8 - + FV8 S31 - + S32 - + S33 - + S34 - + S35 - + S36 - + One - Uno + Uno a>x - + a<x - + |a|>x - + |a|<x - + AND - AND + AND OR - + XOR - + a=b - + a!=b - + a>b - + a<b - + a>=b - + a<=b - + d>=x - + |d|>=x - + a=x - + a~x - + Timer - + Tempo Sticky - + Bloccato Unknown - Sconosciuto + Sconosciuto Reset - Ripristina + Ripristina Set Timer %1 - + Imposta temporizzatore %1 @@ -6608,17 +6608,17 @@ p, li { white-space: pre-wrap; } Volume - Volume + Volume Backlight - Retroilluminazione + Retroilluminazione Play Value - Suona valore + Suona valore @@ -6630,27 +6630,27 @@ p, li { white-space: pre-wrap; } Rud Trim - Trim Rud + Trim Dir Ele Trim - Trim Ele + Trim Ele Thr Trim - Trim Trh + Trim Mot Ail Trim - Trim Ail + Trim Ale Rot Enc - Enc Rot + Enc Rot @@ -6706,47 +6706,47 @@ p, li { white-space: pre-wrap; } %1 sec - %1 sec + %1 sec Play Both - + Suana Entrambi Edge(%1, [%2:%3]) - + Soglia(%1, [%2:%3]) Sticky(%1, %2) - + Bloccato(%1, %2) Timer(%1, %2) - + Temporizzatore(%1, %2) Duration (%1s) - + Durata (%1s) Delay (%1s) - + Ritardo (%1s) Background Music - Musica Bg + Musica di sottofondo Background Music Pause - Pausa musica Bg + Pausa musica di sottofondo Delay %1 sec @@ -6755,7 +6755,7 @@ p, li { white-space: pre-wrap; } Edge - Edge + Soglia Duration %1 sec @@ -6783,7 +6783,7 @@ p, li { white-space: pre-wrap; } Telemetry - Telemetria + Telemetria @@ -6795,23 +6795,23 @@ p, li { white-space: pre-wrap; } Decr: - Decr: + Decr: Incr: - Incr: + Incr: Played once, not during startup - Suona ancora, non durante l'avvio + Suona una sola volta, non durante l'avvio %1s - %1s + %1s @@ -6877,17 +6877,17 @@ p, li { white-space: pre-wrap; } Adjust GV%1 - Regola VG%1 + Regola VG%1 Rotary Encoder - Encoder rotativo + Encoder rotativo Finnish - Finlandese + Finlandese @@ -6983,12 +6983,12 @@ p, li { white-space: pre-wrap; } Flight modes(%1) - Fasi volo(%1) + Fasi di volo(%1) Flight mode(%1) - Fase volo(%1) + Fase di volo(%1) @@ -7029,7 +7029,7 @@ p, li { white-space: pre-wrap; } THR - THR + MOT @@ -7175,7 +7175,7 @@ p, li { white-space: pre-wrap; } OpenTX only accepts %1 points in all curves - OpenTx accetta solamente %1 punti in tutte le curve + OpenTx accetta solamente %1 punti in tutte le curve @@ -7337,18 +7337,18 @@ p, li { white-space: pre-wrap; } Channel values displayed in us - Posizione canali visualizzata in us + Posizione canali visualizzata in us Add support for reversing stick inputs (e.g. needed for FrSky gimbals) - + Aggiungi il supporto per l'inversione degli stick (Ad es. necessario per l'utilizzo degli stick FrSky) OpenTX for 9XR-PRO - + OpenTX per 9XR-PRO In model setup menus automatically set source by moving some of them @@ -7357,18 +7357,18 @@ p, li { white-space: pre-wrap; } Haptic module installed - + Modulo vibrazione installato Support for Lua model scripts - + Supporto degli script LUA OpenTX for FrSky Taranis Plus - + OpenTx per FrSky Taranis Plus @@ -7434,12 +7434,12 @@ p, li { white-space: pre-wrap; } Allow compensating for offset errors in FrSky FAS current sensors - Abilita compensazione per errore offset in sensore di corrente FAS FrSky + Abilita compensazione per errore offset in sensore di corrente FAS FrSky OpenTX for FrSky Taranis - OpenTx per FrSky Taranis + OpenTx per FrSky Taranis OpenTX for FrSky Taranis Rev4a @@ -7528,7 +7528,7 @@ la eeprom è 4096 bytes ma solo 2048 vengono utilizzati OpenTX for 9X board - + OpenTX for scheda 9X @@ -7574,7 +7574,7 @@ la eeprom è 4096 bytes ma solo 2048 vengono utilizzati OpenTX for M128 / 9X board - OpenTx per Board M128 / 9X + OpenTx per Board M128 / 9X @@ -7619,7 +7619,7 @@ la eeprom è 4096 bytes ma solo 2048 vengono utilizzati In model setup menus automatically set source by moving the control - Nel menu settaggio modelli selezionare automaticamente la sorgente muovendo il controllo + Nel menu settaggio modelli selezionare automaticamente la sorgente muovendo il controllo @@ -7630,22 +7630,22 @@ la eeprom è 4096 bytes ma solo 2048 vengono utilizzati In model setup menus automatically set switch by moving the control - Nel menu settaggio modelli selezionare automaticamente l'interruttore muovendo il controllo + Nel menu settaggio modelli selezionare automaticamente l'interruttore muovendo il controllo OpenTX for 9XR - OpenTx per 9xR + OpenTx per 9xR OpenTX for 9XR with M128 chip - OpenTx per 9XR con chip M128 + OpenTx per 9XR con chip M128 OpenTX for Gruvin9x board / 9X - OpenTX per board Gruvin 9x / 9x + OpenTX per board Gruvin 9x / 9x @@ -7660,7 +7660,7 @@ la eeprom è 4096 bytes ma solo 2048 vengono utilizzati OpenTX for Sky9x board / 9X - OpenTX per board Sky9x / 9X + OpenTX per scheda Sky9x / 9X @@ -7809,152 +7809,152 @@ la eeprom è 4096 bytes ma solo 2048 vengono utilizzati S11 - + S12 - + S13 - + S14 - + S15 - + S16 - + S21 - + S22 - + S23 - + S24 - + S25 - + S26 - + RudTrim Left - + Trim Dir Sinistro RudTrim Right - + Trim Dir Destro EleTrim Down - + Trim Ele Giù EleTrim Up - + Trim Ele Su ThrTrim Down - + Trim Mot Giù ThrTrim Up - + Trim Mot Su AilTrim Left - + Trim Ale Sinistro AilTrim Right - + Trim Ale Destro ABS - + THs - + MOs TH% - + MO% THt - + MOt ??? - + Diff(%1) - + Diff(%1) Expo(%1) - + Espo(%1) Function(%1) - + funzione(%1) Curve(%1) - + Curva(%1) !Curve(%1) - + !Curva(%1) @@ -7998,49 +7998,49 @@ la eeprom è 4096 bytes ma solo 2048 vengono utilizzati Trim disabled - Trim disabilitato + Trim disabilitato Own Trim - Trim proprio + Trim proprio Use Trim from Flight mode %1 - Usa Trim per Fase di volo %1 + Usa Trim della Fase di volo %1 Use Trim from Flight mode %1 + Own Trim as an offset - Usa Trim per Fase di volo %1 + Trim proprio come offset + Usa Trim della Fase di volo %1 + Trim proprio come offset FW: %1 - + FW: %1 Pict: %1 - + immag: %1 Profile image - Immagine profilo + Immagine profilo Simultaneous usage of expo and curves is no longer supported in OpenTX - L'usosimultaneo di esponeziali e curve non è più supportato in OpenTX + L'uso simultaneo di esponeziali e curve non è più supportato in OpenTX Thank you for upgrading to OpenTX 2.0. This is a major upgrade that adds and modifies a lot of things, so please make sure that you read release notes carefully to learn about the changes, and thoroughly check each of your models for proper function. The OpenTX Team. - Grazie per aver aggiornato a OpenTX 2.0 Questo Importante aggiornamento aggiunge nuove funzionalità e migliora quelle già esistenti. Leggere molto attentamente le note di rilascio e controllate approfonditamente i programmi esistenti per assicurarsi che tutte le impostazioni funzionino regolarmente. + Grazie per aver aggiornato a OpenTX 2.0 Questo Importante aggiornamento aggiunge nuove funzionalità e migliora quelle già esistenti. Leggere molto attentamente le note di rilascio e controllate approfonditamente i programmi esistenti per assicurarsi che tutte le impostazioni funzionino regolarmente. Il Team di OpenTX. @@ -8050,17 +8050,17 @@ Il Team di OpenTX. No Radio Found - + Radio non trovata <html><head/><body><p>No Radio was found!</p><p>Make sure that you hold the lower trim buttons towards the center while you turn it on.</p><p>Then connect the USB wire.</p></body></html> - + <html><head/><body><p>Nessuna radio è stata trovata!</p><p>Siate sicuri di tenere entrambi i trim inferiori verso il centro durante l'accensione della radio..</p><p>Solo dopo connettete il cavo USB.</p></body></html> OK - + OK @@ -8094,67 +8094,67 @@ Il Team di OpenTX. Center beep - Avviso centraggio + Avviso centraggio OFF - Spento + Spento Model Image - Immagine modello + Immagine modello Exponential - Esponenziale + Esponenziale Throttle Trim Idle Only - Trim Motore solo Idle + Trim Motore solo Idle Extra Fine - Extra Fine + Extra Fine Fine - Fine + Fine Medium - Medio + Medio Coarse - Ampio + Ampio Display Checklist - Mostra Note + Mostra Note Timer 2 - + Temporizzatore 2 Timer 1 - + Temporizzatore 1 Throttle Source - + Sorgente motore Timer Source @@ -8163,52 +8163,52 @@ Il Team di OpenTX. Trim Step - Passo trim + Passo trim Warnings - Avvisi + Avvisi Switch Warnings - Attiva Avvisi + Avviso interruttore Pot Warnings - Avviso Pot + Avviso Pot Manual - Manuale + Manuale Auto - Auto + Auto Model - Modello + Modello Extended Limits - Limiti estesi + Limiti estesi Extended Trims - Trim estesi + Trim estesi Throttle Warning - Avviso Motore + Avviso Motore @@ -8216,7 +8216,7 @@ Il Team di OpenTX. If this is checked the throttle will be reversed. Idle will be forward, trim will also be reversed and the throttle warning will be reversed as well. - Stick motore inverso. + Stick motore invertito. Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà in avanti, anche i trim verranno rovesciati e anche gli avvisi. @@ -8224,7 +8224,7 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà Reverse Throttle - Stck Motore invertito + Stick Motore invertito @@ -8232,7 +8232,7 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà Elevator Channel: - Canale Elevatore + Canale dell'Elevatore: @@ -8241,27 +8241,27 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà Warning - Avviso + Avviso Joystick enabled but not configured correctly - Joystick abilitato ma non configurato correttamente + Joystick abilitato ma non configurato correttamente Cannot open joystick, joystick disabled - Non riesco ad aprire il joystick, supporto joystick disabilitato + Non riesco ad aprire il joystick, supporto joystick disabilitato Simulating Radio (%1) - Simulazione Radio (%1) + Simulazione Radio (%1) Firmware %1 error: %2 - Firmware %1 errore: %2 + Firmware %1 errore: %2 @@ -8269,7 +8269,7 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà Companion Simulator - Simulatore di Companion + Simulatore di Companion @@ -8277,7 +8277,7 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà Right Double Click to Reset - Doppio click con il destro per portare a 0 + Doppio click con il destro per portare a 0 THR @@ -8299,30 +8299,30 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà Hold X - Tieni X + Mantieni X Fix X - Fissa X + Blocca X Fix Y - Fissa Y + Blocca Y Hold Y - Tieni Y + Mantieni Y Gvars - Var Glob + Var Glob TextLabel @@ -8351,7 +8351,7 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà BEEP - SUONO + SUONO P1 @@ -8368,12 +8368,12 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà 9x Simulator - Simulatore 9x + Simulatore 9x Outputs - Uscite + Uscite @@ -8381,36 +8381,36 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà Companion Simulator - Simulatore di Companion + Simulatore di Companion Gvars - Var Glob + Var Glob Hold Y - Tieni Y + Mantieni Y Fix Y - Fissa Y + Blocca Y Fix X - Fissa X + Blocca X Hold X - Tieni X + Mantieni X @@ -8418,7 +8418,7 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà Right Double Click to Reset - Doppio click con il destro per portare a 0 + Doppio click con il destro per portare a 0 TextLabel @@ -8427,12 +8427,12 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà Taranis Simulator - Simulatore Taranis + Simulatore Taranis Outputs - Uscite + Uscite @@ -8484,114 +8484,114 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà A1 - A1 + A1 A2 - A2 + A2 RSSI - RSSI + RSSI Alarm 1 - Allarme 1 + Allarme 1 FrSky S.PORT - + FrSky S.PORT FrSky D - + FrSky D RxBatt - + BattRx Critical Alarm - Allarme critico + Allarme critico ---- - ---- + ---- Yellow - Giallo + Giallo Orange - Arancione + Arancione Red - Rosso + Rosso Alarm 2 - Allarme 2 + Allarme 2 Serial Protocol - Protocollo seriale + Protocollo seriale Volt source - Misura della tensione + Misura della tensione A4 - A4 + A4 A3 - A3 + A3 Metric - Sistema Metrico + Sistema Metrico Imperial - Imperiale + Imperiale Current source - Misura della corrente + Misura della corrente Protocol - Protocollo + Protocollo NONE @@ -8604,12 +8604,12 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà None - Nessuno + Nessuno FrSky Sensor Hub - FrSky Sensor Hub + FrSky Sensor Hub CEL @@ -8618,12 +8618,12 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà Units - Unità + Unità Blades - Pale dell'elica + Pale dell'elica Vario @@ -8632,87 +8632,87 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà Sink Max - Max Discesa + Max Discesa Off - NO + NO Climb Max - Max Salita + Max Salita Sink Min - Min Discesa + Min Discesa Climb Min - Min Salita + Min Salita Vario source - Sorgente per il Vario + Sorgente per il Vario Vario limits - Limiti per il Vario + Limiti per il Vario Use GPS as altitude source - Usa il GPS per l'altitudine + Usa il GPS per l'altitudine Display altitude in toolbar - Mostra l'altitudine sulla barra + Mostra l'altitudine sulla barra Altimetry - + Altimetro mAh - + mAh A - + A Various - Varie + Varie mAh count - Conteggio mAh + Conteggio mAh Low Alarm - Allarme basso + Allarme basso FAS Offset - Offset FAS + Offset FAS Persistent mAh - mAh persistenti + mAh persistenti @@ -8720,123 +8720,123 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà Unit - Unità + Unità Max Value - Valore MAX + Valore MAX Alarm 1 - Allarme 1 + Allarme 1 ---- - ---- + ---- Yellow - Giallo + Giallo Orange - Arancione + Arancione Red - Rosso + Rosso < - < + < > - > + > Alarm 2 - Allarme 2 + Allarme 2 Offset - Spostamento + Spostamento Volts (V) - Voltaggio (V) + Voltaggio (V) Amps (A) - Corrente (A) + Corrente (A) Speed (m/s or ft/s) - Velocità (m/s o ft/s) + Velocità (m/s o ft/s) Raw (-) - Grezza (-) + Grezza (-) Speed (km/h or miles/h) - Velocità (km/h o miglia/h) + Velocità (km/h o mph) Meters (m or ft) - Metri (m o ft) + Metri (m o ft) Temp (°) - Temperatura (°) + Temperatura (°) Fuel (%) - Carburante (%) + Carburante (%) mAmps (mA) - Corrente (mA) + Corrente (mA) Low Alarm - Allarme basso + Allarme basso Critical Alarm - Allarme critico + Allarme critico Range - Intervallo + Intervallo @@ -8882,94 +8882,94 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà Telemetry screen %1 - Schermo telemetria %1 + Schermo telemetria %1 Low Alarm - Allarme basso + Allarme basso Critical Alarm - Allarme critico + Allarme critico Winged Shadow How High - Winged Shadow How High + Winged Shadow How High Winged Shadow How High (not supported) - Winged Shadow How High (non supportato) + Winged Shadow How High (non supportato) Alti - + Alti+ - + VSpeed - + A1 - A1 + A1 A2 - A2 + A2 dTE - + RxBatt - + BattRx A3 - A3 + A3 A4 - A4 + A4 FAS - FAS + FAS Cells - + Celle --- - --- + --- @@ -9061,72 +9061,72 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà Model Wizard - + Assistente di configurazione Model Type - Tipologia veivolo + Tipologia modello Enter model name and model type. - Inserici nome e tipo di modello + Inserire nome e tipo di modello. Throttle - Motore + Motore Has your model got a motor or an engine? - Il modello ha un motore a scoppio o elettrico? + Il modello ha un motore a scoppio o elettrico? Wing Type - Tipo di ala + Tipo di ala Is your model a flying wing/deltawing or has it a standard wing configuration? - Il modello è un tuttala / ala a delta o ha una configurazione standard? + Il modello è un tuttala / ala a delta o ha una configurazione standard? Ailerons - Alettoni + Alettoni Has your model got ailerons? - Il modello ha gli alettoni? + Il modello ha gli alettoni? Flaps - + Flap Has your model got flaps? - Il modello ha i flaps? + Il modello ha i flap? Airbrakes - Diruttori + Diruttori Has your model got airbrakes? - Il modello ha i diruttori? + Il modello ha i diruttori? Flying-wing / Delta-wing - Tuttala / Ala a delta + Tuttala / Ala a delta Are the elevons controlled by servos connected to separate channels or by a single servo channel? @@ -9135,177 +9135,177 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà Select the elevons channels - + Selezionare in canali degli elevoni Rudder - Direzionale + Direzionale Does your model have a rudder? - Il modello ha una deriva? + Il modello ha un direzionale? Tail Type - Tipo di coda + Tipo di coda Select which type of tail your model is equiped with. - Selezionare quale tipo di coda ha il modello + Selezionare quale tipo di coda ha il modello. Tail - Coda + Coda Select channels for tail control. - Selezionare i canali che controllano la coda + Selezionare i canali che controllano la coda. V-Tail - Coda a V + Coda a V Select elevator channel. - Selezionare il canale dell'elevatore + Selezionare il canale dell'elevatore. Cyclic - Ciclico + Ciclico Which type of swash control is installed in your helicopter? - Quale tipo di alello è installato sul vostro elicottero? + Quale tipo di anello è installato sul vostro elicottero? Tail Gyro - Giroscopio di coda + Giroscopio di coda Has your helicopter got an adjustable gyro for the tail? - L' elicottero ha un giroscopio per la coda? + L' elicottero ha un giroscopio per la coda? Rotor Type - Tipo di rotore + Tipo di rotore Has your helicopter got a flybar? - L'elicottero ha una Flubar? + L'elicottero ha una Flybar ? Helicopter - Elicottero + Elicottero Select the controls for your helicopter - Selezionare il controllo per l'elicottero + Selezionare i controlli per l'elicottero Multirotor - Multirotore + Multirotore Select the control channels for your multirotor - Selezionare i canali di controllo per il multirotore + Selezionare i canali di controllo per il multirotore Model Options - + Opzioni del modello Select additional options - + Selezionarefunzionalità aggiuntive Save Changes - Salva cambiamenti + Salva cambiamenti Manually check the direction of each control surface and reverse any channels that make controls move in the wrong direction. Remove the propeller/propellers before you try to control your model for the first time.<br>Please note that continuing removes all old model settings! - Controllare manualmente la direzione di ogni superfice di controllo e invertire ogni canale che si sposta nella direzione errata. Rimuovere l'elica/eliche prima di controllare per la prima volta il modello.<br>Attenzione: continuando verranno rimosse tutte le impostazioni dei vecchi modelli! + Controllare manualmente la direzione di ogni superfice di controllo e invertire ogni canale che si sposta nella direzione errata. Rimuovere l'elica/eliche prima di controllare per la prima volta il modello.<br>Attenzione: continuando verranno rimosse tutte le impostazioni dei vecchi modelli! Enter a name for your model and select model type. - Inserire il nome per il vostro modello e selezionare il tipo di modello + Inserire il nome per il vostro modello e selezionare il tipo di modello. Select the receiver channel that is connected to your ESC or throttle servo.<br><br>Throttle - Spektrum: CH1, Futaba: CH3 - Selezionare il canale della ricevente al quale è connesso l'ESC o il servo del gas.<br><br>Motore - Spectrum: CH1, Futaba:.CH3 + Selezionare il canale della ricevente al quale è connesso l'ESC o il servo del gas.<br><br>Es. Spectrum: CH1, Futaba:.CH3 Most aircraft have a main wing and a tail with control surfaces. Flying wings and delta winged aircraft only have a single wing. The main control surface on a standard wing controls the roll of the aircraft. This surface is called an aileron.<br>The control surface of a delta wing controls both roll and pitch. This surface is called an elevon. - Molti aeromobili hanno l'ala principale e la coda con superfici di controllo. I veivoli tuttala e le ali a delta ne hanno una s ola. In un ala tradizionale le superfici di controllo principali provocano il rollio del veivolo e si chiamano Alettoni.<br>In una ala a delta le superfici di controllo provocano contemporaneamente rollio e beccheggio e si chiamano Elevoni. + Molti aeromobili hanno l'ala principale e la coda con superfici di controllo. I veivoli tuttala e le ali a delta ne hanno una sola. In un ala tradizionale le superfici di controllo principali provocano il rollio del veivolo e si chiamano Alettoni.<br>In un'ala a delta le superfici di controllo provocano contemporaneamente rollio e beccheggio e si chiamano Elevoni. Models use one or two channels to control the ailerons.<br>A so called Y-cable can be used to connect a single receiver channel to two separate aileron servos. If your servos are connected by a Y-cable you should select the single-servo option.<br><br>Aileron - Spektrum: CH2, Futaba: CH1 - + This wizard assumes that your flaps are controlled by a switch. If your flaps are controlled by a potentiometer you can change that manually later. - + Questo assistente configura l'azionamento dei flap tramite switch. Potete associare un potenziometro in seguito. Air brakes are used to reduce the speed of advanced sail planes.<br>They are very uncommon on other types of planes. - + I diruttori sono utilizzati per rdurre la velocità degli alianti.<br>Non sono molto comuni in altri tipi di modelli. Models use two channels to control the elevons.<br>Select these two channels - + I modelli usano due canali per il controllo degli elevoni.<br>Selezionare i canali appropriati Select the receiver channel that is connected to your rudder.<br><br>Rudder - Spektrum: CH4, Futaba: CH4 - + Selezionare il canale della ricevente al quale è connesso il direzionale.<br><br>Es. Spectrum: CH4, Futaba:.CH4 Select the tail type of your plane. - + Slezionare il tipo di coda dell'aereo. Select the Rudder and Elevator channels.<br><br>Rudder - Spektrum: CH4, Futaba: CH4<br>Elevator - Spektrum: CH3, Futaba: CH2 - + Selezionare il canale del direzionale e dell'elevatore.<br><br>Direzionale - Spectrum: CH4, Futaba:.CH4<br>Elevatore - Spektrum: CH3, Futaba: CH2 Select the Elevator channel.<br><br>Elevator - Spektrum: CH3, Futaba: CH2 - + Selezionare il canale della ricevente al quale è connesso l'elevatore.<br><br>Es. Spectrum: CH3, Futaba:.CH2 @@ -9316,22 +9316,22 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà TBD. - + Select the control channels for your multirotor.<br><br>Throttle - Spektrum: CH1, Futaba: CH3<br>Yaw - Spektrum: CH4, Futaba: CH4<br>Pitch - Spektrum: CH3, Futaba: CH2<br>Roll - Spektrum: CH2, Futaba: CH1 - + Selezionare i canali per il vostro multirotore.<br><br>Motore - Spektrum: CH1, Futaba: CH3<br>Imbardata - Spektrum: CH4, Futaba: CH4<br>Beccheggio - Spektrum: CH3, Futaba: CH2<br>Rollio - Spektrum: CH2, Futaba: CH1 There is no help available for the current page. - Non è disponibile un aiuto per questa pagina + Nessun aiuto disponibile per questa pagina. Model Wizard Help - + Aiuto dell'assistente di configurazione @@ -9339,17 +9339,17 @@ Se l'opzione selezionata lo stick motore verrà rovesciato. Il minimo sarà Plane - Aereo + Aereo Multicopter - + Multirotore Helicopter - Elicottero + Elicottero @@ -10497,7 +10497,7 @@ m2560 per le schede v4.1 Honors go to Rafal Tomczak (RadioClone), Thomas Husterer (th9x) and Erez Raviv (er9x and eePe) - + Un sentito ringraziamento è dovuto a Rafal Tomczak (RadioClone), Thomas Husterer (th9x) e Erez Raviv (er9x e eePe) diff --git a/companion/src/translations/companion_sv.ts b/companion/src/translations/companion_sv.ts index dd55793fc..bf661ce43 100644 --- a/companion/src/translations/companion_sv.ts +++ b/companion/src/translations/companion_sv.ts @@ -4,7 +4,7 @@ AileronsPage - + No Nej @@ -1320,12 +1320,12 @@ Behöver inte vara samma som menyspråket Symmetrisk f(x)=f(-x) - + Are you sure you want to reset curve %1 ? Vill du verkligen nollställa kurvan %1 ? - + Editing curve %1 Redigera kurvan %1 @@ -1368,7 +1368,7 @@ Behöver inte vara samma som menyspråket På - + Error Fel @@ -1378,7 +1378,7 @@ Behöver inte vara samma som menyspråket Kan inte hitta ljudfilen %1! - + &Delete &Ta bort @@ -1388,7 +1388,7 @@ Behöver inte vara samma som menyspråket Ta bort - + &Copy &Kopiera @@ -1941,7 +1941,7 @@ Behöver inte vara samma som menyspråk FlightModesPanel - + Flight Mode %1 Flygläge %1 @@ -2000,6 +2000,7 @@ Dessa inställningar gäller för alla modeller. + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } @@ -2014,7 +2015,7 @@ p, li { white-space: pre-wrap; } <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Värden mellan 20 och 45</span></p></body></html> - + Sound Mode Ljudläge @@ -2200,7 +2201,7 @@ Mode 4: - + @@ -2227,7 +2228,7 @@ Mode 4: 4 - Extra högt. - + Quiet Tyst @@ -2251,7 +2252,7 @@ Mode 4: Lång - + @@ -2296,7 +2297,7 @@ Mode 4: Läge - + Only Alarms Endast vid alarm @@ -2537,7 +2538,13 @@ Mode 4: Invertera Spakar - + + Play Delay (switch mid position) + Talfördröjning för +brytare + + + Pot. 4 Pot. 4 @@ -2602,7 +2609,7 @@ Mode 4: Serieport - + X-Short Extra Kort @@ -2682,11 +2689,12 @@ Mode 4: + ms ms - + Weight Vikt @@ -2768,12 +2776,12 @@ Mode 4: PPM Multiplikator - + Alarms Only Endast för alarm - + Trainer Elev @@ -2805,7 +2813,7 @@ Mode 4: POT 3 - + Timeshift from UTC Tidsdifferens till UTC @@ -2869,7 +2877,7 @@ Mode 4: Belysningens ljusstyrka - + Negative span Negativa värden @@ -2892,7 +2900,7 @@ Mode 4: Spänning - + Warning Varning @@ -2908,7 +2916,7 @@ Mode 4: Felaktig information i profilen, hårdvaruinställningar lästes inte in - + Do you want to store calibration in %1 profile<br>overwriting existing calibration? Vill du skriva över existerande kalibreringsdata<br>i profilen %1 med de nuvarande? @@ -2918,7 +2926,7 @@ Mode 4: Kalibrering ojch hårdvaruinställningar sparades. - + Speaker Högtalare @@ -2996,7 +3004,7 @@ Mode 4: Språk för Röst - + If you enable FAI, you loose the vario, the play functions, the telemetry screen. This function cannot be disabled by the radio. Are you sure ? @@ -3070,7 +3078,7 @@ FAI-funktionen kan inte slås av i sändaren. 115200 Baud - + Rud Rod @@ -3410,7 +3418,7 @@ FAI-funktionen kan inte slås av i sändaren. LB%1 - + &Delete &Ta bort @@ -3420,7 +3428,7 @@ FAI-funktionen kan inte slås av i sändaren. Ta bort - + &Copy &Kopiera @@ -3456,12 +3464,12 @@ FAI-funktionen kan inte slås av i sändaren. - + File loaded Filen har laddats - + Save As @@ -3581,7 +3589,7 @@ Version %2 finns tillgänglig. Vill du ladda ned den nu ? - + Conversion failed Konverteringen misslyckades @@ -3596,7 +3604,7 @@ Vill du ladda ned den nu ? Säkerhetskopieringen misslyckades - + OpenTX Companion - FW: %1 - Profile: %2 OpenTX Companion - FW: %1 - Profil: %2 @@ -3774,8 +3782,8 @@ Vill du ladda ned den nu ? - - + + @@ -3785,7 +3793,7 @@ Vill du ladda ned den nu ? Fel - + Cannot write file %1: %2. Filen %1 kunde inte skrivas: @@ -3798,8 +3806,8 @@ Vill du ladda ned den nu ? - - + + Error opening file %1: %2. @@ -3807,7 +3815,7 @@ Vill du ladda ned den nu ? %2. - + Compilation server termporary failure, try later Tillfälligt fel i byggservern. Försök igen senare @@ -3827,14 +3835,14 @@ Vill du ladda ned den nu ? Jämför modeller - - + + Backup is impossible Säkerhetskopiering kan inte utföras - + A new release of Companion is available, please check the OpenTX website! En ny version av Companion finns tillgänglig. Var god kontrollera OpenTX webbsida! @@ -3844,20 +3852,20 @@ Vill du ladda ned den nu ? Firmware får inte plats i radion eftersom alltför många funktioner är valda samtidigt - - + + The backup dir set in preferences does not exist Foldern för säkerhetskopior existerar inte - + Warning Varning - + Alt+S Alt+S @@ -3963,14 +3971,14 @@ Vill du ladda ned den nu ? Kan inte hitta filen %1 ! - + Error reading file %1: %2. Fel vid inläsning från filen %1: %2. - + Load backup from file Ladda backup från fil @@ -4003,7 +4011,8 @@ Vill du ladda ned den nu ? Release Notes - + + Do you want to download release %1 now ? Vill du ladda ned firmware %1 nu ? @@ -4050,7 +4059,7 @@ Vill du ladda ned den nu ? Den firmware som valts har inga release notes. - + The file %1 has not been recognized as a valid Models and Settings file Write anyway ? @@ -4064,7 +4073,7 @@ Starta skrivningen i alla fall ? Det går inte att verifiera att Modeller och Inställningar är kompatibla. Fortsätt i alla fall? - + Cannot convert Models and Settings for use with this firmware, original data will be used Modeller och Inställningar kan inte översättas till denna firmware. Ingen information uppdateras @@ -4074,7 +4083,7 @@ Starta skrivningen i alla fall ? Skrivningen av firware misslyckades - + About Companion Om Companion @@ -4111,12 +4120,11 @@ Version %2 finns tillgänglig. Vill du ladda ned den nu ? - Do you want to download release %1 %2 now ? - Vill du ladda ned version e %1 nu %2 nu ? + Vill du ladda ned version e %1 nu %2 nu ? - + A new version of %1 firmware is available: - current is %2 - newer is %3 @@ -4140,20 +4148,20 @@ Vill du ladda ned den nya versionen nu ? Läs Modeller och Inställningar från radion - + Write Radio Backup from %1 to the radio? Skriv Backup från %1 till radion? - + Backup Models and Settings From Radio Gör Backup av radiodata - + The radio firmware belongs to another product family, check file and preferences! Sändarens firmware är av en annan typ än den aktuella. Kontrollera konfigurationen! @@ -4168,17 +4176,17 @@ Vill du ladda ned den nya versionen nu ? Skriv Backup till radion - + Write Firmware To Radio Skriv firmware till radion - + Read Firmware From Radio Läs firmware från radion - + Restore Models and Settings To Radio Återställ Backup till radion @@ -4213,7 +4221,7 @@ Vill du ladda ned den nya versionen nu ? Spara radiobackup till fil - + The OpenTX Companion project was originally forked from <a href='%1'>eePe</a> OpenTX-Companion-projektet grenades ursprungligen av från <a href='%1'>eePe</a> @@ -4550,7 +4558,7 @@ Vill du ladda ned den nya versionen nu ? Visa alla radioprofiler i en lista - + Invalid Models and Settings File %1 Filen innehåller inte Modeller och Inställningar: %1 @@ -4565,8 +4573,8 @@ Vill du ladda ned den nya versionen nu ? MdiChild - - + + @@ -4574,8 +4582,8 @@ Vill du ladda ned den nya versionen nu ? - - + + @@ -4588,36 +4596,36 @@ Vill du ladda ned den nya versionen nu ? Fel - + Editing model %1: Redigera modell %1: - + Unable to find file %1! Kan inte hitta filen %1 ! - - + + Error reading file %1: %2. Fel vid inläsning från filen %1: %2. - - + + - + Error opening file %1: %2. Fel vid öppning av filen %1: %2. - + @@ -4627,8 +4635,8 @@ Vill du ladda ned den nya versionen nu ? - - + + Cannot write file %1: %2. Filen %1 kunde inte skrivas: @@ -4643,12 +4651,12 @@ Vill du ladda ned den nya versionen nu ? %2. - + free bytes bytes lediga - + Invalid EEPROM File %1 Ogiltig modelldatafil %1 @@ -4659,7 +4667,7 @@ Vill du ladda ned den nya versionen nu ? Ogiltig binär modelldatafil %1 - + %1 has been modified. Do you want to save your changes? %1 har förändrats. @@ -5009,30 +5017,30 @@ p, li { white-space: pre-wrap; } MixesPanel - + Move Up Flytta uppåt - - + + Ctrl+Up Ctrl+Up - - + + Move Down Flytta nedåt - - + + Ctrl+Down Ctrl+Down - + Clear Mixes Nollställ mixarna @@ -5051,7 +5059,7 @@ p, li { white-space: pre-wrap; } Ingen Trim - + NoTrim EjTrim @@ -5551,7 +5559,7 @@ p, li { white-space: pre-wrap; } ModulePanel - + Trainer Port Trainer-ingång @@ -5656,14 +5664,14 @@ p, li { white-space: pre-wrap; } - + Name Namn - + EEprom Size Storlek på modelldata @@ -5695,12 +5703,12 @@ p, li { white-space: pre-wrap; } - + Enabled Aktiv - + Disabled Inaktiv @@ -5747,12 +5755,12 @@ p, li { white-space: pre-wrap; } - + Switch Brytare - + Flight mode name Namn för flygläget @@ -5823,7 +5831,7 @@ p, li { white-space: pre-wrap; } Mixar - + CH @@ -5979,18 +5987,18 @@ p, li { white-space: pre-wrap; } Analog - + Inputs Inputs - + NoTrim EjTrim - + Weight(%1) Vikt(%1) @@ -6000,7 +6008,7 @@ p, li { white-space: pre-wrap; } Brytare(%1) - + No DR/Expo Ingen DR/Expo @@ -6132,8 +6140,8 @@ p, li { white-space: pre-wrap; } Stapelnummer - - + + Source Källa @@ -6158,7 +6166,7 @@ p, li { white-space: pre-wrap; } - + P1 P1 @@ -6277,7 +6285,7 @@ p, li { white-space: pre-wrap; } - + Timer1 Timer1 @@ -6330,9 +6338,8 @@ p, li { white-space: pre-wrap; } RSSI Rx - Rx Batt - Rx Batt + Rx Batt @@ -6486,17 +6493,17 @@ p, li { white-space: pre-wrap; } Timer(%1, %2) - + Timer(%1, %2) Duration (%1s) - + Fördröjning (%1s) Delay (%1s) - + Fördröjning (%1s) @@ -6669,7 +6676,7 @@ p, li { white-space: pre-wrap; } Det går inte att använda Expo på en specialkurva i open9x - + Support for frsky telemetry mod Stöd för FrSky telemeri @@ -7046,9 +7053,9 @@ p, li { white-space: pre-wrap; } - + - + CH%1 KN%1 @@ -7666,7 +7673,7 @@ p, li { white-space: pre-wrap; } - + No repeat Repetera ej @@ -7724,7 +7731,7 @@ p, li { white-space: pre-wrap; } %1s - + Value Värde @@ -8042,12 +8049,21 @@ p, li { white-space: pre-wrap; } Flygläge %1 värde - + OpenTX only accepts %1 points in all curves OpenTX accepterar bara %1 punkter i alla kurvor - + openTx only accepts %1 points in all curves + OpenTX accepterar bara %1 punkter i alla kurvor + + + + OpenTx only accepts %1 points in all curves + OpenTX accepterar bara %1 punkter i alla kurvor + + + @@ -8055,7 +8071,7 @@ p, li { white-space: pre-wrap; } OpenTX stödjer inte funktionen för den aktuella hårdvaran - + OpenTX doesn't accept this protocol @@ -8067,14 +8083,14 @@ p, li { white-space: pre-wrap; } OpenTX accepterar inte detta antal kanaler - + Your radio probably uses a wrong firmware, eeprom size is 4096 but only the first 2048 are used Din sändare har antagligen laddats med felaktig programvara. eeprom-storleken är 4096, men enbart den första hälften används - + Support for MAVLINK devices Stöd för MAVLINK-enheter @@ -8199,7 +8215,7 @@ Vi uppskattar ert stöd! Gruppen bakom OpenTX/Companion. - + Trim disabled Trim inaktiv @@ -8755,23 +8771,21 @@ Gasen reverseras om alternativet väljs. Tomgång ligger då uppåt. Trim och ga A2 - + RSSI RSSI - - + Alarm 1 Alarm 1 - Critical Alarm - Kritisk Alarmnivå + Kritisk Alarmnivå - + ---- ---- @@ -8795,13 +8809,12 @@ Gasen reverseras om alternativet väljs. Tomgång ligger då uppåt. Trim och ga Röd - - + Alarm 2 Alarm 2 - + Serial Protocol Serieprotokoll @@ -8884,9 +8897,8 @@ Gasen reverseras om alternativet väljs. Tomgång ligger då uppåt. Trim och ga Blad - RxBatt - Mottagar-batteri + Mottagar-batteri Alti @@ -8901,7 +8913,7 @@ Gasen reverseras om alternativet väljs. Tomgång ligger då uppåt. Trim och ga Vario - + Sink Max Sjunk Max @@ -8971,12 +8983,11 @@ Gasen reverseras om alternativet väljs. Tomgång ligger då uppåt. Trim och ga mAh-antal - Low Alarm - Låg Alarmnivå + Låg Alarmnivå - + FAS Offset FAS-offset @@ -9159,12 +9170,12 @@ Gasen reverseras om alternativet väljs. Tomgång ligger då uppåt. Trim och ga TelemetryPanel - + Telemetry screen %1 Telemetriskärm %1 - + Low Alarm Låg Alarmnivå @@ -9184,19 +9195,18 @@ Gasen reverseras om alternativet väljs. Tomgång ligger då uppåt. Trim och ga Winged Shadow How High (stöds ej) - RxBatt - RxBatt + RxBatt - - + + A1 A1 - + Alti Höjd @@ -9212,18 +9222,18 @@ Gasen reverseras om alternativet väljs. Tomgång ligger då uppåt. Trim och ga - + A2 A2 - + dTE - + A3 A3 @@ -9302,7 +9312,7 @@ Gasen reverseras om alternativet väljs. Tomgång ligger då uppåt. Trim och ga TimerPanel - + Silent Tyst @@ -9346,7 +9356,7 @@ Gasen reverseras om alternativet väljs. Tomgång ligger då uppåt. Trim och ga WizardDialog - + Model Wizard Modellguide @@ -9539,7 +9549,7 @@ Gasen reverseras om alternativet väljs. Tomgång ligger då uppåt. Trim och ga Guiden har kopplat radiokanaler till kontroller i din modell. Nu måste du själv ställa in riktningen för kontrollerna. Testa och reversera de kanaler som gör att dina kontroller rör sig i fel riktning.<br>Ta bort propellern/propellrarna innan du slår på din modell första gången.<br>OBS. Om du slutför guiden tar du bort alla eventuella tidigare inställningar för modellplatsen! - + Enter a name for your model and select model type. Ange ett namn för din modell och ange modeltypen. @@ -10137,13 +10147,13 @@ Detta används av mallen för att koppla kanal till output-nummer. Verifierar - + FUSES: Low=%1 High=%2 Ext=%3 Vad är EXT? SÄKRINGAR: Låg=%1 Hög=%2 Ext=%3 - + result result resultat @@ -10180,19 +10190,19 @@ Detta används av mallen för att koppla kanal till output-nummer. avslutade inte korrekt - + finished correctly finished correctly avslutade korrekt - + Started Started Startade - + Error @@ -10270,7 +10280,7 @@ Do you want some help ? Vill du ha hjälp ? - + Copy did not finish correctly Kopieringen gick inte bra @@ -10523,7 +10533,7 @@ m2560 för v4.1-kort - + @@ -10537,9 +10547,9 @@ m2560 för v4.1-kort Bilder (%1) - - + + @@ -10622,7 +10632,7 @@ m2560 för v4.1-kort - + Browse for file Välj fil @@ -10697,8 +10707,8 @@ m2560 för v4.1-kort Kan inte hitta filen %1 ! - + Error opening file %1: %2. diff --git a/companion/src/xmlinterface.cpp b/companion/src/xmlinterface.cpp index 8e1701ebe..b74f0e6da 100644 --- a/companion/src/xmlinterface.cpp +++ b/companion/src/xmlinterface.cpp @@ -105,8 +105,6 @@ void saveGeneralSettings(GeneralSettings & settings, global_settings & gs) } /* TODO if (settings.disableSplashScreen) gs.splash_screen(false); */ - if (settings.filterInput) - gs.filter_input(filter_input::value(settings.filterInput)); /* TODO if (settings.backlightDelay) gs.light_auto_off_timer(settings.lightAutoOff); */ gs.default_channel_order(settings.templateSetup); diff --git a/companion/targets/windows/companion-msys.nsi.in b/companion/targets/windows/companion-msys.nsi.in index e2f1ed51e..88434ac76 100644 --- a/companion/targets/windows/companion-msys.nsi.in +++ b/companion/targets/windows/companion-msys.nsi.in @@ -95,6 +95,10 @@ Section "OpenTX companion" SecDummy File "@CMAKE_CURRENT_SOURCE_DIR@\..\targets\windows\avrdude.conf" File "@CMAKE_CURRENT_SOURCE_DIR@\..\targets\windows\libusb0.dll" File "@CMAKE_CURRENT_SOURCE_DIR@\..\targets\windows\dfu-util.exe" + + CreateDirectory "$INSTDIR\phonon_backend" + SetOutPath "$INSTDIR\phonon_backend" + File "@QT_BINARY_DIR@\..\plugins\phonon_backend\Phonon_ds94.dll" CreateDirectory "$INSTDIR\lang" SetOutPath "$INSTDIR\lang" diff --git a/companion/targets/windows/companion-vs.nsi.in b/companion/targets/windows/companion-vs.nsi.in index eb21dd5d4..6515702dd 100644 --- a/companion/targets/windows/companion-vs.nsi.in +++ b/companion/targets/windows/companion-vs.nsi.in @@ -123,6 +123,10 @@ Section "OpenTX Companion" SecDummy File "@CMAKE_CURRENT_SOURCE_DIR@\..\targets\windows\dfu-util.exe" File "@CMAKE_CURRENT_SOURCE_DIR@\..\targets\windows\libusb-1.0.dll" + CreateDirectory "$INSTDIR\phonon_backend" + SetOutPath "$INSTDIR\phonon_backend" + File "@QT_BINARY_DIR@\..\plugins\phonon_backend\Phonon_ds94.dll" + CreateDirectory "$INSTDIR\lang" SetOutPath "$INSTDIR\lang" File "*.qm" diff --git a/radio/src/Makefile b/radio/src/Makefile index 0f273a2ab..285ae7b60 100644 --- a/radio/src/Makefile +++ b/radio/src/Makefile @@ -279,7 +279,7 @@ SHELL = sh IMG2LBM = -python ../util/img2lbm.py BIN2LBM = -python ../util/bin2lbm.py TRANSLATE = -python ../util/translate.py -VERSION = 2.0.1 +VERSION = 2.0.2 SRC = CPPSRC = diff --git a/radio/src/audio_arm.cpp b/radio/src/audio_arm.cpp index b8d490da9..85fedebc3 100644 --- a/radio/src/audio_arm.cpp +++ b/radio/src/audio_arm.cpp @@ -201,8 +201,6 @@ const char * audioFilenames[] = { "rssi_org", "rssi_red", "swr_red", - "rx_org", - "rx_red", "telemko", "telemok" }; @@ -329,8 +327,8 @@ void getLogicalSwitchAudioFile(char * filename, int index, unsigned int event) char * str = getModelPath(filename); int len = STR_VSWITCHES[0]; strncpy(str, &STR_VSWITCHES[1+len*(index+SWSRC_FIRST_LOGICAL_SWITCH)], len); - str += len; - strcpy(str, suffixes[event]); + str[len] = '\0'; + strcat(str, suffixes[event]); strcat(str, SOUNDS_EXT); } @@ -1057,14 +1055,12 @@ void audioEvent(uint8_t e, uint16_t f) case AU_TIMER_30: audioQueue.playTone(BEEP_DEFAULT_FREQ+150, 120, 20, PLAY_REPEAT(2)|PLAY_NOW); break; - case AU_RXBATT_ORANGE: case AU_A1_ORANGE: case AU_A2_ORANGE: case AU_A3_ORANGE: case AU_A4_ORANGE: audioQueue.playTone(BEEP_DEFAULT_FREQ+600, 200, 20, PLAY_NOW); break; - case AU_RXBATT_RED: case AU_A1_RED: case AU_A2_RED: case AU_A3_RED: diff --git a/radio/src/bootloader/boot.cpp b/radio/src/bootloader/boot.cpp index dbb54c617..7ea8a9de0 100644 --- a/radio/src/bootloader/boot.cpp +++ b/radio/src/bootloader/boot.cpp @@ -62,9 +62,10 @@ #include "../FatFs/ff.h" #include "../FatFs/diskio.h" #include "../translations/en.h" +#include "../stamp-opentx.h" #if defined(PCBTARANIS) - #define BOOTLOADER_TITLE " Taranis BootLoader - v1.0" + #define BOOTLOADER_TITLE " Taranis BootLoader - " VERS_STR #define BOOT_KEY_UP KEY_PLUS #define BOOT_KEY_DOWN KEY_MINUS #define BOOT_KEY_LEFT KEY_MENU @@ -73,7 +74,7 @@ #define BOOT_KEY_EXIT KEY_EXIT #define DISPLAY_CHAR_WIDTH 35 #elif defined(PCBSKY9X) - #define BOOTLOADER_TITLE "Sky9x Boot Loader - v1.0" + #define BOOTLOADER_TITLE "Sky9x Boot Loader - " VERS_STR #endif const uint8_t bootloaderVersion[] __attribute__ ((section(".version"), used)) = @@ -499,6 +500,9 @@ int main() #endif #if defined(PCBTARANIS) +#if defined(REVPLUS) + turnBacklightOn(0, 0); +#endif keysInit(); I2C_EE_Init(); init_hw_timer(); diff --git a/radio/src/eeprom_conversions.cpp b/radio/src/eeprom_conversions.cpp index ecd8d1001..c6fea9d19 100644 --- a/radio/src/eeprom_conversions.cpp +++ b/radio/src/eeprom_conversions.cpp @@ -338,8 +338,8 @@ int ConvertTelemetrySource_215_to_216(int source) // TELEM_RSSI_TX added if (source >= TELEM_RSSI_TX) source += 1; - // RxBatt added - if (source >= TELEM_RXBATT) + // Reserve added + if (source >= TELEM_RESERVE0) source += 1; // A3 and A4 added if (source >= TELEM_A3) @@ -838,9 +838,6 @@ void ConvertModel_215_to_216(ModelData &model) memcpy(&g_model.frsky, &oldModel.frsky, 2*sizeof(FrSkyChannelData)); // gap for A3-A4 memcpy(((uint8_t *)&g_model.frsky) + 4*sizeof(FrSkyChannelData), ((uint8_t *)&oldModel.frsky) + 2*sizeof(FrSkyChannelData), sizeof(oldModel.frsky) - 2*sizeof(FrSkyChannelData)); - // RxBatt introduced - if (g_model.frsky.voltsSource >= FRSKY_VOLTS_SOURCE_A1) - g_model.frsky.voltsSource += 1; // A3 and A4 introduced if (g_model.frsky.voltsSource >= FRSKY_VOLTS_SOURCE_A3) g_model.frsky.voltsSource += 2; diff --git a/radio/src/gui/menu_general.cpp b/radio/src/gui/menu_general.cpp index caa28a008..3ce5166fe 100644 --- a/radio/src/gui/menu_general.cpp +++ b/radio/src/gui/menu_general.cpp @@ -406,7 +406,7 @@ void menuGeneralSetup(uint8_t event) case ITEM_SETUP_VARIO_REPEAT: lcd_putsLeft(y, STR_REPEAT_AT_ZERO); lcd_outdezAtt(RADIO_SETUP_2ND_COLUMN, y, VARIO_REPEAT_ZERO+(g_eeGeneral.varioRepeat*10), attr|LEFT); - lcd_putsAtt(lcdLastPos, y, "ms", attr); + lcd_putsAtt(lcdLastPos, y, STR_MS, attr); if (attr) CHECK_INCDEC_GENVAR(event, g_eeGeneral.varioRepeat, -30, 50); break; #endif @@ -624,10 +624,10 @@ void menuGeneralSetup(uint8_t event) #if defined(CPUARM) case ITEM_SETUP_SWITCHES_DELAY: - lcd_putsLeft(y, "Switches Delay"); - lcd_outdezAtt(RADIO_SETUP_2ND_COLUMN, y, 10*g_eeGeneral.switchesDelay, attr|LEFT); - lcd_putsAtt(lcdLastPos, y, "ms", attr); - if (attr) CHECK_INCDEC_GENVAR(event, g_eeGeneral.switchesDelay, 0, 25); + lcd_putsLeft(y, STR_SWITCHES_DELAY); + lcd_outdezAtt(RADIO_SETUP_2ND_COLUMN, y, 10*SWITCHES_DELAY(), attr|LEFT); + lcd_putsAtt(lcdLastPos, y, STR_MS, attr); + if (attr) CHECK_INCDEC_GENVAR(event, g_eeGeneral.switchesDelay, -15, +15); break; #endif diff --git a/radio/src/gui/menu_model.cpp b/radio/src/gui/menu_model.cpp index 0164c447a..e68356433 100644 --- a/radio/src/gui/menu_model.cpp +++ b/radio/src/gui/menu_model.cpp @@ -4807,8 +4807,8 @@ void menuModelLogicalSwitches(uint8_t event) #endif #if LCD_W >= 212 - #define MODEL_CUSTOM_FUNC_1ST_COLUMN (5+3*FW) - #define MODEL_CUSTOM_FUNC_2ND_COLUMN (8*FW) + #define MODEL_CUSTOM_FUNC_1ST_COLUMN (4*FW+2) + #define MODEL_CUSTOM_FUNC_2ND_COLUMN (8*FW+2) #define MODEL_CUSTOM_FUNC_3RD_COLUMN (20*FW) #define MODEL_CUSTOM_FUNC_4TH_COLUMN (33*FW-3) #define MODEL_CUSTOM_FUNC_4TH_COLUMN_ONOFF (34*FW-3) @@ -5361,11 +5361,6 @@ void menuModelCustomScripts(uint8_t event) enum menuModelTelemetryItems { CASE_CPUARM(ITEM_TELEMETRY_PROTOCOL_TYPE) -#if defined(CPUARM) - ITEM_TELEMETRY_RXBATT_LABEL, - ITEM_TELEMETRY_RXBATT_ALARM1, - ITEM_TELEMETRY_RXBATT_ALARM2, -#endif ITEM_TELEMETRY_A1_LABEL, ITEM_TELEMETRY_A1_RANGE, ITEM_TELEMETRY_A1_OFFSET, @@ -5463,12 +5458,6 @@ enum menuModelTelemetryItems { #define TELEM_SCRTYPE_COL (10*FW) #endif -#if defined(CPUARM) - #define RXBATT_ROWS LABEL(RXBATT), 0, 0, -#else - #define RXBATT_ROWS -#endif - #if defined(PCBTARANIS) #define CHANNEL_ROWS LABEL(CHANNEL), 1, 0, 0, 0 #define RSSI_ROWS LABEL(RSSI), 0, 0 @@ -5497,7 +5486,7 @@ enum menuModelTelemetryItems { void menuModelTelemetry(uint8_t event) { - MENU(STR_MENUTELEMETRY, menuTabModel, e_Telemetry, ITEM_TELEMETRY_MAX+1, {0, CASE_CPUARM(0) RXBATT_ROWS CHANNEL_ROWS, CHANNEL_ROWS, CASE_CPUARM(CHANNEL_ROWS) CASE_CPUARM(CHANNEL_ROWS) RSSI_ROWS, USRDATA_LINES 0, 0, IF_FAS_OFFSET(0) CASE_CPUARM(0) CASE_VARIO(LABEL(Vario)) CASE_VARIO(0) CASE_VARIO(VARIO_RANGE_ROWS) CASE_PCBTARANIS(LABEL(TopBar)) CASE_PCBTARANIS(0) SCREEN_TYPE_ROWS, 2, 2, 2, 2, SCREEN_TYPE_ROWS, 2, 2, 2, 2, CASE_CPUARM(SCREEN_TYPE_ROWS) CASE_CPUARM(2) CASE_CPUARM(2) CASE_CPUARM(2) CASE_CPUARM(2)}); + MENU(STR_MENUTELEMETRY, menuTabModel, e_Telemetry, ITEM_TELEMETRY_MAX+1, {0, CASE_CPUARM(0) CHANNEL_ROWS, CHANNEL_ROWS, CASE_CPUARM(CHANNEL_ROWS) CASE_CPUARM(CHANNEL_ROWS) RSSI_ROWS, USRDATA_LINES 0, 0, IF_FAS_OFFSET(0) CASE_CPUARM(0) CASE_VARIO(LABEL(Vario)) CASE_VARIO(0) CASE_VARIO(VARIO_RANGE_ROWS) CASE_PCBTARANIS(LABEL(TopBar)) CASE_PCBTARANIS(0) SCREEN_TYPE_ROWS, 2, 2, 2, 2, SCREEN_TYPE_ROWS, 2, 2, 2, 2, CASE_CPUARM(SCREEN_TYPE_ROWS) CASE_CPUARM(2) CASE_CPUARM(2) CASE_CPUARM(2) CASE_CPUARM(2)}); uint8_t sub = m_posVert - 1; @@ -5540,23 +5529,6 @@ void menuModelTelemetry(uint8_t event) break; #endif -#if defined(CPUARM) - case ITEM_TELEMETRY_RXBATT_LABEL: - lcd_putsLeft(y, "RxBatt"); - putsTelemetryChannel(TELEM_COL2+6*FW, y, TELEM_RXBATT-1, frskyData.analog[TELEM_ANA_RXBATT].value, LEFT); - break; - case ITEM_TELEMETRY_RXBATT_ALARM1: - case ITEM_TELEMETRY_RXBATT_ALARM2: - { - uint8_t alarm = (k==ITEM_TELEMETRY_RXBATT_ALARM1 ? 0 : 1); - lcd_putsLeft(y, (alarm==0 ? STR_LOWALARM : STR_CRITICALALARM)); - putsTelemetryChannel(TELEM_COL2, y, TELEM_RXBATT-1, g_model.rxBattAlarms[alarm], LEFT|attr); - if (attr && (s_editMode>0 || p1valdiff)) { - g_model.rxBattAlarms[alarm] = checkIncDec(event, g_model.rxBattAlarms[alarm], 0, 255, EE_MODEL); - } - break; - } -#endif case ITEM_TELEMETRY_A1_LABEL: case ITEM_TELEMETRY_A2_LABEL: #if defined(CPUARM) diff --git a/radio/src/gui/menus.cpp b/radio/src/gui/menus.cpp index aa3477b70..a573fc313 100644 --- a/radio/src/gui/menus.cpp +++ b/radio/src/gui/menus.cpp @@ -1451,6 +1451,9 @@ bool isTelemetrySourceAvailable(int source) return false; #endif + if (source == TELEM_RESERVE0) + return false; + if (source >= TELEM_RESERVE1 && source <= TELEM_RESERVE5) return false; diff --git a/radio/src/gui/view_main.cpp b/radio/src/gui/view_main.cpp index bb59dd4ea..5869848a4 100644 --- a/radio/src/gui/view_main.cpp +++ b/radio/src/gui/view_main.cpp @@ -252,11 +252,7 @@ void displayTopBar() /* Rx voltage */ lcdint_t voltage = 0; uint8_t channel = 0; - if (g_model.frsky.voltsSource == FRSKY_VOLTS_SOURCE_RXBATT) { - channel = TELEM_RXBATT-1; - voltage = frskyData.analog[TELEM_ANA_RXBATT].value; - } - else if (g_model.frsky.voltsSource <= FRSKY_VOLTS_SOURCE_A4) { + if (g_model.frsky.voltsSource <= FRSKY_VOLTS_SOURCE_A4) { channel = TELEM_A1+g_model.frsky.voltsSource-1; voltage = frskyData.analog[g_model.frsky.voltsSource].value; } @@ -368,14 +364,20 @@ void displayTimers() } } #else + void displayTimers() { +#if defined(TRANSLATIONS_CZ) + #define MAINTMR_LBL_COL (9*FW-FW/2-1) +#else + #define MAINTMR_LBL_COL (9*FW-FW/2+3) +#endif // Main timer if (g_model.timers[0].mode) { TimerState & timerState = timersStates[0]; uint8_t att = DBLSIZE | (timerState.val<0 ? BLINK|INVERS : 0); putsTimer(12*FW+2+10*FWNUM-4, FH*2, timerState.val, att, att); - putsTimerMode(timerState.val >= 0 ? 9*FW-FW/2+3 : 9*FW-FW/2-4, FH*3, g_model.timers[0].mode); + putsTimerMode(timerState.val >= 0 ? MAINTMR_LBL_COL : MAINTMR_LBL_COL-7, FH*3, g_model.timers[0].mode); } } #endif @@ -826,24 +828,26 @@ void menuMainView(uint8_t event) lcd_vline(x-1, VSWITCH_Y-len, len); lcd_vline(x, VSWITCH_Y-len, len); } -#elif defined(PCBGRUVIN9X) && ROTARY_ENCODERS > 2 - for (uint8_t i=0; i1 ? 3*FW+6 : 0), 4*FH+1 + (i%3)*FH, SWSRC_SW1+i, getSwitch(SWSRC_SW1+i) ? INVERS : 0); #elif defined(PCBGRUVIN9X) for (uint8_t i=0; i1 ? 3*FW : 0), 4*FH+1 + (i%3)*FH, SWSRC_SW1+i, getSwitch(SWSRC_SW1+i) ? INVERS : 0); + putsSwitches(2*FW-3 + (i/3)*(i/3>2 ? 3*FW+2 : (3*FW-1)) + (i/3>2 ? 2*FW : 0), 4*FH+1 + (i%3)*FH, SWSRC_SW1+i, getSwitch(SWSRC_SW1+i) ? INVERS : 0); #elif !defined(PCBSTD) for (uint8_t i=0; i= 0 ? 20-FW/2+5 : 20-FW/2-2, FH*6, g_model.timers[1].mode); + putsTimerMode(timersStates[1].val >= 0 ? TMR2_LBL_COL : TMR2_LBL_COL-7, FH*6, g_model.timers[1].mode); // lcd_outdezNAtt(33+11*FW, FH*6, s_timerVal_10ms[1], LEADING0, 2); // 1/100s } #endif // PCBTARANIS diff --git a/radio/src/gui/view_telemetry.cpp b/radio/src/gui/view_telemetry.cpp index 516c58724..b7cc5dbc3 100644 --- a/radio/src/gui/view_telemetry.cpp +++ b/radio/src/gui/view_telemetry.cpp @@ -347,11 +347,6 @@ void menuTelemetryFrsky(uint8_t event) lcd_putsiAtt(0, 2*FH, STR_AMPSRC, g_model.frsky.voltsSource+1, 0); #endif switch (g_model.frsky.voltsSource) { -#if defined(CPUARM) - case FRSKY_VOLTS_SOURCE_RXBATT: - putsTelemetryChannel(3*FW+6*FW+4, FH+1, TELEM_RXBATT-1, frskyData.analog[TELEM_ANA_RXBATT].value, DBLSIZE); - break; -#endif case FRSKY_VOLTS_SOURCE_A1: case FRSKY_VOLTS_SOURCE_A2: #if defined(CPUARM) @@ -393,7 +388,11 @@ void menuTelemetryFrsky(uint8_t event) putsTelemetryChannel(3*FW+4+4*FW+6*FW+FW, 5*FH+1, TELEM_CONSUMPTION-1, frskyData.hub.currentConsumption, DBLSIZE); } else { +#if defined(CPUARM) + displayVoltageScreenLine(analog > 0 ? 5*FH : 4*FH, analog==1+FRSKY_VOLTS_SOURCE_A1 ? FRSKY_VOLTS_SOURCE_A2 : FRSKY_VOLTS_SOURCE_A1); +#else displayVoltageScreenLine(analog > 0 ? 5*FH : 4*FH, analog ? 2-analog : 0); +#endif if (analog == 0) displayVoltageScreenLine(6*FH, 1); } diff --git a/radio/src/lcd.cpp b/radio/src/lcd.cpp index ac2c05004..98b69c797 100644 --- a/radio/src/lcd.cpp +++ b/radio/src/lcd.cpp @@ -1219,23 +1219,6 @@ void putsTelemetryChannel(xcoord_t x, uint8_t y, uint8_t channel, lcdint_t val, att &= ~NO_UNIT; putsTimer(x, y, val, att, att); break; -#if defined(CPUARM) - case TELEM_RXBATT-1: - val = ((val*1320) + 127) / 255; -#if LCD_W >= 212 - att |= PREC2; -#else - if (abs(val) < 1000) { - att |= PREC2; - } - else { - val = div10_and_round(val); - att |= PREC1; - } -#endif - putsTelemetryValue(x, y, val, UNIT_VOLTS, att); - break; -#endif #if defined(FRSKY) case TELEM_MIN_A1-1: case TELEM_MIN_A2-1: diff --git a/radio/src/loadboot.cpp b/radio/src/loadboot.cpp index 03f928480..947b75d05 100644 --- a/radio/src/loadboot.cpp +++ b/radio/src/loadboot.cpp @@ -100,28 +100,30 @@ void _bootStart() bwdt_reset(); } - if (((GPIOC->IDR & 0x00000002) == 0) || ((GPIOE->IDR & 0x00000008) == 0)) { - // Bootloader needed - const uint8_t *src; - uint8_t *dest; - uint32_t size; + if ((GPIOE->IDR & 0x00000008) == 0) { + if ((GPIOC->IDR & 0x00000002) == 0) { + // Bootloader needed + const uint8_t *src; + uint8_t *dest; + uint32_t size; - bwdt_reset(); - size = sizeof(BootCode); - src = BootCode; - dest = (uint8_t *) 0x20000000; + bwdt_reset(); + size = sizeof(BootCode); + src = BootCode; + dest = (uint8_t *) 0x20000000; + + for (; size; size -= 1) { + *dest++ = *src++; + } + // Could check for a valid copy to RAM here + // Go execute bootloader + bwdt_reset(); + + uint32_t address = *(uint32_t *) 0x20000004; + + ((void (*)(void)) (address))(); // Go execute the loaded application - for (; size; size -= 1) { - *dest++ = *src++; } - // Could check for a valid copy to RAM here - // Go execute bootloader - bwdt_reset(); - - uint32_t address = *(uint32_t *) 0x20000004; - - ((void (*)(void)) (address))(); // Go execute the loaded application - } // run_application() ; diff --git a/radio/src/logs.cpp b/radio/src/logs.cpp index 4a173014b..176859929 100644 --- a/radio/src/logs.cpp +++ b/radio/src/logs.cpp @@ -115,8 +115,8 @@ const pm_char * openLogs() f_puts("Time,", &g_oLogFile); #endif -#if defined(FRSKY_SPORT) - f_puts("SWR,RSSI,A1,A2,", &g_oLogFile); +#if defined(CPUARM) + f_puts("SWR,RSSI,A1,A2,A3,A4,", &g_oLogFile); #elif defined(FRSKY) f_puts("Buffer,RX,TX,A1,A2,", &g_oLogFile); #endif @@ -196,14 +196,14 @@ void writeLogs() f_printf(&g_oLogFile, "%d,", tmr10ms); #endif -#if defined(FRSKY_SPORT) - f_printf(&g_oLogFile, "%d,%d,", frskyData.rssi[1].value, frskyData.rssi[0].value); +#if defined(CPUARM) + f_printf(&g_oLogFile, "%d,%d,", frskyData.swr.value, frskyData.rssi[0].value); #elif defined(FRSKY) f_printf(&g_oLogFile, "%d,%d,%d,", frskyStreaming, frskyData.rssi[0].value, frskyData.rssi[1].value); #endif #if defined(FRSKY) - for (uint8_t i=0; i<2; i++) { + for (uint8_t i=0; i= FUNC_PLAY_SOUND && func <= FUNC_PLAY_VALUE) +#else + #define IS_PLAY_FUNC(func) ((func) == FUNC_PLAY_SOUND) +#endif #if defined(CPUARM) #define IS_PLAY_BOTH_FUNC(func) (0) - #define IS_VOLUME_FUNC(func) (func == FUNC_VOLUME) + #define IS_VOLUME_FUNC(func) ((func) == FUNC_VOLUME) #else - #define IS_PLAY_BOTH_FUNC(func) (func == FUNC_PLAY_BOTH) + #define IS_PLAY_BOTH_FUNC(func) ((func) == FUNC_PLAY_BOTH) #define IS_VOLUME_FUNC(func) (0) #endif #if defined(GVARS) - #define IS_ADJUST_GV_FUNC(func) (func == FUNC_ADJUST_GVAR) + #define IS_ADJUST_GV_FUNC(func) ((func) == FUNC_ADJUST_GVAR) #else #define IS_ADJUST_GV_FUNC(func) (0) #endif #if defined(HAPTIC) - #define IS_HAPTIC_FUNC(func) (func == FUNC_HAPTIC) + #define IS_HAPTIC_FUNC(func) ((func) == FUNC_HAPTIC) #else #define IS_HAPTIC_FUNC(func) (0) #endif -#if defined(VOICE) - #define HAS_REPEAT_PARAM(func) (func == FUNC_PLAY_SOUND || (func >= FUNC_PLAY_TRACK && func <= FUNC_PLAY_VALUE) || IS_HAPTIC_FUNC(func)) -#else - #define HAS_REPEAT_PARAM(func) (func == FUNC_PLAY_SOUND || IS_HAPTIC_FUNC(func)) -#endif +#define HAS_REPEAT_PARAM(func) (IS_PLAY_FUNC(func) || IS_HAPTIC_FUNC(func)) enum ResetFunctionParam { FUNC_RESET_TIMER1, @@ -1034,7 +1038,7 @@ enum TelemetrySource { TELEM_RSSI_TX, TELEM_RSSI_RX, #if defined(CPUARM) - TELEM_RXBATT, + TELEM_RESERVE0, #endif TELEM_A_FIRST, TELEM_A1=TELEM_A_FIRST, @@ -1184,9 +1188,6 @@ enum FrskyCurrentSource { }; enum FrskyVoltsSource { -#if defined(CPUARM) - FRSKY_VOLTS_SOURCE_RXBATT, -#endif FRSKY_VOLTS_SOURCE_A1, FRSKY_VOLTS_SOURCE_A2, #if defined(CPUARM) diff --git a/radio/src/opentx.cpp b/radio/src/opentx.cpp index b932314ea..24d986f85 100644 --- a/radio/src/opentx.cpp +++ b/radio/src/opentx.cpp @@ -439,8 +439,6 @@ void modelDefault(uint8_t id) #if defined(PCBTARANIS) g_model.frsky.channels[0].ratio = 132; - g_model.rxBattAlarms[0] = 0; - g_model.rxBattAlarms[1] = 83; // 4.3V #endif #if defined(MAVLINK) @@ -1082,7 +1080,9 @@ void checkTHR() else { calibratedStick[thrchn] = -1024; #if !defined(PCBTARANIS) - rawAnas[thrchn] = anas[thrchn] = calibratedStick[thrchn]; + if (thrchn < NUM_STICKS) { + rawAnas[thrchn] = anas[thrchn] = calibratedStick[thrchn]; + } #endif MESSAGE(STR_THROTTLEWARN, STR_THROTTLENOTIDLE, STR_PRESSANYKEYTOSKIP, AU_THROTTLE_ALERT); } @@ -1650,15 +1650,10 @@ PLAY_FUNCTION(playValue, uint8_t idx) case MIXSRC_FIRST_TELEM+TELEM_TM2-1: PLAY_DURATION(val, 0); break; -#if defined(CPUARM) +#if defined(CPUARM) && defined(FRSKY) case MIXSRC_FIRST_TELEM+TELEM_SWR-1: PLAY_NUMBER(val, 0, 0); break; - case MIXSRC_FIRST_TELEM+TELEM_RXBATT-1: - if (TELEMETRY_STREAMING()) { - PLAY_NUMBER((val*132+127)/255, 1+UNIT_VOLTS, PREC1); - } - break; #endif #if defined(FRSKY) case MIXSRC_FIRST_TELEM+TELEM_RSSI_TX-1: @@ -1833,9 +1828,14 @@ void evalFunctions() CustomFnData *sd = &g_model.funcSw[i]; int8_t swtch = CFN_SWITCH(sd); if (swtch) { - MASK_CFN_TYPE switch_mask = ((MASK_CFN_TYPE)1 << i); + MASK_CFN_TYPE switch_mask = ((MASK_CFN_TYPE)1 << i); +#if defined(CPUARM) + bool active = getSwitch(swtch, IS_PLAY_FUNC(CFN_FUNC(sd)) ? GETSWITCH_MIDPOS_DELAY : 0); +#else bool active = getSwitch(swtch); +#endif + if (HAS_ENABLE_PARAM(CFN_FUNC(sd))) { active &= (bool)CFN_ACTIVE(sd); @@ -2025,6 +2025,10 @@ void evalFunctions() PUSH_CUSTOM_PROMPT(active ? param : param+1, i+1); } } + if (!active) { + // PLAY_BOTH would change activeFnSwitches otherwise + switch_mask = 0; + } break; } #else @@ -2152,11 +2156,11 @@ void doMixerCalculations() val = val - gModelMin; #if defined(PPM_LIMITS_SYMETRICAL) - if (lim->symetrical) + if (lim->symetrical) { val -= calc1000toRESX(lim->offset); + } #endif - gModelMax -= gModelMin; // we compare difference between Max and Mix for recaling needed; Max and Min are shifted to 0 by default // usually max is 1024 min is -1024 --> max-min = 2048 full range @@ -2178,7 +2182,7 @@ void doMixerCalculations() #ifdef PCBTARANIS val = RESX + calibratedStick[g_model.thrTraceSrc == 0 ? THR_STICK : g_model.thrTraceSrc+NUM_STICKS-1]; #else - val = RESX + rawAnas[g_model.thrTraceSrc == 0 ? THR_STICK : g_model.thrTraceSrc+NUM_STICKS-1]; + val = RESX + (g_model.thrTraceSrc == 0 ? rawAnas[THR_STICK] : calibratedStick[g_model.thrTraceSrc+NUM_STICKS-1]); #endif } @@ -2201,8 +2205,6 @@ void doMixerCalculations() timerState->sum = 0; } - // value for time described in timer->mode - // OFFABSTHsTH%THt if (tm == TMRMODE_THR_REL) { timerState->cnt++; timerState->sum+=val; @@ -2223,21 +2225,22 @@ void doMixerCalculations() // @@@ open.20.fsguruh: why so complicated? we have already a s_sum field; use it for the half seconds (not showable) as well // check for s_cnt[i]==0 is not needed because we are shure it is at least 1 #if defined(ACCURAT_THROTTLE_TIMER) - if ((timerState->sum/timerState->cnt)>=128) { // throttle was normalized to 0 to 128 value (throttle/64*2 (because - range is added as well) + if ((timerState->sum/timerState->cnt) >= 128) { // throttle was normalized to 0 to 128 value (throttle/64*2 (because - range is added as well) newTimerVal++; // add second used of throttle - timerState->sum-=128*timerState->cnt; + timerState->sum -= 128*timerState->cnt; } #else - if ((timerState->sum/timerState->cnt)>=32) { // throttle was normalized to 0 to 32 value (throttle/16*2 (because - range is added as well) + if ((timerState->sum/timerState->cnt) >= 32) { // throttle was normalized to 0 to 32 value (throttle/16*2 (because - range is added as well) newTimerVal++; // add second used of throttle - timerState->sum-=32*timerState->cnt; + timerState->sum -= 32*timerState->cnt; } #endif timerState->cnt=0; } else if (tm == TMRMODE_THR_TRG) { - if (val || newTimerVal > 0) + if (val || newTimerVal > 0) { newTimerVal++; + } } else { if (tm > 0) tm -= (TMR_VAROFS-1); @@ -3003,6 +3006,8 @@ ISR(USART0_UDRE_vect) #endif #endif +#define INSTANT_TRIM_MARGIN 10 /* around 1% */ + void instantTrim() { evalInputs(e_perout_mode_notrainer); @@ -3012,11 +3017,14 @@ void instantTrim() // don't instant trim the throttle stick uint8_t trim_phase = getTrimFlightPhase(s_current_mixer_flight_mode, i); #if defined(PCBTARANIS) - int16_t trim = limit(TRIM_EXTENDED_MIN, (calibratedStick[i] + trims[i]) / 2, TRIM_EXTENDED_MAX); + int16_t delta = calibratedStick[i]; #else - int16_t trim = limit(TRIM_EXTENDED_MIN, (anas[i] + trims[i]) / 2, TRIM_EXTENDED_MAX); + int16_t delta = anas[i]; #endif - setTrimValue(trim_phase, i, trim); + if (abs(delta) >= INSTANT_TRIM_MARGIN) { + int16_t trim = limit(TRIM_EXTENDED_MIN, (delta + trims[i]) / 2, TRIM_EXTENDED_MAX); + setTrimValue(trim_phase, i, trim); + } } } diff --git a/radio/src/opentx.h b/radio/src/opentx.h index cbf3d4f93..0c1771d48 100644 --- a/radio/src/opentx.h +++ b/radio/src/opentx.h @@ -696,7 +696,14 @@ void perMain(); NOINLINE void per10ms(); getvalue_t getValue(uint8_t i); + +#if defined(CPUARM) +#define GETSWITCH_MIDPOS_DELAY 1 +bool getSwitch(int8_t swtch, uint8_t flags=0); +#else bool getSwitch(int8_t swtch); +#endif + void logicalSwitchesTimerTick(); void logicalSwitchesReset(); @@ -1229,9 +1236,8 @@ uint8_t lswFamily(uint8_t func); int16_t lswTimerValue(delayval_t val); #if defined(CPUARM) - #define MASK_CFN_TYPE uint32_t // current max = 32 function switches + #define MASK_CFN_TYPE uint64_t // current max = 64 function switches #define MASK_FUNC_TYPE uint32_t // current max = 32 functions - #elif defined(CPUM64) #define MASK_CFN_TYPE uint16_t // current max = 16 function switches #define MASK_FUNC_TYPE uint8_t // current max = 8 functions @@ -1363,8 +1369,6 @@ enum AUDIO_SOUNDS { AU_RSSI_ORANGE, AU_RSSI_RED, AU_SWR_RED, - AU_RXBATT_ORANGE, - AU_RXBATT_RED, AU_TELEMETRY_LOST, AU_TELEMETRY_BACK, #endif diff --git a/radio/src/simpgmspace.cpp b/radio/src/simpgmspace.cpp index f3e8b78c7..a527660ff 100644 --- a/radio/src/simpgmspace.cpp +++ b/radio/src/simpgmspace.cpp @@ -678,5 +678,7 @@ void unlockFlash() { } void lockFlash() { } void writeFlash(uint32_t *address, uint32_t *buffer) { SIMU_SLEEP(100); } uint32_t isBootloaderStart(const void *block) { return 1; } +void turnBacklightOn(uint8_t level, uint8_t color) { } +void turnBacklightOff(void) { } #endif diff --git a/radio/src/switches.cpp b/radio/src/switches.cpp index c2a82473a..77508c50a 100644 --- a/radio/src/switches.cpp +++ b/radio/src/switches.cpp @@ -111,7 +111,7 @@ uint32_t check3PosSwitchPosition(uint8_t idx, EnumKeys sw, bool startup) result = (1 << index); switchesMidposStart[idx] = 0; } - else if (startup || (switchesPos & (1 << (sw - SW_SA0 + 1))) || g_eeGeneral.switchesDelay==0 || (switchesMidposStart[idx] && (tmr10ms_t)(get_tmr10ms() - switchesMidposStart[idx]) > g_eeGeneral.switchesDelay)) { + else if (startup || (switchesPos & (1 << (sw - SW_SA0 + 1))) || g_eeGeneral.switchesDelay==SWITCHES_DELAY_NONE || (switchesMidposStart[idx] && (tmr10ms_t)(get_tmr10ms() - switchesMidposStart[idx]) > SWITCHES_DELAY())) { index = sw - SW_SA0 + 1; result = (1 << index); switchesMidposStart[idx] = 0; @@ -158,7 +158,7 @@ void getSwitchesPosition(bool startup) potsLastposStart[i] = get_tmr10ms(); potsPos[i] = (pos << 4) | previousStoredPos; } - else if (startup || g_eeGeneral.switchesDelay==0 || (tmr10ms_t)(get_tmr10ms() - potsLastposStart[i]) > g_eeGeneral.switchesDelay) { + else if (startup || g_eeGeneral.switchesDelay==SWITCHES_DELAY_NONE || (tmr10ms_t)(get_tmr10ms() - potsLastposStart[i]) > SWITCHES_DELAY()) { potsLastposStart[i] = 0; potsPos[i] = (pos << 4) | pos; if (previousStoredPos != pos) { @@ -171,8 +171,6 @@ void getSwitchesPosition(bool startup) } #define SWITCH_POSITION(sw) (switchesPos & (1<<(sw))) #define POT_POSITION(sw) ((potsPos[(sw)/XPOTS_MULTIPOS_COUNT] & 0x0f) == ((sw) % XPOTS_MULTIPOS_COUNT)) -#else -#define SWITCH_POSITION(idx) switchState((EnumKeys)(SW_BASE+(idx))) #endif bool getLogicalSwitch(uint8_t idx) @@ -369,7 +367,11 @@ bool getLogicalSwitch(uint8_t idx) return result; } +#if defined(CPUARM) +bool getSwitch(int8_t swtch, uint8_t flags) +#else bool getSwitch(int8_t swtch) +#endif { bool result; @@ -385,7 +387,13 @@ bool getSwitch(int8_t swtch) result = true; } else if (cs_idx <= SWSRC_LAST_SWITCH) { - result = SWITCH_POSITION(cs_idx-SWSRC_FIRST_SWITCH); +#if defined(PCBTARANIS) + if (flags & GETSWITCH_MIDPOS_DELAY) + result = SWITCH_POSITION(cs_idx-SWSRC_FIRST_SWITCH); + else +#endif + result = switchState((EnumKeys)(SW_BASE+cs_idx-SWSRC_FIRST_SWITCH)); + #if defined(MODULE_ALWAYS_SEND_PULSES) if (startupWarningState < STARTUP_WARNING_DONE) { // if throttle or switch warning is currently active, ignore actual stick position and use wanted values diff --git a/radio/src/targets/gruvin9x/board_gruvin9x.h b/radio/src/targets/gruvin9x/board_gruvin9x.h index 0a3aa2ba8..756b7c244 100644 --- a/radio/src/targets/gruvin9x/board_gruvin9x.h +++ b/radio/src/targets/gruvin9x/board_gruvin9x.h @@ -82,12 +82,13 @@ #define JACK_PPM_OUT() PORTG |= (1<CCR4 = (100-level)*color; - TIM4->CCR2 = (100-level)*(100-color); -} - -void turnBacklightOff(void) -{ - TIM4->CCR4 = 0; - TIM4->CCR2 = 0; -} -#endif diff --git a/radio/src/targets/taranis/lcd_driver.cpp b/radio/src/targets/taranis/lcd_driver.cpp index 48ce626f7..ac8e9beac 100644 --- a/radio/src/targets/taranis/lcd_driver.cpp +++ b/radio/src/targets/taranis/lcd_driver.cpp @@ -161,7 +161,7 @@ static void LCD_BL_Config() TIM4->CCMR2 = TIM_CCMR2_OC4M_1 | TIM_CCMR2_OC4M_2 ; // PWM TIM4->CCER = TIM_CCER_CC4E | TIM_CCER_CC2E ; - int BacklightBrightness = 40 ; + int BacklightBrightness = 0 ; TIM4->CCR2 = BacklightBrightness ; TIM4->CCR4 = BacklightBrightness ; TIM4->EGR = 0 ; @@ -257,3 +257,16 @@ void lcdSetRefVolt(uint8_t val) AspiCmd(val+CONTRAST_OFS); //0--255 } +#if defined(REVPLUS) +void turnBacklightOn(uint8_t level, uint8_t color) +{ + TIM4->CCR4 = (100-level)*color; + TIM4->CCR2 = (100-level)*(100-color); +} + +void turnBacklightOff(void) +{ + TIM4->CCR4 = 0; + TIM4->CCR2 = 0; +} +#endif diff --git a/radio/src/telemetry/frsky.cpp b/radio/src/telemetry/frsky.cpp index c26ee5156..2140947c0 100644 --- a/radio/src/telemetry/frsky.cpp +++ b/radio/src/telemetry/frsky.cpp @@ -134,10 +134,6 @@ lcdint_t applyChannelRatio(uint8_t channel, lcdint_t val) } #if defined(CPUARM) -inline bool rxBattAlarmRaised(uint8_t alarm) -{ - return g_model.rxBattAlarms[alarm] > 0 && frskyData.analog[TELEM_ANA_RXBATT].value < g_model.rxBattAlarms[alarm]; -} inline bool alarmRaised(uint8_t channel, uint8_t idx) { return g_model.frsky.channels[channel].ratio > 0 && g_model.frsky.channels[channel].alarms_value[idx] > 0 && frskyData.analog[channel].value < g_model.frsky.channels[channel].alarms_value[idx]; @@ -269,7 +265,6 @@ NOINLINE void processSerialData(uint8_t data) enum AlarmsCheckSteps { ALARM_SWR_STEP, ALARM_RSSI_STEP, - ALARM_RXBATT_STEP, ALARM_A1_STEP, ALARM_A2_STEP, ALARM_A3_STEP, @@ -317,7 +312,9 @@ void telemetryWakeup() static uint8_t frskyTxDelay = 5; if (frskyAlarmsSendState && (--frskyTxDelay == 0)) { frskyTxDelay = 5; // 50ms +#if !defined(SIMU) frskyDSendNextAlarm(); +#endif } } #endif @@ -357,16 +354,6 @@ void telemetryWakeup() alarmsCheckTime = get_tmr10ms() + 300; /* next check in 3 seconds */ } } - else if (alarmsCheckStep == ALARM_RXBATT_STEP) { - if (rxBattAlarmRaised(1)) { - AUDIO_RXBATT_RED(); - alarmsCheckTime = get_tmr10ms() + 300; /* next check in 3 seconds */ - } - else if (rxBattAlarmRaised(0)) { - AUDIO_RXBATT_ORANGE(); - alarmsCheckTime = get_tmr10ms() + 300; /* next check in 3 seconds */ - } - } else if (alarmsCheckStep == ALARM_A1_STEP) { if (alarmRaised(TELEM_ANA_A1, 1)) { AUDIO_A1_RED(); @@ -446,10 +433,7 @@ void telemetryInterrupt10ms() // power calculation uint8_t channel = g_model.frsky.voltsSource; #if defined(CPUARM) - if (channel == FRSKY_VOLTS_SOURCE_RXBATT) { - voltage = ((frskyData.analog[TELEM_ANA_RXBATT].value * 132) + 127) / 255; - } - else if (channel <= FRSKY_VOLTS_SOURCE_A4) { + if (channel <= FRSKY_VOLTS_SOURCE_A4) { voltage = applyChannelRatio(channel, frskyData.analog[channel].value) / 10; } #else @@ -536,6 +520,10 @@ void telemetryReset() frskyData.rssi[1].value = 75; frskyData.analog[TELEM_ANA_A1].set(120, UNIT_VOLTS); frskyData.analog[TELEM_ANA_A2].set(240, UNIT_VOLTS); +#if defined(CPUARM) + frskyData.analog[TELEM_ANA_A3].set(100, UNIT_VOLTS); + frskyData.analog[TELEM_ANA_A4].set(200, UNIT_VOLTS); +#endif frskyData.hub.fuelLevel = 75; frskyData.hub.rpm = 12000; frskyData.hub.vfas = 100; diff --git a/radio/src/telemetry/frsky.h b/radio/src/telemetry/frsky.h index 3342949b1..8d2cfe692 100644 --- a/radio/src/telemetry/frsky.h +++ b/radio/src/telemetry/frsky.h @@ -298,7 +298,6 @@ enum TelemAnas { #if defined(CPUARM) TELEM_ANA_A3, TELEM_ANA_A4, - TELEM_ANA_RXBATT, #endif TELEM_ANA_COUNT }; diff --git a/radio/src/telemetry/frsky_d.cpp b/radio/src/telemetry/frsky_d.cpp index 23b69b441..45b8db811 100644 --- a/radio/src/telemetry/frsky_d.cpp +++ b/radio/src/telemetry/frsky_d.cpp @@ -435,7 +435,9 @@ void frskySendPacket(uint8_t type, uint8_t value, uint8_t p1, uint8_t p2) *ptr++ = START_STOP; // Start of packet frskyTxBufferCount = ptr - &frskyTxBuffer[0]; +#if !defined(SIMU) telemetryTransmitBuffer(); +#endif } inline void frskyDSendNextAlarm(void) diff --git a/radio/src/telemetry/frsky_sport.cpp b/radio/src/telemetry/frsky_sport.cpp index ef5c25ad8..b7728b71f 100644 --- a/radio/src/telemetry/frsky_sport.cpp +++ b/radio/src/telemetry/frsky_sport.cpp @@ -325,7 +325,7 @@ void frskySportProcessPacket(uint8_t *packet) #endif } else if (appId == BATT_ID) { - frskyData.analog[TELEM_ANA_RXBATT].set(SPORT_DATA_U8(packet), UNIT_VOLTS); + frskyData.analog[TELEM_ANA_A1].set(SPORT_DATA_U8(packet), UNIT_VOLTS); } else if ((appId >> 8) == 0) { // The old FrSky IDs diff --git a/radio/src/translations/cz.h.txt b/radio/src/translations/cz.h.txt index c7e69d288..4e472f30e 100644 --- a/radio/src/translations/cz.h.txt +++ b/radio/src/translations/cz.h.txt @@ -292,7 +292,7 @@ #define TR_TELEM_RESERVE TR("[--]", "[---]") #define TR_TELEM_TIME TR("Time", "Time\0") #define TR_SWR TR("SWR\0", "SWR\0 ") - #define TR_RX_BATT TR("RxBt", "RxBat") + #define TR_RX_BATT TR("[NA]", "[NA]\0") #define TR_A3_A4 TR("A3\0 ""A4\0 ", "A3\0 ""A4\0 ") #define TR_A3_A4_MIN TR("A3-\0""A4-\0", "A3-\0 ""A4-\0 ") #else @@ -358,7 +358,7 @@ #define LEN_AMPSRC TR("\003", "\007") #define TR_AMPSRC TR("---""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") #define LEN_VOLTSRC TR("\003", "\007") - #define TR_VOLTSRC TR("RxV""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "RxBatt\0""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") + #define TR_VOLTSRC TR("A1\0""A2\0""A3\0""A4\0""FAS""Cel", "A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") #else #define LEN_AMPSRC TR("\003", "\007") #define TR_AMPSRC TR("---""A1\0""A2\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""FAS\0 ""Cells\0 ") @@ -444,8 +444,8 @@ #define TR_VSRCRAW "---\0""Směr""Výšk""Plyn""Křid" TR_POTS_VSRCRAW TR_ROTARY_ENCODERS "MAX\0" TR_CYC_VSRCRAW "TrmS" "TrmV" "TrmP" "TrmK" TR_SW_VSRCRAW -#define LEN_VTMRMODES "\003" -#define TR_VTMRMODES "VYP""ABS""PL>""PL%""PL*" +#define LEN_VTMRMODES "\004" +#define TR_VTMRMODES "VYP\0""ABS\0""Pln>""Pln%""Pln*" #define LEN_VTRAINERMODES "\006" #define TR_VTRAINERMODES "Učitel""Žák\0 " @@ -497,7 +497,7 @@ #define TR_ELIMITS TR("Limit +25%", "Kanál +/- 125%") #define TR_ETRIMS TR("širší Trim", "Široký trim") #define TR_TRIMINC TR("Krok Trimu", "Krok trimu") -#define TR_TTRACE TR("PL stopek", INDENT "Stopa PL stopek") +#define TR_TTRACE TR("StopaPlynu", INDENT "Stopa plynu") #define TR_TTRIM TR("TrimVolnob.", INDENT "Trim jen volnoběh") #define TR_BEEPCTR "Středy \221\222" #define TR_PROTO INDENT "Protokol" @@ -572,7 +572,7 @@ #define TR_BLDELAY INDENT"Zhasnout po" #define TR_BLONBRIGHTNESS INDENT"Jas Zap." #define TR_BLOFFBRIGHTNESS INDENT"Jas Vyp." -#define TR_BLCOLOR INDENT "Color" +#define TR_BLCOLOR INDENT "Barva" #define TR_SPLASHSCREEN TR("úvodníLogo", "Zobrazit úvodní logo") #define TR_THROTTLEWARNING TR("* Plyn", INDENT "Páka Plynu") #define TR_SWITCHWARNING TR("* Spínače", INDENT "Polohy Spínačů") diff --git a/radio/src/translations/de.h.txt b/radio/src/translations/de.h.txt index bc15c9424..681630284 100644 --- a/radio/src/translations/de.h.txt +++ b/radio/src/translations/de.h.txt @@ -292,7 +292,7 @@ #define TR_TELEM_RESERVE TR("[--]", "[---]") #define TR_TELEM_TIME TR("Time", "Time\0") #define TR_SWR TR("SWR\0", "SWR\0 ") - #define TR_RX_BATT TR("RxBt", "RxBat") + #define TR_RX_BATT TR("[NA]", "[NA]\0") #define TR_A3_A4 TR("A3\0 ""A4\0 ", "A3\0 ""A4\0 ") #define TR_A3_A4_MIN TR("A3-\0""A4-\0", "A3-\0 ""A4-\0 ") #else @@ -358,7 +358,7 @@ #define LEN_AMPSRC TR("\003", "\007") #define TR_AMPSRC TR("---""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") #define LEN_VOLTSRC TR("\003", "\007") - #define TR_VOLTSRC TR("RxV""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "RxAkku\0""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") + #define TR_VOLTSRC TR("A1\0""A2\0""A3\0""A4\0""FAS""Cel", "A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") #else #define LEN_AMPSRC TR("\003", "\007") #define TR_AMPSRC TR("---""A1\0""A2\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""FAS\0 ""Cells\0 ") diff --git a/radio/src/translations/en.h.txt b/radio/src/translations/en.h.txt index 4445bae36..141c44d2d 100644 --- a/radio/src/translations/en.h.txt +++ b/radio/src/translations/en.h.txt @@ -292,7 +292,7 @@ #define TR_TELEM_RESERVE TR("[--]", "[---]") #define TR_TELEM_TIME TR("Time", "Time\0") #define TR_SWR TR("SWR\0", "SWR\0 ") - #define TR_RX_BATT TR("RxBt", "RxBat") + #define TR_RX_BATT TR("[NA]", "[NA]\0") #define TR_A3_A4 TR("A3\0 ""A4\0 ", "A3\0 ""A4\0 ") #define TR_A3_A4_MIN TR("A3-\0""A4-\0", "A3-\0 ""A4-\0 ") #else @@ -355,13 +355,13 @@ #define TR_VTELPROTO "None\0 ""Hub\0 ""WSHHigh" #if defined(CPUARM) - #define LEN_AMPSRC TR("\003", "\007") - #define TR_AMPSRC TR("---""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") - #define LEN_VOLTSRC TR("\003", "\007") - #define TR_VOLTSRC TR("RxV""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "RxBatt\0""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") + #define LEN_AMPSRC TR("\003", "\005") + #define TR_AMPSRC TR("---""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells") + #define LEN_VOLTSRC TR("\003", "\005") + #define TR_VOLTSRC TR("A1\0""A2\0""A3\0""A4\0""FAS""Cel", "A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells") #else - #define LEN_AMPSRC TR("\003", "\007") - #define TR_AMPSRC TR("---""A1\0""A2\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""FAS\0 ""Cells\0 ") + #define LEN_AMPSRC TR("\003", "\005") + #define TR_AMPSRC TR("---""A1\0""A2\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""FAS\0 ""Cells") #endif #define LEN_VARIOSRC "\004" @@ -579,7 +579,7 @@ #define TR_POTWARNING TR(IF_CPUARM(INDENT) "Pot Warn.", INDENT "Pot Positions") #define TR_TIMEZONE TR("Time Zone", "GPS Time zone") #define TR_RXCHANNELORD TR("Rx Channel Ord", "Default channel order") -#define TR_SWITCHES_DELAY "Switches Delay" +#define TR_SWITCHES_DELAY "Play Delay (sw. mid pos)" #define TR_SLAVE CENTER "Slave" #define TR_MODESRC "Mode\006% Source" #define TR_MULTIPLIER "Multiplier" diff --git a/radio/src/translations/es.h.txt b/radio/src/translations/es.h.txt index 449d2f8c8..e196126e8 100644 --- a/radio/src/translations/es.h.txt +++ b/radio/src/translations/es.h.txt @@ -292,7 +292,7 @@ #define TR_TELEM_RESERVE TR("[--]", "[---]") #define TR_TELEM_TIME TR("Time", "Time\0") #define TR_SWR TR("SWR\0", "SWR\0 ") - #define TR_RX_BATT TR("RxBt", "RxBat") + #define TR_RX_BATT TR("[NA]", "[NA]\0") #define TR_A3_A4 TR("A3\0 ""A4\0 ", "A3\0 ""A4\0 ") #define TR_A3_A4_MIN TR("A3-\0""A4-\0", "A3-\0 ""A4-\0 ") #else @@ -358,7 +358,7 @@ #define LEN_AMPSRC TR("\003", "\007") #define TR_AMPSRC TR("---""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") #define LEN_VOLTSRC TR("\003", "\007") - #define TR_VOLTSRC TR("RxV""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "RxBatt\0""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") + #define TR_VOLTSRC TR("A1\0""A2\0""A3\0""A4\0""FAS""Cel", "A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") #else #define LEN_AMPSRC TR("\003", "\007") #define TR_AMPSRC TR("---""A1\0""A2\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""FAS\0 ""Cells\0 ") diff --git a/radio/src/translations/fi.h.txt b/radio/src/translations/fi.h.txt index 3cb28e0e0..7b6e6cfb0 100644 --- a/radio/src/translations/fi.h.txt +++ b/radio/src/translations/fi.h.txt @@ -292,7 +292,7 @@ #define TR_TELEM_RESERVE TR("[--]", "[---]") #define TR_TELEM_TIME TR("Time", "Time\0") #define TR_SWR TR("SWR\0", "SWR\0 ") - #define TR_RX_BATT TR("RxBt", "RxBat") + #define TR_RX_BATT TR("[NA]", "[NA]\0") #define TR_A3_A4 TR("A3\0 ""A4\0 ", "A3\0 ""A4\0 ") #define TR_A3_A4_MIN TR("A3-\0""A4-\0", "A3-\0 ""A4-\0 ") #else @@ -358,7 +358,7 @@ #define LEN_AMPSRC TR("\003", "\007") #define TR_AMPSRC TR("---""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") #define LEN_VOLTSRC TR("\003", "\007") - #define TR_VOLTSRC TR("RxV""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "RxBatt\0""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") + #define TR_VOLTSRC TR("A1\0""A2\0""A3\0""A4\0""FAS""Cel", "A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") #else #define LEN_AMPSRC TR("\003", "\007") #define TR_AMPSRC TR("---""A1\0""A2\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""FAS\0 ""Cells\0 ") diff --git a/radio/src/translations/fr.h.txt b/radio/src/translations/fr.h.txt index 9cd7ebde2..366592cf3 100644 --- a/radio/src/translations/fr.h.txt +++ b/radio/src/translations/fr.h.txt @@ -355,13 +355,13 @@ #define TR_VTELPROTO "Aucun ""Hub\0 ""WSHHigh" #if defined(CPUARM) - #define LEN_AMPSRC TR("\003", "\007") - #define TR_AMPSRC TR("---""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Elem.\0 ") - #define LEN_VOLTSRC TR("\003", "\007") - #define TR_VOLTSRC TR("RxV""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "RxBatt\0""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Elem.\0 ") + #define LEN_AMPSRC TR("\003", "\005") + #define TR_AMPSRC TR("---""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Elem.") + #define LEN_VOLTSRC TR("\003", "\005") + #define TR_VOLTSRC TR("A1\0""A2\0""A3\0""A4\0""FAS""Cel", "A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Elem.") #else - #define LEN_AMPSRC TR("\003", "\007") - #define TR_AMPSRC TR("---""A1\0""A2\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""FAS\0 ""Elem.\0 ") + #define LEN_AMPSRC TR("\003", "\005") + #define TR_AMPSRC TR("---""A1\0""A2\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""FAS\0 ""Elem.") #endif #define LEN_VARIOSRC "\005" @@ -579,7 +579,7 @@ #define TR_POTWARNING TR(IF_CPUARM(INDENT) "Alerte pot", INDENT "Pos. potentiom.") #define TR_TIMEZONE "Fuseau horaire" #define TR_RXCHANNELORD TR("Ordre voies RX","Ordre des voies préféré") -#define TR_SWITCHES_DELAY "Switches Delay" +#define TR_SWITCHES_DELAY "Délai inters milieu" #define TR_SLAVE "Elève" #define TR_MODESRC "Mode\006% Source" #define TR_MULTIPLIER "Multiplieur" @@ -781,7 +781,7 @@ #define TR_ANTENNAPROBLEM CENTER "Antenne radio défectueuse!" #define TR_MODELIDUSED TR("ID déjà affecté", "No de modèle déjà utilisé") #define TR_MODULE INDENT "Type de module" -#define TR_TELEMETRY_TYPE "Telemetry Type" +#define TR_TELEMETRY_TYPE "Type télémesure" #define TR_CHANNELRANGE TR(INDENT "Canaux", INDENT "Plage de canaux") #define TR_LOWALARM INDENT "Alarme basse" #define TR_CRITICALALARM INDENT "Alarme critique" diff --git a/radio/src/translations/it.h.txt b/radio/src/translations/it.h.txt index eaf2bd8a9..df2883d49 100644 --- a/radio/src/translations/it.h.txt +++ b/radio/src/translations/it.h.txt @@ -358,7 +358,7 @@ #define LEN_AMPSRC TR("\003", "\007") #define TR_AMPSRC TR("---""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Celle\0 ") #define LEN_VOLTSRC TR("\003", "\007") - #define TR_VOLTSRC TR("RxV""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "BattRx\0""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Celle\0 ") + #define TR_VOLTSRC TR("A1\0""A2\0""A3\0""A4\0""FAS""Cel", "A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Celle\0 ") #else #define LEN_AMPSRC TR("\003", "\007") #define TR_AMPSRC TR("---""A1\0""A2\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""FAS\0 ""Celle\0 ") @@ -445,7 +445,7 @@ #define TR_VSRCRAW "---\0""Dir\0""Ele\0""Mot\0""Ale\0" TR_POTS_VSRCRAW TR_ROTARY_ENCODERS "MAX\0" TR_CYC_VSRCRAW "TrmD" "TrmE" "TrmM" "TrmA" TR_SW_VSRCRAW #define LEN_VTMRMODES "\003" -#define TR_VTMRMODES "OFF""ABS""THs""TH%""THt" +#define TR_VTMRMODES "OFF""ABS""MOs""MO%""MOt" #define LEN_VTRAINERMODES "\007" #define TR_VTRAINERMODES "Maestro""Allievo" diff --git a/radio/src/translations/pl.h.txt b/radio/src/translations/pl.h.txt index d7f659161..99471de2b 100644 --- a/radio/src/translations/pl.h.txt +++ b/radio/src/translations/pl.h.txt @@ -292,7 +292,7 @@ #define TR_TELEM_RESERVE TR("[--]", "[---]") #define TR_TELEM_TIME TR("Time", "Time\0") #define TR_SWR TR("SWR\0", "SWR\0 ") - #define TR_RX_BATT TR("RxBt", "RxBat") + #define TR_RX_BATT TR("[NA]", "[NA]\0") #define TR_A3_A4 TR("A3\0 ""A4\0 ", "A3\0 ""A4\0 ") #define TR_A3_A4_MIN TR("A3-\0""A4-\0", "A3-\0 ""A4-\0 ") #else @@ -358,7 +358,7 @@ #define LEN_AMPSRC TR("\003", "\007") #define TR_AMPSRC TR("---""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") #define LEN_VOLTSRC TR("\003", "\007") - #define TR_VOLTSRC TR("RxV""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "RxBatt\0""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") + #define TR_VOLTSRC TR("A1\0""A2\0""A3\0""A4\0""FAS""Cel", "A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") #else #define LEN_AMPSRC TR("\003", "\007") #define TR_AMPSRC TR("---""A1\0""A2\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""FAS\0 ""Cells\0 ") diff --git a/radio/src/translations/pt.h.txt b/radio/src/translations/pt.h.txt index 202402ebd..4c04712c6 100644 --- a/radio/src/translations/pt.h.txt +++ b/radio/src/translations/pt.h.txt @@ -292,7 +292,7 @@ #define TR_TELEM_RESERVE TR("[--]", "[---]") #define TR_TELEM_TIME TR("Time", "Time\0") #define TR_SWR TR("SWR\0", "SWR\0 ") - #define TR_RX_BATT TR("RxBt", "RxBat") + #define TR_RX_BATT TR("[NA]", "[NA]\0") #define TR_A3_A4 TR("A3\0 ""A4\0 ", "A3\0 ""A4\0 ") #define TR_A3_A4_MIN TR("A3-\0""A4-\0", "A3-\0 ""A4-\0 ") #else @@ -358,7 +358,7 @@ #define LEN_AMPSRC TR("\003", "\007") #define TR_AMPSRC TR("---""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") #define LEN_VOLTSRC TR("\003", "\007") - #define TR_VOLTSRC TR("RxV""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "RxBatt\0""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") + #define TR_VOLTSRC TR("A1\0""A2\0""A3\0""A4\0""FAS""Cel", "A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") #else #define LEN_AMPSRC TR("\003", "\007") #define TR_AMPSRC TR("---""A1\0""A2\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""FAS\0 ""Cells\0 ") diff --git a/radio/src/translations/se.h.txt b/radio/src/translations/se.h.txt index 9a69abb83..daaa6e8e3 100644 --- a/radio/src/translations/se.h.txt +++ b/radio/src/translations/se.h.txt @@ -292,7 +292,7 @@ #define TR_TELEM_RESERVE TR("[--]", "[---]") #define TR_TELEM_TIME TR("Tid\0", "Tid\0 ") #define TR_SWR TR("SWR\0", "SWR\0 ") - #define TR_RX_BATT TR("RxBt", "RxBat") + #define TR_RX_BATT TR("[NA]", "[NA]\0") #define TR_A3_A4 TR("A3\0 ""A4\0 ", "A3\0 ""A4\0 ") #define TR_A3_A4_MIN TR("A3-\0""A4-\0", "A3-\0 ""A4-\0 ") #else @@ -358,7 +358,7 @@ #define LEN_AMPSRC TR("\003", "\007") #define TR_AMPSRC TR("---""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") #define LEN_VOLTSRC TR("\003", "\007") - #define TR_VOLTSRC TR("RxV""A1\0""A2\0""A3\0""A4\0""FAS""Cel", "RxBatt\0""A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") + #define TR_VOLTSRC TR("A1\0""A2\0""A3\0""A4\0""FAS""Cel", "A1\0 ""A2\0 ""A3\0 ""A4\0 ""FAS\0 ""Cells\0 ") #else #define LEN_AMPSRC TR("\003", "\007") #define TR_AMPSRC TR("---""A1\0""A2\0""FAS""Cel", "---\0 ""A1\0 ""A2\0 ""FAS\0 ""Cells\0 ") @@ -579,7 +579,7 @@ #define TR_POTWARNING TR("Rattvarn.", INDENT "Rattvarning") #define TR_TIMEZONE TR("Tidszon","GPS Tidszon") #define TR_RXCHANNELORD "Kanaler i RX" -#define TR_SWITCHES_DELAY "Switches Delay" +#define TR_SWITCHES_DELAY "Brytarfördröjning" #define TR_SLAVE "Elev" #define TR_MODESRC " Läge\004% Källa" #define TR_MULTIPLIER "Styrka" @@ -781,7 +781,7 @@ #define TR_ANTENNAPROBLEM CENTER "Fel på TX-antennen" #define TR_MODELIDUSED TR("ID finns redan","ModellID används redan") #define TR_MODULE INDENT "Modul" -#define TR_TELEMETRY_TYPE "Telemetry Type" +#define TR_TELEMETRY_TYPE "Telemetrityp" #define TR_CHANNELRANGE INDENT "Kanalområde" #define TR_LOWALARM INDENT "Låg-alarm" #define TR_CRITICALALARM INDENT "Kritiskt alarm" diff --git a/radio/util/tts.py b/radio/util/tts.py index 5355dec6d..66a5c7b81 100644 --- a/radio/util/tts.py +++ b/radio/util/tts.py @@ -177,8 +177,6 @@ def ttsEn(): (u"A3,critical", "a3_red", NO_ALTERNATE), (u"A4,low", "a4_org", NO_ALTERNATE), (u"A4,critical", "a4_red", NO_ALTERNATE), - (u"receiver battery, low", "rx_org", NO_ALTERNATE), - (u"receiver battery, critical", "rx_red", NO_ALTERNATE), (u"RF signal, low", "rssi_org", NO_ALTERNATE), (u"RF signal, critical", "rssi_red", NO_ALTERNATE), (u"radio antenna defective", "swr_red", NO_ALTERNATE), @@ -276,8 +274,6 @@ def ttsFr(): (u"A3,critique", "a3_red", NO_ALTERNATE), (u"A4,faible", "a4_org", NO_ALTERNATE), (u"A4,critique", "a4_red", NO_ALTERNATE), - (u"Batterie récepteur faible !", "rx_org", NO_ALTERNATE), - (u"Batterie récepteur critique !", "rx_red", NO_ALTERNATE), (u"Signal RF, faible", "rssi_org", NO_ALTERNATE), (u"Signal RF, critique", "rssi_red", NO_ALTERNATE), (u"Antenne défectueuse", "swr_red", NO_ALTERNATE),