From e8482783f78c13d2926ffa4d39a1fdfe23960efe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20K=C3=A4berich?= Date: Sun, 15 Dec 2024 17:40:19 +0100 Subject: [PATCH] Add temperature and manual control SCPI commands --- Documentation/UserManual/ProgrammingGuide.pdf | Bin 414600 -> 313124 bytes Documentation/UserManual/ProgrammingGuide.tex | 283 ++++++++++++++- .../Integrationtests/tests/TestTemperature.py | 9 + .../Device/LibreVNA/librevnadriver.cpp | 70 +++- .../Device/LibreVNA/librevnadriver.h | 2 + .../Device/LibreVNA/manualcontroldialogV1.cpp | 193 ++++++++++ .../Device/LibreVNA/manualcontroldialogV1.h | 2 + .../Device/LibreVNA/manualcontroldialogV1.ui | 10 +- .../LibreVNA-GUI/Device/devicedriver.h | 74 ++++ .../PC_Application/LibreVNA-GUI/appwindow.cpp | 336 +++--------------- .../PC_Application/LibreVNA-GUI/appwindow.h | 2 + Software/PC_Application/LibreVNA-GUI/scpi.cpp | 147 ++++++-- Software/PC_Application/LibreVNA-GUI/scpi.h | 14 +- 13 files changed, 785 insertions(+), 357 deletions(-) create mode 100644 Software/Integrationtests/tests/TestTemperature.py diff --git a/Documentation/UserManual/ProgrammingGuide.pdf b/Documentation/UserManual/ProgrammingGuide.pdf index 0063d71382406426fa98ed8108e386da1cff5b0f..a06fe98eec8fcd6f83e68f2d9916597c58e2488e 100644 GIT binary patch delta 158299 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 DRSg8S delta 261885 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

|G_`6;_}CxfUxU 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 z

  • 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 UE~JZS=KH%p|MOq|)nB~(|Lqe2ZU6uP diff --git a/Documentation/UserManual/ProgrammingGuide.tex b/Documentation/UserManual/ProgrammingGuide.tex index 59be0371..b46d8770 100644 --- a/Documentation/UserManual/ProgrammingGuide.tex +++ b/Documentation/UserManual/ProgrammingGuide.tex @@ -153,7 +153,8 @@ \begin{document} \maketitle -\setcounter{tocdepth}{3} +\setcounter{tocdepth}{4} +\setcounter{secnumdepth}{4} \tableofcontents \clearpage @@ -257,14 +258,6 @@ \subsubsection{DEVice:CONNect} 206039903350 \end{example} -\subsubsection{DEVice:UPDATE} -\event{Updates the firmware of the connected device}{DEVice:UPDATE }{ Path to the firmware file} -Important points when saving/loading setup files through SCPI commands: -\begin{itemize} -\item The path must be either absolute or relative to the location of the GUI application. -\item If the LibreVNA-GUI (and thus also the SCPI server) is running on a different machine than the SCPI client, the firmware file must be stored on the machine that runs the GUI. -\end{itemize} - \subsubsection{DEVice:LIST} \query{Lists all available devices by their serial numbers}{DEVice:LIST?}{None}{List of serialnumbers} \begin{example} @@ -343,12 +336,6 @@ \subsubsection{DEVice:INFo:HWREVision} :DEV:INF:HWREV? B \end{example} -\subsubsection{DEVice:INFo:TEMPeratures} -\query{Queries the temperatures of certain chips}{DEVice:INFo:TEMPeratures?}{None}{/<1.LO>/} -\begin{example} -:DEV:INF:TEMP? -45/51/31 -\end{example} \subsubsection{DEVice:INFo:LIMits:MINFrequency} \query{Queries the lowest frequency the device can measure}{DEVice:INFo:LIMits:MINFrequency?}{None}{lowest frequency in Hz} @@ -646,6 +633,17 @@ \subsubsection{VNA:CALibration:SAVE} \subsubsection{VNA:CALibration:LOAD} \query{Loads a calibration file}{VNA:CALibration:LOAD?}{}{TRUE or FALSE} +\subsubsection{VNA:CALibration:KIT:SAVE} +\event{Saves the active calibration kit to a file}{VNA:CALibration:KIT:SAVE}{} +Important points when saving/loading calibration kit files through SCPI commands: +\begin{itemize} +\item Filenames must be either absolute or relative to the location of the GUI application. +\item If the LibreVNA-GUI (and thus also the SCPI server) is running on a different machine than the SCPI client, the calibration kit files will be saved/loaded from the machine that runs the GUI. +\end{itemize} + +\subsubsection{VNA:CALibration:KIT:LOAD} +\query{Loads a calibration kit file}{VNA:CALibration:KIT:LOAD?}{}{TRUE or FALSE} + \subsection{Signal Generator Commands} These commands change or query signal generator settings. Although most of them are available regardless of the current device mode, they usually only have an effect once the generator mode is active. @@ -861,6 +859,261 @@ \subsubsection{SA:TRACe:TYPE} \event{Sets the storage type of a trace}{SA:TRACe:TYPE}{, either by name or by index\\, options are OVERWRITE, MAXHOLD or MINHOLD} \query{Queries the storage type of a trace}{SA:TRACe:TYPE?}{, either by name or by index}{OVERWRITE, MAXHOLD or MINHOLD} +\section{Custom Driver Commands} +The \gui{} is mainly intended to be used with the \vna{}. However, the interface between the \gui{} and the actual VNA is abstracting certain hardware features to allow the \gui{} to interact with other devices as well. This is mainly intended for future extensions and only very few other devices are supported for testing and demonstration purposes. + +Each device driver may implement additional SCPI commands that are too specific to be useful with every device. These commands are only available when the \gui{} is connected to the device. + +\subsection{LibreVNA Version 1} +The following commands are available when connected to a LibreVNA (hardware version 1): + +\subsubsection{DEVice:UPDATE} +\event{Updates the firmware of the connected device}{DEVice:UPDATE }{ Path to the firmware file} +Important points when saving/loading setup files through SCPI commands: +\begin{itemize} +\item The path must be either absolute or relative to the location of the GUI application. +\item If the LibreVNA-GUI (and thus also the SCPI server) is running on a different machine than the SCPI client, the firmware file must be stored on the machine that runs the GUI. +\end{itemize} + +\subsubsection{DEVice:INFo:TEMPeratures} +\query{Queries the temperatures of certain chips}{DEVice:INFo:TEMPeratures?}{None}{/<1.LO>/} +\begin{example} +:DEV:INF:TEMP? +45/51/31 +\end{example} + +\subsubsection{MANual:STArt} +\event{Starts the manual device control dialog}{MANual:STArt}{None} + +The manual device control dialog allows the user to directly access all the hardware components. This can be considered as a forth mode (in addition to VNA, signal generator and spectrum analyzer). As long as it is active, it takes priority over any other mode. After starting the manual control dialog, all hardware components are disabled by default. While the manual control dialog is active, additional SCPI commands are available to configure the hardware and retrieve ADC readings. + +\subsubsection{MANual:STOp} +\event{Stops the manual device control dialog}{MANual:STOp}{None} + +\subsubsection{MANual:HSRC\_CE} +Only available when the manual control dialog is active. + +\event{Controls the chip enable for the highband source}{MANual:HSRC\_CE}{TRUE or FALSE} +\query{Queries the status of the chip enable for the highband source}{MANual:HSRC\_CE?}{None}{TRUE or FALSE} + +\subsubsection{MANual:HSRC\_RFEN} +Only available when the manual control dialog is active. + +\event{Controls the RF enable for the highband source}{MANual:HSRC\_RFEN}{TRUE or FALSE} +\query{Queries the status of the RF enable for the highband source}{MANual:HSRC\_RFEN?}{None}{TRUE or FALSE} + +\subsubsection{MANual:HSRC\_LOCKed} +Only available when the manual control dialog is active. + +\query{Queries the lock status of the highband source}{MANual:HSRC\_LOCKed?}{None}{TRUE or FALSE} + +\subsubsection{MANual:HSRC\_PWR} +Only available when the manual control dialog is active. + +\event{Sets the output power of the highband source}{MANual:HSRC\_PWR}{, output power in dBm, allowed values are -4, -1, 2 and 5} +\query{Queries the output power of the highband source}{MANual:HSRC\_PWR?}{None}{, output power in dBm} + +\subsubsection{MANual:HSRC\_FREQ} +Only available when the manual control dialog is active. + +\event{Sets the target frequency of the highband source}{MANual:HSRC\_FREQ}{, frequency in Hz} +\query{Queries the target frequency of the highband source}{MANual:HSRC\_FREQ?}{None}{, frequency in Hz} + +\subsubsection{MANual:HSRC\_LPF} +Only available when the manual control dialog is active. + +\event{Sets the lowpass filter of the highband source}{MANual:HSRC\_LPF}{, Cutoff frequency in MHz, allowed values are 947, 1880, 3500 and\\0 (no filter)} +\query{Queries the lowpass filter setting of the highband source}{MANual:HSRC\_LPF?}{None}{, Cutoff frequency in MHz} + +\subsubsection{MANual:LSRC\_EN} +Only available when the manual control dialog is active. + +\event{Controls the enable signal for the lowband source}{MANual:LSRC\_EN}{TRUE or FALSE} +\query{Queries the status of the enable signal for the lowband source}{MANual:LSRC\_EN?}{None}{TRUE or FALSE} + +\subsubsection{MANual:LSRC\_PWR} +Only available when the manual control dialog is active. + +\event{Sets the output power of the lowband source}{MANual:LSRC\_PWR}{, output power in mA, allowed values are 2, 4, 6 and 8} +\query{Queries the output power of the lowband source}{MANual:LSRC\_PWR?}{None}{, output power in mA} + +\subsubsection{MANual:LSRC\_FREQ} +Only available when the manual control dialog is active. + +\event{Sets the target frequency of the lowband source}{MANual:LSRC\_FREQ}{, frequency in Hz} +\query{Queries the target frequency of the lowband source}{MANual:LSRC\_FREQ?}{None}{, frequency in Hz} + +\subsubsection{MANual:BAND\_SW} +Only available when the manual control dialog is active. + +\event{Controls the band selector switch}{MANual:BAND\_SW}{TRUE for highband, FALSE for lowband} +\query{Queries the status of the band selector switch}{MANual:BAND\_SW?}{None}{TRUE for highband, FALSE for lowband} + +\subsubsection{MANual:ATTenuator} +Only available when the manual control dialog is active. + +\event{Sets the attenuator value}{MANual:ATTenuator}{, Attenuation in dB, values between -31.75 and 0} +\query{Queries the attenuator value}{MANual:ATTenuator?}{None}{, Attenuation in dB} + +\subsubsection{MANual:AMP\_EN} +Only available when the manual control dialog is active. + +\event{Controls the enable signal for the amplifier}{MANual:AMP\_EN}{TRUE or FALSE} +\query{Queries the status of the enable signal for the amplifier}{MANual:AMP\_EN?}{None}{TRUE or FALSE} + +\subsubsection{MANual:PORT\_SW} +Only available when the manual control dialog is active. + +\event{Controls the port selector switch}{MANual:PORT\_SW}{, either 1 or 2} +\query{Queries the status of the port selector switch}{MANual:PORT\_SW?}{None}{} + +\subsubsection{MANual:LO1\_CE} +Only available when the manual control dialog is active. + +\event{Controls the chip enable for the LO1 PLL}{MANual:LO1\_CE}{TRUE or FALSE} +\query{Queries the status of the chip enable for the LO1 PLL}{MANual:LO1\_CE?}{None}{TRUE or FALSE} + +\subsubsection{MANual:LO1\_RFEN} +Only available when the manual control dialog is active. + +\event{Controls the RF enable for the LO1 PLL}{MANual:LO1\_RFEN}{TRUE or FALSE} +\query{Queries the status of the RF enable for the LO1 PLL}{MANual:LO1\_RFEN?}{None}{TRUE or FALSE} + +\subsubsection{MANual:LO1\_LOCKed} +Only available when the manual control dialog is active. + +\query{Queries the lock status of the LO1 PLL}{MANual:LO1\_LOCKed?}{None}{TRUE or FALSE} + +\subsubsection{MANual:LO1\_FREQ} +Only available when the manual control dialog is active. + +\event{Sets the target frequency of the LO1 PLL}{MANual:LO1\_FREQ}{, frequency in Hz} +\query{Queries the target frequency of the LO1 PLL}{MANual:LO1\_FREQ?}{None}{, frequency in Hz} + +\subsubsection{MANual:IF1\_FREQ} +Only available when the manual control dialog is active. + +\event{Sets the IF1 frequency}{MANual:IF1\_FREQ}{, frequency in Hz} +\query{Queries the IF1 frequency}{MANual:IF1\_FREQ?}{None}{, frequency in Hz} + +\subsubsection{MANual:LO2\_EN} +Only available when the manual control dialog is active. + +\event{Controls the enable signal for the LO2 PLL}{MANual:LO2\_EN}{TRUE or FALSE} +\query{Queries the status of the enable signal for the LO2 PLL}{MANual:LO2\_EN?}{None}{TRUE or FALSE} + +\subsubsection{MANual:LO2\_FREQ} +Only available when the manual control dialog is active. + +\event{Sets the target frequency of the LO2 PLL}{MANual:LO2\_FREQ}{, frequency in Hz} +\query{Queries the target frequency of the LO2 PLL}{MANual:LO2\_FREQ?}{None}{, frequency in Hz} + +\subsubsection{MANual:IF2\_FREQ} +Only available when the manual control dialog is active. + +\event{Sets the IF2 frequency}{MANual:IF2\_FREQ}{, frequency in Hz} +\query{Queries the IF2 frequency}{MANual:IF2\_FREQ?}{None}{, frequency in Hz} + +\subsubsection{MANual:PORT1\_EN} +Only available when the manual control dialog is active. + +\event{Controls the enable signal for the port 1 receiver}{MANual:PORT1\_EN}{TRUE or FALSE} +\query{Queries the status of the enable signal for the port 1 receiver}{MANual:PORT1\_EN?}{None}{TRUE or FALSE} + +\subsubsection{MANual:PORT2\_EN} +Only available when the manual control dialog is active. + +\event{Controls the enable signal for the port 2 receiver}{MANual:PORT2\_EN}{TRUE or FALSE} +\query{Queries the status of the enable signal for the port 2 receiver}{MANual:PORT2\_EN?}{None}{TRUE or FALSE} + +\subsubsection{MANual:REF\_EN} +Only available when the manual control dialog is active. + +\event{Controls the enable signal for the reference receiver}{MANual:REF\_EN}{TRUE or FALSE} +\query{Queries the status of the enable signal for the reference receiver}{MANual:REF\_EN?}{None}{TRUE or FALSE} + +\subsubsection{MANual:SAMPLES} +Only available when the manual control dialog is active. + +\event{Sets the number of ADC samples per reading}{MANual:SAMPLES}{, value between 16 and 131072 in increments of 16} +\query{Queries the number of ADC samples per reading}{MANual:SAMPLES?}{None}{} + +\subsubsection{MANual:WINdow} +Only available when the manual control dialog is active. + +\event{Sets the window for the DFT calculation}{MANual:WINdow}{, either NONE, KAISER, HANN or FLATTOP} +\query{Queries the window for the DFT calculatio}{MANual:WINdow?}{None}{NONE, KAISER, HANN or FLATTOP} + +\subsubsection{MANual:PORT1\_MIN} +Only available when the manual control dialog is active. + +\query{Queries the minimum observed port 1 ADC value in the last sampling period}{MANual:PORT1\_MIN?}{None}{minimum ADC value} + +\subsubsection{MANual:PORT1\_MAX} +Only available when the manual control dialog is active. + +\query{Queries the maximum observed port 1 ADC value in the last sampling period}{MANual:PORT1\_MAX?}{None}{maximum ADC value} + +\subsubsection{MANual:PORT1\_MAG} +Only available when the manual control dialog is active. + +\query{Queries the observerd magnitude at port 1 in the last sampling period}{MANual:PORT1\_MAG?}{None}{port 1 magnitude (linear unit, arbitrary scale)} + +\subsubsection{MANual:PORT1\_PHAse} +Only available when the manual control dialog is active. + +\query{Queries the observed phase at port 1 in the last sampling period}{MANual:PORT1\_PHAse?}{None}{phase in degree (random value because it is relativ to an internal sampling clock)} + +\subsubsection{MANual:PORT1\_REFerenced} +Only available when the manual control dialog is active. + +\query{Queries the observed signal at port 1 relative to the reference in the last sampling period}{MANual:PORT1\_REFerenced?}{None}{, } + +\subsubsection{MANual:PORT2\_MIN} +Only available when the manual control dialog is active. + +\query{Queries the minimum observed port 2 ADC value in the last sampling period}{MANual:PORT2\_MIN?}{None}{minimum ADC value} + +\subsubsection{MANual:PORT2\_MAX} +Only available when the manual control dialog is active. + +\query{Queries the maximum observed port 2 ADC value in the last sampling period}{MANual:PORT2\_MAX?}{None}{maximum ADC value} + +\subsubsection{MANual:PORT2\_MAG} +Only available when the manual control dialog is active. + +\query{Queries the observerd magnitude at port 2 in the last sampling period}{MANual:PORT2\_MAG?}{None}{port 1 magnitude (linear unit, arbitrary scale)} + +\subsubsection{MANual:PORT2\_PHAse} +Only available when the manual control dialog is active. + +\query{Queries the observed phase at port 2 in the last sampling period}{MANual:PORT2\_PHAse?}{None}{phase in degree (random value because it is relativ to an internal sampling clock)} + +\subsubsection{MANual:PORT2\_REFerenced} +Only available when the manual control dialog is active. + +\query{Queries the observed signal at port 2 relative to the reference in the last sampling period}{MANual:PORT2\_REFerenced?}{None}{, } + +\subsubsection{MANual:REF\_MIN} +Only available when the manual control dialog is active. + +\query{Queries the minimum observed reference ADC value in the last sampling period}{MANual:REF\_MIN?}{None}{minimum ADC value} + +\subsubsection{MANual:REF\_MAX} +Only available when the manual control dialog is active. + +\query{Queries the maximum observed reference ADC value in the last sampling period}{MANual:REF\_MAX?}{None}{maximum ADC value} + +\subsubsection{MANual:REF\_MAG} +Only available when the manual control dialog is active. + +\query{Queries the observerd magnitude at the reference receiver in the last sampling period}{MANual:REF\_MAG?}{None}{port 1 magnitude (linear unit, arbitrary scale)} + +\subsubsection{MANual:REF\_PHAse} +Only available when the manual control dialog is active. + +\query{Queries the observed phase at the reference receiver in the last sampling period}{MANual:REF\_PHAse?}{None}{phase in degree (random value because it is relativ to an internal sampling clock)} + \section{Streaming data} The SCPI server works well for configuring the device and also for reading trace data once an acquition is done. But it isn't very well suited for reading data while the device is capturing it. For some applications (e.g. when running continuous sweeps) it may be beneficial to process the data externally as it getting captured. For this purpose, the LibreVNA-GUI supports streaming the data over dedicated ports. diff --git a/Software/Integrationtests/tests/TestTemperature.py b/Software/Integrationtests/tests/TestTemperature.py new file mode 100644 index 00000000..4a6013ee --- /dev/null +++ b/Software/Integrationtests/tests/TestTemperature.py @@ -0,0 +1,9 @@ +from tests.TestBase import TestBase + +class TestConnect(TestBase): + def test_temperature(self): + res = self.vna.query(":DEV:INF:TEMP?") + self.assertEqual(res.split("/"), 3) + + + diff --git a/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/librevnadriver.cpp b/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/librevnadriver.cpp index 9c49f412..8f545972 100644 --- a/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/librevnadriver.cpp +++ b/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/librevnadriver.cpp @@ -116,25 +116,33 @@ LibreVNADriver::LibreVNADriver() hardwareVersion = 0; protocolVersion = 0; setSynchronization(Synchronization::Disabled, false); + manualControlDialog = nullptr; - auto manual = new QAction("Manual Control"); - connect(manual, &QAction::triggered, this, [=](){ - QDialog *d = nullptr; + // Add driver specific actions + + auto startManualControl = [=](){ + manualControlDialog = nullptr; switch(hardwareVersion) { case 1: - d = new ManualControlDialogV1(*this); + manualControlDialog = new ManualControlDialogV1(*this); break; case 0xFE: - d = new ManualControlDialogVFE(*this); + manualControlDialog = new ManualControlDialogVFE(*this); break; case 0xFF: - d = new ManualControlDialogVFF(*this); + manualControlDialog = new ManualControlDialogVFF(*this); break; } - if(d) { - d->show(); + if(manualControlDialog) { + manualControlDialog->show(); + connect(manualControlDialog, &QDialog::finished, this, [=](){ + manualControlDialog = nullptr; + }); } - }); + }; + + auto manual = new QAction("Manual Control"); + connect(manual, &QAction::triggered, this, startManualControl); specificActions.push_back(manual); auto config = new QAction("Configuration"); @@ -199,6 +207,50 @@ LibreVNADriver::LibreVNADriver() d->show(); }); specificActions.push_back(log); + + // Create driver specific commands + specificSCPIcommands.push_back(new SCPICommand("DEVice:INFo:TEMPeratures", nullptr, [=](QStringList) -> QString { + if(!connected) { + return SCPI::getResultName(SCPI::Result::Error); + } + return QString::number(lastStatus.V1.temp_source)+"/"+QString::number(lastStatus.V1.temp_LO1)+"/"+QString::number(lastStatus.V1.temp_MCU); + })); + + specificSCPIcommands.push_back(new SCPICommand("DEVice:UPDATE", [=](QStringList params) -> QString { + if(!connected) { + return SCPI::getResultName(SCPI::Result::Error); + } + if(params.size() != 1) { + // no file given + return SCPI::getResultName(SCPI::Result::Error); + } + auto ret = updateFirmware(params[0]); + if(!ret) { + // update failed + return SCPI::getResultName(SCPI::Result::Error); + } else { + // update succeeded + return SCPI::getResultName(SCPI::Result::Empty); + } + }, nullptr, false)); + + specificSCPIcommands.push_back(new SCPICommand("MANual:STArt", [=](QStringList) -> QString { + if(!manualControlDialog) { + startManualControl(); + if(!manualControlDialog) { + return SCPI::getResultName(SCPI::Result::Error); + } + } + return SCPI::getResultName(SCPI::Result::Empty); + }, nullptr)); + + specificSCPIcommands.push_back(new SCPICommand("MANual:STOp", [=](QStringList) -> QString { + if(manualControlDialog) { + delete manualControlDialog; + manualControlDialog = nullptr; + } + return SCPI::getResultName(SCPI::Result::Empty); + }, nullptr)); } std::set LibreVNADriver::getFlags() diff --git a/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/librevnadriver.h b/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/librevnadriver.h index 3599d5a0..ff9d9cd1 100644 --- a/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/librevnadriver.h +++ b/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/librevnadriver.h @@ -222,6 +222,8 @@ protected slots: double SARBWLimitForDFT; bool VNASuppressInvalidPeaks; bool VNAAdjustPowerLevel; + + QDialog *manualControlDialog; }; Q_DECLARE_METATYPE(Protocol::PacketInfo) diff --git a/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/manualcontroldialogV1.cpp b/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/manualcontroldialogV1.cpp index b4632b8d..98d782d4 100644 --- a/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/manualcontroldialogV1.cpp +++ b/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/manualcontroldialogV1.cpp @@ -186,11 +186,204 @@ ManualControlDialogV1::ManualControlDialogV1(LibreVNADriver &dev, QWidget *paren connect(ui->Samples, qOverload(&QSpinBox::valueChanged), [=](double) { UpdateDevice(); }); connect(ui->cbWindow, qOverload(&QComboBox::activated), [=](int) { UpdateDevice(); }); + // Create the SCPI commands + + auto addBooleanManualSetting = [=](QString cmd, void(ManualControlDialogV1::*set)(bool), bool(ManualControlDialogV1::*get)(void)) { + commands.push_back(new SCPICommand(cmd, [=](QStringList params) -> QString { + bool enable; + if(!SCPI::paramToBool(params, 0, enable)) { + return SCPI::getResultName(SCPI::Result::Error); + } + auto set_fn = std::bind(set, this, std::placeholders::_1); + set_fn(enable); + return SCPI::getResultName(SCPI::Result::Empty); + }, [=](QStringList) -> QString { + auto get_fn = std::bind(get, this); + return get_fn() ? SCPI::getResultName(SCPI::Result::True) : SCPI::getResultName(SCPI::Result::False); + })); + }; + + auto addDoubleManualSetting = [=](QString cmd, void(ManualControlDialogV1::*set)(double), double(ManualControlDialogV1::*get)(void)) { + commands.push_back(new SCPICommand(cmd, [=](QStringList params) -> QString { + double value; + if(!SCPI::paramToDouble(params, 0, value)) { + return SCPI::getResultName(SCPI::Result::Error); + } + auto set_fn = std::bind(set, this, std::placeholders::_1); + set_fn(value); + return SCPI::getResultName(SCPI::Result::Empty); + }, [=](QStringList) -> QString { + auto get_fn = std::bind(get, this); + return QString::number(get_fn()); + })); + }; + auto addIntegerManualSetting = [=](QString cmd, void(ManualControlDialogV1::*set)(int), int(ManualControlDialogV1::*get)(void)) { + commands.push_back(new SCPICommand(cmd, [=](QStringList params) -> QString { + double value; + if(!SCPI::paramToDouble(params, 0, value)) { + return SCPI::getResultName(SCPI::Result::Error); + } + auto set_fn = std::bind(set, this, std::placeholders::_1); + set_fn(value); + return SCPI::getResultName(SCPI::Result::Empty); + }, [=](QStringList) -> QString { + auto get_fn = std::bind(get, this); + return QString::number(get_fn()); + })); + }; + auto addIntegerManualSettingWithReturnValue = [=](QString cmd, bool(ManualControlDialogV1::*set)(int), int(ManualControlDialogV1::*get)(void)) { + commands.push_back(new SCPICommand(cmd, [=](QStringList params) -> QString { + double value; + if(!SCPI::paramToDouble(params, 0, value)) { + return SCPI::getResultName(SCPI::Result::Error); + } + auto set_fn = std::bind(set, this, std::placeholders::_1); + if(set_fn(value)) { + return SCPI::getResultName(SCPI::Result::Empty); + } else { + return SCPI::getResultName(SCPI::Result::Error); + } + }, [=](QStringList) -> QString { + auto get_fn = std::bind(get, this); + return QString::number(get_fn()); + })); + }; + auto addIntegerManualQuery = [=](QString cmd, int(ManualControlDialogV1::*get)(void)) { + commands.push_back(new SCPICommand(cmd, nullptr, [=](QStringList) -> QString { + auto get_fn = std::bind(get, this); + return QString::number(get_fn()); + })); + }; + auto addDoubleManualQuery = [=](QString cmd, double(ManualControlDialogV1::*get)(void)) { + commands.push_back(new SCPICommand(cmd, nullptr, [=](QStringList) -> QString { + auto get_fn = std::bind(get, this); + return QString::number(get_fn()); + })); + }; + auto addBooleanManualQuery = [=](QString cmd, bool(ManualControlDialogV1::*get)(void)) { + commands.push_back(new SCPICommand(cmd, nullptr, [=](QStringList) -> QString { + auto get_fn = std::bind(get, this); + return get_fn() ? SCPI::getResultName(SCPI::Result::True) : SCPI::getResultName(SCPI::Result::False); + })); + }; + auto addComplexManualQuery = [=](QString cmd, std::complex(ManualControlDialogV1::*get)(void)) { + commands.push_back(new SCPICommand(cmd, nullptr, [=](QStringList) -> QString { + auto get_fn = std::bind(get, this); + auto res = get_fn(); + return QString::number(res.real())+","+QString::number(res.imag()); + })); + }; + + addBooleanManualSetting("MANual:HSRC_CE", &ManualControlDialogV1::setHighSourceChipEnable, &ManualControlDialogV1::getHighSourceChipEnable); + addBooleanManualSetting("MANual:HSRC_RFEN", &ManualControlDialogV1::setHighSourceRFEnable, &ManualControlDialogV1::getHighSourceRFEnable); + addBooleanManualQuery("MANual:HSRC_LOCKed", &ManualControlDialogV1::getHighSourceLocked); + addIntegerManualSettingWithReturnValue("MANual:HSRC_PWR", &ManualControlDialogV1::setHighSourcePower, &ManualControlDialogV1::getHighSourcePower); + addDoubleManualSetting("MANual:HSRC_FREQ", &ManualControlDialogV1::setHighSourceFrequency, &ManualControlDialogV1::getHighSourceFrequency); + commands.push_back(new SCPICommand("MANual:HSRC_LPF", [=](QStringList params) -> QString { + long value; + if(!SCPI::paramToLong(params, 0, value)) { + return SCPI::getResultName(SCPI::Result::Error); + } + switch(value) { + case 947: + setHighSourceLPF(ManualControlDialogV1::LPF::M947); + break; + case 1880: + setHighSourceLPF(ManualControlDialogV1::LPF::M1880); + break; + case 3500: + setHighSourceLPF(ManualControlDialogV1::LPF::M3500); + break; + case 0: + setHighSourceLPF(ManualControlDialogV1::LPF::None); + break; + default: + return SCPI::getResultName(SCPI::Result::Error); + } + return SCPI::getResultName(SCPI::Result::Empty); + }, [=](QStringList) -> QString { + auto lpf = getHighSourceLPF(); + switch(lpf) { + case ManualControlDialogV1::LPF::M947: return "947"; + case ManualControlDialogV1::LPF::M1880: return "1880"; + case ManualControlDialogV1::LPF::M3500: return "3500"; + case ManualControlDialogV1::LPF::None: return "0"; + default: return SCPI::getResultName(SCPI::Result::Error); + } + })); + addBooleanManualSetting("MANual:LSRC_EN", &ManualControlDialogV1::setLowSourceEnable, &ManualControlDialogV1::getLowSourceEnable); + addIntegerManualSettingWithReturnValue("MANual:LSRC_PWR", &ManualControlDialogV1::setLowSourcePower, &ManualControlDialogV1::getLowSourcePower); + addDoubleManualSetting("MANual:LSRC_FREQ", &ManualControlDialogV1::setLowSourceFrequency, &ManualControlDialogV1::getLowSourceFrequency); + addBooleanManualSetting("MANual:BAND_SW", &ManualControlDialogV1::setHighband, &ManualControlDialogV1::getHighband); + addDoubleManualSetting("MANual:ATTenuator", &ManualControlDialogV1::setAttenuator, &ManualControlDialogV1::getAttenuator); + addBooleanManualSetting("MANual:AMP_EN", &ManualControlDialogV1::setAmplifierEnable, &ManualControlDialogV1::getAmplifierEnable); + addIntegerManualSettingWithReturnValue("MANual:PORT_SW", &ManualControlDialogV1::setPortSwitch, &ManualControlDialogV1::getPortSwitch); + addBooleanManualSetting("MANual:LO1_CE", &ManualControlDialogV1::setLO1ChipEnable, &ManualControlDialogV1::getLO1ChipEnable); + addBooleanManualSetting("MANual:LO1_RFEN", &ManualControlDialogV1::setLO1RFEnable, &ManualControlDialogV1::getLO1RFEnable); + addBooleanManualQuery("MANual:LO1_LOCKed", &ManualControlDialogV1::getLO1Locked); + addDoubleManualSetting("MANual:LO1_FREQ", &ManualControlDialogV1::setLO1Frequency, &ManualControlDialogV1::getLO1Frequency); + addDoubleManualSetting("MANual:IF1_FREQ", &ManualControlDialogV1::setIF1Frequency, &ManualControlDialogV1::getIF1Frequency); + addBooleanManualSetting("MANual:LO2_EN", &ManualControlDialogV1::setLO2Enable, &ManualControlDialogV1::getLO2Enable); + addDoubleManualSetting("MANual:LO2_FREQ", &ManualControlDialogV1::setLO2Frequency, &ManualControlDialogV1::getLO2Frequency); + addDoubleManualSetting("MANual:IF2_FREQ", &ManualControlDialogV1::setIF2Frequency, &ManualControlDialogV1::getIF2Frequency); + addBooleanManualSetting("MANual:PORT1_EN", &ManualControlDialogV1::setPort1Enable, &ManualControlDialogV1::getPort1Enable); + addBooleanManualSetting("MANual:PORT2_EN", &ManualControlDialogV1::setPort2Enable, &ManualControlDialogV1::getPort2Enable); + addBooleanManualSetting("MANual:REF_EN", &ManualControlDialogV1::setRefEnable, &ManualControlDialogV1::getRefEnable); + addIntegerManualSetting("MANual:SAMPLES", &ManualControlDialogV1::setNumSamples, &ManualControlDialogV1::getNumSamples); + commands.push_back(new SCPICommand("MANual:WINdow", [=](QStringList params) -> QString { + if(params.size() < 1) { + return SCPI::getResultName(SCPI::Result::Error); + } + if (params[0] == "NONE") { + setWindow(ManualControlDialogV1::Window::None); + } else if(params[0] == "KAISER") { + setWindow(ManualControlDialogV1::Window::Kaiser); + } else if(params[0] == "HANN") { + setWindow(ManualControlDialogV1::Window::Hann); + } else if(params[0] == "FLATTOP") { + setWindow(ManualControlDialogV1::Window::FlatTop); + } else { + return "INVALID WINDOW"; + } + return SCPI::getResultName(SCPI::Result::Empty); + }, [=](QStringList) -> QString { + switch((ManualControlDialogV1::Window) getWindow()) { + case ManualControlDialogV1::Window::None: return "NONE"; + case ManualControlDialogV1::Window::Kaiser: return "KAISER"; + case ManualControlDialogV1::Window::Hann: return "HANN"; + case ManualControlDialogV1::Window::FlatTop: return "FLATTOP"; + default: return SCPI::getResultName(SCPI::Result::Error); + } + })); + addIntegerManualQuery("MANual:PORT1_MIN", &ManualControlDialogV1::getPort1MinADC); + addIntegerManualQuery("MANual:PORT1_MAX", &ManualControlDialogV1::getPort1MaxADC); + addDoubleManualQuery("MANual:PORT1_MAG", &ManualControlDialogV1::getPort1Magnitude); + addDoubleManualQuery("MANual:PORT1_PHAse", &ManualControlDialogV1::getPort1Phase); + addComplexManualQuery("MANual:PORT1_REFerenced", &ManualControlDialogV1::getPort1Referenced); + + addIntegerManualQuery("MANual:PORT2_MIN", &ManualControlDialogV1::getPort2MinADC); + addIntegerManualQuery("MANual:PORT2_MAX", &ManualControlDialogV1::getPort2MaxADC); + addDoubleManualQuery("MANual:PORT2_MAG", &ManualControlDialogV1::getPort2Magnitude); + addDoubleManualQuery("MANual:PORT2_PHAse", &ManualControlDialogV1::getPort2Phase); + addComplexManualQuery("MANual:PORT2_REFerenced", &ManualControlDialogV1::getPort2Referenced); + + addIntegerManualQuery("MANual:REF_MIN", &ManualControlDialogV1::getRefMinADC); + addIntegerManualQuery("MANual:REF_MAX", &ManualControlDialogV1::getRefMaxADC); + addDoubleManualQuery("MANual:REF_MAG", &ManualControlDialogV1::getRefMagnitude); + addDoubleManualQuery("MANual:REF_PHAse", &ManualControlDialogV1::getRefPhase); + + for(auto c : commands) { + emit dev.addSCPICommand(c); + } + UpdateDevice(); } ManualControlDialogV1::~ManualControlDialogV1() { + for(auto c : commands) { + emit dev.removeSCPICommand(c); + } emit dev.releaseControl(); delete ui; } diff --git a/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/manualcontroldialogV1.h b/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/manualcontroldialogV1.h index 2b9c6df4..42658dbb 100644 --- a/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/manualcontroldialogV1.h +++ b/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/manualcontroldialogV1.h @@ -111,6 +111,8 @@ public slots: LibreVNADriver &dev; std::complex port1referenced; std::complex port2referenced; + + std::vector commands; }; #endif // MANUALCONTROLDIALOGV1_H diff --git a/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/manualcontroldialogV1.ui b/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/manualcontroldialogV1.ui index b10d7d9b..2a25745f 100644 --- a/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/manualcontroldialogV1.ui +++ b/Software/PC_Application/LibreVNA-GUI/Device/LibreVNA/manualcontroldialogV1.ui @@ -3,7 +3,7 @@ ManualControlDialogV1 - Qt::ApplicationModal + Qt::WindowModality::ApplicationModal @@ -520,16 +520,16 @@ - 128 + 16 - 130944 + 131072 - 128 + 16 - 130944 + 131072 diff --git a/Software/PC_Application/LibreVNA-GUI/Device/devicedriver.h b/Software/PC_Application/LibreVNA-GUI/Device/devicedriver.h index 3581694a..0a15586b 100644 --- a/Software/PC_Application/LibreVNA-GUI/Device/devicedriver.h +++ b/Software/PC_Application/LibreVNA-GUI/Device/devicedriver.h @@ -13,6 +13,7 @@ #include "Tools/parameters.h" #include "savable.h" +#include "scpi.h" #include #include @@ -231,6 +232,24 @@ class DeviceDriver : public QObject */ std::vector driverSpecificActions() {return specificActions;} + /** + * @brief Return driver specific SCPI commands + * + * The returned commands will be added to the :DEV SCPI node + * + * @return List of SCPI commands + */ + std::vector driverSpecificSCPICommands() {return specificSCPIcommands;} + + /** + * @brief Return driver specific SCPI nodes + * + * The returned nodes (which may contain further nodes/commands) will be added to the :DEV SCPI node + * + * @return List of SCPI nodes + */ + std::vector driverSpecificSCPINodes() {return specificSCPInodes;} + class VNASettings { public: // Start/stop frequency. Both values will be identical for power sweeps and zero span @@ -486,6 +505,41 @@ class DeviceDriver : public QObject */ void releaseControl(); + /** + * @brief Emit this to temporarily add a new SCPI command to the root node. + * + * Before deleting the command, removeSCPICommand must be emitted. + * When the device is disconnected, all added commands will be automatically removed. + * + * @param cmd Command to add + */ + void addSCPICommand(SCPICommand *cmd); + + /** + * @brief Emit this to remove a temporarily added SCPI command. + * + * @param cmd Command to remove + */ + void removeSCPICommand(SCPICommand *cmd); + + /** + * @brief Emit this to temporarily add a new SCPI node to the root node. + * + * Before deleting the node, removeSCPINode must be emitted. + * When the device is disconnected, all added nodes will be automatically removed. + * + * @param node Node to add + */ + void addSCPINode(SCPINode *node); + + /** + * @brief Emit this to remove a temporarily added SCPI node. + * + * @param node Node to remove + */ + void removeSCPINode(SCPINode *node); + + public: bool connectDevice(QString serial, bool isIndepedentDriver = false); void disconnectDevice(); @@ -494,9 +548,29 @@ class DeviceDriver : public QObject static unsigned int SApoints(); protected: + // Each driver implementation may add specific actionsm, settings or commands. All of these must + // be created in the constructor and added to the following vectors: + + // A list of actions specific to the driver. They will show up in the device menu std::vector specificActions; + + // A list of settings specific to the driver. They will be stored/recalled as part of the preferences. + // If a setting should be user-changeable in the preferences, createSettingsWidget() must include some + // widget to modify that setting std::vector specificSettings; + // A list of SCPI commands. They will be available at the root node whenever the device driver is in use. + // Avoid name collisions with commands/nodes already implemented in appwindow.cpp. + // Use this for commands that will be available whenever the device is connected. For commands that are + // not always available, use the addSCPICommand and removeSCPICommand signals. + std::vector specificSCPIcommands; + + // A list of SCPI nodes. They will be available at the root node whenever the device driver is in use. + // Avoid name collisions with commands/nodes already implemented in appwindow.cpp + // Use this for nodes that will be available whenever the device is connected. For nodes that are + // not always available, use the addSCPINode and removeSCPINode signals. + std::vector specificSCPInodes; + private: static DeviceDriver *activeDriver; }; diff --git a/Software/PC_Application/LibreVNA-GUI/appwindow.cpp b/Software/PC_Application/LibreVNA-GUI/appwindow.cpp index b28a07ca..b02e7495 100644 --- a/Software/PC_Application/LibreVNA-GUI/appwindow.cpp +++ b/Software/PC_Application/LibreVNA-GUI/appwindow.cpp @@ -354,6 +354,28 @@ bool AppWindow::ConnectToDevice(QString serial, DeviceDriver *driver) lastActiveMode = modeHandler->getActiveMode(); modeHandler->deactivate(lastActiveMode); }); + connect(d, &DeviceDriver::addSCPICommand, this, [=](SCPICommand *cmd){ + temporaryDeviceCommands.push_back(cmd); + scpi.add(cmd); + }); + connect(d, &DeviceDriver::removeSCPICommand, this, [=](SCPICommand *cmd){ + auto it = std::find(temporaryDeviceCommands.begin(), temporaryDeviceCommands.end(), cmd); + if(it != temporaryDeviceCommands.end()) { + temporaryDeviceCommands.erase(it); + } + scpi.remove(cmd); + }); + connect(d, &DeviceDriver::addSCPINode, this, [=](SCPINode *node){ + temporaryDeviceNodes.push_back(node); + scpi.add(node); + }); + connect(d, &DeviceDriver::removeSCPINode, this, [=](SCPINode *node){ + auto it = std::find(temporaryDeviceNodes.begin(), temporaryDeviceNodes.end(), node); + if(it != temporaryDeviceNodes.end()) { + temporaryDeviceNodes.erase(it); + } + scpi.remove(node); + }); if(d->connectDevice(serial)) { device = d; @@ -386,15 +408,16 @@ bool AppWindow::ConnectToDevice(QString serial, DeviceDriver *driver) for(auto a : device->driverSpecificActions()) { ui->menuDevice->insertAction(before, a); } -// if(!vdevice->isCompoundDevice()) { -// ui->actionManual_Control->setEnabled(true); -// ui->actionFirmware_Update->setEnabled(true); -// ui->actionSource_Calibration->setEnabled(true); -// ui->actionReceiver_Calibration->setEnabled(true); -// ui->actionFrequency_Calibration->setEnabled(true); -// } ui->actionPreset->setEnabled(true); + // Add SCPI nodes/commands + for(auto n : device->driverSpecificSCPINodes()) { + scpi.add(n); + } + for(auto c : device->driverSpecificSCPICommands()) { + scpi.add(c); + } + DeviceEntry e; e.serial = device->getSerial(); e.driver = device; @@ -407,12 +430,6 @@ bool AppWindow::ConnectToDevice(QString serial, DeviceDriver *driver) } } -// vdevice->initialize(); - -// UpdateAcquisitionFrequencies(); -// if (modeHandler->getActiveMode()) { -// modeHandler->getActiveMode()->initializeDevice(); -// } return true; } catch (const runtime_error &e) { qWarning() << "Failed to connect:" << e.what(); @@ -425,9 +442,28 @@ bool AppWindow::ConnectToDevice(QString serial, DeviceDriver *driver) void AppWindow::DisconnectDevice() { if(device) { + // remove menu entries for(auto a : device->driverSpecificActions()) { ui->menuDevice->removeAction(a); } + // remove SCPI nodes/commands + for(auto n : device->driverSpecificSCPINodes()) { + scpi.remove(n); + } + for(auto c : device->driverSpecificSCPICommands()) { + scpi.remove(c); + } + + // Remove all temporary SCPI nodes/commands + for(auto n : temporaryDeviceNodes) { + scpi.remove(n); + } + temporaryDeviceNodes.clear(); + for(auto c : temporaryDeviceCommands) { + scpi.remove(c); + } + temporaryDeviceCommands.clear(); + device->disconnectDevice(); disconnect(device, nullptr, &deviceLog, nullptr); disconnect(device, nullptr, this, nullptr); @@ -515,26 +551,6 @@ void AppWindow::SetupSCPI() return "Not connected"; } })); - scpi_dev->add(new SCPICommand("UPDATE", [=](QStringList params) -> QString { - if(params.size() != 1) { - // no file given - return SCPI::getResultName(SCPI::Result::Error); - } - if(!device) { - // not connected to any device - return SCPI::getResultName(SCPI::Result::Error); - } - scpi.setOperationPending(true); - auto ret = device->updateFirmware(params[0]); - scpi.setOperationPending(false); - if(!ret) { - // update failed - return SCPI::getResultName(SCPI::Result::Error); - } else { - // update succeeded - return SCPI::getResultName(SCPI::Result::Empty); - } - }, nullptr, false)); scpi_dev->add(new SCPICommand("LIST", nullptr, [=](QStringList) -> QString { QString ret; UpdateDeviceList(); @@ -728,32 +744,6 @@ void AppWindow::SetupSCPI() return SCPI::getResultName(SCPI::Result::Error); } })); -// scpi_info->add(new SCPICommand("TEMPeratures", nullptr, [=](QStringList){ -// if(!vdevice) { -// return QString("0/0/0"); -// } else if(vdevice->isCompoundDevice()) { -// // show highest temperature of all devices -// int maxTempSource = 0; -// int maxTempLO = 0; -// int maxTempMCU = 0; -// for(auto dev : vdevice->getDevices()) { -// auto status = dev->StatusV1(); -// if(status.temp_source > maxTempSource) { -// maxTempSource = status.temp_source; -// } -// if(status.temp_LO1 > maxTempLO) { -// maxTempLO = status.temp_LO1; -// } -// if(status.temp_MCU > maxTempMCU) { -// maxTempMCU = status.temp_MCU; -// } -// } -// return QString::number(maxTempSource)+"/"+QString::number(maxTempLO)+"/"+QString::number(maxTempMCU); -// } else { -// auto dev = vdevice->getDevice(); -// return QString::number(dev->StatusV1().temp_source)+"/"+QString::number(dev->StatusV1().temp_LO1)+"/"+QString::number(dev->StatusV1().temp_MCU); -// } -// })); auto scpi_limits = new SCPINode("LIMits"); scpi_info->add(scpi_limits); scpi_limits->add(new SCPICommand("MINFrequency", nullptr, [=](QStringList){ @@ -786,234 +776,6 @@ void AppWindow::SetupSCPI() scpi_limits->add(new SCPICommand("MAXHARMonicfrequency", nullptr, [=](QStringList){ return QString::number(DeviceDriver::getInfo(getDevice()).Limits.VNA.maxFreq); })); - - // TODO -// auto scpi_manual = new SCPINode("MANual"); -// scpi_manual->add(new SCPICommand("STArt",[=](QStringList) -> QString { -//// StartManualControl(); -// return SCPI::getResultName(SCPI::Result::Empty); -// }, nullptr)); -// scpi_manual->add(new SCPICommand("STOp",[=](QStringList) -> QString { -// manual->close(); -// delete manual; -// return SCPI::getResultName(SCPI::Result::Empty); -// }, nullptr)); -// -// auto addBooleanManualSetting = [=](QString cmd, void(ManualControlDialog::*set)(bool), bool(ManualControlDialog::*get)(void)) { -// scpi_manual->add(new SCPICommand(cmd, [=](QStringList params) -> QString { -// bool enable; -// if(!manual || !SCPI::paramToBool(params, 0, enable)) { -// return SCPI::getResultName(SCPI::Result::Error); -// } -// auto set_fn = std::bind(set, manual, std::placeholders::_1); -// set_fn(enable); -// return SCPI::getResultName(SCPI::Result::Empty); -// }, [=](QStringList) -> QString { -// if(!manual) { -// return SCPI::getResultName(SCPI::Result::Error); -// } -// auto get_fn = std::bind(get, manual); -// return get_fn() ? SCPI::getResultName(SCPI::Result::True) : SCPI::getResultName(SCPI::Result::False); -// })); -// }; - -// auto addDoubleManualSetting = [=](QString cmd, void(ManualControlDialog::*set)(double), double(ManualControlDialog::*get)(void)) { -// scpi_manual->add(new SCPICommand(cmd, [=](QStringList params) -> QString { -// double value; -// if(!manual || !SCPI::paramToDouble(params, 0, value)) { -// return SCPI::getResultName(SCPI::Result::Error); -// } -// auto set_fn = std::bind(set, manual, std::placeholders::_1); -// set_fn(value); -// return SCPI::getResultName(SCPI::Result::Empty); -// }, [=](QStringList) -> QString { -// if(!manual) { -// return SCPI::getResultName(SCPI::Result::Error); -// } -// auto get_fn = std::bind(get, manual); -// return QString::number(get_fn()); -// })); -// }; -// auto addIntegerManualSetting = [=](QString cmd, void(ManualControlDialog::*set)(int), int(ManualControlDialog::*get)(void)) { -// scpi_manual->add(new SCPICommand(cmd, [=](QStringList params) -> QString { -// double value; -// if(!manual || !SCPI::paramToDouble(params, 0, value)) { -// return SCPI::getResultName(SCPI::Result::Error); -// } -// auto set_fn = std::bind(set, manual, std::placeholders::_1); -// set_fn(value); -// return SCPI::getResultName(SCPI::Result::Empty); -// }, [=](QStringList) -> QString { -// if(!manual) { -// return SCPI::getResultName(SCPI::Result::Error); -// } -// auto get_fn = std::bind(get, manual); -// return QString::number(get_fn()); -// })); -// }; -// auto addIntegerManualSettingWithReturnValue = [=](QString cmd, bool(ManualControlDialog::*set)(int), int(ManualControlDialog::*get)(void)) { -// scpi_manual->add(new SCPICommand(cmd, [=](QStringList params) -> QString { -// double value; -// if(!manual || !SCPI::paramToDouble(params, 0, value)) { -// return SCPI::getResultName(SCPI::Result::Error); -// } -// auto set_fn = std::bind(set, manual, std::placeholders::_1); -// if(set_fn(value)) { -// return SCPI::getResultName(SCPI::Result::Empty); -// } else { -// return SCPI::getResultName(SCPI::Result::Error); -// } -// }, [=](QStringList) -> QString { -// if(!manual) { -// return SCPI::getResultName(SCPI::Result::Error); -// } -// auto get_fn = std::bind(get, manual); -// return QString::number(get_fn()); -// })); -// }; -// auto addIntegerManualQuery = [=](QString cmd, int(ManualControlDialog::*get)(void)) { -// scpi_manual->add(new SCPICommand(cmd, nullptr, [=](QStringList) -> QString { -// if(!manual) { -// return SCPI::getResultName(SCPI::Result::Error); -// } -// auto get_fn = std::bind(get, manual); -// return QString::number(get_fn()); -// })); -// }; -// auto addDoubleManualQuery = [=](QString cmd, double(ManualControlDialog::*get)(void)) { -// scpi_manual->add(new SCPICommand(cmd, nullptr, [=](QStringList) -> QString { -// if(!manual) { -// return SCPI::getResultName(SCPI::Result::Error); -// } -// auto get_fn = std::bind(get, manual); -// return QString::number(get_fn()); -// })); -// }; -// auto addBooleanManualQuery = [=](QString cmd, bool(ManualControlDialog::*get)(void)) { -// scpi_manual->add(new SCPICommand(cmd, nullptr, [=](QStringList) -> QString { -// if(!manual) { -// return SCPI::getResultName(SCPI::Result::Error); -// } -// auto get_fn = std::bind(get, manual); -// return get_fn() ? SCPI::getResultName(SCPI::Result::True) : SCPI::getResultName(SCPI::Result::False); -// })); -// }; -// auto addComplexManualQuery = [=](QString cmd, std::complex(ManualControlDialog::*get)(void)) { -// scpi_manual->add(new SCPICommand(cmd, nullptr, [=](QStringList) -> QString { -// if(!manual) { -// return SCPI::getResultName(SCPI::Result::Error); -// } -// auto get_fn = std::bind(get, manual); -// auto res = get_fn(); -// return QString::number(res.real())+","+QString::number(res.imag()); -// })); -// }; - -// addBooleanManualSetting("HSRC_CE", &ManualControlDialog::setHighSourceChipEnable, &ManualControlDialog::getHighSourceChipEnable); -// addBooleanManualSetting("HSRC_RFEN", &ManualControlDialog::setHighSourceRFEnable, &ManualControlDialog::getHighSourceRFEnable); -// addBooleanManualQuery("HSRC_LOCKed", &ManualControlDialog::getHighSourceLocked); -// addIntegerManualSettingWithReturnValue("HSRC_PWR", &ManualControlDialog::setHighSourcePower, &ManualControlDialog::getHighSourcePower); -// addDoubleManualSetting("HSRC_FREQ", &ManualControlDialog::setHighSourceFrequency, &ManualControlDialog::getHighSourceFrequency); -// scpi_manual->add(new SCPICommand("HSRC_LPF", [=](QStringList params) -> QString { -// long value; -// if(!manual || !SCPI::paramToLong(params, 0, value)) { -// return SCPI::getResultName(SCPI::Result::Error); -// } -// switch(value) { -// case 947: -// manual->setHighSourceLPF(ManualControlDialog::LPF::M947); -// break; -// case 1880: -// manual->setHighSourceLPF(ManualControlDialog::LPF::M1880); -// break; -// case 3500: -// manual->setHighSourceLPF(ManualControlDialog::LPF::M3500); -// break; -// case 0: -// manual->setHighSourceLPF(ManualControlDialog::LPF::None); -// break; -// default: -// return SCPI::getResultName(SCPI::Result::Error); -// } -// return SCPI::getResultName(SCPI::Result::Empty); -// }, [=](QStringList) -> QString { -// if(!manual) { -// return SCPI::getResultName(SCPI::Result::Error); -// } -// auto lpf = manual->getHighSourceLPF(); -// switch(lpf) { -// case ManualControlDialog::LPF::M947: return "947"; -// case ManualControlDialog::LPF::M1880: return "1880"; -// case ManualControlDialog::LPF::M3500: return "3500"; -// case ManualControlDialog::LPF::None: return "0"; -// default: return SCPI::getResultName(SCPI::Result::Error); -// } -// })); -// addBooleanManualSetting("LSRC_EN", &ManualControlDialog::setLowSourceEnable, &ManualControlDialog::getLowSourceEnable); -// addIntegerManualSettingWithReturnValue("LSRC_PWR", &ManualControlDialog::setLowSourcePower, &ManualControlDialog::getLowSourcePower); -// addDoubleManualSetting("LSRC_FREQ", &ManualControlDialog::setLowSourceFrequency, &ManualControlDialog::getLowSourceFrequency); -// addBooleanManualSetting("BAND_SW", &ManualControlDialog::setHighband, &ManualControlDialog::getHighband); -// addDoubleManualSetting("ATTenuator", &ManualControlDialog::setAttenuator, &ManualControlDialog::getAttenuator); -// addBooleanManualSetting("AMP_EN", &ManualControlDialog::setAmplifierEnable, &ManualControlDialog::getAmplifierEnable); -// addIntegerManualSettingWithReturnValue("PORT_SW", &ManualControlDialog::setPortSwitch, &ManualControlDialog::getPortSwitch); -// addBooleanManualSetting("LO1_CE", &ManualControlDialog::setLO1ChipEnable, &ManualControlDialog::getLO1ChipEnable); -// addBooleanManualSetting("LO1_RFEN", &ManualControlDialog::setLO1RFEnable, &ManualControlDialog::getLO1RFEnable); -// addBooleanManualQuery("LO1_LOCKed", &ManualControlDialog::getLO1Locked); -// addDoubleManualSetting("LO1_FREQ", &ManualControlDialog::setLO1Frequency, &ManualControlDialog::getLO1Frequency); -// addDoubleManualSetting("IF1_FREQ", &ManualControlDialog::setIF1Frequency, &ManualControlDialog::getIF1Frequency); -// addBooleanManualSetting("LO2_EN", &ManualControlDialog::setLO2Enable, &ManualControlDialog::getLO2Enable); -// addDoubleManualSetting("LO2_FREQ", &ManualControlDialog::setLO2Frequency, &ManualControlDialog::getLO2Frequency); -// addDoubleManualSetting("IF2_FREQ", &ManualControlDialog::setIF2Frequency, &ManualControlDialog::getIF2Frequency); -// addBooleanManualSetting("PORT1_EN", &ManualControlDialog::setPort1Enable, &ManualControlDialog::getPort1Enable); -// addBooleanManualSetting("PORT2_EN", &ManualControlDialog::setPort2Enable, &ManualControlDialog::getPort2Enable); -// addBooleanManualSetting("REF_EN", &ManualControlDialog::setRefEnable, &ManualControlDialog::getRefEnable); -// addIntegerManualSetting("SAMPLES", &ManualControlDialog::setNumSamples, &ManualControlDialog::getNumSamples); -// scpi_manual->add(new SCPICommand("WINdow", [=](QStringList params) -> QString { -// if(!manual || params.size() < 1) { -// return SCPI::getResultName(SCPI::Result::Error); -// } -// if (params[0] == "NONE") { -// manual->setWindow(ManualControlDialog::Window::None); -// } else if(params[0] == "KAISER") { -// manual->setWindow(ManualControlDialog::Window::Kaiser); -// } else if(params[0] == "HANN") { -// manual->setWindow(ManualControlDialog::Window::Hann); -// } else if(params[0] == "FLATTOP") { -// manual->setWindow(ManualControlDialog::Window::FlatTop); -// } else { -// return "INVALID WINDOW"; -// } -// return SCPI::getResultName(SCPI::Result::Empty); -// }, [=](QStringList) -> QString { -// if(!manual) { -// return SCPI::getResultName(SCPI::Result::Error); -// } -// switch((ManualControlDialog::Window) manual->getWindow()) { -// case ManualControlDialog::Window::None: return "NONE"; -// case ManualControlDialog::Window::Kaiser: return "KAISER"; -// case ManualControlDialog::Window::Hann: return "HANN"; -// case ManualControlDialog::Window::FlatTop: return "FLATTOP"; -// default: return SCPI::getResultName(SCPI::Result::Error); -// } -// })); -// addIntegerManualQuery("PORT1_MIN", &ManualControlDialog::getPort1MinADC); -// addIntegerManualQuery("PORT1_MAX", &ManualControlDialog::getPort1MaxADC); -// addDoubleManualQuery("PORT1_MAG", &ManualControlDialog::getPort1Magnitude); -// addDoubleManualQuery("PORT1_PHAse", &ManualControlDialog::getPort1Phase); -// addComplexManualQuery("PORT1_REFerenced", &ManualControlDialog::getPort1Referenced); - -// addIntegerManualQuery("PORT2_MIN", &ManualControlDialog::getPort2MinADC); -// addIntegerManualQuery("PORT2_MAX", &ManualControlDialog::getPort2MaxADC); -// addDoubleManualQuery("PORT2_MAG", &ManualControlDialog::getPort2Magnitude); -// addDoubleManualQuery("PORT2_PHAse", &ManualControlDialog::getPort2Phase); -// addComplexManualQuery("PORT2_REFerenced", &ManualControlDialog::getPort2Referenced); - -// addIntegerManualQuery("REF_MIN", &ManualControlDialog::getRefMinADC); -// addIntegerManualQuery("REF_MAX", &ManualControlDialog::getRefMaxADC); -// addDoubleManualQuery("REF_MAG", &ManualControlDialog::getRefMagnitude); -// addDoubleManualQuery("REF_PHAse", &ManualControlDialog::getRefPhase); - -// scpi.add(scpi_manual); } void AppWindow::StartTCPServer(int port) diff --git a/Software/PC_Application/LibreVNA-GUI/appwindow.h b/Software/PC_Application/LibreVNA-GUI/appwindow.h index 2fd231ac..71e5a18a 100644 --- a/Software/PC_Application/LibreVNA-GUI/appwindow.h +++ b/Software/PC_Application/LibreVNA-GUI/appwindow.h @@ -159,6 +159,8 @@ private slots: QCommandLineParser parser; SCPI scpi; + std::vector temporaryDeviceCommands; + std::vector temporaryDeviceNodes; TCPServer *server; StreamingServer *streamVNARawData; StreamingServer *streamVNACalibratedData; diff --git a/Software/PC_Application/LibreVNA-GUI/scpi.cpp b/Software/PC_Application/LibreVNA-GUI/scpi.cpp index f873e9be..36f5c729 100644 --- a/Software/PC_Application/LibreVNA-GUI/scpi.cpp +++ b/Software/PC_Application/LibreVNA-GUI/scpi.cpp @@ -285,39 +285,6 @@ SCPINode::~SCPINode() } } -bool SCPINode::add(SCPINode *node) -{ - if(nameCollision(node->name)) { - qWarning() << "Unable to add SCPI node, name collision: " << node->name; - return false; - } - subnodes.push_back(node); - node->parent = this; - return true; -} - -bool SCPINode::remove(SCPINode *node) -{ - auto it = std::find(subnodes.begin(), subnodes.end(), node); - if(it != subnodes.end()) { - subnodes.erase(it); - node->parent = nullptr; - return true; - } else { - return false; - } -} - -bool SCPINode::add(SCPICommand *cmd) -{ - if(nameCollision(cmd->name())) { - qWarning() << "Unable to add SCPI command, name collision: " << cmd->name(); - return false; - } - commands.push_back(cmd); - return true; -} - bool SCPINode::addDoubleParameter(QString name, double ¶m, bool gettable, bool settable, std::function setCallback) { auto cmd = settable ? [¶m, setCallback](QStringList params) -> QString { @@ -441,14 +408,118 @@ void SCPINode::createCommandList(QString prefix, QString &list) { for(auto c : commands) { if(c->queryable()) { - list += prefix + c->name() + "?\n"; + list += prefix + c->leafName() + "?\n"; } if(c->executable()) { - list += prefix + c->name() + '\n'; + list += prefix + c->leafName() + '\n'; } } for(auto n : subnodes) { - n->createCommandList(prefix + n->name + ":", list); + n->createCommandList(prefix + n->leafName() + ":", list); + } +} + +SCPINode *SCPINode::findSubnode(QString name) +{ + for(auto n : subnodes) { + if(n->name == name) { + return n; + } + } + return nullptr; +} + +bool SCPINode::addInternal(SCPINode *node, int depth) +{ + QStringList parts = node->name.split(":"); + if(depth == parts.size()-1) { + // add to this node + if(nameCollision(parts[depth])) { + qWarning() << "Unable to add SCPI node, name collision: " << node->name; + return false; + } + subnodes.push_back(node); + node->parent = this; + return true; + } else { + // add to subnode + auto subNode = findSubnode(parts[depth]); + if(!subNode) { + // does not exist, create first + subNode = new SCPINode(parts[depth]); + add(subNode); + } + return subNode->addInternal(node, depth+1); + } +} + +bool SCPINode::removeInternal(SCPINode *node, int depth) +{ + QStringList parts = node->name.split(":"); + if(depth == parts.size()-1) { + // remove from this node + auto it = std::find(subnodes.begin(), subnodes.end(), node); + if(it != subnodes.end()) { + subnodes.erase(it); + node->parent = nullptr; + return true; + } else { + return false; + } + } else { + // remove from subnode + auto subNode = findSubnode(parts[depth]); + if(!subNode) { + // does not exist + return false; + } + return subNode->removeInternal(node, depth+1); + } +} + +bool SCPINode::addInternal(SCPICommand *cmd, int depth) +{ + QStringList parts = cmd->name().split(":"); + if(depth == parts.size()-1) { + // add to this node + if(nameCollision(parts[depth])) { + qWarning() << "Unable to add SCPI command, name collision: " << cmd->name(); + return false; + } + commands.push_back(cmd); + return true; + } else { + // add to subnode + auto subNode = findSubnode(parts[depth]); + if(!subNode) { + // does not exist, create first + subNode = new SCPINode(parts[depth]); + add(subNode); + } + return subNode->addInternal(cmd, depth+1); + } +} + +bool SCPINode::removeInternal(SCPICommand *cmd, int depth) +{ + QStringList parts = cmd->name().split(":"); + if(depth == parts.size()-1) { + // remove from this node + auto it = std::find(commands.begin(), commands.end(), cmd); + if(it != commands.end()) { + commands.erase(it); + return true; + } else { + return false; + } + } else { + // remove from subnode + auto subNode = findSubnode(parts[depth]); + if(!subNode) { + // does not exist + return false; + } + return subNode->removeInternal(cmd, depth+1); } } @@ -463,7 +534,7 @@ QString SCPINode::parse(QString cmd, SCPINode* &lastNode) // have not reached a leaf, find next subnode auto subnode = cmd.left(splitPos); for(auto n : subnodes) { - if(SCPI::match(n->name, subnode.toUpper())) { + if(SCPI::match(n->leafName(), subnode.toUpper())) { // pass on to next level return n->parse(cmd.right(cmd.size() - splitPos - 1), lastNode); } @@ -481,7 +552,7 @@ QString SCPINode::parse(QString cmd, SCPINode* &lastNode) cmd.chop(1); } for(auto c : commands) { - if(SCPI::match(c->name(), cmd.toUpper())) { + if(SCPI::match(c->leafName(), cmd.toUpper())) { // save current node in case of non-root for the next command lastNode = this; if(c->convertToUppercase()) { diff --git a/Software/PC_Application/LibreVNA-GUI/scpi.h b/Software/PC_Application/LibreVNA-GUI/scpi.h index 42e122a0..c2bd72c7 100644 --- a/Software/PC_Application/LibreVNA-GUI/scpi.h +++ b/Software/PC_Application/LibreVNA-GUI/scpi.h @@ -21,6 +21,7 @@ class SCPICommand { bool queryable() { return fn_query != nullptr;} bool executable() { return fn_cmd != nullptr;} bool convertToUppercase() { return argAlwaysUppercase;} + QString leafName() {return _name.split(":").back();} private: const QString _name; std::function fn_cmd; @@ -35,15 +36,17 @@ class SCPINode { name(name), parent(nullptr), operationPending(false){} virtual ~SCPINode(); - bool add(SCPINode *node); - bool remove(SCPINode *node); - bool add(SCPICommand *cmd); + bool add(SCPINode *node) {return addInternal(node, 0);} + bool remove(SCPINode *node) {return removeInternal(node, 0);} + bool add(SCPICommand *cmd) {return addInternal(cmd, 0);} + bool remove(SCPICommand *cmd) {return removeInternal(cmd, 0);} bool addDoubleParameter(QString name, double ¶m, bool gettable = true, bool settable = true, std::function setCallback = nullptr); bool addUnsignedIntParameter(QString name, unsigned int ¶m, bool gettable = true, bool settable = true, std::function setCallback = nullptr); bool addBoolParameter(QString name, bool ¶m, bool gettable = true, bool settable = true, std::function setCallback = nullptr); bool changeName(QString newname); + QString leafName() {return name.split(":").back();} void setOperationPending(bool pending); @@ -54,6 +57,11 @@ class SCPINode { QString parse(QString cmd, SCPINode* &lastNode); bool nameCollision(QString name); void createCommandList(QString prefix, QString &list); + SCPINode *findSubnode(QString name); + bool addInternal(SCPINode *node, int depth); + bool removeInternal(SCPINode *node, int depth); + bool addInternal(SCPICommand *cmd, int depth); + bool removeInternal(SCPICommand *cmd, int depth); QString name; std::vector subnodes; std::vector commands;