Open-source VISA drivers for my own instruments and hopefully yours too!
This repository contains drivers and communication layers for laboratory equipment using standard VISA communication methods such as TCP/IP, USB-TMC, and LabVIEW VISA.
Official NI VISA documentation can be found here:
National Instruments VISA Overview
| Instrument | Type | Manufacturer | Compatible | Tested Connection Method | LabVIEW | Python |
|---|---|---|---|---|---|---|
| DS1104 | Oscilloscope | Rigol | ✅ | TCP/IP | ❌ | ✅ |
This section contains planned improvements and missing features.
The list will grow as the project develops.
- Write a complete README and Wiki documentation
- Implement a USBTMC wrapper alongside the existing TCP/IP communication
- Implement a GPIB wrapper alongside the existing TCP/IP communication(once instrument with GPIB becomes available )
- Improve error handling
- Clean up and refactor the codebase
- Implement protocol decoder functions once a protocol generator is available
- Implement software limits (soft limits)
- Add additional instrument functions where required
- Implement channel offset configuration
- Add missing features and improvements
- Implement a way to display the complete VISA resource string
- Improve error handling
- catch instrument timeout
- Implement a USBTMC wrapper alongside the existing TCP/IP communication
- Implement a GPIB wrapper alongside the existing TCP/IP communication(once instrument with GPIB becomes available )
- Implement protocol decoder functions once a protocol generator is available
- Add missing features and improvements
The goal of this project is to create reusable VISA drivers that can be used with:
- Laboratory instruments
- Test and measurement equipment
- Automated measurement setups
- LabVIEW applications
- Python-based test frameworks
The focus is on keeping communication simple, reusable, and compatible with different manufacturers.
Currently supported:
- ✅ TCP/IP VISA communication
Planned:
- ⬜ USBTMC
- ⬜ Serial VISA
- ⬜ GPIB (if hardware becomes available)
This project is released under the MIT License.