InstrumentControl¶
Universal Windows instrument control software for VISA/GPIB/serial lab equipment.
What is InstrumentControl?¶
InstrumentControl is a .NET 10 WPF desktop application that lets you connect, control, and automate laboratory instruments without writing any code. It supports standard VISA instruments (GPIB, USB-TMC, LAN/VXI-11) and custom RS-232 devices through a plugin architecture.
Key capabilities at a glance:
| Feature | Description |
|---|---|
| Virtual front panels | Per-instrument UI that mirrors the physical device's controls, with independent Disconnect / Reconnect / Reset per instrument |
| Drag-and-drop sequences | Build automated measurement programs by connecting blocks on a canvas |
| Responsive execution | Pause works mid-loop and the UI stays responsive even in tight zero-delay loops; DMM drivers cache configuration so repeated reads issue only READ? |
| Live charts | OxyPlot graphs and data tables update in real time during sequence runs |
| Plugin DLLs | Each instrument driver is an independent DLL — drop it in the instruments/ folder and restart |
| VISA auto-discovery | Scans USB, GPIB, TCPIP and serial ports; sends *IDN? to identify devices automatically |
| Simulation mode | Runs without NI-VISA installed — ideal for sequence development on a laptop |
| Auto-update | Installer edition checks GitHub Releases on every launch and applies delta updates |
| UI language | English and Polish — switch any time from the About dialog, no restart required |
Supported Instruments¶
| Instrument | Type | Interface |
|---|---|---|
| HP 34401A | 6½-digit DMM | VISA (GPIB / USB / RS-232) |
| Agilent 34970A | DAQ / Switch Unit | VISA (GPIB / USB) |
| Keithley 2000 | 6½-digit DMM | VISA (GPIB / USB) |
| ITECH IT6922B | DC Power Supply 60 V / 5 A | VISA (USB / LAN / GPIB) |
| R&S RTB2004 | 4-channel Oscilloscope 300 MHz | VISA (LAN / USB) |
| CTS T-40/50 | Environmental Chamber −75 … +185 °C | RS-232 (custom binary protocol) |
| Rigol DS1054Z / DS1104Z | 4-channel Oscilloscope 50/100 MHz | VISA (LAN / USB / GPIB) |
Quick Navigation¶
-
System requirements, installer vs portable ZIP, NI-VISA setup.
-
Connect your first instrument and run a measurement in 5 minutes.
-
Build automated measurement programs with drag-and-drop blocks.
-
Write a new instrument driver in ~100 lines of C#.
Architecture Overview¶
graph TD
A[InstrumentControl.App<br/>WPF executable] --> B[InstrumentControl.Core<br/>.NET 10 library]
B --> C[IInstrumentDriver]
B --> D[ISequenceBlock]
B --> E[IConnectionProvider]
C --> F[HP34401A.dll]
C --> G[Agilent34970A.dll]
C --> H[Keithley2000.dll]
C --> I[ItechIT6922B.dll]
C --> J[RTB2004.dll]
C --> K[CTSChamber.dll]
C --> L2[RigolDS1000Z.dll]
E --> L[VisaConnectionProvider<br/>NI-VISA P/Invoke]
E --> M[CTSSerialConnectionProvider<br/>Custom binary framing]
E --> N[SimulatedConnectionProvider<br/>No hardware needed]
See the Architecture page for a detailed walkthrough.