mirror of
https://github.com/jankae/LibreVNA.git
synced 2025-12-06 07:12:10 +01:00
option to prevent electronic calibrations while LibreCAL temperature unstable
This commit is contained in:
parent
3330cee2ba
commit
b3eb1735cc
|
|
@ -4,6 +4,7 @@
|
||||||
#include "caldevice.h"
|
#include "caldevice.h"
|
||||||
#include "usbdevice.h"
|
#include "usbdevice.h"
|
||||||
#include "CustomWidgets/informationbox.h"
|
#include "CustomWidgets/informationbox.h"
|
||||||
|
#include "preferences.h"
|
||||||
|
|
||||||
#include <set>
|
#include <set>
|
||||||
|
|
||||||
|
|
@ -234,6 +235,14 @@ void LibreCALDialog::updateCalibrationStartStatus()
|
||||||
canStart = validatePortSelection(true);
|
canStart = validatePortSelection(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(canStart) {
|
||||||
|
if(!Preferences::getInstance().Acquisition.allowUseOfUnstableLibreCALTemp && !device->stabilized()) {
|
||||||
|
canStart = false;
|
||||||
|
ui->lCalibrationStatus->setText("LibreCAL temperature unstable");
|
||||||
|
ui->lCalibrationStatus->setStyleSheet("QLabel { color : red; }");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
ui->start->setEnabled(canStart);
|
ui->start->setEnabled(canStart);
|
||||||
if(canStart) {
|
if(canStart) {
|
||||||
ui->lCalibrationStatus->setText("Ready to start");
|
ui->lCalibrationStatus->setText("Ready to start");
|
||||||
|
|
@ -259,6 +268,7 @@ void LibreCALDialog::updateDeviceStatus()
|
||||||
ui->lDeviceStatus->setText("Heating up, please wait with calibration");
|
ui->lDeviceStatus->setText("Heating up, please wait with calibration");
|
||||||
ui->lDeviceStatus->setStyleSheet("QLabel { color : orange; }");
|
ui->lDeviceStatus->setStyleSheet("QLabel { color : orange; }");
|
||||||
}
|
}
|
||||||
|
updateCalibrationStartStatus();
|
||||||
}
|
}
|
||||||
|
|
||||||
void LibreCALDialog::determineAutoPorts()
|
void LibreCALDialog::determineAutoPorts()
|
||||||
|
|
@ -420,6 +430,7 @@ void LibreCALDialog::stopSweep()
|
||||||
void LibreCALDialog::startCalibration()
|
void LibreCALDialog::startCalibration()
|
||||||
{
|
{
|
||||||
disableUI();
|
disableUI();
|
||||||
|
busy = true;
|
||||||
|
|
||||||
ui->progressCal->setValue(0);
|
ui->progressCal->setValue(0);
|
||||||
ui->lCalibrationStatus->setText("Creating calibration kit from coefficients...");
|
ui->lCalibrationStatus->setText("Creating calibration kit from coefficients...");
|
||||||
|
|
@ -592,6 +603,7 @@ void LibreCALDialog::startCalibration()
|
||||||
disconnect(cal, &Calibration::measurementsUpdated, this, nullptr);
|
disconnect(cal, &Calibration::measurementsUpdated, this, nullptr);
|
||||||
setTerminationOnAllUsedPorts(CalDevice::Standard(CalDevice::Standard::Type::None));
|
setTerminationOnAllUsedPorts(CalDevice::Standard(CalDevice::Standard::Type::None));
|
||||||
enableUI();
|
enableUI();
|
||||||
|
busy = false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
setTerminationOnAllUsedPorts(CalDevice::Standard(CalDevice::Standard::Type::None));
|
setTerminationOnAllUsedPorts(CalDevice::Standard(CalDevice::Standard::Type::None));
|
||||||
|
|
@ -609,6 +621,7 @@ void LibreCALDialog::startCalibration()
|
||||||
connect(cal, &Calibration::measurementsAborted, this, [=](){
|
connect(cal, &Calibration::measurementsAborted, this, [=](){
|
||||||
setTerminationOnAllUsedPorts(CalDevice::Standard(CalDevice::Standard::Type::None));
|
setTerminationOnAllUsedPorts(CalDevice::Standard(CalDevice::Standard::Type::None));
|
||||||
enableUI();
|
enableUI();
|
||||||
|
busy = false;
|
||||||
ui->lCalibrationStatus->setText("Ready to start");
|
ui->lCalibrationStatus->setText("Ready to start");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -276,6 +276,7 @@ void PreferencesDialog::setInitialGUIState()
|
||||||
|
|
||||||
ui->AcquisitionAlwaysExciteBoth->setChecked(p->Acquisition.alwaysExciteAllPorts);
|
ui->AcquisitionAlwaysExciteBoth->setChecked(p->Acquisition.alwaysExciteAllPorts);
|
||||||
ui->AcquisitionAllowSegmentedSweep->setChecked(p->Acquisition.allowSegmentedSweep);
|
ui->AcquisitionAllowSegmentedSweep->setChecked(p->Acquisition.allowSegmentedSweep);
|
||||||
|
ui->AcquisitionAllowCalStartWithUnstableLibreCALTemperature->setChecked(p->Acquisition.allowUseOfUnstableLibreCALTemp);
|
||||||
ui->AcquisitionAveragingMode->setCurrentIndex(p->Acquisition.useMedianAveraging ? 1 : 0);
|
ui->AcquisitionAveragingMode->setCurrentIndex(p->Acquisition.useMedianAveraging ? 1 : 0);
|
||||||
ui->AcquisitionFullSpanBehavior->setCurrentIndex(p->Acquisition.fullSpanManual ? 1 : 0);
|
ui->AcquisitionFullSpanBehavior->setCurrentIndex(p->Acquisition.fullSpanManual ? 1 : 0);
|
||||||
ui->AcquisitionFullSpanStart->setValue(p->Acquisition.fullSpanStart);
|
ui->AcquisitionFullSpanStart->setValue(p->Acquisition.fullSpanStart);
|
||||||
|
|
@ -398,6 +399,7 @@ void PreferencesDialog::updateFromGUI()
|
||||||
|
|
||||||
p->Acquisition.alwaysExciteAllPorts = ui->AcquisitionAlwaysExciteBoth->isChecked();
|
p->Acquisition.alwaysExciteAllPorts = ui->AcquisitionAlwaysExciteBoth->isChecked();
|
||||||
p->Acquisition.allowSegmentedSweep = ui->AcquisitionAllowSegmentedSweep->isChecked();
|
p->Acquisition.allowSegmentedSweep = ui->AcquisitionAllowSegmentedSweep->isChecked();
|
||||||
|
p->Acquisition.allowUseOfUnstableLibreCALTemp = ui->AcquisitionAllowCalStartWithUnstableLibreCALTemperature->isChecked();
|
||||||
p->Acquisition.useMedianAveraging = ui->AcquisitionAveragingMode->currentIndex() == 1;
|
p->Acquisition.useMedianAveraging = ui->AcquisitionAveragingMode->currentIndex() == 1;
|
||||||
p->Acquisition.fullSpanManual = ui->AcquisitionFullSpanBehavior->currentIndex() == 1;
|
p->Acquisition.fullSpanManual = ui->AcquisitionFullSpanBehavior->currentIndex() == 1;
|
||||||
p->Acquisition.fullSpanStart = ui->AcquisitionFullSpanStart->value();
|
p->Acquisition.fullSpanStart = ui->AcquisitionFullSpanStart->value();
|
||||||
|
|
|
||||||
|
|
@ -103,8 +103,11 @@ public:
|
||||||
} SA;
|
} SA;
|
||||||
} Startup;
|
} Startup;
|
||||||
struct {
|
struct {
|
||||||
|
// VNA settings
|
||||||
bool alwaysExciteAllPorts;
|
bool alwaysExciteAllPorts;
|
||||||
bool allowSegmentedSweep;
|
bool allowSegmentedSweep;
|
||||||
|
bool allowUseOfUnstableLibreCALTemp;
|
||||||
|
|
||||||
bool useMedianAveraging;
|
bool useMedianAveraging;
|
||||||
|
|
||||||
// Full span settings
|
// Full span settings
|
||||||
|
|
@ -277,6 +280,7 @@ private:
|
||||||
{&Startup.SA.averaging, "Startup.SA.averaging", 1},
|
{&Startup.SA.averaging, "Startup.SA.averaging", 1},
|
||||||
{&Acquisition.alwaysExciteAllPorts, "Acquisition.alwaysExciteBothPorts", true},
|
{&Acquisition.alwaysExciteAllPorts, "Acquisition.alwaysExciteBothPorts", true},
|
||||||
{&Acquisition.allowSegmentedSweep, "Acquisition.allowSegmentedSweep", true},
|
{&Acquisition.allowSegmentedSweep, "Acquisition.allowSegmentedSweep", true},
|
||||||
|
{&Acquisition.allowUseOfUnstableLibreCALTemp, "Acquisition.allowUseOfUnstableLibreCALTemp", true},
|
||||||
{&Acquisition.useMedianAveraging, "Acquisition.useMedianAveraging", false},
|
{&Acquisition.useMedianAveraging, "Acquisition.useMedianAveraging", false},
|
||||||
{&Acquisition.fullSpanManual, "Acquisition.fullSpanManual", false},
|
{&Acquisition.fullSpanManual, "Acquisition.fullSpanManual", false},
|
||||||
{&Acquisition.fullSpanStart, "Acquisition.fullSpanStart", 0.0},
|
{&Acquisition.fullSpanStart, "Acquisition.fullSpanStart", 0.0},
|
||||||
|
|
|
||||||
|
|
@ -98,7 +98,7 @@
|
||||||
</size>
|
</size>
|
||||||
</property>
|
</property>
|
||||||
<property name="currentIndex">
|
<property name="currentIndex">
|
||||||
<number>2</number>
|
<number>1</number>
|
||||||
</property>
|
</property>
|
||||||
<widget class="QWidget" name="Startup">
|
<widget class="QWidget" name="Startup">
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_4">
|
<layout class="QHBoxLayout" name="horizontalLayout_4">
|
||||||
|
|
@ -112,8 +112,8 @@
|
||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>522</width>
|
<width>683</width>
|
||||||
<height>945</height>
|
<height>902</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_13">
|
<layout class="QVBoxLayout" name="verticalLayout_13">
|
||||||
|
|
@ -713,8 +713,8 @@
|
||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>564</width>
|
<width>697</width>
|
||||||
<height>477</height>
|
<height>564</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_21">
|
<layout class="QVBoxLayout" name="verticalLayout_21">
|
||||||
|
|
@ -741,6 +741,22 @@
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QGroupBox" name="groupBox_17">
|
||||||
|
<property name="title">
|
||||||
|
<string>Electronic Calibration</string>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout_25">
|
||||||
|
<item>
|
||||||
|
<widget class="QCheckBox" name="AcquisitionAllowCalStartWithUnstableLibreCALTemperature">
|
||||||
|
<property name="text">
|
||||||
|
<string>Allow calibration to start before the LibreCAL temperature has stabilized</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
|
@ -955,7 +971,7 @@
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>683</width>
|
<width>683</width>
|
||||||
<height>1217</height>
|
<height>1182</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_22">
|
<layout class="QVBoxLayout" name="verticalLayout_22">
|
||||||
|
|
@ -1520,8 +1536,8 @@
|
||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>602</width>
|
<width>486</width>
|
||||||
<height>628</height>
|
<height>608</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_7">
|
<layout class="QVBoxLayout" name="verticalLayout_7">
|
||||||
|
|
@ -1880,8 +1896,8 @@
|
||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>168</width>
|
<width>144</width>
|
||||||
<height>127</height>
|
<height>124</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_12">
|
<layout class="QHBoxLayout" name="horizontalLayout_12">
|
||||||
|
|
@ -2163,8 +2179,8 @@
|
||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>258</width>
|
<width>697</width>
|
||||||
<height>241</height>
|
<height>564</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_19">
|
<layout class="QHBoxLayout" name="horizontalLayout_19">
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue