Electronics development and testing often require several instruments at once: multimeters, oscilloscopes, generators, power supplies and electronic loads. An experiment must be repeatable, or at least its conditions and results must be preserved. Without a common system, readings are copied by hand and files and notes have to be matched afterward.
VlasovLab OpenBench brings supported instruments into a local measurement environment with one dashboard, a consistent data model and an API for scripts or AI. It runs without a cloud service, and the web interface is available in Russian and English. Source code, installation instructions and technical documentation are published in VlasovLabTech/OpenBench-lab-control.
Connected-bench interface. The key OpenBench states have light and dark variants, and the site shows the image that matches the selected theme. The screenshots contain real instruments, live measurements and the system response to connection changes during a recording.
What is implemented now
OpenBench connects to equipment over USB serial, USB HID, Bluetooth LE, LAN, SCPI and sigrok. The Dashboard shows connections, current measurements, modes, active outputs and the settings available for each instrument.
OpenBench currently provides:
- instrument discovery, connection and polling with WebSocket updates for the interface;
- bounded control of supported power supplies, loads, generators and oscilloscopes;
- a bench-wide Snapshot and timed or continuous multi-instrument CSV recording;
- screenshots, scalar measurements, waveforms, JSON metadata and native files where the driver supports them;
- switching-matrix profiles with validation and break-before-make routing;
- a common emergency stop that disables supported sources and opens the matrix.
The physical switching matrix has not been built yet. OpenBench currently includes a simulated model and the software logic for profiles, validation and interlocks. This makes it possible to develop the interface and API before the hardware exists without presenting the simulation as a completed device.
Ordinary capture does not require code. The engineer selects instruments, enters a title and comment, and
starts a Snapshot or recording. Results are stored with timestamps, initial settings and relative links
to related artifacts. The database, local settings and results live under .openbench, away
from the project source tree. The interface adapts to desktop and mobile screens.
API and AI orchestration
OpenBench exposes a local JSON REST API, an interactive OpenAPI schema and WebSocket events. The API can discover instruments, read their state, apply supported settings, start a recording and return the files produced by an experiment.
Codex uses this API to coordinate instruments, run measurement series and prepare reports. An external workflow can, for example, change electronic-load current and at every point read voltage and current in parallel, capture oscilloscope channels and store screenshots and numeric waveforms.
Safety boundary. The API is not a tunnel for arbitrary SCPI, serial or shell commands. Applying energy requires an explicit operator decision and a known wiring context. Where the instrument supports it, OpenBench verifies writes by reading the state back, while normal and emergency shutdown paths leave controlled outputs disabled.
Software interlocks add a layer of protection but do not replace operator checks of wiring, limits, load
and protection settings. By default the local server listens on 127.0.0.1; it has no built-in
TLS or authentication and should not be exposed directly to an untrusted network.
Supported instruments
UNI-T multimeters
Supported models include the UT61D and original UT61E through a one-way optical USB adapter, the UT61E+ through CH9329 or CP2110 and the UT197 over Bluetooth LE. Several compatible meters can operate at the same time.
Micsig oscilloscopes
The MHO1 driver provides network discovery, channel, timebase and edge-trigger settings, Run/Stop/Single, scalar measurements, screenshots and numeric CH1–CH4 capture. The ETO5004 supports measurements, bounded numeric capture and screenshots through instrument storage. The MHO1 full-memory export path is not presented as physically verified yet.
FeelElec FY-series generator
Both channels, waveform, frequency, amplitude, offset, duty cycle, phase and output state are supported. Synchronization, burst, modulation, sweep/VCO, presets and the counter are also implemented. The FY6200-20M has been tested physically; values without full read-back are marked as unverified.
Power supplies and loads
For the FNIRSI DPS-150, OpenBench provides voltage and current settings, protection, monitoring, presets, sequences and sweeps. The OWON SPM6103 combines a programmable source rated up to 60 V, 10 A and 300 W with a built-in multimeter.
The bidirectional ITECH IT6054C-800-225 operates in fixed CV/CC and SOURCE/SINK modes. This is equipment rated up to 800 V, ±225 A and 54 kW, so enabling its output requires confirmed wiring, a safe matrix state and active protection limits.
Kingst LA2016 logic analyzer
OpenBench configures up to 16 channels, sample rate and count, threshold and hardware triggers. Capture
can start immediately or wait for an event, and the result is saved as a native .sr file
with capture metadata. The simulated multimeter and matrix make it possible to test the interface, CSV
flow and external orchestration without a physical bench.
Practical scenarios
Automated frequency-response measurement — a historical example
In an early laboratory workflow, a FeelElec FY6200 and Micsig MHO1 automatically measured the frequency response of an RC filter from 1 to 100 kHz. OpenBench adjusted generator frequency and oscilloscope scale, then measured gain and phase. All 11 points were collected, with a calculated cutoff near 17.7 kHz.
The dedicated Bode page no longer exists in the current version. The experiment remains a historical example of external API orchestration: Codex or a separate script can perform the same sequence using ordinary atomic instrument operations.
Recovering the Xiaomi Mijia MCL02M protocol
While developing custom firmware for the Xiaomi Mijia MCL02M, we connected a Kingst LA2016 and used OpenBench to capture I²C traffic between the interface ESP32 and the power board. GPT/Codex controlled acquisition through the API and helped map commands to cooker behaviour and recover the control protocol in about an hour.
Synchronized tests covered startup, power changes, Pause/Resume, cookware removal and return, and the transition to Standby. Those results became the basis for custom firmware with a multilingual interface, power and temperature modes, profiles and additional protection logic.
Power testing up to 220 A
OpenBench synchronized an ITECH source/load, a four-channel MHO1 and a UT61E+ while testing a 12 V, 3 kW power supply. A nine-point run from 0 to 220 A produced 9 of 9 oscilloscope frames and 9 of 9 load readings; the Output was then disabled and verified. Three probe arrangements produced 27 synchronized points and 108 waveforms, assembled into a standalone bilingual HTML report.
How the workflow changes
OpenBench reduces manual instrument reconfiguration, copied readings and sorting of near-identical files. One interface shows the bench, one operation starts coordinated acquisition, and every result carries a timestamp, title, comment and links to its artifacts.
The engineer still defines the wiring, limits and the moment when energy is applied. OpenBench provides repeatable software sequencing, synchronized acquisition and consistent data storage.
What comes next
One planned extension is an ESP32-S3 Bench Node for laboratory automation: six digital outputs, four digital inputs, four analog inputs, two analog outputs and UART. Relays and MOSFET switches could control auxiliary circuits and emulate button presses. Inputs could read POWER GOOD, limit switches, sensors and service signals, while UART could provide a console, bootloader access and logging through the common API.
Further development may include new drivers, a physical switching matrix, a recipe library, protocol decoding, thermal measurements and additional report formats. These are plans, not claims about features already completed.
OpenBench connects instruments, captures and external automation into a reproducible working loop. As more drivers and scenarios are verified, fewer manual steps remain between defining an experiment and analysing its result.
Source code, installation and technical documentation: VlasovLabTech/OpenBench-lab-control.