For whatever reason, my Siglent SDS2304X Oscilloscope and SDM3045X Multimeter partially implement their documented command sets through partial implementations of the VXI instrumentation driver network protocol. The Linux command-line side comes from lxi-tools, which one must fetch from its repository and compile from source(do liblxi first, then lxi-tools) through the usual
./configure - make - sudo make install process, after tediously installing whatever dependencies might be revealed by incremental progress through the configuration(s) on your system(s).
The alternative, of course, is Labview on Windows.
The SDS2304X scope doesn’t respond to the LXI
discover broadcast, so you must know and specify its IP address in the command. It’s easiest to configure the Siglent instruments at fixed IP addresses and be done with it:
lxi scpi -a 192.168.1.41 "*idn?" Siglent Technologies,SDM3045X,SDM34whatever,5.01.01.03 lxi scpi -a 192.168.1.42 "*idn?" *IDN SIGLENT,SDS2304X,SDS2Xwhatever,22.214.171.124 R10
Although the LXI tools also come in a Snap package, installing them that way prevents storing files outside the user’s home directory; having evolved a fairly extensive NFS filesystem, Snaps seem basically useless for my purposes. I don’t see much more security exposure from downloading and running a Snap than from downloading, compiling, and running the source code, but they obviously know what’s best for me.