As of this writing (May 2026) AI Assisted Coding is it’s infancy. However the tools are available and very competent, given proper direction.
Over the past few weeks, I have used Claude Code to help write control, logging and calibration applications for the following instruments:
- HP/Keysight 3458A Digital Voltmeter
- HP/Keysight 3245A Universal Source
- Solartron 7081 Digital Voltmeter (8.5 digits)
- Advantest R6581T Digital Voltmeter (8.5 digits)
- Systron-Donner M107 Precision DC Voltage Source
- Valhalla Scientific 2703 AC Calibrator
My goal as I approached this was to come up with a modular system which used a basic framework for all instruments and build instrument specific requirements alongside that framework. The approach I took was to begin with a software development overview document which included the following:
- Instrument Overview and Specifications
- Project Architecture (Language,Design Principles, File Structure, Dependencies, etc)
- Reusable Code from Existing Project (Lab Instrument Framework)
- GUI Design
- Features Needed for V1.0 (to minimize scope creep)
- Adapter Architecture (NI-VISA GPIB and AR488 USB to GPIB)
- Development Phases, working from the basic GPIB connection to the instrument, through all the features and the GUI
Example of the AAR488 (USB to GPIB) Module location in the overall instrument framework:

I was working with Claude Opus 4.6 for these projects. I concerned myself primarily with the overall concepts, architecture and structure of the modular system, and keeping the project focused and on track. I was less concerned (but still involved) in the actual Python code writing.
All these projects needed meticulous and thorough checking and verification because we are controlling actual instruments such as voltmeters and sources. Much time and effort went into checking all the programmed functions and fine-tuning the GUI for each instrument. And since potentially lethal voltages are involved (up to 1kV AC and DC), safety is a top priority. We incorporated the ideas of “Safety Gates” and Operator verification where hazardous or equipment damaging quantities were involved. We made extensive use of simulations running on the PC in the GUI to sort out bugs and configuration problems.
What I ended up with was a suite of programs which allow control, logging, monitoring and calibration of six instruments over either the NI-VISA GPIB or AR488 (USB to GPIB).
The biggest challenge was mastering the nuances of the GPIB dialects which vary widely across this group of instruments. Several are completely unique and non-standard: Solartron 7081, Systron-Donner M107,. and Valhalla 2703.
Examples of the GUI of the instruments follow:










In the end, we have a system that is modular, upgradeable and easy to maintain. And importantly, the various modules, including the entire lab instrument framework (plotting, statistics, instrument health, etc) can be transferred to other instruments with much less effort than coding a single large application from zero. This modular, reusable approach constituted much more effort at the start, but pays off as more instruments are added.
The state of AI assisted coding is now at the point where anyone with some coding experience can produce solid, working, unique applications in a relatively short time.
PC based control of these instruments has made them much more useful and accessible in the lab. And they can be configured to work together. For example, using the 3245A and 3458A with the DVM being used as a readback device to “nudge” the 3245A output to particular value, either manually or automatically, all using the GUI. The only limit is imagination and creativity.

