This plugin should extend PyVISA's funtionality mainly in order to address local hardware which is attached to a remote node, e.g. USB or GPIB. In the end, you can decouple your VISA instrument hosting where you need bare metal nodes and the test script runner.
Using pip:
pip install pyvisa-proxy
In order to make devices remotely available, just run the PyVISA-remote server on your node. The server will open new VISA resources per request. Just run
python -m pyivsa_proxy --port 5000
in order to host your "local" connections. Use any available port for network sharing.
Use a client like a normal PyVISA class. The calls will be forwarded by reflection to the server. In order to get started, use the following snippet in your code.
import pyvisa
rm = pyvisa.ResourceManager("YourProxyServerIp:YourProxyServerPort@proxy")
instr = rm.open_resource(resource="GPIB0::1::INSTR")
print(instr.query("*IDN?"))
I welcome any contributions, enhancements, and bug-fixes. Open an issue on GitHub and submit a pull request.
pyvisa-remote is 100% free and open-source, under the MIT license. Use it however you want.
This package is Treeware. If you use it in production, then we ask that you buy the world a tree to thank us for our work. By contributing to the Treeware forest you’ll be creating employment for local families and restoring wildlife habitats.