SCPI programmable LAB switch with USBTMC interface
Automated test setups often need switches:
- to turn signals on and off
- to enable or disable supplies
- to add or remove output loads
- to connect a measurement instrument to several circuit nodes and collect data
- that integrate seamlessly with LabVIEW and pyvisa test setups
- ...
LabVIEW compatible. This video shows the WIP VI Virtual Instrument driver
In this blog series, I develop a lab switch that can do that. Programmable via SCPI. Plug-and-play compatible with the VISA test & measurement device standards. It supports the USBTMC standard and is IEEE 488.2 compliant. It can control any 3.3V compatible relay/switch circuit.
The core is a Raspberry Pico. Firmware is 97% based on SCPI and USBTMC cross-platform libraries. 3% (less than 30 lines of source code) is Pico specific.
The number of switches you can control is only limited by the amount of available GPIOs on the PICO.
image: WIP VI Virtual Instrument driver example
Command supported:
- all standard SCPI commands (*IDN?, *RST, SYST:ERR...)
- control a switch: DIGI:OUTP# 0|1
- poll a switch state: DIGI:OUTP#?
The firmware is SCPI and IEEE488.2 compliant.
Free to use - also for commercial applications (except the LabVIEW driver). No restrictions and no promises. Please respect the licenses of the 3rd party libraries that are used in the project.
Check the last post for source code, PyVISA and LabVIEW test beds, and the Pico ready-to-load firmware binary.