Skip to content
OpenBench laboratory bench with multimeters, an oscilloscope, a signal generator, a power supply and a cat beside the instruments

Engineering article · OpenBench

OpenBench: When the Lab Bench Becomes a Unified System

Yaroslav Vlasov · 25 August 2026

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.

OpenBench Dashboard with six connected instruments in the dark theme
Dark theme: the bench instruments and their current measurements share one dashboard.
OpenBench Dashboard with power supply, multimeter, oscilloscope and generator cards in the light theme
Light theme: the same working loop with power supply, multimeter, oscilloscope and generator cards.

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 Devices window listing supported instruments in the dark theme
Dark theme: the Devices window shows the supported drivers and connection status.
OpenBench Devices window listing supported instruments in the light theme
Light theme: the same window can repeat discovery for one instrument or scan every supported transport.

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.
Active OpenBench CSV recording and instrument cards in the dark theme
Dark theme: during CSV recording, elapsed and remaining time, connection state and instrument cards stay visible.
OpenBench CSV recording and INTERLOCKED state after connection loss in the light theme
Light theme: after connection loss OpenBench reports INTERLOCKED without hiding recording progress or the remaining instruments.

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.

Narrow OpenBench Dashboard with multimeter and oscilloscope cards in the dark theme
Dark theme: in a narrow window the instrument cards form a single column.
Mobile OpenBench Dashboard with bench status and MHO1 card in the light theme
Light theme: the mobile layout retains bench status, recording controls and the MHO1 card.

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.

Micsig MHO1 oscilloscope settings in OpenBench in the dark theme
Dark theme: MHO1 saved channels and measurements, trigger wait, polling rate and context.
Micsig MHO1 oscilloscope settings in OpenBench in the light theme
Light theme: the same frame profile with Screenshot, CH1–CH4 and ten measurement slots.

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.

OpenBench runs the measurement sequence and saves the results without requiring the operator to remain at the bench. In this run the web interface is not used: a Python script controls the running OpenBench service through its REST API.

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.

Contact

Discuss your engineering task

Contact us by email. We discuss custom electronics and automation tasks remotely with companies, labs, small businesses and individual customers worldwide.