LXI, or LAN eXtensions for Instrumentation is a modern control standard for connecting electronics instrumentation which supports ethernet. It replaces the older GPIB standard, giving much better performance and lower cost of implementation. This is a good thing. [Martin Lund] has created the open source lxi-tools project which enables us to detach ourselves from the often bloated vendor tools usually required for talking LXI to your bench equipment. This is a partial rewrite of an earlier version of the tool, and now sports some rather nice features such as mDNS for instrument discovery, support for screen grabbing, and a LUA-based scripting backend. (API Link)
SCPI or Standard Commands for Programmable Instruments is the text-based language spoken by many instruments, allowing control and querying of an instrument. Just to be clear, SCPI is not at all a new thing, and older instruments that have GPIB or RS232 connectors, still could talk SCPI. lxi-tools is not for those. Some instruments can also be very picky about the formatting of commands, especially if they’re buggy, so the ability to interactively debug commands is very desirable. It is quite possible to make poor use of SCPI commands in your test script and end up with tests that just take far longer to execute that they need to. lxi-tools has a benchmarking tool too, which helps you to dig in and find out where all the time is going and make suitable adjustments.
We’ve not seen much about LXI on Hackaday, but we did cover using PyVISA for dealing with SCPI-over-GPIB in python. If you have an older instrument with GPIB and you don’t want to sell a internal organ to pay for a USB adaptor, here’s one you can make yourself.
SCPI isn’t as old (and thus bad) as this article suggests. lndeed the example picture shows the use of SCPI via ethernet on standard port 5025 (SCPI-RAW).
See also: https://hackaday.com/2021/11/17/scpi-on-teaching-your-devices-the-lingua-franca-of-laboratories/
Erm, I didn’t think I was implying or suggesting that SCPI is bad, at all. LXI is purely another way of sending SCPI to an instrument without using the older, slower and more expensive GPIB standard.
Nothing wrong with SCPI per se, text-based approaches don’t work for everything, but its great for debug. I personally use SCPI over GPIB for a couple of instruments (and I think one of mine does SCPI over RS232 as well) and have written test hardnesses using VISA abstraction for years to help with ASIC bench evaluation. This saves some much time and effort for the whole team, once you sell it in the right way.
SCPI is from 1990 I can’t remember whether that was a good or a bad year.
https://en.wikipedia.org/wiki/Standard_Commands_for_Programmable_Instruments
Well now we just need a dirt cheap GPIB-to-LXI adapter.
Oooh. What a good idea! We could do that.
+5 insightful. There is a lot of serviceable GPIB equipment out there. It’s especially of note to hackers and hobbyists because it’s likely to be found on older high-end gear that has good value to them.
It has to be cheap enough that buying n of them is preferable to buying n multistack cables and a host adapter.
This is pretty cool! I’ve used PyVISA to interact with my Siglent scope & function generator over ethernet. I’ll have to see if lxi-tools works with them too.
I hope you like it and that it works for you. It is an attempt to create a simpler and modern open source alternative to the often-times bloated proprietary tools that requires gigabytes of data to install.
All features should work except maybe the screenshot feature if you have one of the very new Siglent scopes which we have not had the opportunity to test yet. If it fails, feel free to report it on the lxi-tools github issue tracker, then we will try get it fixed. Thanks.