Jürgen pointed me to the Rohde-Schwartz drivers which are open-source and work on Windows, macOS and Linux (including Raspbian)!
This is a Node.JS wrapper for the National Instruments VISA (Virtual Instrument Software Architecture) library. The VISA library implements the SCPI (Standard Commands for Programmable Instruments) syntax and commands.
The library is available from National Instruments for Windows and macOS, and supports GPIB, USB, Serial, Ethernet, VXI and PXI interfaces.
The sample test.js
uses the module n6705b
which supports data collection from a 6781 power module to perform data collection.
This implementation uses ffi
to export wrapper functions.
- Error handling - provide an interface for a custom error handler
- Solve the FFI DynamicLibrary issue (it appends the .dylib library suffix which breaks on recent macOS)
- Make it more "npm package-y"
- Implement the full v19 API, not just the basic functions
Originally inspired by Jürgen Skrotzky's visa32 project.