This product is still under heavy development.
Feel free to report your comments and wishes on project GitHub issue tracker



Current version

EEZ Studio release


Preliminary, more to come, stay tuned!

File repository




C4.1 (Collective Code Construction Contract)


The EEZ Studio is an open source cross-platform (developed in Electron) modular visual tool aimed to address various programming and management tasks for EEZ instruments (i.e. BB3 and H24005) and other test and measurement instruments that support SCPI.


Two main driving forces or ideas behind development of EEZ Studio were completely practical: firstly it's an attempt to speed up development of HMI based on TFT color touch-screen display and secondly, experimenting on daily basis with electronics that include usage of above mentioned power supply and also DSO (both equipped with SCPI) requires lots of interaction and generates huge piles of screenshoots (oscillograms) that became a real challenge to manage as project or experimentation went on.


Making HMI that is in the same time functional, flexible (i.e. easily customizable) and foolproof is still an exhaustively complex task. Many commercial HMI solutions exists that promising a lot, but at the end if only one feature is needed that is currently not supported (and without plan to be supported in the foreseeable future) that could jeopardize a whole project. Therefore we decide to follow our own track trying to push to the limit initially selected entry-level display and MCU (i.e. no GPU, FPU, DMA, frame buffer, etc.) and make it available as open source.


Today, more sophisticated T&M (test and measurement) equipment are widely available, and one of the reason why we can labeled it sophisticated is that they are digital and thanks to that should by default offer simple data collection for further processing and archiving. But, what we experienced from “out of the box” offering wasn’t promising: at the end the most practical (i.e. time and human energy/awareness efficient) was to simply plug memory stick into USB host port and make “screen copy” (stored as bitmap!). Anything beyond that asked for “rocket science” and extra money (for “full featured” software, etc.).

Related to work in the lab, we realized that while experimenting, if collected screenshots are not instantly labeled and at least moved into folder with proper (suggestively enough) name, they easily became outdated and enigmatic. Therefore to make collected measurements usable for further usage more organized approach is needed with features like: taking notes, attaching comments to new collected data, easily accessed (searchable and filtered) history of all previously taken steps, etc.


Keeping in mind what is said previously the EEZ Studio is conceived to bring over the time the following functionality and features (the list is a not final one and will be timely updated):


  • Cross-platform run-time (Linux, Windows, Mac OS X)
  • Modular design based on plug-ins that can be added/removed depends of scope of the work
  • Open source, flexible licensing (e.g. free for personal use and education, support fee based for businesses)


Fig. 1: Using EEZ Studio for creating instrument's HMI


  • Component title: EEZ Studio Project Editor or ESP
  • Visual editor for designing TFT display screen decorations and defining user interaction (HMI)
  • Generating C++ code for HMI functionality that can be directly included in Arduino IDE and upload into the 32-bit Due board
  • Instrument definition file (IDF) builder with context sensitive SCPI commands help (based on Keysight’s Offline Command Expert command set XML structure) suitable for EEZ Studio Workbench (ESW) and Keysight Command Expert
  • SCPI command help generator based on bookmarked HTML generated directly from .odt file using EEZ WebPublish extension for OpenOffice/LibreOffice.



Fig. 2: EEZ Studio used as SCPI controller application


  • Component title: EEZ Studio Workbench or ESW
  • Dynamic environment where multiple instruments and other “widgets” can be placed and easily accessed
  • Session oriented communication with each SCPI instrument
  • Support for serial (via USB) and TCP/IP communication
  • Direct import of ESP generated IDFs and Keysight’s Offline Command Expert command sets
  • History of all activities with search/content filtering
  • Quick navigation via calendar ("heatmap") or sessions list view
  • Shortcuts (hotkeys and buttons) that can be user defined or come predefined from imported IDF. The shortcut can contain single or sequence of SCPI commands or Javascript code
  • Javascript code for task automation (e.g. logfile, or programming list upload/download, etc.)
  • SCPI commands context sensitive help with search
  • File upload (instrument to PC) with image preview (e.g. screenshots)
  • File download (PC to instrument) automation for transferring instrument profiles
  • Initial support for serial (via USB) and TCP/IP communication
  • Simple arbitrary waveform editor (envelope and table mode)
  • Displaying measurement data as graphs


Scheduled for future milestones:


  • Support for other connections (i.e. VXI-11, USBTMC, IVI) using 3rd party open source
  • Instrument extensions for popular instruments from other vendors
  • Print and PDF export
  • (External) data logger
  • Protocol analyzer using 3rd party open source
  • Import/export of all working data (i.e. measurements, session history, shortcuts, settings, etc.) for archiving purposes or easier integration with e.g. ELNs




time frame

(Milestone one)


  • Complete functionality (not documented yet!) needed for generate EEZ H24005 HMI C++ code for Arduino Due firmware
  • IDF builder, SCPI help generator


  • Support for instruments built with ESP, direct import of Keysight’s Offline Command Expert command sets
  • Instrument SCPI session console with history
  • SCPI commands help with search
  • Shortcuts (imported from IDF, user defined, Javascript)
  • File upload and download with image preview (e.g. oscillograms, etc.)
  • Basic functionality for Arbitrary waveform editor
  • Built-in instrument extensions for Rigol 1000 series of DSO/MSO




  • Content filtering
  • Session is instrument independent
  • Multiple tabs view
  • Extension repository on the GitHub
  • Item delete/undelete/purge
  • Support for USBTMC connection
  • PDF preview


0.9.1 (M3)


  • Improved SCPI commands and queries definitions
  • Import Keysight's Command Expert instrument package directly into ESP project


  • Session’s part copy to clipboard or file
  • CSV imported
  • Math operations, part I (incl. FFT)
  • Compacting database
  • Linux installation package: .deb, .rpm, snap
  • GitHub Instrument extensions repository






Linux (.AppImage, .deb, .rpm, .snap), Mac, Windows (.exe):


Fork me on GitHub