SkillAgentSearch skills...

Visa

Go-based VISA resource manager.

Install / Use

/learn @gotmc/Visa
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

visa

Go-based Virtual Instrument Software Architecture (VISA) resource manager, which can be used by itself to send Standard Commands for Programmable Instruments (SCPI) commands, or to provide an interface for Interchangeable Virtual Instrument (IVI) drivers.

GoDoc Go Report Card License Badge

Background

The primary purpose of this package is to parse a VISA resource address string in order to create a new VISA resource, which abstracts the interface type—USBTMC, TCPIP, ASRL. By registering a driver for the interface type, application developers can decide which interface types to support and which to exclude, so as to not unnecessarily bloat their packages.

The primary source of information is the VPP-4.3: The VISA Library dated June 19, 2014, which can be found at the IVI Specifications webpage.

Usage

In order to not bloat an end developer's application, the desired HW interface driver(s) have to be registered, similar to Go's SQL package. Currently, there are TCPIP (LXI), USBTMC, and Serial (ASRL) drivers available.

"github.com/gotmc/visa"
_ "github.com/gotmc/visa/driver/tcpip"
_ "github.com/gotmc/visa/driver/usbtmc"
_ "github.com/gotmc/visa/driver/asrl"

Documentation

Documentation can be found at either:

Contributing

Contributions are welcome! To contribute please:

  1. Fork the repository
  2. Create a feature branch
  3. Code
  4. Submit a pull request

Development Dependencies

Testing

Prior to submitting a pull request, please run:

$ just check
$ just lint

To update and view the test coverage report:

$ just cover

License

visa is released under the MIT license. Please see the LICENSE.txt file for more information.

Related Skills

View on GitHub
GitHub Stars14
CategoryProduct
Updated57m ago
Forks6

Languages

Go

Security Score

95/100

Audited on Mar 31, 2026

No findings