Skip to main content
instro is an open-source Python library for scripting and automating test equipment (power supplies, multimeters, electronic loads, DAQs, and more) from one unified, typed API. Code against an instrument category once, then swap vendors with a single configuration change. When you want to capture the data, attach a publisher to stream it to a file, Nominal, or a destination of your own.

Start here

Quickstart

Drive a simulated power supply end-to-end in about five minutes. No hardware required.

Overview

Understand the architecture, key concepts, and design philosophy.

Installation

Install from PyPI with pip or uv, plus the optional vendor extras you need.

Examples

Browse runnable examples for every instrument category.

Supported instruments

Power supplies

InstroPSU: B&K Precision, Keysight, Rigol, Siglent, and TDK Lambda.

B&K Precision 9115

B&K Precision 9115

B&K Precision 914x

B&K Precision 914x

Keysight E36100

Keysight E36100

Rigol DP800

Rigol DP800

Siglent SPD3303

Siglent SPD3303

TDK Lambda Genesys

TDK Lambda Genesys

Electronic loads

InstroELoad: B&K Precision 85xx series via SCPI/VISA.

B&K Precision 85xx

B&K Precision 85xx

Digital multimeters

InstroDMM: Agilent/HP/Keysight 34401A, Keysight 34461A, Keithley 2400, and more.

Agilent/HP/Keysight 34401A

Agilent/HP/Keysight 34401A

Keysight 34461A

Keysight 34461A

Keithley 2400

Keithley 2400

Oscilloscopes

InstroScope: Keysight 1200X, Tektronix 2-series, and Siglent SDS1000X-E.

Keysight 1200X

Keysight 1200X

Tektronix 2-series

Tektronix 2-series

Siglent SDS1000X-E

Siglent SDS1000X-E

Data acquisition

InstroDAQ: National Instruments, LabJack T-Series, Keysight 34980A.

National Instruments

National Instruments

LabJack T-Series

LabJack T-Series

Keysight 34980A

Keysight 34980A

I2C

I2CInterface: Total Phase Aardvark with declarative system definitions.

Total Phase Aardvark

Total Phase Aardvark

Flow controllers

InstroFlowController: Alicat MC.

Alicat MC

Alicat MC

Modbus

ModbusDevice: any Modbus TCP or RTU device.

Modbus TCP

Modbus TCP

Modbus RTU

Modbus RTU

EtherNet/IP

EtherNetIPDevice: Allen-Bradley and CompactLogix-class PLCs.

Allen-Bradley

Allen-Bradley

CompactLogix

CompactLogix

Custom instruments

Build a new instrument type or vendor driver against Instrument.

Instrument

Create your own Instrument category using the tools in instro

Request a driver

Start a thread on our community forum

Publishing data

Publishers

Stream measurements to Nominal Core, Nominal Connect, or a local file with a single line of configuration.