VISA support in Processing

Hi everyone

I am using Visual Basic as RAD tool for writing code to control electronic measurement devices such as Digital Multi-meters, Programmable Power Supply, Signal Generators and Oscilloscopes. I am new to Processing but I am amazed of its cross platform deployment support even on Raspberry Pi.
The protocol for communicating with programmable instrument is VISA which stands for Virtual Instrument Software Architecture. I am looking for a library or project that brings the VISA support into Processing.
Does anyone can help me in this regard?


Are there Java or pure Python libraries for interacting with VISA? If so, you could just import that library.

For example, you could try using Python mode with PyVISA for Python 2.7 PyVISA · PyPI

1 Like

Thank U for suggestion

I have no experience working with Python. When I import the PyVISA (I still don’t know how to do that), Do I need to learn Python syntax or I just use the regular Processing syntax. I guess that at leastI should know how to invoke the Python class libraries in my code.

I agree with Jeremy. If you have java drivers, you should be able to use them in Processing. For a first kick at the can, you can take a common instrument that you use everyday and do a search to see if you can find a java driver. It is possible you find an actual example. If you find one, then it will be matter of tweaking it to make it work with Processing. Notice the challenge here is to find the proper driver for each device.

Don’t forget to do a quick search in the forum to see if you can find previous similar posts.


1 Like

Python mode uses Python 2.7 syntax.

It sounds like your ideal situation would be Java.

National Instruments does not currently provide language interfaces for Java. It is possible, however, to access National Instruments drivers by making calls to the driver DLL by making a wrapper using the Java Native Interface (JNI). Sun Java includes the JNI which allows calls to be made to C DLLs from Java. This wrapper DLL has to comply with JNI naming requirements, and perform the conversion from Java to C data types.


Thank you for your suggestion. Is there any documentation on how to build a library for Processing? The suggested JVisa have netbean projects to make the library but I am not sure the template is suitable to be called from Processing.

Here is the starting point, on the wiki: